[UrbanSim-Users] estimating ELCM

From: Brian Miles <Brian.Miles_at_uvm.edu>
Date: Mon, 28 Jan 2008 17:05:06 -0500

Hello,

I'm beginning to estimate employment location choice models. I've
been able estimate the industrial model group, but the commercial
model group is failing (the output that follows this message contains
the successful industrial run as well as the failing commercial run).

I'm using the same basic specification for both cases. I'm assuming
the problem lies in our "jobs"/"jobs_for_estimation" (they contain the
same data right now) tables (which we know need some work). However
I've compared my jobs data to the eugene data and to what is described
in the manual, and can't find anything obviously wrong aside from
possibly the fact that our commercial jobs are heavily clustered in
one sector of jobs, and this sector's jobs are heavily clustered in a
few gridcells (see first below).

So what I'm wondering is, as we start sorting through our jobs data,
should we be on the lookout for any other obvious causes to the
problem we are having estimating the
commercial_employment_location_choice_model?

Thanks,

Brian

mysql> select * from job_building_types;
+------+--------------+------------+
| id | name | home_based |
+------+--------------+------------+
| 1 | home_based | 1 |
| 2 | commercial | 0 |
| 3 | industrial | 0 |
| 4 | governmental | 0 |
| 5 | other | 0 |
+------+--------------+------------+
5 rows in set (0.00 sec)

mysql> select distinct sector_id,count(sector_id) as count from jobs
where building_type=2 group by sector_id order by sector_id;
+-----------+-------+
| sector_id | count |
+-----------+-------+
| 2 | 1 |
| 3 | 1 |
| 5 | 5 |
| 7 | 4 |
| 8 | 20 |
| 9 | 10 |
| 10 | 7 |
| 11 | 91 |
| 12 | 16 |
| 13 | 10981 |
+-----------+-------+
10 rows in set (0.02 sec)

mysql> select distinct sector_id,count(sector_id) as count from jobs
where building_type=3 group by sector_id order by sector_id;
+-----------+-------+
| sector_id | count |
+-----------+-------+
| 1 | 38 |
| 2 | 9178 |
| 3 | 243 |
| 4 | 925 |
| 5 | 1971 |
| 6 | 13 |
| 7 | 66 |
| 8 | 292 |
| 9 | 547 |
| 10 | 345 |
| 11 | 1474 |
| 12 | 115 |
| 14 | 34 |
| 15 | 148 |
+-----------+-------+
14 rows in set (0.02 sec)

mysql> select count(distinct grid_id) from jobs where sector_id=13;
+-------------------------+
| count(distinct grid_id) |
+-------------------------+
| 22 |
+-------------------------+
1 row in set (0.03 sec)

mysql> select count(distinct grid_id) from jobs where sector_id=2;
+-------------------------+
| count(distinct grid_id) |
+-------------------------+
| 199 |
+-------------------------+
1 row in set (0.02 sec)

C:\myworkspace\chittenden\estimation>python run_estimation.py -c
estimation_conf
ig_services --use-trapperkeeper=false --save-estimation-to-baseyear-
db=false
Cache Directory set to: C://urbansim_cache/chittco_1990_baseyear_cache
Start simulation run: started on Mon Jan 28 16:50:04 2008
     random seed = (1,)
     Starting simulation for year 1990: started on Mon Jan 28 16:50:04
2008
         Closing log file: C://urbansim_cache/
chittco_1990_baseyear_cache\run_mul
tiprocess.log
         Logging to file: C://urbansim_cache/
chittco_1990_baseyear_cache\year_199
0_log.txt
         Simulate year 1990: started on Mon Jan 28 16:50:04 2008
             Creating object
urbansim.datasets.vacant_land_and_building_type_data
set.VacantLandAndBuildingTypeDataset
             Creating object
urbansim.datasets.development_constraint_dataset.Dev
elopmentConstraintDataset
             Creating object urbansim.datasets.zone_dataset.ZoneDataset
             Creating object
urbansim.datasets.household_dataset.HouseholdDataset

             Creating object
urbansim.datasets.gridcell_dataset.GridcellDataset
             Creating object urbansim.datasets.job_dataset.JobDataset
             Creating object
urbansim.datasets.target_vacancy_dataset.TargetVacan
cyDataset
             Creating object
urbansim.datasets.job_building_type_dataset.JobBuild
ingTypeDataset
             Creating object
urbansim.datasets.development_event_history_dataset.
DevelopmentEventHistoryDataset
             Creating object urbansim.datasets.rate_dataset.RateDataset
             Running Employment Relocation Model (from
urbansim.models.agent_relo
cation_model): started on Mon Jan 28 16:50:05 2008
                 compute_probabilities ...
                 compute_choices ...
                 Number of movers: 2436
             Running Employment Relocation Model (from
urbansim.models.agent_relo
cation_model): completed...4.2 sec
             'agents_grouping_attribute' set to job.building_type.
             Estimating Industrial Employment Location Choice Model
(from urbansi
m.models.employment_location_choice_model): started on Mon Jan 28
16:50:10 2008
                 Number of agents for estimation: 15389
                 Sampling locations for estimation ...
                 Submodel 1 sampled in 1 chunk(s).
                  
urbansim.gridcell.total_number_of_possible_SSS_jobs......0.7 sec

                 Choice set size: 30
                 Compute variables ...
                  
urbansim.gridcell.is_near_arterial.......................0.4 sec

                 Estimate ...
                 submodel: 1
                 WARNING: Cannot find increase
                 Akaike's Information Criterion (AIC): 260.08180285
                 Number of Iterations: 12
                 ***********************************************
                 Log-likelihood is: -129.040901425
                 Null Log-likelihood is: -129.245500503
                 Likelihood ratio index: 0.0015830267003
                 Adj. likelihood ratio index: -0.00615418655747
                 Number of observations: 38
                 Suggested |t-value| > 1.90724569988
                 Convergence statistic is: 34.4413652987
                 -----------------------------------------------
                 Coeff_names estimate std err t-
values
                       BART 7.61714e+015 6.49589e+014
11.7261
                 ***********************************************
                 Elapsed time: 0.128297602078 seconds
             Estimating Industrial Employment Location Choice Model
(from urbansi
m.models.employment_location_choice_model): completed...4.1 sec
         Simulate year 1990:
completed...................................10.6 sec

         Closing log file: C://urbansim_cache/
chittco_1990_baseyear_cache\year_19
90_log.txt
     Starting simulation for year 1990:
completed........................10.6 sec

Start simulation run:
completed.........................................10.6 sec

Closing log file: C://urbansim_cache/chittco_1990_baseyear_cache
\run_multiproces
s.log

C:\myworkspace\chittenden\estimation>python run_estimation.py -c
estimation_conf
ig_services --use-trapperkeeper=false --save-estimation-to-baseyear-
db=false
Cache Directory set to: C://urbansim_cache/chittco_1990_baseyear_cache
Start simulation run: started on Mon Jan 28 16:50:44 2008
     random seed = (1,)
     Starting simulation for year 1990: started on Mon Jan 28 16:50:44
2008
         Closing log file: C://urbansim_cache/
chittco_1990_baseyear_cache\run_mul
tiprocess.log
         Logging to file: C://urbansim_cache/
chittco_1990_baseyear_cache\year_199
0_log.txt
         Simulate year 1990: started on Mon Jan 28 16:50:44 2008
             Creating object
urbansim.datasets.vacant_land_and_building_type_data
set.VacantLandAndBuildingTypeDataset
             Creating object
urbansim.datasets.development_constraint_dataset.Dev
elopmentConstraintDataset
             Creating object urbansim.datasets.zone_dataset.ZoneDataset
             Creating object
urbansim.datasets.household_dataset.HouseholdDataset

             Creating object
urbansim.datasets.gridcell_dataset.GridcellDataset
             Creating object urbansim.datasets.job_dataset.JobDataset
             Creating object
urbansim.datasets.target_vacancy_dataset.TargetVacan
cyDataset
             Creating object
urbansim.datasets.job_building_type_dataset.JobBuild
ingTypeDataset
             Creating object
urbansim.datasets.development_event_history_dataset.
DevelopmentEventHistoryDataset
             Creating object urbansim.datasets.rate_dataset.RateDataset
             Running Employment Relocation Model (from
urbansim.models.agent_relo
cation_model): started on Mon Jan 28 16:50:46 2008
                 compute_probabilities ...
                 compute_choices ...
                 Number of movers: 2436
             Running Employment Relocation Model (from
urbansim.models.agent_relo
cation_model): completed...4.2 sec
             'agents_grouping_attribute' set to job.building_type.
             Estimating Commercial Employment Location Choice Model
(from urbansi
m.models.employment_location_choice_model): started on Mon Jan 28
16:50:51 2008
                 Number of agents for estimation: 11136
                 Sampling locations for estimation ...
                 Choice set size: 30
                 Compute variables ...
                  
urbansim.gridcell.is_near_arterial.......................0.3 sec

                 Estimate ...
                 submodel: 1
             Estimating Commercial Employment Location Choice Model
(from urbansi
m.models.employment_location_choice_model): completed...1.1 sec
         Simulate year 1990:
completed....................................7.8 sec

         Closing log file: C://urbansim_cache/
chittco_1990_baseyear_cache\year_19
90_log.txt
     Starting simulation for year 1990:
completed.........................7.8 sec

Start simulation run:
completed..........................................7.8 sec

Closing log file: C://urbansim_cache/chittco_1990_baseyear_cache
\run_multiproces
s.log
Traceback (most recent call last):
   File "run_estimation.py", line 72, in <module>
     estimationRunner.run_estimation(my_configuration, model,
save_estimation_res
ults=save_estimation_results)
   File "run_estimation.py", line 45, in run_estimation
     self.estimator.estimate()
   File "C:\opusworkspace-svn\urbansim\estimation\estimator.py", line
68, in esti
mate
     self.model_system.run(self.config,
write_datasets_to_cache_at_end_of_year=Fa
lse)
   File "C:\opusworkspace-svn\urbansim\model_coordinators
\model_system.py", line
135, in run
      
write_datasets_to_cache_at_end_of_year
=write_datasets_to_cache_at_end_of_yea
r)
   File "C:\opusworkspace-svn\urbansim\model_coordinators
\model_system.py", line
299, in _run_year
     self.vardict[outputvar] = self.do_process(locals())
   File "C:\opusworkspace-svn\urbansim\model_coordinators
\model_system.py", line
377, in do_process
     return eval(ev)
   File "<string>", line 1, in <module>
   File "C:\opusworkspace-svn\opus_core\model.py", line 60, in
logged_estimate_me
thod
     results = estimate_method(*req_args, **opt_args)
   File "C:\opusworkspace-svn\urbansim\models
\agent_location_choice_model_member.
py", line 57, in estimate
     agents_index=agents_index[new_agents_index], **kwargs)
   File "C:\opusworkspace-svn\urbansim\models
\location_choice_model.py", line 199
, in estimate
     agents_index, procedure, estimate_config=estimate_config,
debuglevel=debugle
vel)
   File "C:\opusworkspace-svn\opus_core\choice_model.py", line 313, in
estimate
     del self.estimate_config["selected_choice"]
KeyError: 'selected_choice'

C:\myworkspace\chittenden\estimation>
Received on Mon Jan 28 2008 - 14:05:08 PST

This archive was generated by hypermail 2.2.0 : Mon Jan 28 2008 - 14:05:09 PST