• Documentation
  • Core API
  • SmartOpenHamburg API
  • Model Components API
  • Common API

    Show / Hide Table of Contents
    • MARS DSL Language
    • MARS Runtime System
      • Getting started with MARS
      • Basic Concepts
        • Multi-Agent-Simulation
        • Agents
        • Layers
        • Entities
        • Environments
          • SpatialHashEnvironment
          • GeoHashEnvironment
          • SpatialGraphEnvironment
          • CollisionEnvironment
        • Model Setup
      • Model Configuration
        • Agent and Entity Configuration
        • Layer Configuration
        • Output Filter
        • Simulation Configuration Options
        • Simulation Output Formats
      • Data Sources
        • Geospatial Data Sources
        • Geospatial Data Types
        • ASCII grid (.asc)
        • CSV
        • Time-series Data
      • Analysis and Visualization
        • Visualizing Agent Movement Trajectories
        • Simple Live Visualization
        • Analyzing Output Data
      • Tutorials
        • Creating a new MARS C# project
        • Creating a starting point for your model
        • Creating vector and raster layer files
        • Building your first model (wolf-sheep-grass)
        • Common problems and solutions
        • Acquire geo data for layers
        • Build and start your model in Kubernetes cluster
    • SmartOpenHamburg
      • Quick Start
      • Ready to use scenarios (boxes)
        • Ferry Transfer
        • Green4Bikes
        • Results
        • Result Schemas
      • Layer
        • Multimodal Layer
        • Modal Layer
        • Scheduling Layer
        • Vector Layer
      • Agents
        • Behaviour Model
        • Multimodal
        • Multi-Capable
        • Multi-Modality
        • Citizen
        • Traveler
      • Entities
        • Referencing
        • Street Vehicles
        • Bicycle Vehicles
        • Ferry

    Agents

    SmartOpenHamburg uses agents to map mobility behaviour. The system offers different pre-defined types that can be used to investigate different scenarios. Existing types can be reused, and new classes can be defined.

    VectorPoiLayerVectorLayerRasterDensityLayer

    The model includes the following agent types:

    • MultiCapableAgent
    • MultimodalAgent
    • Pedestrian
    • Citizen
    • Traveler
    • Driver
    • Cyclist
    • FerryDriver
    • DockWorker

    SmartOpenHamburg implements the following execution models. Further models such as endless drive, random drive exist or can be enforced by the user.

    Source-Destination Model

    This mode creates concrete Traveler agents that start from a source and move towards a target. On the way, travellers can use different available modalities to reach their destination.

    A Traveler Agent is a specialization of the MultiCapableAgent (more about this type of agent can be found here)

    Planning is done based on the destination concerning the static travel time of identified MultimodalRoutes. A multimodal route consists of several subroutes, each assigned to an individual modality. The Traveler tries to obtain, use and return these modalities on the way.

    Daily Schedule Model

    This mode uses a generated daily schedule that is processed by concrete or derived Citizen agents. A daily schedule includes multiple entries of the following categories:

    Category Description
    Work Describes a unit of work of the agent he is following.
    Errands Describes various non-work-specific types of tasks that do not involve free time.
    Freetime Describes blocks of time in which leisure activities are taken (this can also be at home).
    Eat Describes units in which utility services are consumed.
    Home Describes units to which agent is at home.

    Each category leads to different destinations via a service catalogue, using a point-of-interest layer. Citizens consume services there and move to the next destination depending on time.

    The following table shows a schedule configuration for everything Citizen. Each cell specifies a probability, in how far the respective agent fills out the given category in his schedule within the defined period from and until, giving the lower and upper hour bound within the day:

    from until to_work to_errands to_freetime to_eat to_home
    5 8 60 4 3 9 2
    8 10 19 19 10 18 5
    10 13 8 28 20 23 19
    13 16 7 25 27 23 24
    16 19 2 19 27 20 32
    19 22 1 4 11 6 13
    22 5 3 1 2 1 5

    The diary creates a dynamic history in the attached image.

    Dayplan

    For half-day or non-working agents, either the second work block after the lunch break or the complete work block is omitted.

    Back to top Copyright © MARS GROUP.
    HAW Hamburg