<!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 />
    <article-meta>
      <title-group>
        <article-title>Decentralized Insertion Heuristic with Runtime Optimization for On-demand Transport Scheduling</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Alaa Daoud</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Univ Lyon</institution>
          ,
          <addr-line>Mines Saint-Étiennee, CNRS</addr-line>
          ,
          <institution>Laboratoire Hubert Curien</institution>
          ,
          <addr-line>UMR</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>On-Demand Transport (ODT) systems have attracted increasing attention in recent years. Traditional centralized dispatching can achieve optimal solutions with NP-Hard complexity, making it unsuitable for online and dynamic problems. Decentralized approaches can achieve fast feasible solution at run-time with no guarantee on the quality. Starting from feasible not optimal solution, we present in this work a new decentralized, insertion heuristic algorithm to solve a special case of the dynamic Dial-A-Ride-Problem (DARP) as an ODT system, in which vehicles communicate via Vehicle-to-vehicle communication (V2V) and take decentralized decisions. In our solution model we add an optimization phase in order to improve the quality of global solution achieved by decentralized decision at run-time by exchanging resources between vehicles. We evaluate and analyze the promising results of our contributed technique on synthetic data for taxis operating in Saint-Étienne city, against a classical greedy approach. The concept of On-Demand Transport (ODT) was formulated for the first time around 1990 as a solution to the growing disaffection of potential users of public transport, especially at night [2]. There exist similar terms in the literature describing several transportation systems that could be similar in some characteristics and differ in others; e.g. the term Demand-Responsive-Transport (DRT) refers to the same concept. Seeking simplicity, here we only use the term ODT:</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Definition 1 “On-Demand Transport is a transit mode consisting of
passenger vehicles, vans or small buses that respond to the calls
of passengers or their agents to the transit operator, who then
sends a vehicle to collect passengers and transport them to their
destinations."[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]
      </p>
      <p>
        The allocation problem is one of the most studied optimization
problems in the literature [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. It can be attacked by linear
programming because its relaxation of formulation admits optimal integral
solutions. In reality, if a central dispatcher exists, it requires vehicles
to have continuous access to their portal via the global
communications infrastructure (e.g. 4G), which is expensive and can cause a
critical bottleneck on the portal side.
      </p>
      <p>
        The computational complexity of the problem, which extends the
NP-Hard traveling salesman problem (TSP), makes it difficult for the
central dispatcher to manage the dynamics of the problem during
execution (online requests, variable fleet size or heterogeneous fleets,
traffic problems and other environment dynamics). Therefore one
may expect that decentralization can cop off with these problems. The
insertion heuristics proposed by [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] is a popular method for solving a
variety of scheduling and routing problems. It can be used as a method
to quickly find a feasible solution (with no guarantee of solution
quality). In Vehicle Routing Problem (VRP), it creates the solution by
repeatedly inserting unscheduled demands in a partially constructed
route or as the first demand in a new route. Local search with the
kexchange neighborhoods (k-opt), is one of the most commonly used
heuristic methods for problems inherited from TSP. k-opt is a path
improvement algorithm, where at each planning phase, k steps from
the current plan are replaced by k steps to get a cheaper path [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        In this work, we propose the Autonomous Vehicle Fleet Allocation
Problem (AVFAP), which extends the traditional DARP with the
usage of fleet of autonomous vehicles, replacing the central dispatcher
with the coordination between each other via Peer to Peer (P2P)
communication in order to take decentralized decision, as illustrated in
Figure 1. V2V communication via Dedicated Short-Range
Communication (DSRC) provides low latency, fast network connectivity with
a range of communication up to 300 meters [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Having limited
communication ranges, each vehicle is only aware of a subset of demands,
and communicates with entities (vehicles or demand sources) if they
are in the range of each others. We more precisely propose a new
decentralized heuristic for the AVFAP, named Pull-demand,
benefiting from the fast responsiveness of insertion heuristics, and the good
results gained by k-opt optimization.
      </p>
      <p>The paper is organized as follows. In Section 2, we overview the
efforts done in literature to address related ODT problems. Section 3
expounds the model we consider for the decentralized resource
allocation problem for autonomous vehicle fleets with an illustrative
scenario showing the main components of the ODT system. Then the
contribution for fast decision is presented in Section 4 and an
optimization protocol is detailed in Section 5. Experimental parameters,
evaluation and results are detailed in Section 6. Finally, we conclude
the paper in Section 7 with some perspectives.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Works</title>
      <p>
        Traditional approaches for ODT consider centralized dispatcher
architecture like in [
        <xref ref-type="bibr" rid="ref15 ref7">7, 15</xref>
        ] or decentralized MAS to reduces problem
complexity with a central coordinator like in [
        <xref ref-type="bibr" rid="ref11 ref8">8, 11</xref>
        ]. While there exist
several approaches for decentralized decisions and self-coordination,
like the work of [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] to introduce a multi-agent bid-based real-time
scheduling solution in fully decentralized settings, in which each
vehicle represented by an agent that can negotiate via radio channels
with flexible decision criteria. A pattern recognition algorithm is used
to predict most likely locations for the next demand using agent-based
data mining to recommend movements to these locations.
      </p>
      <p>
        Investigating the applicability of genetic programming (GP) for
developing decentralized MASs that solve dynamic DARP, [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] presents
a method to automatically generate a MAS that can solve the DARP
for a specific set of scenarios. GP is used to generate a heuristic that
is effective in solving the DARP compared to centralized solutions.
The best result achieved with this approach is by planning only one
demand in advance by vehicle, which maximize the agent’s local
interests (greedy) and produce a feasible solution very fast.
      </p>
      <p>
        An agent-based model based on simulated events for the real taxi
market was proposed by [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], where supply and demand matching
depends on event-based interactions. According to their conclusion,
one of the main limitations of [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] model is the assumption of uniform
distribution of demand in the service area.
      </p>
      <p>
        To address the uncertainty caused by the dynamic nature of online
demands, with ignoring the time required to execute a planning
algorithm, [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] proposed using a deterministic rolling horizon solution
approach, in which plans are drawn up using all known information
in a planning horizon, that is "rolled" forward to include more known
information.
      </p>
      <p>
        Based on vehicle coordination via message passing using P2P
communication, In our previous work [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] we proposed the
Online Localized with Communication Constraint Resource Allocation
(OLC2RA) for concurrently solving the allocation problem over a
fleet of autonomous taxis, in which a vehicle decide its next
destination (scheduling only one demand in advance). On the contrary,
ALMA decentralized heuristic proposed by [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] is completely
decoupled and does not require communication between the participants.
They demonstrate an upper bound of the speed of convergence which
is polynomial to the desired quantity of resources and competing
agents per resource; In the realistic case where the mentioned
quantities are limited whatever the total number of agents/resources, the
convergence time remains constant as the total size of the problem
increases. However, in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] conflict detection still requires
communication with other vehicles, resources or a central entity to enable
resources to share information about their status, such as the
blackboard coordination mechanism.
      </p>
      <p>So far and to the best of our knowledge, efforts done in ODT
planning domain provide either optimized solutions ignoring the
execution time, or provide very fast, just feasible solution to respond
quickly to dynamic online demands. In this work, as optimal solution
for this dynamic problem is unachievable with rational
computational time, our proposal combines the benefits of these approaches
in one heuristic that provide fast auction based response (fast
feasible solution), and at runtime this solution is improved gradually with
demand-exchange rescheduling.</p>
    </sec>
    <sec id="sec-3">
      <title>AVFAP Problem Model</title>
      <p>The Autonomous Vehicle Fleet Allocation Problem (AVFAP) extends
the traditional DARP by considering a fleet of autonomous vehicles
that coordinate without a central dispatcher. The vehicles make
decentralized decisions based on information exchanged via Peer to Peer
(P2P) communication as illustrated in Figure 1.</p>
      <p>The city map graph, shown in Figure 2, consists of nodes
representing geographic locations and edges representing the road connections
between these locations. A fleet of autonomous vehicles is distributed
throughout the city, each vehicle has a set of properties whose values
are constant (capacity, cost and average speed) or variable (location,
schedule) because they are time-dependent. Passengers emit demands
from different locations (which we will call sources later). Each one
takes the form of a request that defines: the pick-up and delivery
locations associated with the desired service time window. We define
a solution as a schedule for each vehicle that meets the demands by
satisfying their constraints, minimizing passenger waiting time and
minimizing vehicle travel costs.</p>
      <p>The vehicles communicate by broadcast via an ad-hoc
Vehicle-tovehicle (V2V) communication network, where the communication
range is limited. Each vehicle that receives new information
broadcasts it again and the vehicles are thus connected by transitivity within
the communication range.</p>
      <p>In this context, a vehicle is not aware of requests outside its
communication area. The vehicle’s belief evolves during the execution time, as
the vehicle moves around, receives new requests from request sources,
meets other vehicles and exchanges messages with them.</p>
      <p>The AVFAP model is defined as:</p>
      <p>AV F AP :=&lt; M; V; D; T &gt;</p>
      <p>M :=&lt; G; w &gt;
V := fv1; v2; : : : ; vng
D := fd1; d2; : : : ; dmg</p>
      <p>T := ft0; t1; : : : ; tendg
where, M defines the urban infrastructure map (locations, roads
and distances); the offer is represented by a V fleet of n autonomous
vehicles; D defines a dynamic set of passenger demands that occur
at the time of execution; and T defines the time horizon within which
vehicles must respond to passenger demands. We define time T as a
discrete set of ticks.
3.1</p>
    </sec>
    <sec id="sec-4">
      <title>Urban Infrastructure Map</title>
      <p>The urban infrastructure map is defined by a weighted directed graph
M , as shown in Figure 2.</p>
      <p>G :=&lt; N; E &gt;
w := fwe1 ; we2 ; : : : ; wjEjg</p>
      <p>G is a directed connected graph where N is the set of nodes, E is
the set of edges between nodes. The valuation function w associates
each edge e with the value we based on a measure of temporal distance
(for example, average driving time in minutes), which will be used to
calculate the operational costs of vehicle trips.
3.2</p>
    </sec>
    <sec id="sec-5">
      <title>Vehicle Properties</title>
      <p>Each v 2 V is defined by
v :=&lt; capa; cpd; range &gt;
where capa defines the total number of passenger seats in the
vehicle, cpd defines the cost of the vehicle per unit of distance, and
range defines the communication range within which the vehicle can
communicate with other entities. At any given time t 2 T a vehicle
v 2 V knows its current situation: v_location defines the location
of v that could be located in a node or moving through an arc; and
f ree_seats defines the number of free seats available in v at time t.
3.3</p>
    </sec>
    <sec id="sec-6">
      <title>Demand Properties</title>
      <p>A demand d 2 D is defined as a request</p>
      <p>d :=&lt; required; tw; pick_up; drop_of f &gt;
where required is the number of seats required; tw defines a
time interval (tmin; tmax) in which the pickup event is considered
acceptable; pick_up and drop_of f are the origin and destination
of the request, respectively. As for vehicles, at time t 2 T , we will
consider that a request d 2 D can also be communicated using the
V2V network. The request could be issued by the customer or the
infrastructure (roadside unit).
4</p>
    </sec>
    <sec id="sec-7">
      <title>Auction-based Insertion Heuristic</title>
      <p>The main objective of vehicle agents is to provide feasible schedules
that maximize their utility, by minimizing the global operational cost
of serving the maximum number of requests.</p>
      <p>
        Given a vehicle v having a potential demand set Dv, providing
a schedule for v to that satisfies all the requests d 2 Dv means
solving a TSP to produce the best ordering of requests in the schedule.
Considering the dynamic aspect of our model, we use an insertion
heuristic like the one described in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] to continuously adapt local
vehicle schedules. The result of this algorithm is a set of requests,
each of them is associated with the potential time at which a vehicle
will be at the pick-up location. The insertion heuristic is proven to be
efficient in finding feasible schedules very fast [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], but since it handles
the scheduling of requests one by one, its performance is relative to
the order of these demands.
      </p>
      <p>In our model the agents handle request based on their priority order.
The priority function is used by an agent to assign priority values
to the requests he knows. Given a vehicle v, the priority function
returns for a demand d a value that is inversely proportional to the
cost costDemand(d; v) of inserting the demand in the schedule of
v: 1=costDemand(d; v). Thus the lower the cost, the higher the
priority.</p>
      <p>In the simplest form the cost function returns the distance of d’s
pickup location from v’s location, thus agents assign highest priority
to the request with the nearest pick-up location.</p>
      <p>
        Each agent determines his schedule to maximize the value of the
quality of his solution. Since several vehicles may be interested in
the same request, we need a coordination mechanism to resolve these
conflicts. We will use an auction mechanism for this purpose, which
is one of the effective and proven ways to solve such problems [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
When a vehicle v becomes aware of a request d, it ranks it in its queue
according to the priority it has assigned to it.
      </p>
      <p>At time t, v selects the first request in the queue ds, generates a set
of alternatives, each of which is a potential schedule resulting from
the insertion of ds in a feasible step of the v’s current schedule. Every
alternative is associated with a cost which is the marginal operational
cost of adding this request to the schedule. The choice with the best
cost is considered to broadcast an offer</p>
      <sec id="sec-7-1">
        <title>Bidvd(tstart; cost)</title>
        <p>with tstart the time of pick_up for ds.</p>
        <p>In this document, we consider the operational cost of a trip as the
total length of its route (sum of the distances shown in Figure 2). The
marginal cost of insertion is therefore the difference in path length
between the initial path and the new path. Bids remain available for
a specific time period texpire. Thus, if the bid cost of v is less than
any other bid received at t + texpire to serve a request d, it considers
itself the winner of the auction, and updates its schedule with the new
bid path.</p>
        <p>Example 1 The simple scenario in Figure 3 shows two vehicles V1
and V2 located in A and B, with empty schedules at the beginning.
At time t1, the first request is announced d1 :&lt; 1; (t10; t20); C; H &gt;.
Both vehicles now know d1. V1 can serve it by following the path
A ! C ! E ! F ! H, so V1 places the offer BiddV11 (t10; 11). V2
can serve it via the path B ! D ! C ! E ! F ! H, so issues
the offer BiddV12 (t10; 13). V1 is considered a winner and adds d1 to
its schedule, so that the overall operational cost of the fleet is now 11.
In order to be able to make effective bids for new requests or to
improve the solution, we propose that the vehicles exchange their
planned requests.</p>
        <p>Example 2 Figure 4 shows a situation where the use of the
bidbased insertion heuristic is very reactive but does not guarantee
good scheduling. At the moment t2 when the new request d2 :&lt;
1; (t15; t40); J; K &gt; arrives, both vehicles are aware of it and place
their possible bids. In the absence of any exchange capacity, V1 still
has d1 in its schedule (with an initial cost of 11), so the best offer
it can place is to serve both requests with a marginal cost of 14.
While V2 places the winning bid BiddV22 (t15; +11), it adds d2 to its
schedule, and the overall cost becomes 22. Note that in this case,
serving d2 with V1 and letting V2 take care of d1 results in an overall
operational cost gain of 21, but this solution is never realized because
d1 is already scheduled on V1.
5</p>
      </sec>
    </sec>
    <sec id="sec-8">
      <title>Improving Solution Quality</title>
      <p>In the following we propose a local optimization protocol to improve
the quality of the solution for cases like Figure 4 and the Example 4.</p>
      <p>This protocol is based mainly on the k-exchange neighborhoods
(kopt) which is a path improvement algorithm, where at each planning
phase, k steps from the current plan are replaced by k steps to get
A
3
B</p>
      <p>V1
4</p>
      <p>J</p>
      <p>3
4
4 V2
d1
C
2
D
2
d'
10
G
E
5
3
4</p>
      <p>
        F
2
H
2
I
a cheaper path [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. In the simplest settings k is set to 1 so the
kopt becomes 1-opt which means vehicle can exchange at most one
demand a time
Example 3 Let’s consider another case shown in Figure 6, where
V1 has d1 in its schedule, V2 has empty schedule, and a new
demand is announced d0 :&lt; (t10; t20); D; F &gt;. Vehicle bids are
thus BiddV11;d0 ((t10; t12); +4), BiddV01 (t10; +15) (taking into account
abandoning d1), and BiddV02 (t10; +13). Obviously BiddV11;d0 is the
winner and V1 takes the charge of both demands with global cost
+15, while the optimal solution in this case is that V2 who takes
both demands which make the global cost only +13, but using the
auctions with abandon strategies lets V2 in this case either bid for d0
alone when it is announced, or bid for d1 alone in response of the
abandon suggestion by V1. So in this case, the optimal solution is not
achievable with the aforementioned abandon strategies.
5.1
      </p>
    </sec>
    <sec id="sec-9">
      <title>Pull-demand Optimization Bids</title>
      <p>
        Similar to the Rolling Horizon strategy of [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], we propose an
Optimization Protocol to improve our heuristics. In the Rolling Horizon
strategy, all vehicle schedules are considered temporary and available
to be scheduled by any vehicle, unless they are considered as
committed requests by particular events (for example, v has started serving
(moving towards) d, whose remaining time to serve it is below the
horizon threshold).
      </p>
      <p>The application of this strategy requires that all vehicle schedules are
in shared memory, so that when a vehicle vi offers to serve a request
d, it knows if it is scheduled by another vehicle vj , and therefore if
it should send its offer cost to vj . Then vj will calculate the gain (or
loss) in operating cost by abandoning d compared to the cost proposed
by vi. If there is a gain, it agrees to abandon d and then vi updates its
schedule with d, otherwise the bid is rejected.</p>
      <p>In our protocol, we do not use the concept of committed request, but
a vehicle can only bid on requests that it can satisfy, so requests that
are rescheduled or that do not have enough time to be rescheduled are
automatically ignored by the agent. Another difference here is that we
don’t have a shared memory. Agents exchange information about the
context of the environment and about requests through information
messages.</p>
      <sec id="sec-9-1">
        <title>Protocol 1 Pull-demand Optimization Protocol</title>
        <p>Step 1 A set of new demands enters the system based on
announcement time order.</p>
        <p>Step 2 Each new request is distributed to the connected set to which
the sources belong. Each agent in this set can select his
potential requests from the set of requests that includes new
requests, scheduled and unscheduled requests that haven’t yet
reached their scheduled departure time.</p>
        <p>Step 3 The agents enter the auction to serve their potential demands
in similar auction criteria of the initial phase
Step 4 Each agent searches among its scheduled requests for the one
to satisfy the next tick, this request is called dnext. If dnext
exists, the agent broadcasts a "clear_demand" message to
inform other agents that it handles dnext. Each receiver deletes
it from their potential and known sets of requests. In addition,
each agent deletes any other requests that reach their time
window upper-bound because staying any longer available for
rescheduling would violate their time constraints.</p>
        <p>Step 5 The scheduled and unscheduled requests that still have time
remain announced by their sources (Step 2). This allows better
planning in the next tick, if new requests are announced, or
some new agents join the connected set.</p>
        <p>
          In addition, the proposal of [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ], where optimization is performed
periodically at a predefined frequency, while the protocol we
propose should be executed in parallel with the auction-based insertion
strategy to have a fast rescheduling for continuous requests. Based on
shared information of the current context, the optimization protocol
is executed between connected set components when any change in
this set context is detected (the set of vehicles in the connected set
is changed or at least one of them is newly aware of some requests
which are already scheduled by others). The protocol 5.1 details this
strategy.
5.2
        </p>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>Discussion</title>
      <p>
        Given the decentralized context, the use of the insertion heuristic is
very efficient in terms of response time. The temporal complexity of
the basic insertion heuristic for the Vehicle Routing Problem (VRP)
is of O(n3)[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This type of heuristic is often used to solve DARPs,
where new incoming requests have to be continuously processed in
real time and integrated into the evolving schedules of vehicles. The
usage of k-opt may add local improvements to the solution provided
by the insertion heuristic based on the current context. However, the
«Pull-demand» protocol can significantly improve the quality of the
solution as illustrated in the following example.
      </p>
      <p>Example 4 Let’s consider another case illustrated in Figure 6, where
V1 has d1 in its schedule, V2 has an empty schedule, and a new request
d0 :&lt; (t10; t20); D; F &gt; is announced. The bids of the vehicles
are thus BiddV01 (t12; +4), and BiddV02 (t10; +13). It is obvious that
BiddV11;d0 is the winner, and V1 will handle the two requests with
an overall cost of 15. With the «Pull-demand» protocol, d1 and d0
enters in the set of candidate requests for V1 and V2, so that the
vehicles can make combinatorial offers: BiddV11;d((t10; t12); 0) and
BiddV02;d1 ( 2). The cost of V2 is 13 and the gain of V1 is 15). V1
has nothing to change in its schedule. V2 wins and the solution is
improved with an additional optimization round. Let’s look at the
applied protocol, step by step.</p>
      <p>Step 1 d0 enters the system at t2 and both vehicles are aware of this,</p>
      <p>V1 wins the auction with an overall cost of 15
Step 2 d1 and d0 are now in the set of requests known by both vehicles,
V2 calculates the costs to serve d1 alone (13), d0 alone (9)
and both requests together making 13. It then selects the two
requests as its potential requests. V1 has no potential request
because it already has the two requests in its schedule.</p>
      <p>Step 3 V2 places a bid P ull_BiddV02;d1 ((t10; t12); 13). For V1 the
cost to serve both requests is 15 so it accepts P ull_BiddV02;d1
because it causes a gain of 2.</p>
      <p>Step 4 None of the requests reach their scheduled service time or the
upper-bound of their time window.</p>
      <p>Step 5 All known requests remain announced and available for the
next potential improvement.
6</p>
    </sec>
    <sec id="sec-11">
      <title>Experimental Evaluation</title>
      <p>In this section, we experimentally evaluate the performance of our
contributed pull-demand approach, using synthetic data and Open
Street Map information.
6.1</p>
    </sec>
    <sec id="sec-12">
      <title>Experimental Setup</title>
      <p>The city map of Saint-Étienne was chosen for the simulation. The
structure of the graph G =&lt; N; E &gt; including nodes, edges and a
set of sources of the S N request is extracted from OpenStreetMap
(OSM2). In all the experiments, we set the number of sources jSj =
20, having a set ES E of edges, such that jES j = 75 connecting
the sources, each edge has a number of points which varies according
to its length and the information extracted from OSM. The distance
between two consecutive points is 40 meters. We used a discrete-time
transport simulator available in the Plateforme Territoire3 to evaluate
the proposed strategy and analyze it in terms of quality of service and
gain.</p>
      <p>A fleet V of n vehicles is distributed randomly through S at the
beginning of execution. Each vehicle v 2 V moves from one point
to another on the same edge during each simulation cycle. In our test
we consider that vehicles communicate via (DSRC) with a realistic
communication range of 250m, so that a vehicle can send/receive
messages to/from other entities located in its range. Each vehicle v
can adopt two distinct travel behaviors: either marauding for requests
or going to a destination:
going_to defines the state of a vehicle when it has a specific
destination, i.e. a request to serve. The vehicle is either going_to
pickup location if the request is not yet picked up, or going_to
delivery location otherwise.
marauding defines the state of a vehicle when it does not have a
request to serve, i.e. at the beginning of the simulation, each vehicle
marauds until it decides to serve a request. Once a passenger is
dropped off, the vehicle reverts to marauding. In this state, the
vehicle randomly moves through its neighborhood to find requests
to serve.</p>
      <sec id="sec-12-1">
        <title>2 https://www.openstreetmap.org/ 3 https://territoire.emse.fr/</title>
        <p>At each simulation cycle, 0 or 1 request is generated in a uniformly
random manner. For each request, the origin and destination points
are randomly and uniformly generated from all sources. The time
window for the requests is generated using two constant parameters
l and u for the lower and upper limits as follows [twmin; twmax] is
initialized with two uniform random values where :</p>
        <p>twmin &lt; twmax
twmin
twmax
tactual + l
twmin + u
The evaluation criteria for these simulations are mainly the number
of requests satisfied as a measure of Quality of Service (QoS), the
simulated profit of the solution as a measure of Quality of Business
(QoB). The profit is calculated in terms of the difference between the
simulated travel price and the cost.
where
prof it = total_income</p>
        <p>total_cost
total_income = X P + p</p>
        <p>distance(d)
d2Ds
Ds D is the set of all satisfied requests, P is a fixed price (service
fee) per request, p is a pricing factor per unit of distance travelled,
distance(d) is the total travel distance for a request d and
total_cost =</p>
        <sec id="sec-12-1-1">
          <title>X cpd(v) total_distance(v)</title>
          <p>v2V
In our tests, we consider the vehicles to be identical in terms of
cpd( ) travel cost and p pricing factor. We set P = 1:5, p = 2 and
cpd(v) = 1 for all v.
6.2</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-13">
      <title>Experimental Results</title>
      <p>
        To assess the feasibility of the «Pull-demand» Heuristic , we compare
it to a greedy approach (programming a single request in advance)
which has been mentioned by [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] as the best strategy for dynamic
settings, following genetic algorithm selection. The two compared
approaches use the same request selection strategy (request priority
function) during each scenario. The results presented in the Figures 7
and 8 concern a scenario in which vehicles select the cheapest request
considering the costDemand(d; v) is the marginal cost mentioned
in section 4; the same is applicable to the greedy algorithm, since
the vehicle schedule can only contain one demand. We have executed
several instances of problems that vary with the size of the fleet
n. Each instance of these tests is executed 10 times with different
probability seeds. First, we evaluate with a fixed fleet size n = 16 to
track the quality of the solution over time, then with a variable fleet
size n 2 [4::36] over 200 cycles for each scenario.
      </p>
      <p>Note that it is impossible to achieve a 100% quality of service rate
in these scenarios, because there will always be requests that will be
generated until the last cycle, assuming that the scenario execution
continues to serve them, while the execution stops at the last cycle,
leaving them unserved. Although QoS values of our algorithm are
close to those generated by greedy, they remain slightly ahead of
them in most cases, as shown in Figure 9.</p>
      <p>Starting from small fleet of 4 vehicles the Pull-demand heuristic
allows to obtain solutions with the same QoS and QoB values as
those of the greedy algorithm. By increasing the size of the fleet,
more requests can be satisfied, which increases the QoS and QoB</p>
      <p>We find that the increase of these values for the heuristic is greater
than that of the greedy approach. This can be explained by the fact that
demand planning improves the system profit in the foreseeable future,
as it reduces the process of roaming without a specific destination until
a new demand is chosen, which is the behaviour of the vehicles in the
greedy algorithm.</p>
      <p>The value of QoS continues to grow as the fleet size increases,
until it reaches a nQoS threshold where the addition of new vehicles
becomes unnecessary, as all requests received in the system now or
in the future (except those received in the last moments of execution)
can be served with the current fleet size. The same is true for QoB, but
the difference here is that the vehicles added will result in additional
operational expenses, resulting in a loss of profit value after reaching
its nQoB growth threshold. In general, nQoB is less than nQoS , and
we can see a trade-off between improving QoS or QoB.</p>
      <p>According to the Figure 10, we see that the greedy fleet has
ngQreoeBdy = 12 with a QoS of only about 60%, while npQuoll-Bdemand = 16
with a QoS of about 70%. Note that npQuoll-Bdemand &lt; npQuoll-Bdemand and
even if it decreases afterwards, the value of npQuoll-Bdemand remains higher
than npQuoll-Bdemand. This gives a wider range of options for combining the
enhancements of the provided solution (QoS and QoB). The above
results show that in all cases, scheduling several requests in advance
with the optimization protocol Pull-demand gives better results than
scheduling a single request, with reduced computation time and no
global information sharing.
7</p>
    </sec>
    <sec id="sec-14">
      <title>Conclusion</title>
      <p>In this paper, we proposed a decentralised protocol for the exchange
of requests, based on an insertion heuristic, to allocate requests to
vehicles in the context of dynamic transport on demand. We show
through examples that the request exchange protocol can be a
promising improvement in the quality of the solutions. In order to assess the
feasibility of the proposed protocol, we evaluated the results of our
technique on synthetic data for taxis operating in the city of
SaintÉtienne, and showed that it outperforms a classical greedy approach.
In future work, we plan to evaluate the efficiency, performance,
robustness and optimality of this heuristic with respect to different
approaches, by simulating different parameters on information
distribution, decision criteria and different levels of problem dynamics.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Niels</surname>
            <given-names>A.H.</given-names>
          </string-name>
          <string-name>
            <surname>Agatz</surname>
            , Alan L. Erera,
            <given-names>Martin W.P.</given-names>
          </string-name>
          <string-name>
            <surname>Savelsbergh</surname>
          </string-name>
          , and Xing Wang, '
          <article-title>Dynamic ride-sharing: A simulation study in metro atlanta'</article-title>
          ,
          <source>Transportation Research Part B: Methodological</source>
          ,
          <volume>45</volume>
          (
          <issue>9</issue>
          ),
          <fpage>1450</fpage>
          -
          <lpage>1464</lpage>
          , (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>C</given-names>
            <surname>Bellini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G</given-names>
            <surname>Dellepiane</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C</given-names>
            <surname>Quaglierini</surname>
          </string-name>
          , '
          <article-title>The demand responsive transport services: Italian approach', Transaction on the Built Environment</article-title>
          , WIT Press , www.
          <source>witpress.com, ISSN 1743-3509</source>
          ,
          <issue>64</issue>
          ,
          <fpage>10</fpage>
          , (
          <year>2003</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3] Ann Melissa Campbell and Martin Savelsbergh, '
          <article-title>Efficient insertion heuristics for vehicle routing and scheduling problems'</article-title>
          , Transportation science,
          <volume>38</volume>
          (
          <issue>3</issue>
          ),
          <fpage>369</fpage>
          -
          <lpage>378</lpage>
          , (
          <year>2004</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Cramton</surname>
          </string-name>
          , Yoav Shoham, and Richard Steinberg, '
          <article-title>An overview of combinatorial auctions'</article-title>
          ,
          <source>ACM SIGecom Exchanges</source>
          ,
          <volume>7</volume>
          (
          <issue>1</issue>
          ),
          <fpage>3</fpage>
          -
          <lpage>14</lpage>
          , (
          <year>December 2007</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Panayiotis</given-names>
            <surname>Danassis</surname>
          </string-name>
          , Aris Filos-Ratsikas, and Boi Faltings, '
          <article-title>Anytime Heuristic for Weighted Matching Through Altruism-Inspired Behavior'</article-title>
          ,
          <source>in Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence</source>
          , pp.
          <fpage>215</fpage>
          -
          <lpage>222</lpage>
          , Macao, China, (
          <year>August 2019</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Kakan</given-names>
            <surname>Chandra</surname>
          </string-name>
          <string-name>
            <surname>Dey</surname>
          </string-name>
          , Anjan Rayamajhi, Mashrur Chowdhury, Parth Bhavsar, and James Martin, '
          <article-title>Vehicle-to-vehicle (V2V) and vehicleto-infrastructure (V2I) communication in a heterogeneous wireless network - Performance evaluation'</article-title>
          , Transportation Research Part C: Emerging Technologies,
          <volume>68</volume>
          ,
          <fpage>168</fpage>
          -
          <lpage>184</lpage>
          , (
          <year>July 2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Malcolm</given-names>
            <surname>Egan</surname>
          </string-name>
          and Michal Jakob, '
          <article-title>Market Mechanism Design for Profitable On-Demand Transport Services'</article-title>
          , arXiv:
          <fpage>1501</fpage>
          .01582 [cs],
          <source>(January</source>
          <year>2015</year>
          ). arXiv:
          <volume>1501</volume>
          .
          <fpage>01582</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Mohamad</given-names>
            <surname>El</surname>
          </string-name>
          <string-name>
            <surname>Falou</surname>
          </string-name>
          , Mhamed Itmi, Salah El Falou, and Alain Cardon, '
          <article-title>On demand transport system's approach as a multi-agent planning problem'</article-title>
          ,
          <source>in 2014 International Conference on Advanced Logistics and Transport (ICALT)</source>
          , pp.
          <fpage>53</fpage>
          -
          <lpage>58</lpage>
          . IEEE, (
          <year>2014</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Andrey</given-names>
            <surname>Glaschenko</surname>
          </string-name>
          , Anton Ivaschenko, George Rzevski, and Petr Skobelev,
          <article-title>'Multi-Agent Real Time Scheduling System for Taxi Companies'</article-title>
          ,
          <source>AAMAS</source>
          ,
          <volume>8</volume>
          , (
          <year>2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <article-title>Josep Maria Salanova Grau and Miquel Angel Estrada Romeu, 'Agent Based Modelling for Simulating Taxi Services'</article-title>
          ,
          <source>Procedia Computer Science</source>
          ,
          <volume>52</volume>
          ,
          <fpage>902</fpage>
          -
          <lpage>907</lpage>
          , (
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Josep</given-names>
            <surname>Maria Salanova Grau</surname>
          </string-name>
          , Miquel Angel Estrada Romeu, Evangelos Mitsakis, and Iraklis Stamos, '
          <article-title>Agent based modeling for simulation of taxi services'</article-title>
          ,
          <source>Journal of Traffic and Logistics Engineering</source>
          ,
          <volume>1</volume>
          (
          <issue>2</issue>
          ),
          <fpage>159</fpage>
          -
          <lpage>163</lpage>
          , (
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Keld</surname>
            <given-names>Helsgaun</given-names>
          </string-name>
          , '
          <article-title>General k-opt submoves for the Lin-Kernighan TSP heuristic'</article-title>
          ,
          <source>Mathematical Programming Computation</source>
          ,
          <volume>1</volume>
          (
          <issue>2</issue>
          ),
          <fpage>119</fpage>
          -
          <lpage>163</lpage>
          , (
          <year>October 2009</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>KFH-Group</surname>
          </string-name>
          , Urbitran Associates,
          <source>McCollom Management Consulting</source>
          , Cambridge Systematics, Transit Cooperative Research Program,
          <string-name>
            <given-names>United</given-names>
            <surname>States</surname>
          </string-name>
          .
          <article-title>Federal Transit Administration, and Transit Development Corporation, Guidebook for measuring, assessing, and improving performance of demand-response transportation</article-title>
          , volume
          <volume>124</volume>
          , Transportation Research Board, Washington, DC,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>Gauthier</surname>
            <given-names>Picard</given-names>
          </string-name>
          , Flavien Balbo, and Olivier Boissier, '
          <article-title>Approches multiagents pour l'allocation de courses à une flotte de taxis autonomes', in RIA2018, number 2 in Revue d'intelligence artificielle</article-title>
          , pp.
          <fpage>223</fpage>
          -
          <lpage>247</lpage>
          , (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>Wen</given-names>
            <surname>Shen</surname>
          </string-name>
          and
          <string-name>
            <given-names>Cristina</given-names>
            <surname>Lopes</surname>
          </string-name>
          , '
          <article-title>Managing Autonomous Mobility on Demand Systems for Better Passenger Experience'</article-title>
          , arXiv:
          <fpage>1507</fpage>
          .02563 [cs],
          <volume>9387</volume>
          ,
          <fpage>20</fpage>
          -
          <lpage>35</lpage>
          , (
          <year>2015</year>
          ). arXiv:
          <volume>1507</volume>
          .
          <fpage>02563</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Marius</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Solomon</surname>
          </string-name>
          , '
          <article-title>Algorithms for the Vehicle Routing and Scheduling Problems with Time Window Constraints'</article-title>
          ,
          <source>Operations Research</source>
          ,
          <volume>35</volume>
          (
          <issue>2</issue>
          ),
          <fpage>254</fpage>
          -
          <lpage>265</lpage>
          , (
          <year>1987</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Rinde</surname>
            <given-names>R.S. van Lon</given-names>
          </string-name>
          , Tom Holvoet, Greet Vanden Berghe, Tom Wenseleers, and Juergen Branke, '
          <article-title>Evolutionary synthesis of multi-agent systems for dynamic dial-a-ride problems'</article-title>
          ,
          <source>in Proceedings of the fourteenth international conference on Genetic and evolutionary computation conference companion - GECCO Companion '12</source>
          , p.
          <fpage>331</fpage>
          , Philadelphia, Pennsylvania, USA, (
          <year>2012</year>
          ). ACM Press.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>