Re: [UrbanSim-Users] land price estimation and RPy

From: Brian Miles <Brian.Miles_at_uvm.edu>
Date: Fri, 5 Oct 2007 09:40:21 -0400

Hi Travis,

Thanks for the pointer. I've installed sqlalchemy. However, it
appears that our configuration, which works with build 857, doesn't
work with the latest SVN build.

Namely, the class opus_core.store.ScenarioDatabase seems to have been
unceremoniously deprecated. Do you have a comprehensive changelog
that lists classes/methods in the 857 build which have been
deprecated/modified in later builds?

Thanks,

Brian

On Oct 4, 2007, at 1:39 PM, Travis Kriplean wrote:

> Brian,
>
> You can see the list at http://www.urbansim.org/docs/installation/
> python_packages.html.
>
> Sqlalchemy is the only new requirement beyond version 857. You need
> to install the beta version 0.4 of sqlalchemy. It is at http://
> www.sqlalchemy.org/download.html.
>
> Cheers,
> Travis
>
> Brian Miles wrote:
>> Hi Hana,
>> We're currently running version 857 of Opus (from the zip file).
>> I pulled down the latest from SVN, but it appears that I am
>> missing at least one library that the latest version expects:
>> File "C:\opusworkspace-svn\opus_core\database_management
>> \database_server.py",
>> line 17, in ?
>> from sqlalchemy.schema import MetaData
>> ImportError: No module named sqlalchemy.schema
>> Do you have a document that lists all of the libraries required
>> by the latest version of Opus?
>> Thanks,
>> Brian
>> On Oct 3, 2007, at 4:50 PM, Hana Sevcikova wrote:
>>> Brian,
>>>
>>> You're right, changing the estimation procedure is not very well
>>> supported. I have done some changes today, so please update from
>>> SVN. Then you can add an argument
>>>
>>> estimation_procedure = "opus_core.estimate_linear_regression_r"
>>>
>>> to the land_price_model controller in urbansim/configs/
>>> general_configuration.py (in the
>>> LandPriceModelConfigurationCreator call) and the estimation
>>> should call that module.
>>>
>>> We haven't kept code that uses rpy up to date since our
>>> conversion to numpy, so yes, the module will be probably broken.
>>> But the suggested change should do what I understand you want to
>>> do.
>>>
>>> Let me know if you need this also for other models. We are in
>>> the process of changing the system of configurations, so in the
>>> future it should be much easier to specify these non-standard
>>> settings. Sorry for the inconvenience.
>>>
>>> Hana
>>>
>>>
>>> Brian Miles wrote:
>>>> Hello,
>>>> We are trying to configure the land price model to estimate
>>>> using RPy so that we can use R's AIC and plotting features.
>>>> I see from urbansim.models.LandPriceModel.estimate() that the
>>>> default estimation procedure used is that defined in
>>>> opus_core.estimate_linear_regression. I see that there exists
>>>> another potential land price estimation procedure in
>>>> opus_core.estimate_linear_regression_r. In theory, we would
>>>> use an estimation procedure something like this one to take
>>>> advantage of R's AIC calculation and plot generation.
>>>> However, I don't understand how to configure the
>>>> urbansim.models.LandPriceModel to use something other than the
>>>> default estimation procedure. Taking my cue from the
>>>> documentation in opus_core.RegressionModel.estimate(), I tried
>>>> adding the key 'estimation' with the value
>>>> 'opus_core.estimate_linear_regression_r' to my estimation
>>>> config. This doesn't work however, because LandPriceModel (a
>>>> subclass of RegressionModel) specifies a procedure, and the
>>>> logic in RegressionModel.estimate() only looks to the
>>>> estimation configuration for the estimation procedure if there
>>>> is no estimate procedure specified.
>>>> I temporarily--for testing purposes--modified
>>>> RegressionModel.estimate() to look first to the config.
>>>> However the things I'm setting in my estimation config (e.g.
>>>> estimation, cache_directory) aren't in the estimation config
>>>> that RegressionModel.estimate() is seeing.
>>>> I'm unsure of what the best way is to do what I'm trying to do
>>>> (specify an estimation procedure other than that which is hard
>>>> coded in LandPriceModel.estimate()).
>>>> I may not be properly specifying the estimation procedure that
>>>> I have to run; how should this be done? (I didn't see any
>>>> specific advise on this in the Opus user guide.) Or perhaps I
>>>> should copy the LandPriceModel into a models directory within
>>>> my own package and modify that? (note: I modified
>>>> urbansim.models.LandPriceModel, as a test, to run
>>>> opus_core.estimate_linear_regression_r, and it did, only this
>>>> estimation procedure appears to be broken. However, this is a
>>>> moot point until I have an acceptable/"correct" way of
>>>> specifying estimation procedures to models).
>>>> Whether one of these or something else, what's the best way to
>>>> proceed?
>>>> Thanks,
>>>> Brian Miles
>>>> Graduate Assistant
>>>> Spatial Analysis Lab - Rubenstein School of Environment and
>>>> Natural Resources
>>>> University of Vermont
>>>> -------------------------------------------------------------------
>>>> -- ---
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users_at_urbansim.org
>>>> http://www.urbansim.org/mailman/listinfo/users
>> _______________________________________________
>> Users mailing list
>> Users_at_urbansim.org
>> http://www.urbansim.org/mailman/listinfo/users
Received on Fri Oct 05 2007 - 06:40:54 PDT

This archive was generated by hypermail 2.2.0 : Fri Oct 05 2007 - 06:40:56 PDT