trip table structure#
All person trips executed during simulation in POLARIS is logged here as a separate record. Note that only the SOV-related record can be counted as a vehicle trip for person-related travel. All freight trips can also be counted as a vehicle trip
Field |
Type |
NULL allowed |
Default Value |
Foreign key |
Description |
---|---|---|---|---|---|
trip_id* |
INTEGER |
NO |
Unique identifier of this trip |
||
hhold |
INTEGER |
NO |
0 |
Not used |
|
path |
INTEGER |
NO |
-1 |
Identifier of the corresponding entry in the path table (in Result.h5) for this path, will be -1 if trajectory info not written for this trip. |
|
path_multimodal |
INTEGER |
NO |
-1 |
Identifier of the corresponding entry in the multi-modal path table (in Result.h5) for this path, will be -1 if this is not a MM trip. |
|
tour |
INTEGER |
NO |
0 |
Not used |
|
trip |
INTEGER |
NO |
0 |
Not used |
|
start |
REAL |
YES |
0 |
Simulation time when this trip starts (units: seconds) |
|
end |
REAL |
YES |
0 |
Simulation time when this trip ends (units: seconds) |
|
duration |
REAL |
YES |
0 |
Not used |
|
experienced_gap |
REAL |
YES |
0 |
Gap experienced by person based on executed travel time (provided by end minus start) compared to routed travel time. |
|
origin |
INTEGER |
NO |
0 |
The location where this trip begins (foreign key to the Location table) |
|
destination |
INTEGER |
NO |
0 |
The location where this trip ends (foreign key to the Location table) |
|
purpose |
INTEGER |
NO |
0 |
Currently used only to distinguish freight trips as E-Commerce or not |
|
mode |
INTEGER |
NO |
0 |
The mode used to execute the trip. Values at mode. |
|
constraint |
INTEGER |
NO |
0 |
Not used |
|
priority |
INTEGER |
NO |
0 |
Not used |
|
vehicle |
INTEGER |
YES |
Vehicle(vehicle) |
Vehicle ID used to complete the travel. Can be NULL for non-motorized trips. |
|
passengers |
INTEGER |
NO |
0 |
Not used |
|
type |
INTEGER |
NO |
0 |
Trip type is used to differentiate trips that are synthetically generated versus those provided as an input. Further classificaiton by source exists. Acceptable values are shown in Values at type. |
|
partition |
INTEGER |
NO |
0 |
Not used |
|
person |
INTEGER |
YES |
Person(person) |
Person who was primarily involved in the trip (foreign key to the Person table) |
|
travel_distance |
REAL |
YES |
0 |
Distance traveled in executing this trip (units: meters) |
|
skim_travel_time |
REAL |
YES |
0 |
Travel time from the skim table for comparison with execution (units: seconds) |
|
routed_travel_time |
REAL |
YES |
0 |
Travel time from the router for comparison with execution (units: seconds) |
|
toll |
REAL |
YES |
0 |
Toll paid in executing the trip (units: $USD) |
|
has_artificial_trip |
INTEGER |
NO |
0 |
Integer to denote the type of artificial trip and can include values in Values at has_artificial_trip. |
|
number_of_switches |
INTEGER |
NO |
0 |
Integer value indicating the number of times the path was changed to account for downstream congestion or when waiting too long at a link |
|
request |
INTEGER |
NO |
0 |
Not used |
|
monetary_cost |
REAL |
YES |
0 |
Dollar amount paid when making the trip (units: $USD) |
|
initial_energy_level |
REAL |
YES |
0 |
The battery energy level when starting the trip (units: Watt Hours) |
|
final_energy_level |
REAL |
YES |
0 |
The battery energy level when completing the trip (units: Watt Hours) |
(* - Primary key)
The SQL statement for table and index creation is below.
CREATE TABLE "Trip" (
"trip_id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
"hhold" INTEGER NOT NULL DEFAULT 0,
"path" INTEGER NOT NULL DEFAULT -1,
"path_multimodal" INTEGER NOT NULL DEFAULT -1,
"tour" INTEGER NOT NULL DEFAULT 0,
"trip" INTEGER NOT NULL DEFAULT 0,
"start" REAL NULL DEFAULT 0,
"end" REAL NULL DEFAULT 0,
"duration" REAL NULL DEFAULT 0,
"experienced_gap" REAL NULL DEFAULT 0,
"origin" INTEGER NOT NULL DEFAULT 0,
"destination" INTEGER NOT NULL DEFAULT 0,
"purpose" INTEGER NOT NULL DEFAULT 0,
"mode" INTEGER NOT NULL DEFAULT 0,
"constraint" INTEGER NOT NULL DEFAULT 0,
"priority" INTEGER NOT NULL DEFAULT 0,
"vehicle" INTEGER NULL,
"passengers" INTEGER NOT NULL DEFAULT 0,
"type" INTEGER NOT NULL DEFAULT 0,
"partition" INTEGER NOT NULL DEFAULT 0,
"person" INTEGER NULL,
"travel_distance" REAL NULL DEFAULT 0,
"skim_travel_time" REAL NULL DEFAULT 0,
"routed_travel_time" REAL NULL DEFAULT 0,
"toll" REAL NULL DEFAULT 0,
"has_artificial_trip" INTEGER NOT NULL DEFAULT 0,
"number_of_switches" INTEGER NOT NULL DEFAULT 0,
"request" INTEGER NOT NULL DEFAULT 0,
"monetary_cost" REAL NULL DEFAULT 0,
"initial_energy_level" REAL NULL DEFAULT 0,
"final_energy_level" REAL NULL DEFAULT 0,
CONSTRAINT "vehicle_fk"
FOREIGN KEY ("vehicle")
REFERENCES "Vehicle" ("vehicle_id")
DEFERRABLE INITIALLY DEFERRED,
CONSTRAINT "person_fk"
FOREIGN KEY ("person")
REFERENCES "Person" ("person")
DEFERRABLE INITIALLY DEFERRED)
Enums#
The following enums are used in this table.
mode#
Value |
Name |
Description |
---|---|---|
0 |
SOV |
Car driver |
1 |
AUTO_NEST |
Car modes aggregate nest alternative |
2 |
HOV |
Car passenger |
3 |
TRUCK |
|
4 |
BUS |
Mode identifier associated with an articulated 60 ft bus vehicle, if the |
5 |
RAIL |
Public transit with walk access and egress to any combination of rail sub-modes (subway, light |
6 |
NONMOTORIZED_NEST |
|
7 |
BICYCLE |
Privately owned bicycle |
8 |
WALK |
Walking |
9 |
TAXI |
Taxi and TNC ride hailing for passengers |
10 |
SCHOOLBUS |
School bus |
11 |
PARK_AND_RIDE |
Public transit, accessed by driving and parking the car. The egress leg is walk. Can |
12 |
KISS_AND_RIDE |
Public transit, accessed by car with someone dropping off. The egress leg is walk. |
13 |
PARK_AND_RAIL |
Public transit, accessed by driving and parking the car. The egress leg is walk. Can |
14 |
KISS_AND_RAIL |
Public transit, accessed by car with someone dropping off. The egress leg is walk. |
15 |
TNC_AND_RIDE |
Public transit, with access and/or egress by taxi or rideshare. |
17 |
MD_TRUCK |
Medium Duty Trucks, Classes 3-6 (10,001-26,000 lbs) according to FHWA classification |
18 |
HD_TRUCK |
Heavy Duty Trucks, Class 7-8 (> 26,001 lbs) according to FHWA classification |
19 |
BPLATE |
Pickup trucks and vans (Chicago model only), Class 2 (< 10,000 lbs) according to FHWA |
20 |
LD_TRUCK |
Light Duty Trucks, Class 2 (< 10,000 lbs) according to FHWA classification |
21 |
RAIL_NEST |
Rail modes aggregate nest alternative |
22 |
BUS40 |
|
23 |
BUS60 |
|
24 |
PNR_BIKE_NEST |
Park and ride, and bike modes aggregate nest alternative |
25 |
RIDE_AND_UNPARK |
Public transit, access is walk and egress is by parked car. Can use any any |
26 |
RIDE_AND_REKISS |
Public transit, access is walk and egress is by being picked up by a car. Can use |
27 |
RAIL_AND_UNPARK |
Public transit, access is walk and egress is by parked car. Can only use rail modes |
28 |
RAIL_AND_REKISS |
Public transit, access is walk and egress is by being picked up by a car. Can only |
29 |
MICROM |
Docked micromobility mode (if micromobility and transit has bike time but no transit time) |
30 |
MICROM_NODOCK |
Dockless micromobility modes (if dockless micromobility and transit has bike time but |
31 |
MICROM_AND_TRANSIT |
Docked micromobility modes for access/egress to transit |
32 |
MICROM_NODOCK_AND_TRANSIT |
Dockless micromobility and transit modes combination |
33 |
ODDELIVERY |
Groceries and meals delivery |
999 |
FAIL_MODE |
If a traveler left home using drive-to-transit but returning home via transit and |
1000 |
FAIL_ROUTE |
Not used |
1001 |
FAIL_REROUTE |
|
1002 |
FAIL_UNPARK |
If the traveler arrives to their parked vehicle on a return (transit-and-drive) trip |
1003 |
FAIL_UNPARK2 |
|
1004 |
FAIL_MODE1 |
|
1005 |
FAIL_MODE2 |
|
1006 |
FAIL_MODE3 |
|
1007 |
FAIL_ROUTE_ACTIVE |
If the multimodal routing fails for a walking or biking trip the mode becomes |
1008 |
FAIL_ROUTE_WALK_AND_TRANSIT |
|
1009 |
FAIL_ROUTE_DRIVE_TO_TRANSIT |
|
1010 |
FAIL_ROUTE_DRIVE_FROM_TRANSIT |
If the multimodal routing fails for a drive-from-transit trip; |
1011 |
FAIL_ROUTE_TNC_AND_TRANSIT |
|
1012 |
FAIL_ROUTE_TNC |
If the multimodal routing fails for a tnc trip; replan mode is triggered |
1013 |
FAIL_ROUTE_SOV |
Not used |
1014 |
FAIL_ROUTE_MICROMOBILITY |
|
1015 |
NO_MOVE |
If the origin and destination locations are the same, no movement needs to happen |
9999 |
UNSIMULATED |
If both the origin and destination locations fall into the no-simulation portion of |
type#
Value |
Name |
Description |
---|---|---|
-1 |
NULLTRIP |
Invalid trip types |
11 |
ABM |
Trips which are synthesized by travelers during the simulation |
22 |
EXTERNAL |
Fixed demand read in from DB (background traffic, freight, out-of-model SOV, etc.) |
32 |
TNC_VEHICLE |
Movements undertaken by TNC vehicles, written to the TNC_Trip table not Trip |
33 |
TNC_REQUEST |
Fixed TNC Demand which is read in from the Trips table of database |
44 |
FREIGHT |
Trips synthetically generated by CRISTAL Freight model |
45 |
FREIGHT_AV |
Freight trips operated by automated truck carriers |
55 |
TRANSIT |
Movements undertaken by transit vehicles (operated by transit agencies) |
99 |
UNSIMULATED |
If both the origin and destination locations fall into the no-simulation portion of |
has_artificial_trip#
Value |
Name |
Description |
---|---|---|
0 |
ALL_GOOD |
|
1 |
NOT_ROUTED |
|
2 |
CONGESTION_REMOVAL |
|
3 |
SIMULATION_ENDED |
|
4 |
STUCK_IN_ENTRY_QUEUE |