The class AgentLocationChoiceModel is a child
of LocationChoiceModel described in
Section 8.4.4. It extends the
parent class only in one way: It puts the parent method
run() into a loop which is repeated whenever there is an
overflow in the capacity after the last run. This behavior is
activated only if the ``compute_capacity_flag'' entry of
run_config is set to True. In such a case, run_config
also should have entries ``number_of_units_string'' giving the
variable name for computing number of available
units in each location, and ``number_of_agents_string'' giving the
variable name for computing the number of agents
located in each location. Those variables are
computed and the difference in their values determines the
overfilled locations. If there are any such locations, an
appropriate number of agents (from the set given by
agents_index) are removed from their locations and the parent
run() method is called again. The maximum number of
iterations is 10.
The model also completes any unqualified variable names given in constructor
arguments, run_config and estimate_config to fully-qualified
names, by using the dataset name of the given location_set and package
``urbansim''.