Release notes

This is a record of all past respy releases and what went into them in reverse chronological order. We follow semantic versioning and all releases are available on Anaconda.org.

2.0.0 - 2019-

  • #177 removes all Fortran files and ensures that all tests still run through (@tobiasraabe).

  • #193 continues on the removal of Fortran (@tobiasraabe).

  • #199 makes the reward components modular (@janosg).

  • #200 implements the Kalman filter which allows to estimate measurement error in wages (@janosg).

  • #201 implements a flexible state space which is first and foremost flexible in the number of choices with experience and wages, but open to be extended (@tobiasraabe).

  • #204 adds more thesis proposals (@tobiasraabe).

  • #205 implements Azure Pipelines as the major CI, but we still rely on Travis-CI for deploying the package to PyPI (@tobiasraabe).

  • #206 prepares estimation with estimagic (@tobiasraabe).

  • #208 implements parsing of choices from DataFrame (@tobiasraabe).

  • #209 adds parameterizations of Keane and Wolpin (1997) plus adaptive rescaling step within the likelihood aggregation which prevents under- and overflows in the contributions (@janosg).

  • #211 generalizes the construction of type probabilities with arbitrary covariates.

  • #221 implements a new interface for the simulation which is similar to the estimation and reduces runtime for multiple simulations by a factor of four (@tobiasraabe).

  • #230 allows the model to include observed variables which are time-invariant (@mo2561057, @tobiasraabe)

  • #236 implements a periodic indexer (@tobiasraabe).

  • #240 makes previous choices in the state space optional (@tobiasraabe).

  • #245 create continuation values dynamically from value functions (@tobiasraabe).

  • #256 implements quasi-random low discrepancy sequences for better Monte-Carlo integrations (@rafaelsuchy).

  • #262 moves the distribution of previous choices, initial and maximum experience to params (@tobiasraabe).

  • #268 makes seeding in respy a lot more robust by using incrementally increasing sequences (@janosg, @tobiasraabe).

  • #269 improves the generation of conditional draws with and without measurement error in the likelihood calculation (@janosg).

  • #275 fixes a bug in calculation of wage probabilities (@tobiasraabe).

  • #277 adds three different simulation methods: n-step-ahead simulation with sampling or data and one-step-ahead simulation (@tobiasraabe).

  • #278, #279, and #280 implement three functions, log softmax, softmax, and logsumexp, which reduce the likelihood of under- and overflows and save information (@tobiasraabe).

  • #282 adds an interface for the estimation of models with the method of simulated moments (@amageh, @mo2561057, @tobiasraabe).

  • #285 adds the ability to generate a set of constraint for example models (@tobiasraabe).

  • #288 fixes an error in the simulation of choice probabilities introduced by #278 (@peisenha).

  • #296 contributes a new toy model to respy: The Robinson Crusoe Economy (@tobiasraabe, @peisenha)

  • #299 adds the information on the previous choice to individuals at age sixteen to the original data from Keane and Wolpin (1997). Special thanks to @bekauf for the data preparation.

  • #300 aligns respy functions with the new data in #299 (@tobiasraabe).

  • #310 introduces the separation between a core state space and dense dimensions of the state space which reduces memory consumption by a lot and makes respy scalable. #312 and #313 include changes to the simulation or maximum likelihood estimation which pave the way for #310. (@tobiasraabe)

  • #314 fixes two parameters in KW97 and KW2000 (@tostenzel, @tobiasraabe).

  • #316 changes the invalid index value for the indexer to prevent silent errors (@tobiasraabe).

  • #319 adds a page for projects using respy (@tobiasraabe). #321 adds more projects.

  • #320 adds add_noise_to_params() and makes the test suite faster, tests more random, moved to Github Actions, and more badges.

  • #323 adds an informative message if simulated individuals cannot be mapped to states in the state space (@mo2561057, @tobiasraabe).

  • #331 better parsing for observables (and exogenous processes) and better model tests and docstrings (@tobiasraabe).

  • #356 adds how-to guide for estimation of parameters with msm (@amageh).

  • #359 fixes a Numba deprecation warning and some errors in the constraints of pre-defined models.

  • #361 adds standard deviations of parameters for example models (@timmens).

  • #363 enables msm function to return simulated moments or comparison plot data for use with estimagic (@amageh).

Releases prior to the second version were published on PyPI, but later deleted. You can still checkout the following releases using the corresponding tags in the repository.

1.2.1 - 2019-05-19

  • #170 adds a test for inadmissible states in the state space.

  • #180 adds a long description to the PyPI package.

  • #181 implements nbsphinx for a documentation based on notebooks and reworks structure and graphics.

  • #183 adds a small set of regression tests.

  • #185 adds a list of topics for theses.

  • #186 replaces statsmodels as a dependency with our own OLS implementation.

1.2.0 - 2019-04-23

This is the last release with a Fortran implementation. Mirrors 1.2.0-rc.1.

1.2.0-rc.1 - 2019-04-23

  • #162 is a wrapper around multiple PRs in which a new Python version is implemented.

  • #150 implements a new interface.

  • #133 and #140 add Appveyor to test respy on Windows.

1.1.0 - 2018-03-02

  • Undocumented release.

1.0.0 - 2016-08-10

This is the initial release of the respy package.