html5-img
1 / 12

Open Source Programming in Transportation Prepared for: 2013 TRB Applications Conference

Open Source Programming in Transportation Prepared for: 2013 TRB Applications Conference. Two Objectives. Describe successful Open Source programming Make the case that our industry should be heavily leveraging this process for common utilities and methodologies. Start with an Example.

soren
Télécharger la présentation

Open Source Programming in Transportation Prepared for: 2013 TRB Applications Conference

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Open Source Programming in TransportationPrepared for:2013 TRB Applications Conference

  2. Two Objectives • Describe successful Open Source programming • Make the case that our industry should be heavily leveraging this process for common utilities and methodologies

  3. Start with an Example • Imagine it is 1996 and your financial advisor comes to you with two possible investments: • Two new electronic encyclopedias • Microsoft will build. Hundreds of highly paid professional writers, editors and programmers. Managed as a professional enterprise • Unpaid volunteers with no professional experience required will give many hours to develop this tool * This was adopted from a story told by Dan Pink

  4. Start with an Example • And the answer is… • MSN Encarta • Pulled off the shelves in 2009 • Wikipedia • 17 million articles • 270 languages • Growing every day * This was adopted from a story told by Dan Pink

  5. What makes open source successful • A well documented and well written code base that is understandable and well structured • An interested user base • A capable and motivated contributor base • A well managed process for fixes and improvements • A clear vision for future direction

  6. Why agencies should consider open source • Most agencies have very similar tools build and maintained internally creating massive inefficiency, redundancy and confusion • Very few of these tools are proprietary • Managed agency collaboration would result in information sharing and industry advancement and, where appropriate, levels of consistency

  7. How open source transportation tools could happen • Agencies would need to share tools and resources • Some form of joint or federal funding would be required • A well managed system of managing and distributing the code and resulting tools would be required.

  8. Example: GreenSTEP-EERPAT-SmartGAP • Lineage of 3 strategic modeling tools: • GreenSTEP: developed by Brian Gregor at Oregon DOT, a model for evaluating Greenhouse Gas reduction strategies at a statewide level • EERPAT: a standardized version of GreenSTEP developed by RSG for FHWA for application in other states • SmartGAP: a product of the SHRP 2 C16 project using elements of GreenSTEP and other research

  9. Development Approach • Brian Gregor working for ODOT develops GreenSTEP in R (R is an open source statistics and programming platform) • RSG working for FHWA evaluates GHG tools, selects GreenSTEP, develops EERPAT • RSG working for SHRP 2 builds SmartGAP incorporating elements of EERPAT • Brian Gregor working with Portland State University adds features to GreenSTEP • RSG working for FHWA moves new features of GreenSTEP to EERPAT, adds GUI built using Python, and develops Git repository for all of the tools

  10. Model Structure: System of Components Application Estimation GUI File structure, input data, and scripts to run the model and preprocess outputs Data development scripts: NHTS, Census, local sources • Scripts, compiled code, and libraries that form the graphical user interface • EERPAT example: • Python local webserver that serves the GUI to a web browser, interacts with the file system, and executes runs • Java Script code and libraries to provide functionality in the GUI Model estimation scripts: specification testing, final model selection, validation, and application functions • Script structure: • Main script to manage run • Inputs script to read inputs • Preparation scripts to run “one-time” components, e.g Population Synthesis • Simulation script(s) to run the main components of the model • Utility/Model scripts to hold functions • Output scripts to process outputs Application build scripts: combining final models, application functions, and data

  11. Future Management Approach Core management team: decision makers for approving code changes, releases Development Community Git version control repository used for code management – Git is open source (others, e.g. Subversion) Development Branch of Repository Development community: Working with pre-release code, making updates and submitting changes Release Branch of Repository/ Website Downloads User community: Working with release code, applying the models, reporting bugs Web based repository hosting, with management and collaboration tools (others, e.g. R Forge) Release to User Community

  12. Colin Smith Director, Advanced Forecasting Methods Resource Systems Group, Inc colin.smith@rsginc.com 802-295-4999 www.rsginc.com Stephen Lawe CEO Resource Systems Group, Inc Stephen.lawe@rsginc.com 802-295-4999 www.rsginc.com

More Related