16
Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015 Formal Specification Framework and More

Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Embed Size (px)

Citation preview

Page 1: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Configurable & Reusable Software for Activity-Based Travel Demand Modeling

Presented by Jessica Guo

Formal Specification Framework and More

Page 2: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Objectives

• Why develop ABM software that are

Configurable, Reusable, Maintainable,

Extensible?

• How - Design tactics

Page 3: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

One Size Does Not Fit All

• Agency resources and constraints• System requirements (hardware, OS, software)

• Budget

• Data format

• Policy environment• Model sensitivity

• Model scope & complexity

Vary by Agency

Change over Time

Page 4: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

CT-RAMPFamily Characteristics Example

Lightweightindividual daily activity pattern, tour generation with stops, tour and trip level choices

Oregon statewide model

Classiccoordinated daily activity patterns, joint travel, tour generation with subsequent stop frequency

ARC, MTC-TM1

Advancedmultiple resolutions for space and networks (MAZs, TAZs, TAPs)

SANDAG, MTC-TM2

Next-Gentour formulation models, high temporal resolution, escorting, space-time constraints

MAG, Ohio3C

DTA-Integrated

schedule adjustment, vehicle trajectory mining, revised feedback and iteration procedures

CMAP

Page 5: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Reusable Software - How?

Code Scavenging

Function Reuse

Component Reuse

System ReuseFrequency

Complexity

Page 6: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

“Software Must be

Designed for Reuse”

Tracz, W. (1990), Where does reuse start? Software Engineering Notes 15(2), 42-26

Page 7: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Example

Model Update

Software Update

Page 8: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

AO Model

Design Tactic #1

Standardized Interface

AV Model

CDAP Model

Tour-Level

Models

Trip-Level

Models

Simulation Engine

Page 9: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Design Tactic #2

Separation of Concerns

AV Model

CDAP Model

Tour-Level

Models

Trip-Level

Models

AO Model

Simulation Engine

Data Access, Utility Calculation, Choice Probability Calculation, Random Number Draw, …

Page 10: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Design Tactic #3

Layered ArchitectureF

ron

t-E

nd

Use

r In

terf

ace

Vis

ualiz

atio

n T

ool

Rep

ortin

g To

olC

onfig

urat

ion

Co

nsol

e

Develo

pm

ent U

tilities

Logging/T

racing

Tool

Sim

. Monitorin

g C

onsole

Integration Layer

Customization Layer

Configuration Layer

Core Layer

Data Access Layer

External Applications

Page 11: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Model Kthru12Tour_ModeChoice Alt

No Description Filter Beta-Alt1DRIVEALONEFREE

44 SOV Free unavailable for auto 0 @numAutos==0 -999.000045 SOV Free unavailable for age < 16 @age<16 -999.000046 SOV Free In-vehicle time 1.000048 SOV Free parking cost (@freeParking==2) 1.0000

Page 12: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Model Kthru12Tour_ModeChoice Alt

No Description Filter Beta-Alt1DRIVEALONEFREE

44 SOV Free unavailable for auto 0 Household.NumAutos==0 -999.000045 SOV Free unavailable for age < 16 Person.Age<16 -999.000046 SOV Free In-vehicle time 1.000048 SOV Free parking cost ZONE[ID==Tour.DestZone].FreeParking==2 1.0000

Page 13: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Design Tactic #4

Utility Expression Language

• Object Reference

• Field access

• Unary operations: EXP(), LN()

• Binary operations: +, &, |

• Ternary operations: ?:, IF(a,b,c)

• Filter: Tours using a AV

• Aggregation: MAX(), COUNT()

Household.HasAvPerson.HasAvAcccessVehicle.IsAutonomous

Page 14: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Design Tactic #5

Meta Modeling Language

Household.HasAvPerson.HasAvAcccessVehicle.IsAutonomous

• Construct/alter choice set

dynamically

• Define logic for transient variables

• Specify meta-utilities

• Specify econometric structure

• Configure model application flow

Page 15: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

Domain Specific Expression and Modeling Language

Utility Expression Language +

Meta Modeling Language

• Enhance system transparency

• Standardize interface

• Raise level of abstraction

• Promote greater reuse of software artifacts

Page 16: Configurable & Reusable Software for Activity-Based Travel Demand Modeling Presented by Jessica Guo Transportation Planning Applications Conference 2015

Transportation Planning Applications Conference 2015

 

Contact

Jessica Guo, PhD, CAP

Supervising Planner

Systems Analysis Group

Parsons Brinckerhoff

Portland, OR

503-478-2342

[email protected]

www.pbworld.com

Configurable & Reusable Software

for Activity-Based Travel Demand

Modeling