2020/05/05
- Improved installation and compatibility
- Support for Pandas 1.0
- Various improvements and bug fixes
- Note that active development of certain UrbanSim components has moved to stand-alone libraries in UDST: Developer, Choicemodels, UrbanSim Templates
2017/5/9
- Updated deprecated sort method for Pandas Series and DataFrames
2017/5/8
- Python 3 compatibility
- Updated documentation
- Various improvements and bugfixes
2015/8/26
- Remove simulation framework, which has been moved to a separate library called Orca
- Fix index of summed probabilities
Renamed Location Choice Models to Discscrete Choice Models
We generalized the existing location choice model classes into discrete choice models with varying capabilities. The
urbansim.models.lcm
module has been renamed tourbansim.models.dcm
and model classes withLocationChoice
in their name have been renamed to haveDiscreteChoice
instead.New options are available to control the behavior of DCMs:
probability_mode
: The probability mode can take the values'single_chooser'
and'full_product'
(default). It controls whether the probabilities used for choosing are calculated using a single chooser or separately for every chooser. The former is a useful performance optimization when there are many alternatives.choice_mode
: The choice mode can take the values'individual'
(default) and'aggregate'
. It controls whether choices are made one at a time for each chooser or all at once for all choosers. The latter is appropriate for something like a LCM where an alternative taken by one person is no longer available to others.- At the group level the
remove_alts
option specifies whether to remove chosen alternatives from the alternative pool between performing choices for segments.remove_alts
defaults toFalse
, but should be set toTrue
for LCMs so that alternatives are not made available multiple times.
The default values for these options are appropriate for fully generalized discrete choice models, but will need to be set to their non-default values to retain the behavior of the old
LocationChoice
classes.
Memoized function injectables
- #138
- Allows users to define a function injectable that has argument-based caching that is tied into the larger caching system.
Allow sampling of alternatives during prediction