Road design software
RoadDesign is the road design software to create databases to be used in experiments and is part of the research simulator software module. It was also used to create the databases in the driver training software module. An experiment always starts in a world. That world, or the database, has two functions:
- Graphical database: visualisation of the virtual world you are traversing
- Logical database: data for the autonomous traffic to be used in their behaviour, for data sampling and analyses and for use in the script language in general.
RoadDesign stores both types of databases and guarantees that they match precisely. In most simulators, there’s only a graphical database, and behaviour of traffic, and of you as the human driver, is controlled via data in the graphical database. This gives large inaccuracies and often unrealistic traffic behaviour. The logical database contains all mathematical information on the road layout and intersection layout. For example, lateral position measure the precise distance from the right road edge while you are driving on a curved road, instead of the position to the right -most straight polygon that’s used as an approximation of a curve.
When the user starts a simulation, lesson or experiment from the user interface of the driving simulator, the graphical database is read by the rendering software while the logical database is read by the scenario generation and traffic simulation software. Traffic exists in the logical world. and the human simulator driver is part of this traffic that is generated by the user-generated script. All traffic participants ‘see’ the logical world and other traffic participants, including the simulator driver, and apply their artificial intelligence rules to create their autonomous behaviour. They also ‘see’ the traffic signs, traffic light, road markings and other objects that are defined withing RoadDesign. This intelligent and realistic traffic behaviour makes designing an experiment considerably easier.
Elements of the road database
Design of the world is from above in a 2D design window.
Road elements that are designed are:
- road segments, curved or straight. Segments have 1..n lanes, and these lanes can be of various types (regular driving lanes, acceleration lanes, bicycle lanes, pavement, hard shoulders etc.). Each lane has properties such as a certain width and lane edgeline type. Road signs are designed next to a segment (at a certain position along the segment).
- intersections connect to segments. You can make intersections with 3, 4, of more branches. Intersections can have specific road markings and traffic lights. Traffic lights can be defined together with the control strategy, and all traffic lights can be controlled via script as well.
- connection nodes connect lanes in segments. You can split a road segment in 2 other segments (1 road splits in 2 separate roads in which the lanes are connected properly), or merge two roads into one.
When the road network has been defined, it is stored in both a graphical database and a logical database. All connections between intersections and connection nodes are stored as paths as well (a directed graph of paths) and vehicles drive in the logical world on a path. The script language has a large set of facilities to access the vehicles on these paths, and thus is able to see, for example, the first, or second etc. vehicle from right when you are approaching an intersection and compute time to intersection of the vehicle. Since all vehicles are part of an ordered list on the paths, you always know the bumper to bumper distance of the first rear, lead or oncoming vehicle and all these data are accessible real time during the simulations via the script language. The script language and the logical database are directly connected which gives a tremendous functionality that can be used in scientiftic experiments.
There are various graphical elements that can be added to the database:
- Landscape polygons (fields): to create a floor in the database. There’s a large set of types available in the designer, like grass, cement, dirt, bricks etc.
- Rotating billboards (trees): rotating transparant polygons to create a large number of trees, plants, bushes and other landscaping elements.
- Facades: for example rows of trees in the background, walls, fences etc. There’s a large number of standard facades available.
- External 3D objects: buildings, street lights, street furniture, etc. A large set is available.
All these elements can be extended, and the user can add new landscape polygons, trees, facades and 3D objects (for example *.3ds models) to the designer and include then in the databases.