<!DOCTYPE html><html lang="en-us" >




  


<head>

  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="generator" content="Source Themes Academic 4.8.0">

  

  
  
  
  
  
    
    
    
  
  

  <meta name="author" content="Fraunhofer FOKUS">

  
  
  
    
  
  <meta name="description" content="">

  
  <link rel="alternate" hreflang="en-us" href="https://www.eclipse.org/mosaic/docs/building_scenarios/">

  


  
  
  
  <meta name="theme-color" content="#68145C">
  

  
  
  
  <script src="/mosaic/js/mathjax-config.js"></script>
  

  
  
  
  
    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/academicons/1.8.6/css/academicons.min.css" integrity="sha512-MCWBwPSput2UWNwyznVFLbD2iUc1e5VsdD1zahsWVzkDSUzyHhMZ4kCS3wgYSRm0mU+glwD/Q9lSJrDPwbUL2A==" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0-1/css/all.min.css" integrity="sha512-ZYg+hQvLlM0W9C3P6vTpes5LmJ66G2EsroxDNzwD6qiulckldb29eD9I672HL2X+LH5nRhY1sQqZLJGB+aUUPg==" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.css" integrity="sha512-H9jrZiiopUdsLpg94A333EfumgUBpO9MdbxStdeITo+KEIMaNfHNvwyjjDJb+ERPaRS6DpyRlKbvPUasNItRyw==" crossorigin="anonymous">

    
    
    
      
    
    
      
      
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/styles/atom-one-light.min.css" crossorigin="anonymous" title="hl-light">
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/styles/atom-one-light.min.css" crossorigin="anonymous" title="hl-dark" disabled>
      
    

    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.css" integrity="sha512-xwE/Az9zrjBIphAcBb3F6JVqxf46+CDLwfLMHloNu6KEQCAWi6HcDUbeOfBIptF7tcCzusKFjFw2yuvEpDL9wQ==" crossorigin="anonymous">
    

    

    
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
        <script src="https://cdnjs.cloudflare.com/ajax/libs/lazysizes/5.2.2/lazysizes.min.js" integrity="sha512-TmDwFLhg3UA4ZG0Eb4MIyT1O1Mb+Oww5kFG0uHqXsdbyZz9DcvYQhKpGgNkamAI6h2lGGZq2X8ftOJvF/XjTUg==" crossorigin="anonymous" async></script>
      
    
      

      
      

      
    
      

      
      

      
    
      

      
      

      
        <script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js" integrity="" crossorigin="anonymous" async></script>
      
    
      

      
      

      
    

  

  
  
  
  <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Lato:400,400i,700,700i%7CRoboto+Mono&display=swap">
  

  
  
  
  
  <link rel="stylesheet" href="/mosaic/css/academic.css">

  




  


  
  

  
  <link rel="alternate" href="/mosaic/docs/building_scenarios/index.xml" type="application/rss+xml" title="Eclipse MOSAIC">
  

  <link rel="manifest" href="/mosaic/index.webmanifest">
  <link rel="icon" type="image/png" href="/mosaic/images/icon_hu6bdfb97c7e23190c70e41ca0e15a9fce_30436_32x32_fill_lanczos_center_2.png">
  <link rel="apple-touch-icon" type="image/png" href="/mosaic/images/icon_hu6bdfb97c7e23190c70e41ca0e15a9fce_30436_192x192_fill_lanczos_center_2.png">

  <link rel="canonical" href="https://www.eclipse.org/mosaic/docs/building_scenarios/">

  
  
  
  
  
  
  
    
    
  
  
  <meta property="twitter:card" content="summary">
  
  <meta property="og:site_name" content="Eclipse MOSAIC">
  <meta property="og:url" content="https://www.eclipse.org/mosaic/docs/building_scenarios/">
  <meta property="og:title" content="Simulation Scenarios | Eclipse MOSAIC">
  <meta property="og:description" content=""><meta property="og:image" content="https://www.eclipse.org/mosaic/images/logo.svg">
  <meta property="twitter:image" content="https://www.eclipse.org/mosaic/images/logo.svg"><meta property="og:locale" content="en-us">
  
    <meta property="og:updated_time" content="2019-05-05T00:00:00&#43;01:00">
  

  




  


  





  <title>Simulation Scenarios | Eclipse MOSAIC</title>

</head>

<body id="top" data-spy="scroll" data-offset="70" data-target="#TableOfContents" class=" page-mosaic page-docs page-building_scenarios ">

  <aside class="search-results" id="search">
  <div class="container">
    <section class="search-header">

      <div class="row no-gutters justify-content-between mb-3">
        <div class="col-6">
          <h1>Search</h1>
        </div>
        <div class="col-6 col-search-close">
          <a class="js-search" href="#"><i class="fas fa-times-circle text-muted" aria-hidden="true"></i></a>
        </div>
      </div>

      <div id="search-box">
        
        <input name="q" id="search-query" placeholder="Search..." autocapitalize="off"
        autocomplete="off" autocorrect="off" spellcheck="false" type="search">
        
      </div>

    </section>
    <section class="section-search-results">

      <div id="search-hits">
        
      </div>

    </section>
  </div>
</aside>


  






  


<nav class="navbar navbar-expand-lg navbar-light compensate-for-scrollbar" id="navbar-main">
  <div class="container">

    
    <div class="d-none d-lg-inline-flex">
      <a class="navbar-brand" href="/mosaic/"><img src="/mosaic/images/logo.svg" alt="Eclipse MOSAIC"></a>
    </div>
    

    
    <button type="button" class="navbar-toggler" data-toggle="collapse"
            data-target="#navbar-content" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
    <span><i class="fas fa-bars"></i></span>
    </button>
    

    
    <div class="navbar-brand-mobile-wrapper d-inline-flex d-lg-none">
      <a class="navbar-brand" href="/mosaic/"><img src="/mosaic/images/logo.svg" alt="Eclipse MOSAIC"></a>
    </div>
    

    
    
    <div class="navbar-collapse main-menu-item collapse justify-content-start" id="navbar-content">

      
      <ul class="navbar-nav d-md-inline-flex">
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link " href="/mosaic/about"><span>About</span></a>
        </li>

        
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link " href="/mosaic/about_deprecated"><span>About (Deprecated)</span></a>
        </li>

        
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link " href="/mosaic/news"><span>News</span></a>
        </li>

        
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link  active" href="/mosaic/docs"><span>Documentation</span></a>
        </li>

        
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link " href="/mosaic/tutorials"><span>Tutorials</span></a>
        </li>

        
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link " href="/mosaic/download"><span>Download</span></a>
        </li>

        
        

        

        
        
        
          
        

        
        
        
        
        
        

        <li class="nav-item">
          <a class="nav-link " href="/mosaic/community"><span>Community</span></a>
        </li>

        
        

      

        
      </ul>
    </div>

    <ul class="nav-icons navbar-nav flex-row ml-auto d-flex pl-md-2">
      
      <li class="nav-item">
        <a class="nav-link js-search" href="#" aria-label="Search"><i class="fas fa-search" aria-hidden="true"></i></a>
      </li>
      

      

      
      <li class="nav-item ">
        <a href="https://github.com/eclipse/mosaic" target="blank">
          <i class="fab fa-github" aria-hidden="true"></i>
        </a>
      </li>
      

      

    </ul>

  </div>
</nav>


  

<div class="container docs"> 
  <div class="row flex-xl-nowrap">
    <div class="col-12 col-md-3 col-xl-3 docs-sidebar">
      





  
    
  




<form class="docs-search d-flex align-items-center">
  <button class="btn docs-toggle d-md-none p-0 mr-3" type="button" data-toggle="collapse" data-target="#docs-nav" aria-controls="docs-nav" aria-expanded="false" aria-label="Toggle section navigation">
    <span><i class="fas fa-bars"></i></span>
  </button>

  
  <input name="q" type="search" class="form-control" placeholder="Search..." autocomplete="off">
  
</form>

<nav class="collapse docs-links" id="docs-nav">
  

  
  
  
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/getting_started">Getting Started</a>
    <ul class="nav docs-sidenav">
      
      <li >
        <a href="/mosaic/docs/getting_started/">Download</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/getting_started/run_mosaic/">Run Eclipse MOSAIC</a>
      </li>
      
    </ul>
    

  </div>
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/run_simulations">Run Simulations</a>
    <ul class="nav docs-sidenav">
      
      <li >
        <a href="/mosaic/docs/run_simulations/">Run a single simulation</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/run_simulations/results/">Simulation Results</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/run_simulations/simulation_set/">Run a Simulation Set</a>
      </li>
      
    </ul>
    

  </div>
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/visualization">Visualization</a>
    <ul class="nav docs-sidenav">
      
      <li >
        <a href="/mosaic/docs/visualization/">WebSocket Visualizer</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/visualization/filevis/">File Visualizer</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/visualization/statistics/">Statistics Visualizer</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/visualization/itef/">ITEF</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/visualization/phabmap/">PHABMap</a>
      </li>
      
    </ul>
    

  </div>
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/simulators">Simulators</a>
    <ul class="nav docs-sidenav">
      
      <li >
        <a href="/mosaic/docs/simulators/">Overview</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/traffic_simulator_sumo/">Traffic - Eclipse SUMO</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/traffic_simulator_phabmacs/">Traffic - PHABMACS</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/network_simulator_omnetpp/">Network - OMNeT&#43;&#43;</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/network_simulator_ns3/">Network - ns-3</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/network_simulator_sns/">Network - SNS</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/network_simulator_cell/">Network - Cell</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/application_simulator/">Application Simulator</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/environment_simulator/">Environment Simulator</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/simulators/battery_simulator/">Battery Simulator</a>
      </li>
      
    </ul>
    

  </div>
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/building_scenarios">Building Scenarios</a>
    <ul class="nav docs-sidenav">
      
      <li class="active">
        <a href="/mosaic/docs/building_scenarios/">Simulation Scenarios</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/building_scenarios/scenario_convert/">Scenario Convert</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/building_scenarios/scenario_configuration/">Additional Scenario Configuration</a>
      </li>
      
    </ul>
    

  </div>
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/develop_applications">Create Applications</a>
    <ul class="nav docs-sidenav">
      
      <li >
        <a href="/mosaic/docs/develop_applications/">Basics</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/develop_applications/communication/">V2X Communication</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/develop_applications/event_scheduler/">Event Scheduling</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/develop_applications/road_traffic/">Scenario Database</a>
      </li>
      
    </ul>
    

  </div>
  
  <div class="docs-toc-item">
    <a class="docs-toc-link" href="/mosaic/docs/extending_mosaic">Extending Eclipse MOSAIC</a>
    <ul class="nav docs-sidenav">
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/">Core Concepts</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/simulator_coupling/">Simulator Coupling</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/interactions/">Interactions</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/application_ambassador_details/">Application Ambassador</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/sumo_ambassador_details/">Sumo Ambassador</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/omnetpp_details/">OMNeT&#43;&#43; Federate</a>
      </li>
      
      <li >
        <a href="/mosaic/docs/extending_mosaic/delay_models/">Delay Models</a>
      </li>
      
    </ul>
    

  </div>
  
  
</nav>

    </div>

    
    <div class="d-none d-xl-block col-xl-2 docs-toc">
      <ul class="nav toc-top">
        <li><a href="#" id="back_to_top" class="docs-toc-title">Contents</a></li>
      </ul>

      <nav id="TableOfContents">
  <ul>
    <li><a href="#main-configuration">Main Configuration</a></li>
    <li><a href="#traffic-simulator-configuration">Traffic Simulator Configuration</a></li>
    <li><a href="#applications-and-mapping">Applications and Mapping</a>
      <ul>
        <li><a href="#vehicles">Vehicles</a></li>
        <li><a href="#traffic-lights">Traffic lights</a></li>
      </ul>
    </li>
    <li><a href="#communication-simulator">Communication Simulator</a></li>
  </ul>
</nav>

      
    </div>
    

    <main class="col-12 col-md-9 col-xl-7 py-md-3 pl-md-4 docs-content" role="main">

      <article class="article">

        <div class="docs-article-container">
          <h1>Simulation Scenarios</h1>

          <div class="article-style">
            <p>This section provides information on creating own simulation scenarios. A scenario is generally a
folder structure that reflects the different components usually found in a simulation. Each of the folders
contains various configuration files which in total describe the simulation setup, including
the movements of the vehicles, the definition of the road network, communication properties, and the like.</p>
<p>The following file structure shows the minimum setup of a typical simulation scenario in Eclipse MOSAIC:</p>
<pre><code class="language-FOLDER">└─ &lt;scenarioName&gt;
   ├─ application
   |  └─ &lt;scenarioName&gt;.db................ Scenario database file
   ├─ mapping
   |  └─ mapping_config.json ............. Mapping configuration file
   ├─ sumo
   |  └─ &lt;scenarioName&gt;.net.xml .......... SUMO network file
   |  └─ &lt;scenarioName&gt;.sumocfg .......... SUMO configuration file
   └─ scenario_config.json ............... Basic configuration of the simulation scenario
</code></pre>
<p>In addition to those files, each simulator need to be provided with their custom configuration files.</p>
<h2 id="main-configuration">Main Configuration</h2>
<p>The main configuration file of a scenario is <code>scenario_config.json</code>. In this file basic properties are configured, such as the name of the scenario, the random seed, and activated simulators. Such a file looks like the following:</p>
<pre><code class="language-json">{
    &quot;simulation&quot;: {
        &quot;id&quot;: &quot;Barnim&quot;,
        &quot;duration&quot;: &quot;1000s&quot;,
        &quot;randomSeed&quot;: 268965854,
        &quot;projection&quot;: {
            &quot;centerCoordinates&quot;: {
                &quot;latitude&quot;: 52.511289,
                &quot;longitude&quot;: 13.3167457
            },
            &quot;cartesianOffset&quot;: {
                &quot;x&quot;: -385769.05,
                &quot;y&quot;: -5819239.29
            }
        },
        &quot;network&quot;: {
            &quot;netMask&quot;: &quot;255.255.0.0&quot;,
            &quot;vehicleNet&quot;: &quot;10.1.0.0&quot;,
            &quot;rsuNet&quot;: &quot;10.2.0.0&quot;,
            &quot;tlNet&quot;: &quot;10.3.0.0&quot;,
            &quot;csNet&quot;: &quot;10.4.0.0&quot;,
            &quot;serverNet&quot;: &quot;10.5.0.0&quot;,
            &quot;tmcNet&quot;: &quot;10.6.0.0&quot;
        }
    },
    &quot;federates&quot;: {
        &quot;application&quot;: true,
        &quot;environment&quot;: false,
        &quot;cell&quot;: false,
        &quot;ns3&quot;: false,
        &quot;omnetpp&quot;: false,
        &quot;sns&quot;: false,
        &quot;sumo&quot;: true,
        &quot;visualizer&quot;: true
    }
}
</code></pre>
<p>The following fields needs to be configured:</p>
<ul>
<li>
<p><strong><code>id</code></strong> - The name of the scenario</p>
</li>
<li>
<p><strong><code>duration</code></strong> - The duration of the simulation in seconds.</p>
</li>
<li>
<p><strong><code>randomSeed</code></strong> - The seed to initialze the random number generator with in order to have deterministic results. If not set, a random seed is taken.</p>
</li>
<li>
<p><strong><code>projection</code></strong> - Configures the coordinate transformation from geographic coordinates to cartesian coordinates. Having a correct setting
here is crucial to get correct results that map to real world coordinates so the simulation results can be visualized in some way.
The center coordinate will be used to determine the correct UTM zone, the <code>cartesianOffset</code> can be determined by having a look at the trafﬁc simulators network ﬁle,
e.g. SUMOs <code>*.net.xml</code> contains this information in the <code>netOffset</code> attribute of the location tag.</p>
</li>
<li>
<p><strong><code>network</code></strong> - Within this config the address resolution scheme is speciﬁed. The subnets for all unit types are described here. Usually, default configuration should be sufficient. However, if you have many vehicles in your scenario the IP address space would be to small to provide enough addresses. In such cases, the <code>netMask</code> and all <code>subnets</code> have to be configured accordingly.</p>
</li>
<li>
<p>Last but not least, the <strong><code>federate</code></strong> tags define which simulators are active in the simulation.</p>
</li>
</ul>
<h2 id="traffic-simulator-configuration">Traffic Simulator Configuration</h2>
<p>The generated files for the used traffic simulator are placed into the folder named after that simulator, e. g. <code>sumo</code> .
For example, the <code>&lt;scenarioName&gt;.sumo.cfg</code> describes the main configuration of the SUMO simulator, which should refer to a network file and a route file:</p>
<pre><code class="language-xml">&lt;configuration&gt;
    &lt;input&gt;
        &lt;net-file value=&quot;MyScenario.net.xml&quot; /&gt;
        &lt;route-files value=&quot;MyScenario.rou.xml&quot; /&gt;
    &lt;/input&gt;
&lt;/configuration&gt;
</code></pre>
<p>While the <code>*.net.xml</code> is a mandatory file to be placed within the <code>sumo</code> directory, the <code>*.rou.xml</code> is automatically generated
by the SumoAmbassador when the simulation is started. More information on the configuration of SUMO can be found 
<a href="/docs/simulators/traffic/#configuration">here</a>.</p>
<h2 id="applications-and-mapping">Applications and Mapping</h2>
<h3 id="vehicles">Vehicles</h3>
<p>Usually you want the simulated vehicles to be equipped with some kind of applications that inﬂuence the
vehicles behavior. To do that you copy the jar files of your applications to the folder <code>&lt;scenarioName&gt;/applicationNT</code> .
Having the applications in place you will have to create a <code>mapping_config.json</code> file in the folder <code>&lt;scenarioName&gt;/mapping</code> .</p>
<p>The following file would spawn 1 vehicle every five seconds (720 veh/hour divided by 3600 sec) until it reaches the max number of vehicles: 500. All the vehicles would be equipped with an application sending CA-messages periodically.</p>
<pre><code class="language-json">{
    &quot;prototypes&quot;:[
        {
            &quot;name&quot;: &quot;Car&quot;,
            &quot;accel&quot;: 2.6,
            &quot;decel&quot;: 4.5,
            &quot;maxSpeed&quot;: 80.0,
            &quot;applications&quot;: [
                &quot;com.dcaiti.vsimrti.fed.applicationNT.etsiApplications.impl.Vehicle&quot;
            ]
        }
    ],
    &quot;vehicles&quot;:[
        {
            &quot;startingTime&quot;: 0.0,
            &quot;targetFlow&quot;: 720,
            &quot;maxNumberVehicles&quot;: 500,
            &quot;route&quot;: &quot;3&quot;,
            &quot;types&quot;: [ { &quot;name&quot;: &quot;Car&quot; } ]
        }
    ]
}
</code></pre>
<h3 id="traffic-lights">Traffic lights</h3>
<p>If you want to simulate traffic lights equipped with applications, traffic lights should be defined in the simulator specific configuration file and also added to the mapping configuration file. The applications can be equipped by explicitly specifying them as &ldquo;applications&rdquo;</p>
<pre><code class="language-json">{
    &quot;trafficLights&quot;: [
        {
            &quot;tlGroupId&quot;: &quot;Bismarkstr_Krummestr&quot;,
            &quot;applications&quot;: [
                &quot;com.dcaiti.vimrti.app.phabmacstestapp.TrafficLightTestApp&quot;
            ]
        }
    ]
}
</code></pre>
<p>or by referring to previosly defined prototypes:</p>
<pre><code class="language-json">{
    &quot;prototypes&quot;:[
        {
            &quot;name&quot;: &quot;Car&quot;,
            &quot;accel&quot;: 2.6,
            &quot;decel&quot;: 4.5,
            &quot;maxSpeed&quot;: 80.0,
            &quot;applications&quot;: [
                &quot;com.dcaiti.vsimrti.fed.applicationNT.etsiApplications.impl.Vehicle&quot;
            ]
        },
        {
            &quot;name&quot;: &quot;TrafficLight&quot;,
            &quot;applications&quot;: [
                &quot;com.dcaiti.vimrti.app.phabmacstestapp.TrafficLightTestApp&quot;
            ]
        }
    ],
    &quot;vehicles&quot;:[
        {
            &quot;startingTime&quot;: 0.0,
            &quot;targetFlow&quot;: 720,
            &quot;maxNumberVehicles&quot;: 500,
            &quot;route&quot;: &quot;3&quot;,
            &quot;types&quot;: [ { &quot;name&quot;: &quot;Car&quot; } ]
        }
    ],
    &quot;trafficLights&quot;: [
        {
            &quot;tlGroupId&quot;: &quot;Bismarkstr_Krummestr&quot;,
            &quot;prototype&quot;: &quot;TrafficLight&quot;
        }
    ]
}
</code></pre>
<p>Please note that traffic light name and traffic light itself in the mapping file stand for a traffic light group controlling a whole junction. Traffic light group can consist of many individual traffic lights controlling an exact lane. The value of the &ldquo;tlGroupId&rdquo; key MUST coincide with the name of the traffic light group in the traffic simulator related configuration file (with tlLogic id for SUMO and with junction id for Phabmacs).</p>
<p>For SUMO, the description of traffic light groups and their programs can be found in scenarioname.net.xml:</p>
<pre><code class="language-xml">&lt;tlLogic id=&quot;26704448&quot; type=&quot;static&quot; programID=&quot;1&quot; offset=&quot;0&quot;&gt;
    &lt;phase duration=&quot;39&quot; state=&quot;GGrG&quot;/&gt;
    &lt;phase duration=&quot;6&quot; state=&quot;yyry&quot;/&gt;
    &lt;phase duration=&quot;39&quot; state=&quot;rrGG&quot;/&gt;
    &lt;phase duration=&quot;6&quot; state=&quot;rryy&quot;/&gt;
&lt;/tlLogic&gt;
</code></pre>
<p>mapping_config.json:</p>
<pre><code class="language-json">{
    ...
    &quot;trafficLights&quot;: [
        {
            &quot;tlGroupId&quot;: &quot;26704448&quot;,
            &quot;prototype&quot;: &quot;TrafficLight&quot;
        }
    ]
}
</code></pre>
<p>More information on the mapping configuration can be found 
<a href="/docs/simulators/traffic/#configuration">here</a>.</p>
<p>For more information about how SUMO traffic lights work please refer to 
<a href="https://sumo.dlr.de/docs/Simulation/Traffic_Lights.html" target="_blank" rel="noopener">SUMO Traffic Lights</a>.</p>
<p>For Phabmacs, one should create a separate configuration file containing the description of traffic light groups and traffic light programs.</p>
<p>mapping_config.json:</p>
<pre><code class="language-json">{
    ...
    &quot;trafficLights&quot;: [
        {
            &quot;tlGroupId&quot;: &quot;Bismarkstr_Krummestr&quot;,
            &quot;prototype&quot;: &quot;TrafficLight&quot;
        }
    ]
}
</code></pre>
<p>phabmacs_config.json:</p>
<pre><code class="language-json">{
    ...
    &quot;ttlFile&quot;:&quot;berlinTrafficLights.ttl.json&quot;,
    ...
}
</code></pre>
<p>An example of how the traffic light configuration can look like in berlinTrafficLights.ttl.json:</p>
<pre><code class="language-json">{
    &quot;programs&quot;: [
        {
            &quot;id&quot;: &quot;default&quot;,
            &quot;phases&quot;: [
                {
                    &quot;id&quot;: &quot;0&quot;,
                    &quot;duration&quot;: 10,
                    &quot;groupStates&quot;: [
                        &quot;green&quot;, &quot;red&quot;, &quot;green&quot;, &quot;red&quot;
                    ]
                }, 
                {
                    &quot;id&quot;: &quot;1&quot;,
                    &quot;duration&quot;: 15,
                    &quot;groupStates&quot;: [
                        &quot;red&quot;, &quot;green&quot;, &quot;red&quot;, &quot;green&quot; 
                    ]
                }
            ],
            &quot;transitions&quot;: [
                {
                    &quot;from&quot;: &quot;0&quot;,
                    &quot;to&quot;: &quot;1&quot;,
                    &quot;yellowPhaseDuration&quot;: 3,
                    &quot;allRedPhaseDuration&quot;: 3,
                    &quot;redYellowPhaseDuration&quot;: 1
                },
                {
                    &quot;from&quot;: &quot;1&quot;,
                    &quot;to&quot;: &quot;0&quot;,
                    &quot;yellowPhaseDuration&quot;: 3,
                    &quot;allRedPhaseDuration&quot;: 6,
                    &quot;redYellowPhaseDuration&quot;: 1
                }
            ]
        }
        
    ],
    &quot;junctions&quot;: [
        {
            &quot;id&quot;: &quot;Bismarkstr_Krummestr&quot;,
            &quot;signalGroups&quot;: [
                {
                    &quot;id&quot;: &quot;K1&quot;,
                    &quot;tlLocation&quot;:{
                        &quot;latitude&quot;: 52.51187173469569,
                        &quot;longitude&quot;: 13.309426296977083
                    }
        
                },
                {
                    &quot;id&quot;: &quot;K2&quot;,
                    &quot;tlLocation&quot;:{
                        &quot;latitude&quot;: 52.511666041314484,
                        &quot;longitude&quot;: 13.3092408198885
                    }
                },
                {
                    &quot;id&quot;: &quot;K3&quot;,
                    &quot;tlLocation&quot;:{
                        &quot;latitude&quot;: 52.51155112036543,
                        &quot;longitude&quot;: 13.30933672655086
                    }
                },
                {
                    &quot;id&quot;: &quot;K4&quot;,
                    &quot;tlLocation&quot;:{
                        &quot;latitude&quot;: 52.51200251720905, 
                        &quot;longitude&quot;: 13.30936414260184, 
                        &quot;heading&quot;: 180.0
                    },
                    &quot;lanes&quot;: [ 0 ]
                }
            ],
            &quot;availablePrograms&quot;: [
                &quot;default&quot;
            ]
        }
    ]
}
</code></pre>
<p>The <code>applicationNT</code> folder furthermore needs a generated database file <code>&lt;scenarioName&gt;.db</code> . This database file
contains information about the road network (road topology) and all routes the vehicles can drive on. This file
is usually generated by the tool <code>scenario-convert</code>, which is described 
<a href="/docs/building_scenarios/scenario_convert">here</a> in detail.</p>
<h2 id="communication-simulator">Communication Simulator</h2>
<p>The configuration of the communication parameters are usually not dependent from the location of the road network. Therefore,
most of the required files can be extracted from other scenarios, such 
<a href="/tutorials/barnim_basic">Barnim</a> or 
<a href="/tutorials/tiergarten">Tiergarten</a>.
Depending on the simulator you will need to configure the geographic extend of the simulation
area. You can ﬁnd that data in the trafﬁc simulators network file, e.g. SUMOs <code>*.net.xml</code> contains this
information in the <code>convBoundary</code> attribute of the location tag.</p>
<ul>
<li>For <strong>OMNeT++</strong>, it concerns the values of <code>constraintArea</code> in the <code>omnetpp.ini</code></li>
<li>For the <strong>Eclipse MOSAIC Cell</strong> simulator, the expansions do not need to be conﬁgured directly. However, the areas
of the conﬁgured regions (in <code>regions.json</code>) have to be in line with the scenario location.</li>
<li>The <strong>SNS</strong> also comes without an additional expansion deﬁnition.</li>
</ul>
<p>Further information on the communication simulators can be found in:
<br>
<a href="https://www.eclipse.org/mosaic/docs/simulators/network_simulator_ns3/">ns-3</a>
<br>
<a href="https://www.eclipse.org/mosaic/docs/simulators/network_simulator_sns/">SNS</a>
<br>
<a href="/docs/simulators/network_simulator_cell">Eclipse MOSAIC Cell</a>
<br>
<a href="/docs/simulators/network/network_simulator_omnetpp">OMNeT++</a></p>

          </div>

          



          
          <div class="article-widget">
            
<div class="post-nav">
  
  
</div>

          </div>
          
        </div>

        


        

      </article>
    </main>
  </div>
</div>


      

    
    
    
      <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh" crossorigin="anonymous"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.imagesloaded/4.1.4/imagesloaded.pkgd.min.js" integrity="sha512-S5PZ9GxJZO16tT9r3WJp/Safn31eu8uWrzglMahDT4dsmgqWonRY9grk3j+3tfuPr9WJNsfooOR7Gi7HL5W2jw==" crossorigin="anonymous"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.isotope/3.0.6/isotope.pkgd.min.js" integrity="sha512-Zq2BOxyhvnRFXu0+WE6ojpZLOU2jdnqbrM1hmVdGzyeCa1DgM3X5Q4A/Is9xA1IkbUeDd7755dNNI/PzSf2Pew==" crossorigin="anonymous"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.js" integrity="sha512-uURl+ZXMBrF4AwGaWmEetzrd+J5/8NRkWAvJx5sbPSSuOb0bZLqf+tOzniObO00BjHa/dD7gub9oCGMLPQHtQA==" crossorigin="anonymous"></script>

      
        <script src="https://cdnjs.cloudflare.com/ajax/libs/mermaid/8.4.8/mermaid.min.js" integrity="sha512-1tS1YUns336Mtxl+vkaLcADPwE1CPNVy3WEf7nrI7DGMMb6/FAVBgL2IzAWVBkB6vVuK94s2zVoiXcw1QZ9S1g==" crossorigin="anonymous" title="mermaid"></script>
      

      
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/highlight.min.js" integrity="sha512-1LdB3V708w6G4QRl7NsVdTr7MDibyRXr9stQZ+EGjEE0ZPMZkA//ir7kCWmFyxdAJNIRXdR/ZeJmCV0boyiCXw==" crossorigin="anonymous"></script>
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/languages/java.min.js"></script>
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/languages/json.min.js"></script>
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/languages/xml.min.js"></script>
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/languages/shell.min.js"></script>
        
        <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/languages/dos.min.js"></script>
        
      

    

    
    
      <script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.5.1/leaflet.js" integrity="sha512-GffPMF3RvMeYyc1LWMHtK8EbPv0iNZ8/oTtHPx9/cc2ILxQ+u905qIwdpULaqDkyBKgOaB57QTMg7ztg8Jm2Og==" crossorigin="anonymous"></script>
    

    
    
    <script>const code_highlighting = true;</script>
    

    
    
    <script>const isSiteThemeDark = false;</script>
    

    
    
    
    
    
    
    <script>
      const search_config = {"indexURI":"/mosaic/index.json","minLength":1,"threshold":0.3};
      const i18n = {"no_results":"No results found","placeholder":"Search...","results":"results found"};
      const content_type = {
        'post': "Posts",
        'project': "Projects",
        'publication' : "Publications",
        'talk' : "Talks"
        };
    </script>
    

    
    
    <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/4.1.1/anchor.min.js" integrity="sha512-aZotBPy6dqn8yVaLJwSrkJ+QxuxV695A4dgodAMvTU5JyNi5mhrr+LeaD3GSS+lx1SMFKNs0tu5ZMJEgNZQP2Q==" crossorigin="anonymous"></script>
    <script>
      anchors.add();
    </script>
    

    
    
    <script id="search-hit-fuse-template" type="text/x-template">
      <div class="search-hit" id="summary-{{key}}">
      <div class="search-hit-content">
        <div class="search-hit-name">
          <a href="{{relpermalink}}">{{title}}</a>
          <div class="article-metadata search-hit-type">{{type}}</div>
          <p class="search-hit-description">{{snippet}}</p>
        </div>
      </div>
      </div>
    </script>
    

    
    
    <script src="https://cdnjs.cloudflare.com/ajax/libs/fuse.js/3.2.1/fuse.min.js" integrity="sha512-o38bmzBGX+hD3JHWUFCDA09btWaqrNmoJ3RXLlrysA7PP01Kgs4UlE4MhelE1v5dJR3+cxlR4qQlotsW7jKsnw==" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/mark.js/8.11.1/jquery.mark.min.js" integrity="sha512-5CYOlHXGh6QpOFA/TeTylKLWfB3ftPsde7AnmhuitiTX4K5SqCLBeKro6sPS8ilsz1Q4NRx3v8Ko2IBiszzdww==" crossorigin="anonymous"></script>
    

    
    

    
    

    
    

    
    
    
    
    
    
    
    
    
      
    
    
    
    
    <script src="/mosaic/js/academic.min.12ac32fae0b6a379104641bfce6313cb.js"></script>

    

<script src="https://www.eclipse.org/js/mosaic-wg-features-widget.js"></script>





  
  

  
<div id="modal" class="modal fade" role="dialog">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title">Cite</h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <pre><code class="tex hljs"></code></pre>
      </div>
      <div class="modal-footer">
        <a class="btn btn-outline-primary my-1 js-copy-cite" href="#" target="_blank">
          <i class="fas fa-copy"></i> Copy
        </a>
        <a class="btn btn-outline-primary my-1 js-download-cite" href="#" target="_blank">
          <i class="fas fa-download"></i> Download
        </a>
        <div id="modal-error"></div>
      </div>
    </div>
  </div>
</div>

</body>
</html>
