polaris model. polaris planning and operations language for activity-based regional integrated...

Post on 25-Dec-2015

214 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

POLARIS Model

POLARIS

• Planning and Operations Language for Activity-based Regional Integrated Simulations

• Represents a “Transportation Language” for developing transportation simulation models

• Provided at high/low levels of abstraction, i.e. high-level transportation object model, operationalized by low-level programming and optimization concepts

Transportation Object Model

(TOM)

Transportation Simulation

Framework (TSF)

POLARIS Simulation Core Architecture(CORELIB)

IPC

Mod

ule

Specific Model Implementation

External Processes

Execution Module

Transportation Object Model

(TOM)

TSFGetLandUse()GetActivityPattern()SimulateTrip()

POLARIS Simulation Core Architecture(CORELIB)

IPC

Mod

ule

Read

Urb

anSi

m()

Read

/Run

Amos

()Re

ad/R

unM

alta

()

SIMTRAVEL-P

MALTA

Execution Module{ GetLandUse() While(World.IncrementTime() { GetActivityPattern() SimulateTrip() }

UrbanSim

AMOS

TRANSPORTATION OBJECT MODEL (TOM)

Transportation Object Model• All objects in simulation are expressed as elements• Elements have child elements, attributes and actions• Events operate on attributes, child elements or parent element• TOM abstracted from implementation level details

• World – Root Element– Child Elements:

• Spatial Elements• Population Elements• …

– Attributes• Time

– Actions• Access Element• Increment Time• …

Every “Thing" in a Transportation System

Elements Actions

Agents Proto-Agents

Environment

Parts of Elements

Types of Elements

Attributes

Child Elements

Required Optional Tentative

Legend

• Travelers• Signal• Roadway

Element

Parts of Elements Actions

AssociativePlanning

Types of Actions

Processing Body

Parts of Actions

InformationalPerforming

Pre- & Post- Conditions

Required Optional Tentative

Legend

• Take a Step Forward• Choose a Route• Talk to Someone

Actions

Linked Actions

More To Be Determined

Membership Possession

Types of Associative Actions

Parts of Associative Actions

Targeted Group

Required Optional Tentative

Legend

• Change Households• Take Possession of a Car• Join a Social Network

Associative Actions

More To Be Determined

Types of Actions

Associative

External Performance

Internal Performance

Types of Planning Actions

Parts of Planning Actions

Sequence of Actions

Required Optional Tentative

Legend

• Build a Signal Phase Sequence• Choose a Destination• Conceive a Road Closure

Planning Actions

More To Be Determined

Types of Actions

Planning

Agents

Cognitive Reactive Environmental

Types of Agents

Attributes

Parts of Agents

Controlling

Child Elements

Required Optional Tentative

Legend

• Travelers• Intelligent Signal Systems• Planning Groups

Agents

Types of Elements

Actions- Planning

- Information

Plan

Transportation Object Model - Element Example

• Person <Agent>– Child Elements:

• Money, Vehicle, Housing unit, etc.• Anything else which can take action, have sub-elements, etc.

– Attributes• Age, Sex, Race, other person characteristics• STANDARD ATTRIBUTES:

– Current location, ID, Plan, etc.

– Events (or Actions)• Work, Sleep, etc.• STANDARD EVENTS:

– Move, Plan, Schedule, Take Inventory, Research, Observe, etc.

TRANSPORTATION SIMULATION FRAMEWORK (TSF)

Transportation Simulation Framework (TSF)

• Implement Standard / Element Specific Events or Actions• When Element Calls Plan, TSF determines what this means and

how to accomplish• Defines the underlying Activity-Based Model, Route Selection

and Microsimulation Architecture• High level of abstraction from implementation details, for use by

modelers.• Implementation details found in POLARIS Architecture - CORELIB

Transportation Simulation Framework Example

• Examples:– Environment.Initialize– Environment.Locations.Add(1,1000)– Environment.Agents.Add(Person1)– Enviornment.Agents(P1).Move– Enviornment.Agents(P1).Plan(Act1)

• Framework defines model setup

• TSF has complete access to current agent and environment data – through CORELIB

• Must implement common ABM/Routing components:– Schedule, Plan, Route, in terms of Element.Actions

• CORELIB – defines all agent actions/interaction/calls to attributes, etc.

POLARIS Implementation

• Set up objects in TOM and simulation Framework in TSF

• For TIMESTEP t=0 to END– For Environment.Agent(0) to Environment.Agent.Size

• If (Agent.DoSomething) Then Agent.Action….• If (CallExternal) IPC.RunExternalProcess….• …

POLARIS-ADAPTS Example

• Required Events:– Planning Order Model, Conflict Resolution Model and,– Standard Events: Choose Destination, Choose Start Time, etc.

• New Plan order model requires modification to:– Standard event GenerateActivity– Standard element Activity

• GenerateActivity()

AMOS vs. ADAPTS exampleGenerateActivity() [in AMOS @ t]{

Activity AA.setPlanTimeStart(t+0)A.setPlanTimeStart(t+1/t)A.setPlanTimeMode(t+1/t)A.SetPlanTimeWhoWith(t+2/t)

}

• AMOS setup can use default generation of activities

• Uses small offset from current timestep to set processing order

• Activities planned as they are generated

GenerateActivity() [in ADAPTS @ t]{

Activity AA.setPlanTimeLocation(TSF.GetPlanTime(A,Loc))A.setPlanTimeStart(TSF.GetPlanTime(A,Start))A.setPlanTimeMode(TSF.GetPlanTime(A,Mode))A.setPlanTimeWhoWith (TSF.GetPlanTime(A,Who))

}

• ADAPTS overrides default activity generator

• Set planning times in simulation future• Using new GetPlanTime function written

in TSF

ADAPTS Planner/Scheduler• Handles at each

timestep:– Generation– Planning– Scheduling

• Each step can occur at different times for same activity

• Core of the framework is the Attribute Plan Order Model

At timestep t

Generate new activity

Update existing activity(s)

Execute activity

Attribute Planning Order model

Planned Activity Schedule

Time-of-Day

t = Ttime

Party

t = Twith

Mode Choice

t = Tmod

Destination choice

t = Tloc

Executed Schedule

Resolve Conflicts Conflict Resolution Model

Set Plan Flags:(Ttime,Tloc, etc.)

Yes

DecisionLogical testModelSimulated events

Yes

No

Yes

No

No

Activity G

enerationActivity Planning

Activity Scheduling

How TSF uses TOM / CORELIB

• New function SetPlanTimes, example implementation in TSF

TSF::SetPlanTimes(Activity A, type){

Agent P = Environment.Agents.CurrentAgent()If (P.IsEmployed && type=MODE) return Environment.TimeElse return Environment.Time+2;

}

• Interaction with Corelib– Return current agent– Evaluate Agent employment status– Evaluate environment time– Handles all memory access, translation of TOM, etc.

Interprocess Communicatons (IPC) Module

• Connect existing softaware to POLARIS framework• Convert external software outputs into TOM elements/actions• Called using external communication protocols in CoreLib• Modeler must write conversion scripts to define the software

input/output objects in TOM

TOM Elements

IPC Module(I/O Scripts)

External Objects

External Process POLARIS Model

Communication ProtocolFiles

Memory

top related