<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Integrating BDI Agents with the MATSim Trafic Simulation for Autonomous Mobility on Demand</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Marcel Mauri</string-name>
          <email>mauri@cs.uni-frankfurt.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ömer Ibrahim Erduran</string-name>
          <email>erduran@cs.uni-frankfurt.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thu Pham Dieu Anh</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mirjam Minor</string-name>
          <email>minor@cs.uni-frankfurt.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>BDI Agent, BDI-ABM Framework, Trafic Simulation, Jadex, Agent Development Framework</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science, Goethe University Frankfurt</institution>
          ,
          <addr-line>Frankfurt am Main</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>LWDA'23: Lernen</institution>
          ,
          <addr-line>Wissen, Daten, Analysen</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <abstract>
        <p>In this paper, we present our extension for the BDI-ABM interface, which provides a connection layer for BDI agents to interact with simulation platforms. We introduce a new version of the ABM-Jadex layer, which provides the possibility to attach BDI Agents developed with Jadex, an Agent Development Framework, to the MATSim trafic simulation environment. We further introduce cognitive vehicle agents that are implemented with Jadex. We tested the Jadex integration layer by debugging the code and showing examples that confirm the functionality.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>CEUR
ceur-ws.org</p>
    </sec>
    <sec id="sec-2">
      <title>1. Introduction</title>
      <p>
        Sustainable mobility is one of the global challenges. Knowledge-based systems such as software
agents can contribute to reduce the emissions of trafic [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Simulations of vehicle agents
may facilitate better decisions in urban development, usage of multi-modal mobility, or trafic
operation. There are already existing platforms like Grab1 which launch mobility services with
lfeets of public and private vehicles. The
      </p>
      <p>Grab app connects passengers with private hire, taxi,
and coach drivers. However, it takes seven minutes according to Grab’s web page to be matched
with an appropriate vehicle when using GrabShare which takes more bookings in one ride than
one.</p>
      <p>
        Cognitive software agents with their negotiation capabilities may provide a more eficient,
scalable solution for transport tasks, especially for Autonomous Mobility on Demand (AMoD)
scenarios. An AMoD system consists of a fleet of autonomous vehicles (AVs) that pick up
passengers and transport them to their destination. Cognitive software agents have been
applied in a wide range of real-world domains and scenarios for solving diferent challenges
[
        <xref ref-type="bibr" rid="ref1 ref2 ref3 ref4">2, 1, 3, 4</xref>
        ]. The most versatile and powerful agents are the so-called BDI agents. These agents
are based on the human reasoning cycle, translating into beliefs, desires, and intentions [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
LGOBE
(M. Minor)
      </p>
      <p>CEUR
Workshop
Proceedings
htp:/ceur-ws.org
ISN1613-073</p>
      <p>CEUR Workshop Proceedings (CEUR-WS.org)</p>
      <p>Many agent development platforms that support BDI agents use a simulation as an
environment. Frequently, those simulations are rather simplified and closely application-specific. In
contrast to this, stand-alone simulation platforms are mostly limited to very simple agent types
and do not support BDI agents. This makes it dificult to carry out more complex simulations
with BDI agents.</p>
      <p>
        Singh et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] open an alternative strand of research. They integrate agent development
platforms following the BDI agent architecture [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] with rich, agent-based simulation platforms.
      </p>
      <p>
        The main scope of this paper is twofold (compare the right hand side of Fig. 1):
1. The first contribution is the design of self managing vehicle agents for AMoD applications
following the BDI paradigm.
2. Second, the paper addresses the concept, design, and implementation of the
synchronization between a BDI agent development framework and a trafic simulation platform
building upon the results of Singh et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. The implementation of the synchronization
(connection layer) consists of three main parts:
a) The information of the vehicle agents in the BDI development platform and the
trafic simulation platform needs to be exchanged correctly and at the correct time.
Decisions that have been made by the BDI agents have to be sent to their counterparts
in simulation platform.
b) The results also need to be transferred back correctly. This corresponds to the
sensors of the BDI agents, which sense the information in the environment (the
trafic simulation platform) to update their beliefs with new information and make
their own decision from the updated assumptions. This has to be achieved at the
correct time so that the BDI agents could process the information to assess its goals
and plans, adjust them in time and, if needed, further send the updated information
to the simulation platform.
c) The design of the cycle of the synchronization and synchronization between BDI
agents in one cycle will also need to be covered to ensure that each cycle in the
synchronization process is executed correctly, efectively, and eficiently.
      </p>
      <p>The intended application scope of the integration is a broad range of scenarios in AMoD.
Fig. 1 illustrates how the cognitive (BDI) agents in the upper layer interact with each other and
the simulation platform. The spotlights indicate that a cognitive vehicle agent receives sensory
inputs from its particular avatar in the simulation and makes the decisions for its actions.</p>
      <p>
        We decided to use mainly open-source tools and framework solutions. For the agent
development framework we choose Jadex [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. It is a proven framework that supports BDI agents and is
Java-based. A preliminary version of the VAs implemented in Jade [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] has been published in
previous work [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. The richer architectural support of Jadex in comparison to Jade led us to the
decision to redesign the cognitive agents in the Jadex framework. MATSim [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] will be used as
the simulation platform. MATSim is an agent-based trafic simulation platform, widely used
and also based on Java.
      </p>
      <p>
        For the connection of these two we will build upon the already existing BDI-ABM framework
[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and add a new interface for the integration of Jadex and MATSim which is not yet included.
BDI-ABM has been used for training approximately 60 emergency management specialists
from 20 diferent agencies on bushfire evacuation recently [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. There is already an integration
between an outdated version of Jadex and another simulation platform.
      </p>
      <p>The remainder of this paper is structured as follows: In Section 2, the related works are
presented. The idea and the design of the BDI-ABM integration in general as well as the design
of Jill-MATSim integration in evacuation scenario simulation, which is the main basis for the
synchronization of Jadex and MATSim, is covered in Section 3. The conceptual framework of
the Jadex vehicle agent in the ride-hailing scenario is covered in Section 4. Section 5 contains
the concept design and the implementation of the Jadex module. Section 6 draws a conclusion
and discusses future work.</p>
    </sec>
    <sec id="sec-3">
      <title>2. Related Work</title>
      <p>
        The topic of integrating autonomous software agents into simulation environments has been
researched extensively. Software agents have been covered in survey works focusing on the
diferent development frameworks as well as the extensibility of the cognitive architecture
[
        <xref ref-type="bibr" rid="ref12 ref13 ref14 ref15">12, 13, 14, 15</xref>
        ]. For example, Erduran covers the diferent approaches of combining the BDI
agent architecture with Machine Learning to make the agents learn from experience [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. The
development of Software Agents is a well-researched field with a plethora of Agent development
frameworks proposed by diferent research labs and organizations. Silva et al. cover the BDI
agent architecture in their survey [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] and point out several research directions of extension
and integration.
      </p>
      <sec id="sec-3-1">
        <title>2.1. BDI-ABM Framework</title>
        <p>The main contribution of this paper extends the BDI-ABM environment2. This work is grounded
in several research papers, which are mentioned in this section. The concepts and fundamental
approach of BDI-ABM is presented by Padgham et al. in [18]. Here, the authors present multiple
layers for the integration of diferent agent development frameworks that especially implement</p>
        <sec id="sec-3-1-1">
          <title>2https://github.com/agentsoz/bdi-abm-integration (last access: 05.07.2023)</title>
          <p>
            the BDI Agent architecture, with Agent-based Models (ABM). In this context, ABMs provide the
environment, where the agents are able to interact. Thus, research has been conducted in the
application scenario of emergency evacuation and multi-modal transportation at a city-wide
level [
            <xref ref-type="bibr" rid="ref11">11</xref>
            ]. One of the layers connects the Agent based simulation environment MATSim [19]
with the agent development framework Jill. A Jadex layer is also considered in BDI-ABM.
However, it is in an outdated version and does not support the connection to the current
versions of Jadex BDI agents, called BDIv3. Furthermore it is developed connecting Jadex agents
to the Repast simulation 3. Therefore, a connection to MATSim is not provided. Furthermore,
there is also no demonstration or example freely available that demonstrates the interaction of
Jadex with those simulation environments.
          </p>
          <p>
            Furthermore, BDI-ABM is also listed as a plugin for MATSim providing the connection of
BDI agents to MATSim [19, 20]. One application of BDI-ABM is in the Emergency Evacuation
Scenario (EES) [
            <xref ref-type="bibr" rid="ref6">21, 6</xref>
            ], where agents in Jill 4 are combined with MATSim by using the BDI-ABM
framework. The integration of Agent development frameworks and trafic simulation has also
been conducted by Soares et al. by integrating Jade platform and the Sumo trafic simulation
[22]. Developing a simulation environment for Software Agents represents the same amount of
challenge as developing cognitive agents. Ricci et al. use an Artifact-based approach [23, 24].
Davoust et al. consider an Unmanned aerial vehicle (UAV) scenario where the agents interact
with the simulation environment [25]. Here, the focus is set on the computational performance
of executing the framework.
          </p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>2.2. Trafic simulation</title>
        <p>In our considered domain of trafic simulation, we focus on AMoD settings, where the vehicle
agents transport customers from a starting position to their desired destination. By using
MATSim, diferent modes of Mobility on Demand systems can be simulated. In the current
version of MATSim 5 the contribution package DVRP provides the necessary components for
setting up a ride-sharing or ride-hailing simulation. In addition, the contribution DRT provides
ride-pooling including vehicle agents with additional capacities. It is built on top of the DVRP
package. Recent work that investigates scenarios on Mobility on Demand is from Bischof et
al., where ride-pooling and shared taxi fleets are simulated on a city-wide scale analyzing the
lfeet performance [ 26, 27, 28]. Other mentionable work investigating ride-pooling by using
MATSim is from Zwick et al. [29] and Kaddoura &amp; Schlenther [30]. Our work diferentiates from
the previously mentioned works since we not only consider MATSim solely but investigate
the interaction of external BDI agents with the simulation platform. Therefore, the considered
MoD and Mobility as a Service (MaaS) components in MATSim are not considered in our work.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>3. Foundations</title>
      <p>
        On a high level, the BDI-ABM framework contains several integration layers for diferent Agent
Development Frameworks (ADF) implemented in Java. Especially, the framework contains a
3https://repast.github.io/
4https://github.com/agentsoz/jill (last access: 05.07.2023)
5version 15.0, https://github.com/matsim-org/matsim-libs (last access: 05.07.2023)
generic layer, which represents a connection layer for diferent ADF and simulation
environments. For each ADF and simulation environment, a specific layer is developed, which interacts
via BDI-ABM. According to Singh et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], the mentioned layer provides the possibility to
connect other simulation environments as well. Thus, we developed a novel integration layer
for the connection of Jadex and MATSim. In BDI-ABM, there exists an old integration layer for
Jadex. However, the layer is customized for elder versions of the ADF and only works with the
simulation environment Repast and not with MATSim. The advantage of the Jadex system over
other ADF is that the contract net protocol [31] for the communication between agents has
been integrated and the Jadex application is still currently further developed and researched.
At the same time, MATSim is a mature and powerful trafic simulator that can be used for
large-scale trafic simulations, primarily to assess the likely results of various infrastructure or
road network changes.
      </p>
      <sec id="sec-4-1">
        <title>3.1. Trafic Simulation</title>
        <p>
          MATSim is an activity-based, extendable, multi-agent simulation framework implemented in
Java, which is open-source [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. MATSim is developed using the concept of
Agent-BasedModelling that is specified for transport simulation. This framework is designed for large-scale
scenarios and is usually used to model a single day. With MATSim, it is possible to simulate
trafic, taxi fleets, mobility as a service as well as diferent modes of transportation.
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>3.2. Interface for cognitive agents</title>
        <p>
          In the conceptual framework of BDI-ABM [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], some agents in the simulation have a ”brain” in the
BDI system, which is the decision-making component, and a ”body” in the ABM system which
carries out actions. An agent in this integrated framework will be situated in an environment
where it can perceive environmental input via percepts, and act, via actions. These activities of
perceiving and acting will happen inside the ABM, where the ”body” interacts with the physical
world of the domain. To be precise, as shown in Fig. 1 with the arrows of action and percept, the
perceptions from ABM will be communicated to the ”brain” in BDI, and the ”brain” will use its
decision-making mechanism to select the suitable action based on the input from percepts, the
chosen action will be delivered back to ABM to be carried out. It is defined in the conceptual
framework that a percept going into BDI from ABM does not have to be exactly identical
to the percepts in ABM. The percept in BDI is a high-level percept composed of lower-level
observations of the environment, which are the percepts represented in ABM. Similarly, an
action going from the BDI agent to its ABM counterpart must typically be decomposed into
a sequence of lower-level environment actions that the ABM agent knows how to perform.
In terms of data transfer between the BDI and ABM systems, two key optimizations for this
integrated framework are defined. The first one is that a single data container is passed between
the systems in each simulation cycle. The data container bundles the messages for all agents
and delivers them all together to the other system to simplify the synchronization between the
systems. The second one is that not every percept is computed and pushed to the BDI system
on every cycle. The reason is the BDI agent processes information contextually and only certain
information is useful in certain situations. In case of ad-hoc information requirements, the
BDI agent can pull this percept from the ABM environment as needed via the percept queries
function. From the technical point of view, the framework consists of three distinct layers. First
is a generic layer, which realizes the conceptual model from the previous section. The second
layer is the system layer, which provides the code necessary for linking a particular BDI or
ABM system into the generic layer. With this layer, built on top of the generic layers, specific
BDI systems like Jadex and Jill, as well as ABM systems (i.e. MATSim), can receive and send
percepts and actions back and forth. The last layer is the application layer, which provides the
application-specific code including agent behavior and reasoning. Overall, the BDI application
provides action decisions to the ABM and the ABM provides observations and environmental
information of interest to the BDI module.
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>4. BDI vehicle agents</title>
      <p>The agent framework for AMoD we are developing consists of diferent types of agents. The
geographical environment is divided into multiple zones, each with a responsible area agent.
Vehicle agents are autonomous vehicles which are distributed in the application area. They
check in and out at their area agents when they enter or leave their zone and regularly update
their current location. When a customer requests a trip, it is delegated to the area agent in
whose area of responsibility the starting position of the trip is located. The area agent sends the
request to the vehicle agent which is located closest to the start position. The vehicle agent will
then evaluate how well it is suited to fulfill the customer’s request (amount of already accepted
trips, battery level, ...). Depending on the outcome, it does it itself or negotiates with other
vehicle agents in its area of operation to delegate it to a more suitable one. The negotiation
between the vehicle agents will be realized by the Contract Net Protocol (CNP) [31]. Thus,
the vehicle agents are self managed. When there are no customers, they drive to safe parking
spaces, and when their battery level is low, they drive to a charging station.</p>
      <p>
        Jadex agents implement a BDI architecture using beliefs, goals and plans. Beliefs represent
the current knowledge of the agent. Desires are goals which are desirable for the agent in
general while intentions are a subset of the desired goals for which the agent has actually made
a commitment. Goals in Jadex are used to implement both desires and intentions. Depending
on the current state of a goal its theoretical meaning [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] may change between a desire only
(inactive goal) or a desire and an intention (active goal). Jadex supports multiple types of goals
for diferent purposes. There are perform goals that will only be executed once and maintain
goals which will be triggered by a condition repeatedly. Plans describe the sequence of actions
that is executed to achieve a goal.
      </p>
      <p>Figure 2 shows the newly designed architecture of a vehicle agent. The design comprises
of the five goals: ManageJobs, BatteryLoaded, TripService, SimQuery and SimReceive and their
according plans. Vehicle agents have an interface to the BDI-ABM Layer and a second interface
for the communication with other Jadex agents.</p>
      <p>Vehicle agents are exchanging messages with corresponding area agents and other vehicle
agents. Incoming jobs are stored inside the DecisionTaskList. Every entry in this list is a not
yet evaluated DecisionTask. A DecisionTask contains information about a trip that has been
requested by a customer (start time, start position, end position, etc.). As long as this list is not
empty the ManageJobs goal is active. The corresponding plan EvaluateDecisionTask iterates
through the entries and determines by their actual progress state the next needed action. We
decided against a design in which every DecisionTask/ Trip will cause the generation of a
separate goal/plan which handles its processing. Our approach achieves the same functionality,
but is easier to handle.</p>
      <p>
        For new received jobs a utility score is calculated. This score determines how well this vehicle
agent is suited to perform this ride. Right now the exact utility function is ongoing work. In
[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] we presented a preliminary approach. It includes information about the distance (travel
times) between coordinates. Any distance that has not yet been calculated and is missing in the
agents database can be requested from the BDI-ABM environment. The requests are handled
by the goal SimQuery and its plan SendQuery. If the utility score is below a previously defined
threshold the agent will start the CNP to delegate the trip. The call for proposals (cfp) will
be sent to the other vehicle agents in that area. Cfps are treated similar to DecisionTasks and
are stored inside the DecisionTaskList. Any further step of the CNP will also be executed by
EvaluateDecisionTask. The recipients (contractors) then calculate how suitable they are for the
job and send their proposals back to the sender (manager). When the manager has received
all proposals it will send an accept/ reject to the contractors and delegate the DecisionTask. If
the utility score of a DecisionTask is above the threshold or the agent has received an accept
regarding a completed CNP the agent will commit it and create a corresponding trip. There are
diferent subtypes of trips. Besides the customer trips that contains information about a trip
that was requested by a customer there are charging trips.
      </p>
      <p>When the battery level of a vehicle agent falls below a predefined threshold the goal
BatteryLoaded is triggered. The corresponding plan NewChargingTrip will generate a chargingtrip
which contains information for a drive to a charging station. Depending on the type a trip
can contain one or more coordinates. While a charging trip just needs the coordinates of the
charging station a customer trips needs the start position and the endposition of a trip. Trips
are stored in the TripList, which contains a sorted list of all committed trips that have not yet
been started. Any new created trip will be sent to a scheduler that will insert the new trips into
the TripList and reschedule the entire list if needed.</p>
      <p>When the Trip List is not empty the TripService goal is activated. The corresponding plan
DoNextTrip takes the next trip from the TripList and sends a driveto command to the BDI-ABM
framework which will cause the MATSim counterpart of the Agent to drive to the specified
location. When a driveto command is sent the internal progress of this CurrentTrip is updated.
As long as there is no feedback from the BDI-ABM framework the agent will not perfom any
other driveTo operations. Any information that is sent from the BDI-ABM framework to the
Jadex vehicle agent is handled by the SimReceive goal. The plan SensoryUpdate processes all
incoming information from the simulation site. This information could include, for example,
the result of a driveTo with the new position of the vehicle or an requested distance. After
the vehicle has received the confirmation that the last drive operation on the simulation site is
ifnished DoNextTrip can resume its work.</p>
    </sec>
    <sec id="sec-6">
      <title>5. Jadex-ABM integration layer</title>
      <p>The Jadex-MATSim integration framework is inspired by the already existing Jill-MATSim
integration framework [20]. Fig. 3 shows the new integration layers with the existing
components depicted in grey color. The BDI-ABM layer synchronises the mutual control taken by the
cognitive side (Jadex agents) and the simulation side (MATSim). The Dataserver component
controls the access to a shared memory structure called AgentDataContainer. The Dataserver
grants read/write access to the cognitive side via the TakeControl BDI command and withdraws
it via the command TakeControl ABM, which provides the simulation side with read/write access.
Intermediate results from the reasoning cycles of the BDI side are stored in AgentDataContainer
to to be shared with the simulation and the simulation outputs vice versa.</p>
      <p>The JadexModel controls the incoming and outgoing data from and to Jadex. To connect
the vehicle agents implemented in Jadex with the BDI-ABM layer, the SimSensoryInputBroker
and the SimActuator play the role of mediators. The mediators are required because Jadex
active components like the vehicle agents cannot be accessed directly by external (non-Jadex)
components [32]. The SimActuator is used by the vehicle agents to write the actions (drive-to)
into the AgentDataContainer. The SimSensoryInputBroker distributes the incoming data from
the BDI-ABM (MATSim) side. The entries of the AgentDataContainer are directly written into
the beliefs of the respective vehicle agents. Once the SimActuator has collected (eventual) new
drive-to commands from the vehicle agents, the JadexModel will update the content of the
AgentDataContainer and notify the Dataserver to pass control to the MATSim side again. The
MATSimModule [18] will then translate the BDI-actions from the AgentDataContainer into low
level actions for MATSim.</p>
    </sec>
    <sec id="sec-7">
      <title>6. Discussion of results and future work</title>
      <p>To demonstrate the functionality of our implementation, we conducted a test simulation on
a street network of a university campus map. The map is extracted from OpenStreetMap 6. A
basic MATSim simulation consists of a road network map, a predefined population of agents,
and a configuration file [ 33]. To check the right functionality, we investigated the output files,
which are created by the simulation. We started two BDI agents which get exemplary trip
requests. These are in turn executed in MATSim during the simulation and in conclusion,
written into the output file. While running the framework, first the Jadex BDI agents are created
and subsequently, the MATSim simulation starts. During the simulation, the BDI agents send
the action requests (drive-to) to the mapped vehicle agents in MATSim, which in return drive on
the network. In Fig. 4, the relevant output file called events file is shown, where the results of
the commands from the BDI component are depicted. The values start link and end link indicate
the start and end positions of the vehicle with id=1. In Fig. 5, the corresponding visualization to
the mentioned events file is shown by using the tool Via 7. Here, the marked route on the road
network map is the route that the vehicle agent has driven. The implementation is available on
GitHub 8.</p>
      <p>The integration of both ADF and simulation environment is considered in a larger project,
where other research areas of Multi-agent systems are considered. Therefore, the project is
ongoing and the implementation of cognitive agents as well as their internal architecture is under
construction. Furthermore, the considered scenario is exemplary and does not yet consider other
agent models or baselines as a comparison. For future work, we plan to extend the cognitive
agents with Machine Learning algorithms to investigate Neuro-symbolic Agents as well as their</p>
      <sec id="sec-7-1">
        <title>6https://openstreetmap.org 7https://simunto.com/via/ 8https://github.com/WI-user/LWDA23-submission</title>
        <p>explainability. Furthermore, we will design an experimental setup and run ride-hailing scenarios
with diferent configurations. Other application scenarios like ride-pooling and waste collection
by a fleet of trucks will be investigated using the presented framework in this paper. We think
that our knowledge-based approach with its reasoning-simulation integration contributes some
foundational methods to achieve more sustainable solutions for mobility in the future.
4914–4921.
[18] L. Padgham, K. Nagel, D. Singh, Q. Chen, Integrating BDI Agents into a MATSim Simulation,</p>
        <p>ECAI (2014).
[19] L. Padgham, D. Singh, Making MATSim Agents Smarter with the Belief-Desire-Intention
Framework, in: ETH Zürich, A. Horni, K. Nagel, TU Berlin (Eds.), The Multi-Agent
Transport Simulation MATSim, Ubiquity Press, 2016, pp. 201–210.
[20] D. Singh, L. Padgham, K. Nagel, Using MATSim as a Component in Dynamic
AgentBased Micro-Simulations, in: Engineering Multi-Agent Systems, volume 12058, Springer
International Publishing, Cham, 2020, pp. 85–105.
[21] D. Singh, L. Padgham, Emergency Evacuation Simulator (EES) - a Tool for Planning
Community Evacuations in Australia, in: Proceedings of the Twenty-Sixth IJCAI, Melbourne,
Australia, 2017, pp. 5249–5251.
[22] G. Soares, Z. Kokkinogenis, J. L. Macedo, R. J. F. Rossetti, Agent-Based Trafic Simulation
Using SUMO and JADE: An Integrated Platform for Artificial Transportation Systems, in:
M. Behrisch, D. Krajzewicz, M. Weber (Eds.), Simulation of Urban Mobility, volume 8594,
Springer Berlin Heidelberg, 2014, pp. 44–61.
[23] A. Ricci, M. Piunti, M. Viroli, Environment programming in multi-agent systems: an
artifact-based perspective, Autonomous Agents and Multi-Agent Systems 23 (2011)
158–192.
[24] A. Ricci, A. Croatti, R. H. Bordini, J. F. Hübner, O. Boissier, Exploiting Simulation for MAS</p>
        <p>Programming and Engineering—The JaCaMo-sim Platform, EMAS (2020) 19.
[25] A. Davoust, P. Gavigan, C. Ruiz-Martin, G. Trabes, B. Esfandiari, G. Wainer, J. James,
An Architecture for Integrating BDI Agents with a Simulation Environment, in: L. A.
Dennis, R. H. Bordini, Y. Lespérance (Eds.), Engineering Multi-Agent Systems, volume
12058, Springer International Publishing, 2020, pp. 67–84.
[26] J. Bischof, I. Kaddoura, M. Maciejewski, K. Nagel, Simulation-based optimization of service
areas for pooled ride-hailing operators, Procedia Computer Science 130 (2018) 816–823.
[27] J. Bischof, M. Maciejewski, K. Nagel, City-wide shared taxis: A simulation study in Berlin,
in: 2017 IEEE 20th International Conference on Intelligent Transportation Systems (ITSC),
IEEE, Yokohama, 2017, pp. 275–280.
[28] J. Bischof, M. Maciejewski, Proactive empty vehicle rebalancing for Demand Responsive</p>
        <p>Transport services, Procedia Computer Science 170 (2020) 739–744.
[29] F. Zwick, N. Kuehnel, R. Moeckel, K. W. Axhausen, Agent-based simulation of city-wide
autonomous ride-pooling and the impact on trafic noise, Transportation Research Part D:
Transport and Environment 90 (2021).
[30] I. Kaddoura, T. Schlenther, The impact of trip density on the fleet size and pooling rate of
ride-hailing services: A simulation study, Procedia Computer Science 184 (2021) 674–679.
[31] Smith, The contract net protocol: High-level communication and control in a distributed
problem solver, IEEE Transactions on Computers C-29 (1980) 1104–1113.
[32] A. Pokahr, Aktive Komponenten: Ein integrierter Entwicklungsansatz für verteilte Systeme,</p>
        <p>Ph.D. thesis, Hamburg University, 2017.
[33] K. W. Axhausen, ETH Zürich, The Multi-Agent Transport Simulation MATSim, Ubiquity
Press, 2016.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Bazzan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Klügl</surname>
          </string-name>
          ,
          <article-title>A review on agent-based technology for trafic and transportation</article-title>
          ,
          <source>The Knowledge Engineering Review</source>
          <volume>29</volume>
          (
          <year>2014</year>
          )
          <fpage>375</fpage>
          -
          <lpage>403</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Ö. I.</given-names>
            <surname>Erduran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Minor</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Hedrich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Tarraf</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Ruehl</surname>
          </string-name>
          ,
          <string-name>
            <surname>H.</surname>
          </string-name>
          <article-title>Schroth, Multi-agent Learning for Energy-Aware Placement of Autonomous Vehicles</article-title>
          ,
          <source>in: 2019 18th IEEE International Conference On Machine Learning And Applications (ICMLA)</source>
          , IEEE,
          <string-name>
            <surname>Boca</surname>
            <given-names>Raton</given-names>
          </string-name>
          , FL, USA,
          <year>2019</year>
          , pp.
          <fpage>1671</fpage>
          -
          <lpage>1678</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Malas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. E.</given-names>
            <surname>Falou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. E.</given-names>
            <surname>Falou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Itmi</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. Cardon,</surname>
          </string-name>
          <article-title>Solving on-demand transport problem through negotiation</article-title>
          ,
          <source>in: Proceedings of the Summer Computer Simulation Conference</source>
          ,
          <year>2016</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>7</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Ö. I.</given-names>
            <surname>Erduran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mauri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Minor</surname>
          </string-name>
          ,
          <article-title>Negotiation in ride-hailing between cooperating BDI agents</article-title>
          ,
          <source>in: Proceedings of the 14th International Conference on Agents and Artificial Intelligence</source>
          , volume Volume X,
          <string-name>
            <surname>Scitepress</surname>
          </string-name>
          , Online Streaming,
          <year>2022</year>
          , pp.
          <fpage>425</fpage>
          -
          <lpage>432</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Georgef</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Pell</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pollack</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Tambe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wooldridge</surname>
          </string-name>
          ,
          <article-title>The Belief-Desire-Intention Model of Agency, in: Intelligent Agents V: Agents Theories, Architectures, and Languages</article-title>
          , volume
          <volume>1555</volume>
          , Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>1999</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>10</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>D.</given-names>
            <surname>Singh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Padgham</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Logan</surname>
          </string-name>
          ,
          <source>Integrating BDI Agents with Agent-Based Simulation Platforms, Autonomous Agents and Multi-Agent Systems</source>
          <volume>30</volume>
          (
          <year>2016</year>
          )
          <fpage>1050</fpage>
          -
          <lpage>1071</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>F.</given-names>
            <surname>Klügl</surname>
          </string-name>
          , Multiagentensysteme, in: Handbuch der Künstlichen Intelligenz,
          <volume>6</volume>
          . auflage ed., De Gruyter Oldenbourg, Berlin/Boston,
          <year>2021</year>
          , pp.
          <fpage>755</fpage>
          -
          <lpage>781</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Pokahr</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Braubach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Jander</surname>
          </string-name>
          ,
          <source>The Jadex Project: Programming Model, in: Multiagent Systems and Applications: Volume 1:Practice and Experience</source>
          , Springer, Berlin, Heidelberg,
          <year>2013</year>
          , pp.
          <fpage>21</fpage>
          -
          <lpage>53</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bellifemine</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Caire</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Greenwood</surname>
          </string-name>
          ,
          <article-title>Developing multi-agent systems with JADE, reprint</article-title>
          . ed., Wiley series in agent technology,
          <source>Chichester</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>K. W Axhausen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Horni</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Nagel,</surname>
          </string-name>
          <article-title>The multi-agent transport simulation MATSim</article-title>
          , Ubiquity Press,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>D.</given-names>
            <surname>Singh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Ashton</surname>
          </string-name>
          , E. Kuligowski, G. Pawan,
          <article-title>Bushfire evacuation decision support system use in incident management training</article-title>
          ,
          <source>Australian Journal of Emergency Management</source>
          <volume>37</volume>
          (
          <year>2022</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>R. C.</given-names>
            <surname>Cardoso</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrando</surname>
          </string-name>
          ,
          <article-title>A Review of Agent-Based Programming for Multi-Agent Systems</article-title>
          ,
          <source>Computers</source>
          <volume>10</volume>
          (
          <year>2021</year>
          )
          <fpage>16</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>O.</given-names>
            <surname>Boissier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. H.</given-names>
            <surname>Bordini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. F.</given-names>
            <surname>Hübner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ricci</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Santi</surname>
          </string-name>
          <article-title>, Multi-agent oriented programming with JaCaMo</article-title>
          ,
          <source>Science of Computer Programming</source>
          <volume>78</volume>
          (
          <year>2013</year>
          )
          <fpage>747</fpage>
          -
          <lpage>761</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>K.</given-names>
            <surname>Kravari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Bassiliades</surname>
          </string-name>
          ,
          <article-title>A Survey of Agent Platforms</article-title>
          ,
          <source>Journal of Artificial Societies and Social Simulation</source>
          <volume>18</volume>
          (
          <year>2015</year>
          )
          <fpage>11</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>A.</given-names>
            <surname>Dorri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. S.</given-names>
            <surname>Kanhere</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Jurdak</surname>
          </string-name>
          ,
          <string-name>
            <surname>Multi-Agent Systems</surname>
          </string-name>
          : A Survey,
          <source>IEEE Access 6</source>
          (
          <year>2018</year>
          )
          <fpage>28573</fpage>
          -
          <lpage>28593</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Ö. I. Erduran</surname>
          </string-name>
          ,
          <article-title>Machine Learning for Cognitive BDI Agents: A Compact Survey</article-title>
          ,
          <source>in: ICAART (1)</source>
          ,
          <year>2023</year>
          , pp.
          <fpage>257</fpage>
          -
          <lpage>268</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>L. d.</given-names>
            <surname>Silva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Meneguzzi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Logan</surname>
          </string-name>
          ,
          <article-title>BDI Agent Architectures: A Survey</article-title>
          ,
          <source>in: Proceedings of the Twenty-Ninth International Joint Conference on Artificial Intelligence</source>
          ,
          <source>International Joint Conferences on Artificial Intelligence Organization</source>
          , Yokohama, Japan,
          <year>2020</year>
          , pp.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>