+ All Categories
Home > Documents > Research Article An Iterative Algorithm for the Management of an Electric Car-Rental...

Research Article An Iterative Algorithm for the Management of an Electric Car-Rental...

Date post: 21-Aug-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
12
Research Article An Iterative Algorithm for the Management of an Electric Car-Rental Service J. Alberto Conejero, 1 Cristina Jordán, 2 and Esther Sanabria-Codesal 3 1 Instituto Universitario de Matem´ atica Pura y Aplicada, Universitat Polit` ecnica de Val` encia, 46022 Val` encia, Spain 2 Instituto Universitario de Matem´ atica Multidisciplinar, Universitat Polit` ecnica de Val` encia, 46022 Val` encia, Spain 3 Departamento de Matem´ atica Aplicada, Universitat Polit` ecnica de Val` encia, 46022 Val` encia, Spain Correspondence should be addressed to J. Alberto Conejero; [email protected] Received 21 February 2014; Accepted 24 April 2014; Published 25 May 2014 Academic Editor: Juan R. Torregrosa Copyright © 2014 J. Alberto Conejero et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. e management of a car-rental service becomes more complex as long as one-way bookings between different depots are accepted. ese bookings can increase the operational costs due to the necessity of moving vehicles from one depot to another by the company staff in order to attend previously accepted bookings. We present an iterative model based on flows on networks for the acceptance of bookings by a car-rental service that permits one-way reservations. Our model lets us also recover the movement of the fleet of vehicles between the depots over the time. In addition, it also permits including restrictions on the amount of cars managed at every single depot. ese results can be of interest for an electric car-rental service that operates at different depots within a city or region. 1. Introduction Car rentals can admit bookings where the pick-up and drop- off location can coincide or not. If bookings are only admitted when both locations coincide, their management is not as complicated as if bookings are only accepted when the loca- tions are different (one-way bookings). When this happens, these companies face much more difficulties in order to cope with the management of their fleet of vehicles, since these bookings could entail a huge increment of operational costs due to deadhead times. Nevertheless, in order to offer a high level of service thier policy is to accept bookings without a deep examination of its consequences on the operational costs [1]. e use of fully electric vehicles (FEV) is fostered by government authorities in order to contribute to the lowering of the current pollution levels [2]. is comes jointly with a gradual phasing out of conventionally-fuelled vehicles from the urban environment [3]. Some references concerning the adoption of these new transportation devices can also be found in [4, 5]. e easiest way to implement a rental service of electric vehicles is to make the users return them at the place where the cars have been picked off. is is done in order to be sure that every car has its own parking place with a charging point. erefore, an improvement in the process of acceptance of bookings that consider one-way trips between different stations and try to avoid, as far as possible, the amount of staff dedicated to the rearrangement of vehicles between the depots is of particular interest in order to facilitate and extend their use among the potential users. erefore, a social benefit is obtained as long as the number of reservations of these shared vehicles is increased and the number of private cars running is reduced. Flows and networks were firstly used in the air industry for solving fleet routing problems, see for instance [69]. e problems that can be solved using them range from schedule design, flight assignment [10], and crew scheduling [11] to scheduling of air cargo alliances [12]. eir techniques have been also considered in the management of car-rental services in order to answer questions of strategic and tactical Hindawi Publishing Corporation Journal of Applied Mathematics Volume 2014, Article ID 483734, 11 pages http://dx.doi.org/10.1155/2014/483734
Transcript
Page 1: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Research ArticleAn Iterative Algorithm for the Managementof an Electric Car-Rental Service

J Alberto Conejero1 Cristina Jordaacuten2 and Esther Sanabria-Codesal3

1 Instituto Universitario de Matematica Pura y Aplicada Universitat Politecnica de Valencia 46022 Valencia Spain2 Instituto Universitario de Matematica Multidisciplinar Universitat Politecnica de Valencia 46022 Valencia Spain3 Departamento de Matematica Aplicada Universitat Politecnica de Valencia 46022 Valencia Spain

Correspondence should be addressed to J Alberto Conejero aconejeroupves

Received 21 February 2014 Accepted 24 April 2014 Published 25 May 2014

Academic Editor Juan R Torregrosa

Copyright copy 2014 J Alberto Conejero et al This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

Themanagement of a car-rental service becomesmore complex as long as one-way bookings between different depots are acceptedThese bookings can increase the operational costs due to the necessity ofmoving vehicles fromone depot to another by the companystaff in order to attend previously accepted bookings We present an iterative model based on flows on networks for the acceptanceof bookings by a car-rental service that permits one-way reservations Our model lets us also recover the movement of the fleetof vehicles between the depots over the time In addition it also permits including restrictions on the amount of cars managed atevery single depot These results can be of interest for an electric car-rental service that operates at different depots within a city orregion

1 Introduction

Car rentals can admit bookings where the pick-up and drop-off location can coincide or not If bookings are only admittedwhen both locations coincide their management is not ascomplicated as if bookings are only accepted when the loca-tions are different (one-way bookings) When this happensthese companies face much more difficulties in order to copewith the management of their fleet of vehicles since thesebookings could entail a huge increment of operational costsdue to deadhead times Nevertheless in order to offer a highlevel of service thier policy is to accept bookings withouta deep examination of its consequences on the operationalcosts [1]

The use of fully electric vehicles (FEV) is fostered bygovernment authorities in order to contribute to the loweringof the current pollution levels [2] This comes jointly with agradual phasing out of conventionally-fuelled vehicles fromthe urban environment [3] Some references concerning theadoption of these new transportation devices can also befound in [4 5]

The easiest way to implement a rental service of electricvehicles is to make the users return them at the place wherethe cars have been picked offThis is done in order to be surethat every car has its own parking place with a charging pointTherefore an improvement in the process of acceptanceof bookings that consider one-way trips between differentstations and try to avoid as far as possible the amount ofstaff dedicated to the rearrangement of vehicles between thedepots is of particular interest in order to facilitate and extendtheir use among the potential usersTherefore a social benefitis obtained as long as the number of reservations of theseshared vehicles is increased and the number of private carsrunning is reduced

Flows and networks were firstly used in the air industryfor solving fleet routing problems see for instance [6ndash9]The problems that can be solved using them range fromschedule design flight assignment [10] and crew scheduling[11] to scheduling of air cargo alliances [12] Their techniqueshave been also considered in the management of car-rentalservices in order to answer questions of strategic and tactical

Hindawi Publishing CorporationJournal of Applied MathematicsVolume 2014 Article ID 483734 11 pageshttpdxdoiorg1011552014483734

2 Journal of Applied Mathematics

decisions revenue and capacity management and pricingsee for instance [1 13ndash15]

We suppose that a simulation of bookings for a car-rentalservice is givenWemodel the process of acceptancerejectionof those petitions This depends on having a car available atthe departure point (without leaving unattended any otherpreviously scheduled booking from that place) and on havingan empty parking space at the arrival destinationWe assumethat an answer should be given as fast as possible to the clientTherefore we will answer each petition before consideringthe next one We do not consider the case that a rejectedbooking can turn to be admissible after some other bookinghas been accepted As we said before the general practicein the car-rental industry is to accept bookings and later tooptimize the management of the fleet of vehicles

The car-rental services considered in the frame of thispaper are managed with a little different policy We assumethat one of these services does not need to competewith otherservices and it is just an optional element inside the mobilitynetwork of an urban area where other means of transportare offered to the citizens Therefore if a booking should berejected because of the lack of available cars or empty parkingslots then we reject it since we consider that this will havea low impact on the service perception of prospective usersas long as other means of transport can be used In this waywe determine which bookings should be admitted withoutfalling on deadhead times due to the rearrangement of carsby the car-rental service staff

The paper is organized as follows In Section 2 we intro-duce some basics of graph theory about flows and networksWe also present time-expanded networks Our model formanaging the bookings using a network is presented inSection 3 Section 4 is devoted to explain the theoreticalbackground that backs our computational method A firstalgorithmic approach based on Ford-Fulkerson algorithm ispresented in Section 5 We will see that the problem thatarises can be stated in terms of finding an admissible flow ona network with minimum capacities at certain edges Lateran iterative method based on a simplification of the auxiliarynetwork defined for considering the admissibility of the flowwill be given in Section 6 This method lays on a solutionof certain shortest path problem An analysis of the resultsis reported in Section 7 Finally in Section 8 we discuss thecontribution of the model to the management of a service inorder to offer a cheaper rental service which will contributeto extend its use for themovementswithin an urban areaOuralgorithm helps to determine if it is advisable to increase thefleet of vehicles or the size of the parking at a certain depotattending to the increments of cost and to the number ofadditional bookings accepted

2 Preliminaries

A directed graph 119866 = (119881 119864) is given by a set of nodes 119881 anda set of ordered pairs of nodes (arcs) If an arc connects thenode 119906 with the node V we will simply denote it by (119906 V) Werecall that a 5-tuple119873 = (119881 119864 119904 119905 119888) is named network if it is adirected weakly connected graph where119881 is the set of nodes

119864 is the set of arcs 119904 is a nodewith outgoing degree positive (atleast one edge departs from it) usually called source 119905 is a nodewith ingoing degree positive (at least one edge arrives to it)usually called sink and 119888 is a function from119864 toN that assignsto every edge (119906 V) isin 119864 a value 119888(119906 V) that will represent themaximum capacity permitted on this edge Given a network119873 we can consider flows on them A flow 119891 is a function 119891

119864 rarr N such that 119891(119906 V) le 119888(119906 V) for every (119906 V) isin 119864 andfor every V isin 119881 119904 119905 the sum of the values of the flow onthe edges with V as initial node coincides with the sum of theflows on the edges with V as final node that is

sum

119906isin119881(119906V)isin119864119891 (119906 V) = sum

119906isin119881(V119906)isin119864119891 (V 119906) (1)

Condition (1) is usually known as the conservation law ofthe flow The value of the flow 119891 on119873 119891(119873) is defined as thesum of the flows on the adjacent arcs to 119904 (or to 119905)

119891 (119873) = sum

119906isin119881(119904119906)isin119864

119891 (119904 119906) = sum

119906isin119881(119906119905)isin119864

119891 (119906 119905) (2)

A flow 119891 on 119873 is said to be maximum if it has themaximum value among all possible flows that can be definedon119873 We refer the reader to [16ndash24] for general informationon flows and networks and graph theory

In particular we are going to consider time-expandednetworks also called time-space networks [18 25] In thesenetworks the inner nodes of the network (not the sink northe source) represent locations at certain times The sourceis connected with all locations at the initial time and alllocations at the final time are connected with the sink Thisis also the structure used for dealing with problems in whichthe flow emerges from several sources and leaves at severalsinks

Now we transform this network into a one time-expanded network in which we reply cities as many times astime periods we are going to consider see Figure 1 Nodes ineach column represent the same city and each level representsthe same time period for different cities

In this model we also consider another value associatedwith each arc named its minimum capacity The minimumcapacity is a function 119898 119864 rarr N The flow through everyedge (119906 V) isin 119864 must verify 119898(119906 V) le 119891(119906 V) le 119888(119906 V)We denote a network 119873 with minimum capacities as 119873 =

(119881 119864 119904 119905 119898 119888) where 119881 is the set of nodes 119864 the set ofedges 119904 the source 119905 the sink and 119898 119888 the minimum andmaximum capacities respectively Networks with maximumand minimum capacities cannot always admit a flow thatrespects the upper and lower bounds It is compulsory thatfor every node V isin 119881 the sum of the maximum capacities ofall the edges that arrive to V was greater than or equal to thesum of the minimum capacities of all the edges that departfrom it Consider

sum

119906isin119881(V119906)isin119864119898(V 119906) le sum

119906isin119881(119906V)isin119864119888 (119906 V) (3)

If not the conservation law never holdsIn the next section we proceed to explain in detail the

steps that let us construct a model for deciding whether to

Journal of Applied Mathematics 3

S

12 3 n t1

t2

t3

tm

T

Figure 1 A time-expanded network with 119899 depots at119898 times Arcsin green represent bookings of cars and arcs in black representstaying at the parking of each depot

accept or reject a booking attending to the distribution of carsat the departure depot and the existence of empty parkingplaces at the arrival one

3 A Car-Rental Booking Model

Suppose that our car-rental service operates with only onetype of car Let 119899 be the number of locations (depots) andassume that depot 119894 starts with a given number of cars 119896

119894

Let 1198960be the total number of cars of the company that is

1198960= sum119899

119894=1119896119894 In addition we suppose that depot 119894 has 119901

119894

parking slots at its location to park the cars that are not usedby any client and are recharging and waiting to be reservedWe assume that this number cannot be increased along thetime

We also consider the bookings along119898 consecutive daysℎ possible times a day Then the sequence 119905

119895 1 le 119895 le ℎ119898

represents all the possible time periods For instance if weconsider the times 900 1000 2000 then ℎ = 12 So thatV11989412(119886minus1)+119887

for some 1 le 119886 le 119898 and 1 le 119887 le 12 represents(8+b)00 am of the day 119886 at the location 119894

The set of nodes 119881 will consist of 119904 119905 (the source and thesink) and all the possible combinations of locations and timesV119894119895

1 le 119894 le 119899 1 le 119895 le ℎ119898 where V119894119895

represents thelocation 119894 at time 119905

119895

The set 119864 is formed by four types of arcs The first threeare the following ones

(i) (119904 V1198941) 1 le 119894 le 119899 that connect the source with the

depots at the first instant of time(ii) (V

119894119895 V119894119895+1

) 1 le 119894 le 119899 1 le 119895 le ℎ119898 minus 1 that representstaying at a parking between two consecutive times

(iii) (V119894ℎ119898

119905) 1 le 119894 le 119899 that connect the depots at the lasttime to the sink

Our objective is to know if we can accept a booking of119908 cars between two determined depots at two different timemoments under the restrictions of having enough vehiclesat the departure depot and free space at the arrival one Wedefine a booking by a 5-tuple 119903 = (119894

119901 119905119901 119894119889 119905119889 119908) where

1 le 119894119901 119894119889le 119899 1 le 119905

119901lt 119905119889le ℎ119898 and 119899 isin N with 119894

119901being the

pick-up depot 119905119889being the pick-up time 119894

119889being the drop-

off city 119905119889being the drop-off time and 119908 being the number

of cars to be reserved Each booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908) is

converted into a new edge from node V119894119901 119905119901

to node V119894119889119905119889

Thiswill be the fourth type of arcs of our network

Now we analyze which capacities are necessary to modelthe movement of the cars along the time and to accept onlyadmissible bookings

We have supposed that depot 119894 has 119901119894parking spaces To

set this restriction we assign 119901119894as maximum capacity to the

edge (V119894119895 V119894119895+1

) 1 le 119894 le 119899 1 le 119895 le ℎ119898 and every node of theform V

119894ℎ119898 1 le 119894 le 119899 must be connected with the sink 119905 by an

edge with 119901119894as maximum capacity

Finally we must assign a minimum capacity to arcs(119904 V1198941) If not the cars at a depot 119894 could not be considered in

the parking in the future In Figures 2 and 3 every edge (119906 V) isin119864 has a 3-tuple (119898(119906 V) 119891(119906 V) 119888(119906 V)) associated with itwhere 119898 and 119888 are the minimum and maximum capacitiesrespectively and 119891 denotes the flow If we suppose that arcs(119904 V1198941) have assignedminimum capacity equal to the number

of cars of every depot 119896119894 we will avoid the aforementioned

problem The following example shows the necessity of aminimum capacity for the edges that represent the startingtime at every parking

Example 1 Suppose that we start with 6 cars at depot 1 attime 119905 = 1 and with 7 cars at depot 2 at time 119905 = 1 too Wealso consider that we have 7 and 8 parking slots respectivelyat each one of these depots Let us suppose that we have todecide whether the booking (2 1 1 2 3) could be acceptedor not

In Figure 2 we have a piece of a network withoutminimum capacities in the edges (119904 V

11) and (119904 V

21) In this

case there is a flow of 3 cars across the edge (V21 V12) and

therefore the booking would be accepted Nevertheless thereare 6 cars parked at slot 1 during all periods of time and thisis not taken into account If they were then the proposedbooking cannot be accepted as it is indicated in Figure 3 sincewe will have a total number of 9 cars that arrive to node V

12

This is not possible since the conservation law fails due to thefact that the maximum capacity of the only edge that departsfrom (V

12) is 7

For edges representing bookings we also have to considerthat the minimum and maximum capacity must coincide inorder to be sure that the cars follow the booking itineraryand do not stay at the parking of the picking up depot Nextexample shows the necessity of minimum capacity for edgesassociated with bookings

Example 2 Suppose that we want to represent a booking ofthe form (1 2 2 3 1) This is done by considering a flow of 1car along the edge (V

12 V23)

4 Journal of Applied Mathematics

S

(0 4 6) (0 7 7)

(0 7 7)

(3 3 3)

(0 4 7) (0 4 8)

(0 4 8)

11 21

12

13

22

23

Figure 2Withoutminimum capacities on the arcs that depart from119878

S

(0 4 8)

(0 4 8)

11 21

12

13

(6 6 6) (7 7 7)

22

23

(3 9984009984003998400998400 3)

(0 9984009984006998400998400 7)

(0 9984009984009998400998400 7)

Figure 3 With minimum capacities on the arcs that depart from 119878

In Figure 4 we have a piece of a network withoutminimum capacities at the edge (V

12 V23) In this case we

cannot be sure that the flow of 1 unit that corresponds to thisbooking will traverse the edge and therefore the car will gofrom depot 1 to depot 2 at those times We can only ensurethis if we assign a minimum capacity of 1 unit to this edge asit is shown in Figure 5

4 Existence of an Admissible Flowon the Network

The flow over the network that we have already presentedsimulates the movement of the cars over time As we saidbefore a flow through a network with minimum capacities

11

12

13

14

21

22

23

24

(0 5 7)

(0 5 7)

(0 5 7)

(0 7 8)

(0 7 8)

(0 7 8)

(0 0 1)

Figure 4 Without minimum capacities on the arcs that represent abooking

(0 5 7) (0 7 8)

(0 7 8)(0 4 7)

(0 4 7) (0 8 8)

(1 1 1)

11

12

13

14

21

22

23

24

Figure 5 With minimum capacities on the arcs that represent abooking

could not be admissible Firstly the initial number of carsat every depot must be smaller or equal to the number ofparking slots at each depot that is 119896

119894le 119901119894for 119894 = 1 119899

Secondly a list of bookings which is in fact a list of new edgesto be added to the former network could result into a networkwithout any admissible flow

Journal of Applied Mathematics 5

Now we start with the initial network 119873 that containsonly the first three types of edges that were previously men-tioned This network has the following values as maximumcapacities at their edges

119888 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901119894

for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(4)

In addition we also set the following minimum capaci-ties

119898(119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

0 for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

0 for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(5)

Then the following flow results in being admissible onthis network

119891 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119896119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119896119894

for 119906 = V119894ℎ119898

V = t 119894 = 1 119899

(6)

Now let us suppose that we have an ordered list of 119871bookings requests 119903

1 119903

119871 where each booking is given by

its corresponding 5-tuple Consider that these bookings havearrived to us in advance to 119905

1 for instance through thewebsite

of the car-rental companyWe have to decide whether we canaccept them or not The acceptance of each booking dependson the acceptance or not of the previous onesWe assume thatall bookings must be answered following a first-infirst-outcriterion which is the closest approach to the managementof bookings that arrive through a web service

We start with the first booking request 1199031

=

(1198941199011 1199051199011 1198941198891 1199051198891 1199081) and we add the corresponding edge

from node V11989411990111199051199011

to V11989411988911199051198891

with maximum and minimumcapacities equal to 119908

1

In order to know if there exists an admissible flowin the network 119873 = (119881 119864 119904 119905 119898 119888) with the additionaledge corresponding to booking 119903

1 we define an auxiliary

network 1198731015840 and apply Ford-Fulkerson algorithm on it Theexplanation of Ford-Fulkerson algorithm can also be foundin [16 18 19 21]

The use of this network 1198731015840 in order to determine the

existence of an admissible flow on a network with minimumcapacities is given by the following result that can be foundeither in [16 page 83] or in [21 page 92] Its applicationprovides us with a theoretical support for modeling ourproblem

Theorem 3 Let119873 = (119881 119864 119904 119905 119898 119888) be a network and let oneconsider its auxiliary network1198731015840 defined as follows

(1) The set of nodes of1198731015840 consists of the nodes of119873 and twonew auxiliary nodes 1199041015840 1199051015840 that will be the source and thesink respectively of the network1198731015840

(2) To define 1198641015840 we consider all the edges of 119864 and we adda new one from 119905 to 119904 with infinite capacity

(3) For every edge (119906 V) isin 119864 with capacity119898(119906 V) ge 0 wealso change its maximum capacity 119888(119906 V) by 119888(119906 V) minus119898(119906 V) and we add a new edge (1199041015840 V) with maximumcapacity 1198881015840(1199041015840 V) = 119898(119906 V) and another one (119906 1199051015840)withmaximum capacity 1198881015840(119906 1199051015840) = 119898(119906 V)

(4) We also set all the minimum capacities of1198731015840 to zero

Let 1198911015840 be a flow of maximum value 1198911015840(1198731015840) on1198731015840 and let1198911015840

(119905 119904) be the flow of 1198911015840 through the edge (119905 119904) There exists anadmissible flow of value 1198911015840(119905 119904) on 119873 if and only if 1198911015840(1198731015840) =sum(119906V)isin119864119898(119906 V)

Remark 4 The proof of Theorem 3 shows how to constructthe admissible flow we just have to define119891(119906 V) = 119891

1015840

(119906 V)+119898(119906 V) for every edge (119906 V) in the initial network119873 and itsvalue will be 1198911015840(119905 119904)

To sum up the network 1198731015840 obtained when consideringalso the first booking 119903

1has 119881 cup 119904

1015840

1199051015840

as the set of nodes 1199041015840as the source 1199051015840 as the sink and the following edges with theircorrespondingmaximum capacitiesThese new capacities aredefined as

119888 (119906 V) =

infin for 119906 = 119905 V = 119904

119899

sum

119894=1

119896119894

for 119906 = 119904 V = 1199051015840

119896119894

for 119906 = 1199041015840

V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901i for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

1199081

for 119906 = V11989411990111199051199011

V = 1199051015840

1199081

for 119906 = 1199041015840

V = V11989411988911199051198891

(7)

We have eliminated the edges that should appear on1198731015840 with maximum capacity equal to 0 If there exists a

maximum flow on this network of value 1198911015840(1198731015840) = sum119899

119894=1119896119894+

6 Journal of Applied Mathematics

S

T

11

12

21

22

(k1 minus k1) (k2 minus k2)

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

Figure 6 Network119873

1199081 then the booking should be accepted byTheorem 3 If it is

not accepted we remove the edges (V11989411990111199051199011

1199051015840

) and (1199041015840 V11989411988911199051198891

)If yes then we keep these two edges on1198731015840

Example 5 Suppose that we have two depots 1 and 2 with1198961cars at depot 1 and 119896

2cars at depot 2 We consider each

depot at two different times 119905 = 1 and 119905 = 2 Supposethat we have a booking of 119908

1cars from depot 1 at time 119905

1

to depot 2 at time 1199052 In Figure 6 we have the initial network

119873with theminimum andmaximum capacities at every edgeThe flow is not indicated at any arc In Figure 7 we have thecorresponding auxiliary network1198731015840 where we have reducedthe minimum capacities 0 of the arcs as it is indicated in (7)We recall that the arcs with maximum capacity equal to 0 arealso removed

After dealing with 1199031 we pass to next booking 119903

2=

(1198941199012 1199051199012 1198941198892 1199051198892 1199082) andwe proceed as before adding two new

edges to1198731015840 with capacity 1199082

119888 (119906 V) =

1199082 for 119906 = V

11989411990121199051199012

V = 1199051015840

1199082 for 119906 = 119904

1015840

V = V11989411988921199051198892

(8)

If for dealing with an arbitrary booking 119903 =

(119894119901 119905119901 119894119889 119905119889 119908) one (or two) of the edges (V

119894119901 119905119901 1199051015840

) and(1199041015840

V119894119901 119905119901

) are already defined on 1198731015840 what we have to do is

to sum 119908 to the existing maximum capacity of that edgeand test the admissibility of 1198731015840 If the booking should notbe accepted then we just have to decrease the maximumcapacity of that edge on119908 leaving the edge with the previouscapacity

Remark 6 Our model lets us cancel a booking some timeafter it was already accepted It is sufficient to decrease themaximum capacity along the corresponding edge in as manyunits as the booking indicates removing it if afterwards its

S

S998400

T

T998400

11

12

21

22

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

(0 minus k1)

(0 minus k2)

(0 minusinfin)

(0 minus k1 + k2)

Figure 7 Auxiliary network1198731015840

maximum capacity is 0 But we have to check if doing thiswe get a network without an admissible flow On one handthis could happen with one-way bookings when the car wasrequired to be at another city in the future for being used foranother booking departing from there In this case the carmust bemoved there by the company staffOn the other handthe lack of an admissible flow on the network can also comefrom the necessity of needing more parking spaces availableat the departure city during part of the time that the car wasreserved

5 Algorithm for Computing theAdmissibility of the Network 119873

In this section we explain how we define the graph of 1198731015840in order to maximize the flow on this network The Ford-Fulkerson algorithm provides a solution for the quest of amaximum flow between a source and a sink on a network

As we have mentioned in the previous section theacceptance of a booking depends on verifying whether acertain network 119873 with minimum capacities admits a flowor not and this can be reduced to find a maximum flow onan auxiliary network1198731015840 The following algorithm shows howto define 1198731015840 and how to use it in order to accept or reject areservation

Step 1 Notation

(11) 119899 number of depots(12) For every 1 le 119894 le 119899 119901

119894stands for the number of

parking places available at depot 119894(13) For every 1 le 119894 le 119899 119896

119894denotes the initial number of

cars at depot 119894(14) ℎ119898 is the total number of time moments considered

1199051 119905

ℎ119898

(15) The network 1198731015840 will have ℎ119898119899 + 4 nodes that is 119899depots at ℎ119898 different times plus 4 nodes for 119904 119905 1199041015840and 1199051015840

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 2: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

2 Journal of Applied Mathematics

decisions revenue and capacity management and pricingsee for instance [1 13ndash15]

We suppose that a simulation of bookings for a car-rentalservice is givenWemodel the process of acceptancerejectionof those petitions This depends on having a car available atthe departure point (without leaving unattended any otherpreviously scheduled booking from that place) and on havingan empty parking space at the arrival destinationWe assumethat an answer should be given as fast as possible to the clientTherefore we will answer each petition before consideringthe next one We do not consider the case that a rejectedbooking can turn to be admissible after some other bookinghas been accepted As we said before the general practicein the car-rental industry is to accept bookings and later tooptimize the management of the fleet of vehicles

The car-rental services considered in the frame of thispaper are managed with a little different policy We assumethat one of these services does not need to competewith otherservices and it is just an optional element inside the mobilitynetwork of an urban area where other means of transportare offered to the citizens Therefore if a booking should berejected because of the lack of available cars or empty parkingslots then we reject it since we consider that this will havea low impact on the service perception of prospective usersas long as other means of transport can be used In this waywe determine which bookings should be admitted withoutfalling on deadhead times due to the rearrangement of carsby the car-rental service staff

The paper is organized as follows In Section 2 we intro-duce some basics of graph theory about flows and networksWe also present time-expanded networks Our model formanaging the bookings using a network is presented inSection 3 Section 4 is devoted to explain the theoreticalbackground that backs our computational method A firstalgorithmic approach based on Ford-Fulkerson algorithm ispresented in Section 5 We will see that the problem thatarises can be stated in terms of finding an admissible flow ona network with minimum capacities at certain edges Lateran iterative method based on a simplification of the auxiliarynetwork defined for considering the admissibility of the flowwill be given in Section 6 This method lays on a solutionof certain shortest path problem An analysis of the resultsis reported in Section 7 Finally in Section 8 we discuss thecontribution of the model to the management of a service inorder to offer a cheaper rental service which will contributeto extend its use for themovementswithin an urban areaOuralgorithm helps to determine if it is advisable to increase thefleet of vehicles or the size of the parking at a certain depotattending to the increments of cost and to the number ofadditional bookings accepted

2 Preliminaries

A directed graph 119866 = (119881 119864) is given by a set of nodes 119881 anda set of ordered pairs of nodes (arcs) If an arc connects thenode 119906 with the node V we will simply denote it by (119906 V) Werecall that a 5-tuple119873 = (119881 119864 119904 119905 119888) is named network if it is adirected weakly connected graph where119881 is the set of nodes

119864 is the set of arcs 119904 is a nodewith outgoing degree positive (atleast one edge departs from it) usually called source 119905 is a nodewith ingoing degree positive (at least one edge arrives to it)usually called sink and 119888 is a function from119864 toN that assignsto every edge (119906 V) isin 119864 a value 119888(119906 V) that will represent themaximum capacity permitted on this edge Given a network119873 we can consider flows on them A flow 119891 is a function 119891

119864 rarr N such that 119891(119906 V) le 119888(119906 V) for every (119906 V) isin 119864 andfor every V isin 119881 119904 119905 the sum of the values of the flow onthe edges with V as initial node coincides with the sum of theflows on the edges with V as final node that is

sum

119906isin119881(119906V)isin119864119891 (119906 V) = sum

119906isin119881(V119906)isin119864119891 (V 119906) (1)

Condition (1) is usually known as the conservation law ofthe flow The value of the flow 119891 on119873 119891(119873) is defined as thesum of the flows on the adjacent arcs to 119904 (or to 119905)

119891 (119873) = sum

119906isin119881(119904119906)isin119864

119891 (119904 119906) = sum

119906isin119881(119906119905)isin119864

119891 (119906 119905) (2)

A flow 119891 on 119873 is said to be maximum if it has themaximum value among all possible flows that can be definedon119873 We refer the reader to [16ndash24] for general informationon flows and networks and graph theory

In particular we are going to consider time-expandednetworks also called time-space networks [18 25] In thesenetworks the inner nodes of the network (not the sink northe source) represent locations at certain times The sourceis connected with all locations at the initial time and alllocations at the final time are connected with the sink Thisis also the structure used for dealing with problems in whichthe flow emerges from several sources and leaves at severalsinks

Now we transform this network into a one time-expanded network in which we reply cities as many times astime periods we are going to consider see Figure 1 Nodes ineach column represent the same city and each level representsthe same time period for different cities

In this model we also consider another value associatedwith each arc named its minimum capacity The minimumcapacity is a function 119898 119864 rarr N The flow through everyedge (119906 V) isin 119864 must verify 119898(119906 V) le 119891(119906 V) le 119888(119906 V)We denote a network 119873 with minimum capacities as 119873 =

(119881 119864 119904 119905 119898 119888) where 119881 is the set of nodes 119864 the set ofedges 119904 the source 119905 the sink and 119898 119888 the minimum andmaximum capacities respectively Networks with maximumand minimum capacities cannot always admit a flow thatrespects the upper and lower bounds It is compulsory thatfor every node V isin 119881 the sum of the maximum capacities ofall the edges that arrive to V was greater than or equal to thesum of the minimum capacities of all the edges that departfrom it Consider

sum

119906isin119881(V119906)isin119864119898(V 119906) le sum

119906isin119881(119906V)isin119864119888 (119906 V) (3)

If not the conservation law never holdsIn the next section we proceed to explain in detail the

steps that let us construct a model for deciding whether to

Journal of Applied Mathematics 3

S

12 3 n t1

t2

t3

tm

T

Figure 1 A time-expanded network with 119899 depots at119898 times Arcsin green represent bookings of cars and arcs in black representstaying at the parking of each depot

accept or reject a booking attending to the distribution of carsat the departure depot and the existence of empty parkingplaces at the arrival one

3 A Car-Rental Booking Model

Suppose that our car-rental service operates with only onetype of car Let 119899 be the number of locations (depots) andassume that depot 119894 starts with a given number of cars 119896

119894

Let 1198960be the total number of cars of the company that is

1198960= sum119899

119894=1119896119894 In addition we suppose that depot 119894 has 119901

119894

parking slots at its location to park the cars that are not usedby any client and are recharging and waiting to be reservedWe assume that this number cannot be increased along thetime

We also consider the bookings along119898 consecutive daysℎ possible times a day Then the sequence 119905

119895 1 le 119895 le ℎ119898

represents all the possible time periods For instance if weconsider the times 900 1000 2000 then ℎ = 12 So thatV11989412(119886minus1)+119887

for some 1 le 119886 le 119898 and 1 le 119887 le 12 represents(8+b)00 am of the day 119886 at the location 119894

The set of nodes 119881 will consist of 119904 119905 (the source and thesink) and all the possible combinations of locations and timesV119894119895

1 le 119894 le 119899 1 le 119895 le ℎ119898 where V119894119895

represents thelocation 119894 at time 119905

119895

The set 119864 is formed by four types of arcs The first threeare the following ones

(i) (119904 V1198941) 1 le 119894 le 119899 that connect the source with the

depots at the first instant of time(ii) (V

119894119895 V119894119895+1

) 1 le 119894 le 119899 1 le 119895 le ℎ119898 minus 1 that representstaying at a parking between two consecutive times

(iii) (V119894ℎ119898

119905) 1 le 119894 le 119899 that connect the depots at the lasttime to the sink

Our objective is to know if we can accept a booking of119908 cars between two determined depots at two different timemoments under the restrictions of having enough vehiclesat the departure depot and free space at the arrival one Wedefine a booking by a 5-tuple 119903 = (119894

119901 119905119901 119894119889 119905119889 119908) where

1 le 119894119901 119894119889le 119899 1 le 119905

119901lt 119905119889le ℎ119898 and 119899 isin N with 119894

119901being the

pick-up depot 119905119889being the pick-up time 119894

119889being the drop-

off city 119905119889being the drop-off time and 119908 being the number

of cars to be reserved Each booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908) is

converted into a new edge from node V119894119901 119905119901

to node V119894119889119905119889

Thiswill be the fourth type of arcs of our network

Now we analyze which capacities are necessary to modelthe movement of the cars along the time and to accept onlyadmissible bookings

We have supposed that depot 119894 has 119901119894parking spaces To

set this restriction we assign 119901119894as maximum capacity to the

edge (V119894119895 V119894119895+1

) 1 le 119894 le 119899 1 le 119895 le ℎ119898 and every node of theform V

119894ℎ119898 1 le 119894 le 119899 must be connected with the sink 119905 by an

edge with 119901119894as maximum capacity

Finally we must assign a minimum capacity to arcs(119904 V1198941) If not the cars at a depot 119894 could not be considered in

the parking in the future In Figures 2 and 3 every edge (119906 V) isin119864 has a 3-tuple (119898(119906 V) 119891(119906 V) 119888(119906 V)) associated with itwhere 119898 and 119888 are the minimum and maximum capacitiesrespectively and 119891 denotes the flow If we suppose that arcs(119904 V1198941) have assignedminimum capacity equal to the number

of cars of every depot 119896119894 we will avoid the aforementioned

problem The following example shows the necessity of aminimum capacity for the edges that represent the startingtime at every parking

Example 1 Suppose that we start with 6 cars at depot 1 attime 119905 = 1 and with 7 cars at depot 2 at time 119905 = 1 too Wealso consider that we have 7 and 8 parking slots respectivelyat each one of these depots Let us suppose that we have todecide whether the booking (2 1 1 2 3) could be acceptedor not

In Figure 2 we have a piece of a network withoutminimum capacities in the edges (119904 V

11) and (119904 V

21) In this

case there is a flow of 3 cars across the edge (V21 V12) and

therefore the booking would be accepted Nevertheless thereare 6 cars parked at slot 1 during all periods of time and thisis not taken into account If they were then the proposedbooking cannot be accepted as it is indicated in Figure 3 sincewe will have a total number of 9 cars that arrive to node V

12

This is not possible since the conservation law fails due to thefact that the maximum capacity of the only edge that departsfrom (V

12) is 7

For edges representing bookings we also have to considerthat the minimum and maximum capacity must coincide inorder to be sure that the cars follow the booking itineraryand do not stay at the parking of the picking up depot Nextexample shows the necessity of minimum capacity for edgesassociated with bookings

Example 2 Suppose that we want to represent a booking ofthe form (1 2 2 3 1) This is done by considering a flow of 1car along the edge (V

12 V23)

4 Journal of Applied Mathematics

S

(0 4 6) (0 7 7)

(0 7 7)

(3 3 3)

(0 4 7) (0 4 8)

(0 4 8)

11 21

12

13

22

23

Figure 2Withoutminimum capacities on the arcs that depart from119878

S

(0 4 8)

(0 4 8)

11 21

12

13

(6 6 6) (7 7 7)

22

23

(3 9984009984003998400998400 3)

(0 9984009984006998400998400 7)

(0 9984009984009998400998400 7)

Figure 3 With minimum capacities on the arcs that depart from 119878

In Figure 4 we have a piece of a network withoutminimum capacities at the edge (V

12 V23) In this case we

cannot be sure that the flow of 1 unit that corresponds to thisbooking will traverse the edge and therefore the car will gofrom depot 1 to depot 2 at those times We can only ensurethis if we assign a minimum capacity of 1 unit to this edge asit is shown in Figure 5

4 Existence of an Admissible Flowon the Network

The flow over the network that we have already presentedsimulates the movement of the cars over time As we saidbefore a flow through a network with minimum capacities

11

12

13

14

21

22

23

24

(0 5 7)

(0 5 7)

(0 5 7)

(0 7 8)

(0 7 8)

(0 7 8)

(0 0 1)

Figure 4 Without minimum capacities on the arcs that represent abooking

(0 5 7) (0 7 8)

(0 7 8)(0 4 7)

(0 4 7) (0 8 8)

(1 1 1)

11

12

13

14

21

22

23

24

Figure 5 With minimum capacities on the arcs that represent abooking

could not be admissible Firstly the initial number of carsat every depot must be smaller or equal to the number ofparking slots at each depot that is 119896

119894le 119901119894for 119894 = 1 119899

Secondly a list of bookings which is in fact a list of new edgesto be added to the former network could result into a networkwithout any admissible flow

Journal of Applied Mathematics 5

Now we start with the initial network 119873 that containsonly the first three types of edges that were previously men-tioned This network has the following values as maximumcapacities at their edges

119888 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901119894

for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(4)

In addition we also set the following minimum capaci-ties

119898(119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

0 for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

0 for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(5)

Then the following flow results in being admissible onthis network

119891 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119896119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119896119894

for 119906 = V119894ℎ119898

V = t 119894 = 1 119899

(6)

Now let us suppose that we have an ordered list of 119871bookings requests 119903

1 119903

119871 where each booking is given by

its corresponding 5-tuple Consider that these bookings havearrived to us in advance to 119905

1 for instance through thewebsite

of the car-rental companyWe have to decide whether we canaccept them or not The acceptance of each booking dependson the acceptance or not of the previous onesWe assume thatall bookings must be answered following a first-infirst-outcriterion which is the closest approach to the managementof bookings that arrive through a web service

We start with the first booking request 1199031

=

(1198941199011 1199051199011 1198941198891 1199051198891 1199081) and we add the corresponding edge

from node V11989411990111199051199011

to V11989411988911199051198891

with maximum and minimumcapacities equal to 119908

1

In order to know if there exists an admissible flowin the network 119873 = (119881 119864 119904 119905 119898 119888) with the additionaledge corresponding to booking 119903

1 we define an auxiliary

network 1198731015840 and apply Ford-Fulkerson algorithm on it Theexplanation of Ford-Fulkerson algorithm can also be foundin [16 18 19 21]

The use of this network 1198731015840 in order to determine the

existence of an admissible flow on a network with minimumcapacities is given by the following result that can be foundeither in [16 page 83] or in [21 page 92] Its applicationprovides us with a theoretical support for modeling ourproblem

Theorem 3 Let119873 = (119881 119864 119904 119905 119898 119888) be a network and let oneconsider its auxiliary network1198731015840 defined as follows

(1) The set of nodes of1198731015840 consists of the nodes of119873 and twonew auxiliary nodes 1199041015840 1199051015840 that will be the source and thesink respectively of the network1198731015840

(2) To define 1198641015840 we consider all the edges of 119864 and we adda new one from 119905 to 119904 with infinite capacity

(3) For every edge (119906 V) isin 119864 with capacity119898(119906 V) ge 0 wealso change its maximum capacity 119888(119906 V) by 119888(119906 V) minus119898(119906 V) and we add a new edge (1199041015840 V) with maximumcapacity 1198881015840(1199041015840 V) = 119898(119906 V) and another one (119906 1199051015840)withmaximum capacity 1198881015840(119906 1199051015840) = 119898(119906 V)

(4) We also set all the minimum capacities of1198731015840 to zero

Let 1198911015840 be a flow of maximum value 1198911015840(1198731015840) on1198731015840 and let1198911015840

(119905 119904) be the flow of 1198911015840 through the edge (119905 119904) There exists anadmissible flow of value 1198911015840(119905 119904) on 119873 if and only if 1198911015840(1198731015840) =sum(119906V)isin119864119898(119906 V)

Remark 4 The proof of Theorem 3 shows how to constructthe admissible flow we just have to define119891(119906 V) = 119891

1015840

(119906 V)+119898(119906 V) for every edge (119906 V) in the initial network119873 and itsvalue will be 1198911015840(119905 119904)

To sum up the network 1198731015840 obtained when consideringalso the first booking 119903

1has 119881 cup 119904

1015840

1199051015840

as the set of nodes 1199041015840as the source 1199051015840 as the sink and the following edges with theircorrespondingmaximum capacitiesThese new capacities aredefined as

119888 (119906 V) =

infin for 119906 = 119905 V = 119904

119899

sum

119894=1

119896119894

for 119906 = 119904 V = 1199051015840

119896119894

for 119906 = 1199041015840

V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901i for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

1199081

for 119906 = V11989411990111199051199011

V = 1199051015840

1199081

for 119906 = 1199041015840

V = V11989411988911199051198891

(7)

We have eliminated the edges that should appear on1198731015840 with maximum capacity equal to 0 If there exists a

maximum flow on this network of value 1198911015840(1198731015840) = sum119899

119894=1119896119894+

6 Journal of Applied Mathematics

S

T

11

12

21

22

(k1 minus k1) (k2 minus k2)

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

Figure 6 Network119873

1199081 then the booking should be accepted byTheorem 3 If it is

not accepted we remove the edges (V11989411990111199051199011

1199051015840

) and (1199041015840 V11989411988911199051198891

)If yes then we keep these two edges on1198731015840

Example 5 Suppose that we have two depots 1 and 2 with1198961cars at depot 1 and 119896

2cars at depot 2 We consider each

depot at two different times 119905 = 1 and 119905 = 2 Supposethat we have a booking of 119908

1cars from depot 1 at time 119905

1

to depot 2 at time 1199052 In Figure 6 we have the initial network

119873with theminimum andmaximum capacities at every edgeThe flow is not indicated at any arc In Figure 7 we have thecorresponding auxiliary network1198731015840 where we have reducedthe minimum capacities 0 of the arcs as it is indicated in (7)We recall that the arcs with maximum capacity equal to 0 arealso removed

After dealing with 1199031 we pass to next booking 119903

2=

(1198941199012 1199051199012 1198941198892 1199051198892 1199082) andwe proceed as before adding two new

edges to1198731015840 with capacity 1199082

119888 (119906 V) =

1199082 for 119906 = V

11989411990121199051199012

V = 1199051015840

1199082 for 119906 = 119904

1015840

V = V11989411988921199051198892

(8)

If for dealing with an arbitrary booking 119903 =

(119894119901 119905119901 119894119889 119905119889 119908) one (or two) of the edges (V

119894119901 119905119901 1199051015840

) and(1199041015840

V119894119901 119905119901

) are already defined on 1198731015840 what we have to do is

to sum 119908 to the existing maximum capacity of that edgeand test the admissibility of 1198731015840 If the booking should notbe accepted then we just have to decrease the maximumcapacity of that edge on119908 leaving the edge with the previouscapacity

Remark 6 Our model lets us cancel a booking some timeafter it was already accepted It is sufficient to decrease themaximum capacity along the corresponding edge in as manyunits as the booking indicates removing it if afterwards its

S

S998400

T

T998400

11

12

21

22

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

(0 minus k1)

(0 minus k2)

(0 minusinfin)

(0 minus k1 + k2)

Figure 7 Auxiliary network1198731015840

maximum capacity is 0 But we have to check if doing thiswe get a network without an admissible flow On one handthis could happen with one-way bookings when the car wasrequired to be at another city in the future for being used foranother booking departing from there In this case the carmust bemoved there by the company staffOn the other handthe lack of an admissible flow on the network can also comefrom the necessity of needing more parking spaces availableat the departure city during part of the time that the car wasreserved

5 Algorithm for Computing theAdmissibility of the Network 119873

In this section we explain how we define the graph of 1198731015840in order to maximize the flow on this network The Ford-Fulkerson algorithm provides a solution for the quest of amaximum flow between a source and a sink on a network

As we have mentioned in the previous section theacceptance of a booking depends on verifying whether acertain network 119873 with minimum capacities admits a flowor not and this can be reduced to find a maximum flow onan auxiliary network1198731015840 The following algorithm shows howto define 1198731015840 and how to use it in order to accept or reject areservation

Step 1 Notation

(11) 119899 number of depots(12) For every 1 le 119894 le 119899 119901

119894stands for the number of

parking places available at depot 119894(13) For every 1 le 119894 le 119899 119896

119894denotes the initial number of

cars at depot 119894(14) ℎ119898 is the total number of time moments considered

1199051 119905

ℎ119898

(15) The network 1198731015840 will have ℎ119898119899 + 4 nodes that is 119899depots at ℎ119898 different times plus 4 nodes for 119904 119905 1199041015840and 1199051015840

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 3: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Journal of Applied Mathematics 3

S

12 3 n t1

t2

t3

tm

T

Figure 1 A time-expanded network with 119899 depots at119898 times Arcsin green represent bookings of cars and arcs in black representstaying at the parking of each depot

accept or reject a booking attending to the distribution of carsat the departure depot and the existence of empty parkingplaces at the arrival one

3 A Car-Rental Booking Model

Suppose that our car-rental service operates with only onetype of car Let 119899 be the number of locations (depots) andassume that depot 119894 starts with a given number of cars 119896

119894

Let 1198960be the total number of cars of the company that is

1198960= sum119899

119894=1119896119894 In addition we suppose that depot 119894 has 119901

119894

parking slots at its location to park the cars that are not usedby any client and are recharging and waiting to be reservedWe assume that this number cannot be increased along thetime

We also consider the bookings along119898 consecutive daysℎ possible times a day Then the sequence 119905

119895 1 le 119895 le ℎ119898

represents all the possible time periods For instance if weconsider the times 900 1000 2000 then ℎ = 12 So thatV11989412(119886minus1)+119887

for some 1 le 119886 le 119898 and 1 le 119887 le 12 represents(8+b)00 am of the day 119886 at the location 119894

The set of nodes 119881 will consist of 119904 119905 (the source and thesink) and all the possible combinations of locations and timesV119894119895

1 le 119894 le 119899 1 le 119895 le ℎ119898 where V119894119895

represents thelocation 119894 at time 119905

119895

The set 119864 is formed by four types of arcs The first threeare the following ones

(i) (119904 V1198941) 1 le 119894 le 119899 that connect the source with the

depots at the first instant of time(ii) (V

119894119895 V119894119895+1

) 1 le 119894 le 119899 1 le 119895 le ℎ119898 minus 1 that representstaying at a parking between two consecutive times

(iii) (V119894ℎ119898

119905) 1 le 119894 le 119899 that connect the depots at the lasttime to the sink

Our objective is to know if we can accept a booking of119908 cars between two determined depots at two different timemoments under the restrictions of having enough vehiclesat the departure depot and free space at the arrival one Wedefine a booking by a 5-tuple 119903 = (119894

119901 119905119901 119894119889 119905119889 119908) where

1 le 119894119901 119894119889le 119899 1 le 119905

119901lt 119905119889le ℎ119898 and 119899 isin N with 119894

119901being the

pick-up depot 119905119889being the pick-up time 119894

119889being the drop-

off city 119905119889being the drop-off time and 119908 being the number

of cars to be reserved Each booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908) is

converted into a new edge from node V119894119901 119905119901

to node V119894119889119905119889

Thiswill be the fourth type of arcs of our network

Now we analyze which capacities are necessary to modelthe movement of the cars along the time and to accept onlyadmissible bookings

We have supposed that depot 119894 has 119901119894parking spaces To

set this restriction we assign 119901119894as maximum capacity to the

edge (V119894119895 V119894119895+1

) 1 le 119894 le 119899 1 le 119895 le ℎ119898 and every node of theform V

119894ℎ119898 1 le 119894 le 119899 must be connected with the sink 119905 by an

edge with 119901119894as maximum capacity

Finally we must assign a minimum capacity to arcs(119904 V1198941) If not the cars at a depot 119894 could not be considered in

the parking in the future In Figures 2 and 3 every edge (119906 V) isin119864 has a 3-tuple (119898(119906 V) 119891(119906 V) 119888(119906 V)) associated with itwhere 119898 and 119888 are the minimum and maximum capacitiesrespectively and 119891 denotes the flow If we suppose that arcs(119904 V1198941) have assignedminimum capacity equal to the number

of cars of every depot 119896119894 we will avoid the aforementioned

problem The following example shows the necessity of aminimum capacity for the edges that represent the startingtime at every parking

Example 1 Suppose that we start with 6 cars at depot 1 attime 119905 = 1 and with 7 cars at depot 2 at time 119905 = 1 too Wealso consider that we have 7 and 8 parking slots respectivelyat each one of these depots Let us suppose that we have todecide whether the booking (2 1 1 2 3) could be acceptedor not

In Figure 2 we have a piece of a network withoutminimum capacities in the edges (119904 V

11) and (119904 V

21) In this

case there is a flow of 3 cars across the edge (V21 V12) and

therefore the booking would be accepted Nevertheless thereare 6 cars parked at slot 1 during all periods of time and thisis not taken into account If they were then the proposedbooking cannot be accepted as it is indicated in Figure 3 sincewe will have a total number of 9 cars that arrive to node V

12

This is not possible since the conservation law fails due to thefact that the maximum capacity of the only edge that departsfrom (V

12) is 7

For edges representing bookings we also have to considerthat the minimum and maximum capacity must coincide inorder to be sure that the cars follow the booking itineraryand do not stay at the parking of the picking up depot Nextexample shows the necessity of minimum capacity for edgesassociated with bookings

Example 2 Suppose that we want to represent a booking ofthe form (1 2 2 3 1) This is done by considering a flow of 1car along the edge (V

12 V23)

4 Journal of Applied Mathematics

S

(0 4 6) (0 7 7)

(0 7 7)

(3 3 3)

(0 4 7) (0 4 8)

(0 4 8)

11 21

12

13

22

23

Figure 2Withoutminimum capacities on the arcs that depart from119878

S

(0 4 8)

(0 4 8)

11 21

12

13

(6 6 6) (7 7 7)

22

23

(3 9984009984003998400998400 3)

(0 9984009984006998400998400 7)

(0 9984009984009998400998400 7)

Figure 3 With minimum capacities on the arcs that depart from 119878

In Figure 4 we have a piece of a network withoutminimum capacities at the edge (V

12 V23) In this case we

cannot be sure that the flow of 1 unit that corresponds to thisbooking will traverse the edge and therefore the car will gofrom depot 1 to depot 2 at those times We can only ensurethis if we assign a minimum capacity of 1 unit to this edge asit is shown in Figure 5

4 Existence of an Admissible Flowon the Network

The flow over the network that we have already presentedsimulates the movement of the cars over time As we saidbefore a flow through a network with minimum capacities

11

12

13

14

21

22

23

24

(0 5 7)

(0 5 7)

(0 5 7)

(0 7 8)

(0 7 8)

(0 7 8)

(0 0 1)

Figure 4 Without minimum capacities on the arcs that represent abooking

(0 5 7) (0 7 8)

(0 7 8)(0 4 7)

(0 4 7) (0 8 8)

(1 1 1)

11

12

13

14

21

22

23

24

Figure 5 With minimum capacities on the arcs that represent abooking

could not be admissible Firstly the initial number of carsat every depot must be smaller or equal to the number ofparking slots at each depot that is 119896

119894le 119901119894for 119894 = 1 119899

Secondly a list of bookings which is in fact a list of new edgesto be added to the former network could result into a networkwithout any admissible flow

Journal of Applied Mathematics 5

Now we start with the initial network 119873 that containsonly the first three types of edges that were previously men-tioned This network has the following values as maximumcapacities at their edges

119888 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901119894

for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(4)

In addition we also set the following minimum capaci-ties

119898(119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

0 for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

0 for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(5)

Then the following flow results in being admissible onthis network

119891 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119896119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119896119894

for 119906 = V119894ℎ119898

V = t 119894 = 1 119899

(6)

Now let us suppose that we have an ordered list of 119871bookings requests 119903

1 119903

119871 where each booking is given by

its corresponding 5-tuple Consider that these bookings havearrived to us in advance to 119905

1 for instance through thewebsite

of the car-rental companyWe have to decide whether we canaccept them or not The acceptance of each booking dependson the acceptance or not of the previous onesWe assume thatall bookings must be answered following a first-infirst-outcriterion which is the closest approach to the managementof bookings that arrive through a web service

We start with the first booking request 1199031

=

(1198941199011 1199051199011 1198941198891 1199051198891 1199081) and we add the corresponding edge

from node V11989411990111199051199011

to V11989411988911199051198891

with maximum and minimumcapacities equal to 119908

1

In order to know if there exists an admissible flowin the network 119873 = (119881 119864 119904 119905 119898 119888) with the additionaledge corresponding to booking 119903

1 we define an auxiliary

network 1198731015840 and apply Ford-Fulkerson algorithm on it Theexplanation of Ford-Fulkerson algorithm can also be foundin [16 18 19 21]

The use of this network 1198731015840 in order to determine the

existence of an admissible flow on a network with minimumcapacities is given by the following result that can be foundeither in [16 page 83] or in [21 page 92] Its applicationprovides us with a theoretical support for modeling ourproblem

Theorem 3 Let119873 = (119881 119864 119904 119905 119898 119888) be a network and let oneconsider its auxiliary network1198731015840 defined as follows

(1) The set of nodes of1198731015840 consists of the nodes of119873 and twonew auxiliary nodes 1199041015840 1199051015840 that will be the source and thesink respectively of the network1198731015840

(2) To define 1198641015840 we consider all the edges of 119864 and we adda new one from 119905 to 119904 with infinite capacity

(3) For every edge (119906 V) isin 119864 with capacity119898(119906 V) ge 0 wealso change its maximum capacity 119888(119906 V) by 119888(119906 V) minus119898(119906 V) and we add a new edge (1199041015840 V) with maximumcapacity 1198881015840(1199041015840 V) = 119898(119906 V) and another one (119906 1199051015840)withmaximum capacity 1198881015840(119906 1199051015840) = 119898(119906 V)

(4) We also set all the minimum capacities of1198731015840 to zero

Let 1198911015840 be a flow of maximum value 1198911015840(1198731015840) on1198731015840 and let1198911015840

(119905 119904) be the flow of 1198911015840 through the edge (119905 119904) There exists anadmissible flow of value 1198911015840(119905 119904) on 119873 if and only if 1198911015840(1198731015840) =sum(119906V)isin119864119898(119906 V)

Remark 4 The proof of Theorem 3 shows how to constructthe admissible flow we just have to define119891(119906 V) = 119891

1015840

(119906 V)+119898(119906 V) for every edge (119906 V) in the initial network119873 and itsvalue will be 1198911015840(119905 119904)

To sum up the network 1198731015840 obtained when consideringalso the first booking 119903

1has 119881 cup 119904

1015840

1199051015840

as the set of nodes 1199041015840as the source 1199051015840 as the sink and the following edges with theircorrespondingmaximum capacitiesThese new capacities aredefined as

119888 (119906 V) =

infin for 119906 = 119905 V = 119904

119899

sum

119894=1

119896119894

for 119906 = 119904 V = 1199051015840

119896119894

for 119906 = 1199041015840

V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901i for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

1199081

for 119906 = V11989411990111199051199011

V = 1199051015840

1199081

for 119906 = 1199041015840

V = V11989411988911199051198891

(7)

We have eliminated the edges that should appear on1198731015840 with maximum capacity equal to 0 If there exists a

maximum flow on this network of value 1198911015840(1198731015840) = sum119899

119894=1119896119894+

6 Journal of Applied Mathematics

S

T

11

12

21

22

(k1 minus k1) (k2 minus k2)

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

Figure 6 Network119873

1199081 then the booking should be accepted byTheorem 3 If it is

not accepted we remove the edges (V11989411990111199051199011

1199051015840

) and (1199041015840 V11989411988911199051198891

)If yes then we keep these two edges on1198731015840

Example 5 Suppose that we have two depots 1 and 2 with1198961cars at depot 1 and 119896

2cars at depot 2 We consider each

depot at two different times 119905 = 1 and 119905 = 2 Supposethat we have a booking of 119908

1cars from depot 1 at time 119905

1

to depot 2 at time 1199052 In Figure 6 we have the initial network

119873with theminimum andmaximum capacities at every edgeThe flow is not indicated at any arc In Figure 7 we have thecorresponding auxiliary network1198731015840 where we have reducedthe minimum capacities 0 of the arcs as it is indicated in (7)We recall that the arcs with maximum capacity equal to 0 arealso removed

After dealing with 1199031 we pass to next booking 119903

2=

(1198941199012 1199051199012 1198941198892 1199051198892 1199082) andwe proceed as before adding two new

edges to1198731015840 with capacity 1199082

119888 (119906 V) =

1199082 for 119906 = V

11989411990121199051199012

V = 1199051015840

1199082 for 119906 = 119904

1015840

V = V11989411988921199051198892

(8)

If for dealing with an arbitrary booking 119903 =

(119894119901 119905119901 119894119889 119905119889 119908) one (or two) of the edges (V

119894119901 119905119901 1199051015840

) and(1199041015840

V119894119901 119905119901

) are already defined on 1198731015840 what we have to do is

to sum 119908 to the existing maximum capacity of that edgeand test the admissibility of 1198731015840 If the booking should notbe accepted then we just have to decrease the maximumcapacity of that edge on119908 leaving the edge with the previouscapacity

Remark 6 Our model lets us cancel a booking some timeafter it was already accepted It is sufficient to decrease themaximum capacity along the corresponding edge in as manyunits as the booking indicates removing it if afterwards its

S

S998400

T

T998400

11

12

21

22

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

(0 minus k1)

(0 minus k2)

(0 minusinfin)

(0 minus k1 + k2)

Figure 7 Auxiliary network1198731015840

maximum capacity is 0 But we have to check if doing thiswe get a network without an admissible flow On one handthis could happen with one-way bookings when the car wasrequired to be at another city in the future for being used foranother booking departing from there In this case the carmust bemoved there by the company staffOn the other handthe lack of an admissible flow on the network can also comefrom the necessity of needing more parking spaces availableat the departure city during part of the time that the car wasreserved

5 Algorithm for Computing theAdmissibility of the Network 119873

In this section we explain how we define the graph of 1198731015840in order to maximize the flow on this network The Ford-Fulkerson algorithm provides a solution for the quest of amaximum flow between a source and a sink on a network

As we have mentioned in the previous section theacceptance of a booking depends on verifying whether acertain network 119873 with minimum capacities admits a flowor not and this can be reduced to find a maximum flow onan auxiliary network1198731015840 The following algorithm shows howto define 1198731015840 and how to use it in order to accept or reject areservation

Step 1 Notation

(11) 119899 number of depots(12) For every 1 le 119894 le 119899 119901

119894stands for the number of

parking places available at depot 119894(13) For every 1 le 119894 le 119899 119896

119894denotes the initial number of

cars at depot 119894(14) ℎ119898 is the total number of time moments considered

1199051 119905

ℎ119898

(15) The network 1198731015840 will have ℎ119898119899 + 4 nodes that is 119899depots at ℎ119898 different times plus 4 nodes for 119904 119905 1199041015840and 1199051015840

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 4: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

4 Journal of Applied Mathematics

S

(0 4 6) (0 7 7)

(0 7 7)

(3 3 3)

(0 4 7) (0 4 8)

(0 4 8)

11 21

12

13

22

23

Figure 2Withoutminimum capacities on the arcs that depart from119878

S

(0 4 8)

(0 4 8)

11 21

12

13

(6 6 6) (7 7 7)

22

23

(3 9984009984003998400998400 3)

(0 9984009984006998400998400 7)

(0 9984009984009998400998400 7)

Figure 3 With minimum capacities on the arcs that depart from 119878

In Figure 4 we have a piece of a network withoutminimum capacities at the edge (V

12 V23) In this case we

cannot be sure that the flow of 1 unit that corresponds to thisbooking will traverse the edge and therefore the car will gofrom depot 1 to depot 2 at those times We can only ensurethis if we assign a minimum capacity of 1 unit to this edge asit is shown in Figure 5

4 Existence of an Admissible Flowon the Network

The flow over the network that we have already presentedsimulates the movement of the cars over time As we saidbefore a flow through a network with minimum capacities

11

12

13

14

21

22

23

24

(0 5 7)

(0 5 7)

(0 5 7)

(0 7 8)

(0 7 8)

(0 7 8)

(0 0 1)

Figure 4 Without minimum capacities on the arcs that represent abooking

(0 5 7) (0 7 8)

(0 7 8)(0 4 7)

(0 4 7) (0 8 8)

(1 1 1)

11

12

13

14

21

22

23

24

Figure 5 With minimum capacities on the arcs that represent abooking

could not be admissible Firstly the initial number of carsat every depot must be smaller or equal to the number ofparking slots at each depot that is 119896

119894le 119901119894for 119894 = 1 119899

Secondly a list of bookings which is in fact a list of new edgesto be added to the former network could result into a networkwithout any admissible flow

Journal of Applied Mathematics 5

Now we start with the initial network 119873 that containsonly the first three types of edges that were previously men-tioned This network has the following values as maximumcapacities at their edges

119888 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901119894

for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(4)

In addition we also set the following minimum capaci-ties

119898(119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

0 for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

0 for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(5)

Then the following flow results in being admissible onthis network

119891 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119896119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119896119894

for 119906 = V119894ℎ119898

V = t 119894 = 1 119899

(6)

Now let us suppose that we have an ordered list of 119871bookings requests 119903

1 119903

119871 where each booking is given by

its corresponding 5-tuple Consider that these bookings havearrived to us in advance to 119905

1 for instance through thewebsite

of the car-rental companyWe have to decide whether we canaccept them or not The acceptance of each booking dependson the acceptance or not of the previous onesWe assume thatall bookings must be answered following a first-infirst-outcriterion which is the closest approach to the managementof bookings that arrive through a web service

We start with the first booking request 1199031

=

(1198941199011 1199051199011 1198941198891 1199051198891 1199081) and we add the corresponding edge

from node V11989411990111199051199011

to V11989411988911199051198891

with maximum and minimumcapacities equal to 119908

1

In order to know if there exists an admissible flowin the network 119873 = (119881 119864 119904 119905 119898 119888) with the additionaledge corresponding to booking 119903

1 we define an auxiliary

network 1198731015840 and apply Ford-Fulkerson algorithm on it Theexplanation of Ford-Fulkerson algorithm can also be foundin [16 18 19 21]

The use of this network 1198731015840 in order to determine the

existence of an admissible flow on a network with minimumcapacities is given by the following result that can be foundeither in [16 page 83] or in [21 page 92] Its applicationprovides us with a theoretical support for modeling ourproblem

Theorem 3 Let119873 = (119881 119864 119904 119905 119898 119888) be a network and let oneconsider its auxiliary network1198731015840 defined as follows

(1) The set of nodes of1198731015840 consists of the nodes of119873 and twonew auxiliary nodes 1199041015840 1199051015840 that will be the source and thesink respectively of the network1198731015840

(2) To define 1198641015840 we consider all the edges of 119864 and we adda new one from 119905 to 119904 with infinite capacity

(3) For every edge (119906 V) isin 119864 with capacity119898(119906 V) ge 0 wealso change its maximum capacity 119888(119906 V) by 119888(119906 V) minus119898(119906 V) and we add a new edge (1199041015840 V) with maximumcapacity 1198881015840(1199041015840 V) = 119898(119906 V) and another one (119906 1199051015840)withmaximum capacity 1198881015840(119906 1199051015840) = 119898(119906 V)

(4) We also set all the minimum capacities of1198731015840 to zero

Let 1198911015840 be a flow of maximum value 1198911015840(1198731015840) on1198731015840 and let1198911015840

(119905 119904) be the flow of 1198911015840 through the edge (119905 119904) There exists anadmissible flow of value 1198911015840(119905 119904) on 119873 if and only if 1198911015840(1198731015840) =sum(119906V)isin119864119898(119906 V)

Remark 4 The proof of Theorem 3 shows how to constructthe admissible flow we just have to define119891(119906 V) = 119891

1015840

(119906 V)+119898(119906 V) for every edge (119906 V) in the initial network119873 and itsvalue will be 1198911015840(119905 119904)

To sum up the network 1198731015840 obtained when consideringalso the first booking 119903

1has 119881 cup 119904

1015840

1199051015840

as the set of nodes 1199041015840as the source 1199051015840 as the sink and the following edges with theircorrespondingmaximum capacitiesThese new capacities aredefined as

119888 (119906 V) =

infin for 119906 = 119905 V = 119904

119899

sum

119894=1

119896119894

for 119906 = 119904 V = 1199051015840

119896119894

for 119906 = 1199041015840

V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901i for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

1199081

for 119906 = V11989411990111199051199011

V = 1199051015840

1199081

for 119906 = 1199041015840

V = V11989411988911199051198891

(7)

We have eliminated the edges that should appear on1198731015840 with maximum capacity equal to 0 If there exists a

maximum flow on this network of value 1198911015840(1198731015840) = sum119899

119894=1119896119894+

6 Journal of Applied Mathematics

S

T

11

12

21

22

(k1 minus k1) (k2 minus k2)

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

Figure 6 Network119873

1199081 then the booking should be accepted byTheorem 3 If it is

not accepted we remove the edges (V11989411990111199051199011

1199051015840

) and (1199041015840 V11989411988911199051198891

)If yes then we keep these two edges on1198731015840

Example 5 Suppose that we have two depots 1 and 2 with1198961cars at depot 1 and 119896

2cars at depot 2 We consider each

depot at two different times 119905 = 1 and 119905 = 2 Supposethat we have a booking of 119908

1cars from depot 1 at time 119905

1

to depot 2 at time 1199052 In Figure 6 we have the initial network

119873with theminimum andmaximum capacities at every edgeThe flow is not indicated at any arc In Figure 7 we have thecorresponding auxiliary network1198731015840 where we have reducedthe minimum capacities 0 of the arcs as it is indicated in (7)We recall that the arcs with maximum capacity equal to 0 arealso removed

After dealing with 1199031 we pass to next booking 119903

2=

(1198941199012 1199051199012 1198941198892 1199051198892 1199082) andwe proceed as before adding two new

edges to1198731015840 with capacity 1199082

119888 (119906 V) =

1199082 for 119906 = V

11989411990121199051199012

V = 1199051015840

1199082 for 119906 = 119904

1015840

V = V11989411988921199051198892

(8)

If for dealing with an arbitrary booking 119903 =

(119894119901 119905119901 119894119889 119905119889 119908) one (or two) of the edges (V

119894119901 119905119901 1199051015840

) and(1199041015840

V119894119901 119905119901

) are already defined on 1198731015840 what we have to do is

to sum 119908 to the existing maximum capacity of that edgeand test the admissibility of 1198731015840 If the booking should notbe accepted then we just have to decrease the maximumcapacity of that edge on119908 leaving the edge with the previouscapacity

Remark 6 Our model lets us cancel a booking some timeafter it was already accepted It is sufficient to decrease themaximum capacity along the corresponding edge in as manyunits as the booking indicates removing it if afterwards its

S

S998400

T

T998400

11

12

21

22

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

(0 minus k1)

(0 minus k2)

(0 minusinfin)

(0 minus k1 + k2)

Figure 7 Auxiliary network1198731015840

maximum capacity is 0 But we have to check if doing thiswe get a network without an admissible flow On one handthis could happen with one-way bookings when the car wasrequired to be at another city in the future for being used foranother booking departing from there In this case the carmust bemoved there by the company staffOn the other handthe lack of an admissible flow on the network can also comefrom the necessity of needing more parking spaces availableat the departure city during part of the time that the car wasreserved

5 Algorithm for Computing theAdmissibility of the Network 119873

In this section we explain how we define the graph of 1198731015840in order to maximize the flow on this network The Ford-Fulkerson algorithm provides a solution for the quest of amaximum flow between a source and a sink on a network

As we have mentioned in the previous section theacceptance of a booking depends on verifying whether acertain network 119873 with minimum capacities admits a flowor not and this can be reduced to find a maximum flow onan auxiliary network1198731015840 The following algorithm shows howto define 1198731015840 and how to use it in order to accept or reject areservation

Step 1 Notation

(11) 119899 number of depots(12) For every 1 le 119894 le 119899 119901

119894stands for the number of

parking places available at depot 119894(13) For every 1 le 119894 le 119899 119896

119894denotes the initial number of

cars at depot 119894(14) ℎ119898 is the total number of time moments considered

1199051 119905

ℎ119898

(15) The network 1198731015840 will have ℎ119898119899 + 4 nodes that is 119899depots at ℎ119898 different times plus 4 nodes for 119904 119905 1199041015840and 1199051015840

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 5: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Journal of Applied Mathematics 5

Now we start with the initial network 119873 that containsonly the first three types of edges that were previously men-tioned This network has the following values as maximumcapacities at their edges

119888 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901119894

for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(4)

In addition we also set the following minimum capaci-ties

119898(119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

0 for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

0 for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

(5)

Then the following flow results in being admissible onthis network

119891 (119906 V) =

119896119894

for 119906 = 119904 V = V1198941 119894 = 1 119899

119896119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119896119894

for 119906 = V119894ℎ119898

V = t 119894 = 1 119899

(6)

Now let us suppose that we have an ordered list of 119871bookings requests 119903

1 119903

119871 where each booking is given by

its corresponding 5-tuple Consider that these bookings havearrived to us in advance to 119905

1 for instance through thewebsite

of the car-rental companyWe have to decide whether we canaccept them or not The acceptance of each booking dependson the acceptance or not of the previous onesWe assume thatall bookings must be answered following a first-infirst-outcriterion which is the closest approach to the managementof bookings that arrive through a web service

We start with the first booking request 1199031

=

(1198941199011 1199051199011 1198941198891 1199051198891 1199081) and we add the corresponding edge

from node V11989411990111199051199011

to V11989411988911199051198891

with maximum and minimumcapacities equal to 119908

1

In order to know if there exists an admissible flowin the network 119873 = (119881 119864 119904 119905 119898 119888) with the additionaledge corresponding to booking 119903

1 we define an auxiliary

network 1198731015840 and apply Ford-Fulkerson algorithm on it Theexplanation of Ford-Fulkerson algorithm can also be foundin [16 18 19 21]

The use of this network 1198731015840 in order to determine the

existence of an admissible flow on a network with minimumcapacities is given by the following result that can be foundeither in [16 page 83] or in [21 page 92] Its applicationprovides us with a theoretical support for modeling ourproblem

Theorem 3 Let119873 = (119881 119864 119904 119905 119898 119888) be a network and let oneconsider its auxiliary network1198731015840 defined as follows

(1) The set of nodes of1198731015840 consists of the nodes of119873 and twonew auxiliary nodes 1199041015840 1199051015840 that will be the source and thesink respectively of the network1198731015840

(2) To define 1198641015840 we consider all the edges of 119864 and we adda new one from 119905 to 119904 with infinite capacity

(3) For every edge (119906 V) isin 119864 with capacity119898(119906 V) ge 0 wealso change its maximum capacity 119888(119906 V) by 119888(119906 V) minus119898(119906 V) and we add a new edge (1199041015840 V) with maximumcapacity 1198881015840(1199041015840 V) = 119898(119906 V) and another one (119906 1199051015840)withmaximum capacity 1198881015840(119906 1199051015840) = 119898(119906 V)

(4) We also set all the minimum capacities of1198731015840 to zero

Let 1198911015840 be a flow of maximum value 1198911015840(1198731015840) on1198731015840 and let1198911015840

(119905 119904) be the flow of 1198911015840 through the edge (119905 119904) There exists anadmissible flow of value 1198911015840(119905 119904) on 119873 if and only if 1198911015840(1198731015840) =sum(119906V)isin119864119898(119906 V)

Remark 4 The proof of Theorem 3 shows how to constructthe admissible flow we just have to define119891(119906 V) = 119891

1015840

(119906 V)+119898(119906 V) for every edge (119906 V) in the initial network119873 and itsvalue will be 1198911015840(119905 119904)

To sum up the network 1198731015840 obtained when consideringalso the first booking 119903

1has 119881 cup 119904

1015840

1199051015840

as the set of nodes 1199041015840as the source 1199051015840 as the sink and the following edges with theircorrespondingmaximum capacitiesThese new capacities aredefined as

119888 (119906 V) =

infin for 119906 = 119905 V = 119904

119899

sum

119894=1

119896119894

for 119906 = 119904 V = 1199051015840

119896119894

for 119906 = 1199041015840

V = V1198941 119894 = 1 119899

119901119894

for 119906 = V119894119895 V = V

119894119895+1 119894 = 1 119899

119895 = 1 ℎ119898 minus 1

119901i for 119906 = V119894ℎ119898

V = 119905 119894 = 1 119899

1199081

for 119906 = V11989411990111199051199011

V = 1199051015840

1199081

for 119906 = 1199041015840

V = V11989411988911199051198891

(7)

We have eliminated the edges that should appear on1198731015840 with maximum capacity equal to 0 If there exists a

maximum flow on this network of value 1198911015840(1198731015840) = sum119899

119894=1119896119894+

6 Journal of Applied Mathematics

S

T

11

12

21

22

(k1 minus k1) (k2 minus k2)

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

Figure 6 Network119873

1199081 then the booking should be accepted byTheorem 3 If it is

not accepted we remove the edges (V11989411990111199051199011

1199051015840

) and (1199041015840 V11989411988911199051198891

)If yes then we keep these two edges on1198731015840

Example 5 Suppose that we have two depots 1 and 2 with1198961cars at depot 1 and 119896

2cars at depot 2 We consider each

depot at two different times 119905 = 1 and 119905 = 2 Supposethat we have a booking of 119908

1cars from depot 1 at time 119905

1

to depot 2 at time 1199052 In Figure 6 we have the initial network

119873with theminimum andmaximum capacities at every edgeThe flow is not indicated at any arc In Figure 7 we have thecorresponding auxiliary network1198731015840 where we have reducedthe minimum capacities 0 of the arcs as it is indicated in (7)We recall that the arcs with maximum capacity equal to 0 arealso removed

After dealing with 1199031 we pass to next booking 119903

2=

(1198941199012 1199051199012 1198941198892 1199051198892 1199082) andwe proceed as before adding two new

edges to1198731015840 with capacity 1199082

119888 (119906 V) =

1199082 for 119906 = V

11989411990121199051199012

V = 1199051015840

1199082 for 119906 = 119904

1015840

V = V11989411988921199051198892

(8)

If for dealing with an arbitrary booking 119903 =

(119894119901 119905119901 119894119889 119905119889 119908) one (or two) of the edges (V

119894119901 119905119901 1199051015840

) and(1199041015840

V119894119901 119905119901

) are already defined on 1198731015840 what we have to do is

to sum 119908 to the existing maximum capacity of that edgeand test the admissibility of 1198731015840 If the booking should notbe accepted then we just have to decrease the maximumcapacity of that edge on119908 leaving the edge with the previouscapacity

Remark 6 Our model lets us cancel a booking some timeafter it was already accepted It is sufficient to decrease themaximum capacity along the corresponding edge in as manyunits as the booking indicates removing it if afterwards its

S

S998400

T

T998400

11

12

21

22

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

(0 minus k1)

(0 minus k2)

(0 minusinfin)

(0 minus k1 + k2)

Figure 7 Auxiliary network1198731015840

maximum capacity is 0 But we have to check if doing thiswe get a network without an admissible flow On one handthis could happen with one-way bookings when the car wasrequired to be at another city in the future for being used foranother booking departing from there In this case the carmust bemoved there by the company staffOn the other handthe lack of an admissible flow on the network can also comefrom the necessity of needing more parking spaces availableat the departure city during part of the time that the car wasreserved

5 Algorithm for Computing theAdmissibility of the Network 119873

In this section we explain how we define the graph of 1198731015840in order to maximize the flow on this network The Ford-Fulkerson algorithm provides a solution for the quest of amaximum flow between a source and a sink on a network

As we have mentioned in the previous section theacceptance of a booking depends on verifying whether acertain network 119873 with minimum capacities admits a flowor not and this can be reduced to find a maximum flow onan auxiliary network1198731015840 The following algorithm shows howto define 1198731015840 and how to use it in order to accept or reject areservation

Step 1 Notation

(11) 119899 number of depots(12) For every 1 le 119894 le 119899 119901

119894stands for the number of

parking places available at depot 119894(13) For every 1 le 119894 le 119899 119896

119894denotes the initial number of

cars at depot 119894(14) ℎ119898 is the total number of time moments considered

1199051 119905

ℎ119898

(15) The network 1198731015840 will have ℎ119898119899 + 4 nodes that is 119899depots at ℎ119898 different times plus 4 nodes for 119904 119905 1199041015840and 1199051015840

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 6: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

6 Journal of Applied Mathematics

S

T

11

12

21

22

(k1 minus k1) (k2 minus k2)

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

Figure 6 Network119873

1199081 then the booking should be accepted byTheorem 3 If it is

not accepted we remove the edges (V11989411990111199051199011

1199051015840

) and (1199041015840 V11989411988911199051198891

)If yes then we keep these two edges on1198731015840

Example 5 Suppose that we have two depots 1 and 2 with1198961cars at depot 1 and 119896

2cars at depot 2 We consider each

depot at two different times 119905 = 1 and 119905 = 2 Supposethat we have a booking of 119908

1cars from depot 1 at time 119905

1

to depot 2 at time 1199052 In Figure 6 we have the initial network

119873with theminimum andmaximum capacities at every edgeThe flow is not indicated at any arc In Figure 7 we have thecorresponding auxiliary network1198731015840 where we have reducedthe minimum capacities 0 of the arcs as it is indicated in (7)We recall that the arcs with maximum capacity equal to 0 arealso removed

After dealing with 1199031 we pass to next booking 119903

2=

(1198941199012 1199051199012 1198941198892 1199051198892 1199082) andwe proceed as before adding two new

edges to1198731015840 with capacity 1199082

119888 (119906 V) =

1199082 for 119906 = V

11989411990121199051199012

V = 1199051015840

1199082 for 119906 = 119904

1015840

V = V11989411988921199051198892

(8)

If for dealing with an arbitrary booking 119903 =

(119894119901 119905119901 119894119889 119905119889 119908) one (or two) of the edges (V

119894119901 119905119901 1199051015840

) and(1199041015840

V119894119901 119905119901

) are already defined on 1198731015840 what we have to do is

to sum 119908 to the existing maximum capacity of that edgeand test the admissibility of 1198731015840 If the booking should notbe accepted then we just have to decrease the maximumcapacity of that edge on119908 leaving the edge with the previouscapacity

Remark 6 Our model lets us cancel a booking some timeafter it was already accepted It is sufficient to decrease themaximum capacity along the corresponding edge in as manyunits as the booking indicates removing it if afterwards its

S

S998400

T

T998400

11

12

21

22

(0 minus p1)

(0 minus p1)

(0 minus p2)

(0 minus p2)

(0 minus k1)

(0 minus k2)

(0 minusinfin)

(0 minus k1 + k2)

Figure 7 Auxiliary network1198731015840

maximum capacity is 0 But we have to check if doing thiswe get a network without an admissible flow On one handthis could happen with one-way bookings when the car wasrequired to be at another city in the future for being used foranother booking departing from there In this case the carmust bemoved there by the company staffOn the other handthe lack of an admissible flow on the network can also comefrom the necessity of needing more parking spaces availableat the departure city during part of the time that the car wasreserved

5 Algorithm for Computing theAdmissibility of the Network 119873

In this section we explain how we define the graph of 1198731015840in order to maximize the flow on this network The Ford-Fulkerson algorithm provides a solution for the quest of amaximum flow between a source and a sink on a network

As we have mentioned in the previous section theacceptance of a booking depends on verifying whether acertain network 119873 with minimum capacities admits a flowor not and this can be reduced to find a maximum flow onan auxiliary network1198731015840 The following algorithm shows howto define 1198731015840 and how to use it in order to accept or reject areservation

Step 1 Notation

(11) 119899 number of depots(12) For every 1 le 119894 le 119899 119901

119894stands for the number of

parking places available at depot 119894(13) For every 1 le 119894 le 119899 119896

119894denotes the initial number of

cars at depot 119894(14) ℎ119898 is the total number of time moments considered

1199051 119905

ℎ119898

(15) The network 1198731015840 will have ℎ119898119899 + 4 nodes that is 119899depots at ℎ119898 different times plus 4 nodes for 119904 119905 1199041015840and 1199051015840

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 7: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Journal of Applied Mathematics 7

(16) 119860 = (119886119894119895) is matrix of capacities in 119873

1015840 whosedimensions are (ℎ119898119899 + 4) times (ℎ119898119899 + 4) The nodes areenumerated in the adjacency matrix as follows

(i) For 1 le 119894 le 119899 1 le 119895 le ℎ119898V119894119895

rarr 119899(119895 minus 1) + 119894

(ii) 119905 rarr ℎ119898119899 + 1(iii) 119904 rarr ℎ119898119899 + 2(iv) 1199051015840 rarr ℎ119898119899 + 3(v) 1199041015840 rarr ℎ119898119899 + 4

(17) Set 1199031 119903

119871 as a list of bookings Set 120572 = 1 which

will be the counter for the reservations(18) Set Λ = 0 which will accumulate the number of cars

in accepted bookings

Step 2 Initilialize 119860For every 1 le 119894 119895 le ℎ119898119899 + 4 we define the following

119886119894119895=

119901ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119901ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 4 119895 = ℓ 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 3

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere

(9)

Remark 119886119894119895

= 0 can represent the lack of an edge or theexistence of an edge with capacity equal to 0

Step 3 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31) Update the following elements of 119860

119886119894119895=

119886119894119895+ 119908120572

for 119894 = ℎ119898119899 + 4 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

119886119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572 119895 = ℎ119898119899 + 3

(10)

(32) Maximize the flow 119891(1198731015840

) of the network 1198731015840 using

Ford-Fulkerson algorithm(33) If 119891(1198731015840) = Λ + sum

119899

119894=1119896119894+ 119908120572 then

(i) accept the booking 119903120572

(ii) update Λ = Λ + 119908120572

elsewhere

(iii) undo the assignments in 119860 of Step (31)

(34) Set 120572 = 120572 + 1 and return to Step 3

Step 4 We finish when all the bookings have been processed

In order to reduce the computational cost of the abovealgorithm we have analyzed its implementation based on thenotion of a residual network Let 119873 = (119881 119864 119904 119905 119888) be anetwork with a flow 119891 over 119873 Without loss of generalitywe assume that each pair of nodes is connected in just onesense either (119906 V) isin 119864 or (V 119906) isin 119864 but not at the sametimeWe define the residual network119873

119891as the network119873

119891=

(119881E 119904 119905 119888) with the same nodes source and sink as119873 Theset of arcs E consists of all the arcs of the form (119906 V) suchthat either (119906 V) or (V 119906) belong to 119864 that is every arc of 119864is maintained and it has also an associated arc in the oppositesense Besides the new capacities 119888 on this new set E aredefined as

119888 (119906 V) =

119888 (119906 V) minus 119891 (119906 V) if (119906 V) isin 119864

119891 (119906 V) if (V 119906) isin 119864(11)

We define an 119891-augmenting path on 119873119891as a path from

119904 to 119905 namely 119901 such that all the edges in this path havepositive capacity We define the capacity of 119901 namely 119888

119901as

the minimum of the capacities of all the arcs in 119901 The flow ismaximum when there is not an 119891-augmenting path on119873

119891

Let us consider the network 1198731015840

119891associated with the

network 1198731015840 defined in previous algorithm with the initial

flow defined in (6) which results in being admissible in 1198731015840Then the new adjacency matrix 119860

119891= (119886119891

119894119895) that corresponds

to the network1198731015840119891will be

119886119891

119894119895=

119901ℓminus 119896ℓ

for 119894 = 119896119899 + ℓ 119895 = 119894 + 119899 0 le 119896 le ℎ119898 minus 2

1 le ℓ le 119899

119896ℓ

for 119895 = 119896119899 + ℓ 119894 = 119895 minus 119899 1 le 119896 le ℎ119898 minus 1

1 le ℓ le 119899

119901ℓminus 119896ℓ

for 119894 = (ℎ119898 minus 1) 119899 + ℓ 119895 = ℎ119898119899 + 1

1 le ℓ le 119899

119896ℓ

for 119894 = ℎ119898119899 + 1 119895 = (ℎ119898 minus 1) 119899 + ℓ

1 le ℓ le 119899

119896ℓ

for 119894 = ℓ 119895 = ℎ119898119899 + 4 1 le ℓ le 119899

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 3 119895 = ℎ119898119899 + 2

119899

sum

ℓ=1

119896ℓ

for 119894 = ℎ119898119899 + 2 119895 = ℎ119898119899 + 1

infin for 119894 = ℎ119898119899 + 1 119895 = ℎ119898119899 + 2

0 elsewhere(12)

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 8: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

8 Journal of Applied Mathematics

k1 + k2

k1 + k2

k1

k1

k1

w1

w1

k2

k2

k2infin

p1 minus k1

p1 minus k1p2 minus k2

p2 minus k2

S998400

T998400

Figure 8 The network of Example 5 after the first iteration of Step(31) in the algorithm The arcs in black belong to 1198731015840 and the arcswith a purple (dashed) line represent the additional edges to beconsidered with the former ones of1198731015840 in order to have the residualnetwork of1198731015840

After each booking 119903120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572) we look

for an 119891 augmenting path 119901 from 1199041015840 to 119905

1015840 in the residualnetwork associated with the network 119873

1015840

119891 The residual one

is updated following the indications in (10) For the sakeof clarity we provide in Figure 8 the residual network of1198731015840 in Example 5 after the first iteration of Step (31) in the

algorithm The edges with 0 capacity and the labels of all thenodes except 1199041015840 and 119905

1015840 have been removed in order to get aneater picture

6 A Simplified Algorithm for Computing theAdmissibility of a Flow on a Network

We refer again to Example 5 The nodes that stand forthe drop-off depot before the drop-off time the nodes thatrefer to the pick-up depot before the pick-up time and 119904

can be removed because if some of them appear in an 119891-augmenting path they do it in a cycle and this cycle can beerased from the 119891-augmenting path without decreasing itscapacity Therefore the only way to find an 119891-augmentingpath without cycles from 119904

1015840 to 1199051015840 is to consider the followingpath 1199041015840 V

22 119905 V12 V11 1199051015840

Therefore a simplification of theresidual network inwhat concerns to this booking can be seenin Figure 9 Such a path exists if the following conditions arefulfilled whether 119908

1le 1199011minus 1198961and 119908

1le 1198962 So by checking

them we can omit the restrictions given by the arcs (1199041015840 V22)

and (V11 1199051015840

) and the network1198731015840 is reduced to the time-spacepart plus the initial sink 119905 see Figure 10

Taking this into account Step 3 in the algorithm ofSection 5 can be significantly simplified Let us take a booking(119894119901 119905119901 119894119889 119905119889 119908) In order to accept it we only have to find if

there exists a path that connects the node V119894119889 119905119889

with the nodeV119894119901119905119901

with capacity greater than or equal to119908 Such a path canbe easily found using a shortest path algorithm likeDijkstrarsquos

k1

w1

w1

k2

k2

p1 minus k1p2 minus k2

p2 minus k2

T

T99840011

12

21

22 S998400

Figure 9 A simplified version of the residual network of Example 5is to be considered in order to decide whether to accept or not thebooking (V

1 1 V2 2 1199081)This is accepted if we find an119891-augmenting

path from 1198781015840 to 119879

1015840 to be increased in 1199081units The arcs in the 119891-

augmenting path are represented in green

k1

k2

k2

p1 minus k1

p2 minus k2

p2 minus k2

T

11

12

21

22

Figure 10 A more simplified version of the residual network ofExample 5 The booking (V

1 1 V2 2 1199081) will be accepted if there is

an 119891-augmenting path from V2at time 119905 = 2 to V

1at time 119905 = 1

to be increased in 1199081units The arcs in the 119891-augmenting path are

represented in green

in the residual network associated with1198731015840 This path will beof the form

V119894119901119905119901

V119894119901119905119901+1

V119894119901119905ℎ119898

119905 V119894119889 119905ℎ119898

V119894119889 119905119889+1

V119894119889 119905119889

(13)

Further information concerning Dijkstrarsquos algorithm canbe found for instance in [16 18 19 21 24]

We point out that the use of a shortest path algorithmprevents us from getting an 119891-augmenting path with cyclesWith respect to the previous algorithm we modify the stepsindicated below but considering the matrix 119860

119891previously

defined

Step 11015840 Notation

(16bis) 119860119891= (119886119891

119894119895) amatrix of dimensions (ℎ119898119899+1)times(ℎ119898119899+

1)The nodes are enumerated in the adjacencymatrixas follows

(i) V119894119895

rarr 119899(119895 minus 1) + 119894

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 9: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Journal of Applied Mathematics 9

(ii) 119905 rarr ℎ119898119899 + 1

that is we have removed the vertex 119904 1199051015840 and 1199041015840 and the

adjacent arcs to them In addition Step (18) is removed

Step 21015840 Initialization of 119860119891

In the same way as in (12) but restricting ourselves to thenew dimensions of 119860

119891 we omit 119904 1199041015840 1199051015840 and their adjacent

arcs

Step 31015840 Analyze the bookingsWhile 120572 le 119871 take 119903

120572= (119894119901120572 119905119901120572 119894119889120572 119905119889120572 119908120572)

(31)1015840 Find a shortest path 119901 between the nodes 119899(119905119889120572

minus1)+

119894119889120572

and 119899(119905119901120572

minus 1) + 119894119901120572

(32)1015840 Compute the capacity of 119901 namely 119888119901

(33)1015840 If 119908120572le 119888119901then do the following

(i) Accept the booking 119903120572

(ii) Update the following elements of 119860119891

119886119891

119894119895=

119886119891

119894119895minus 119908120572

for 119894 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119889120572

minus 1) + 119894119889120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119889120572

119886119891

119894119895minus 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119889120572 119895 = ℎ119898119899 + 1

119886119891

119894119895+ 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119889120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (ℎ119898 minus 1) + 119894119901120572 119895 = ℎ119898119899 + 1

119886119891

119894119895minus 119908120572

for 119894 = ℎ119898119899 + 1 119895 = 119899 (ℎ119898 minus 1) + 119894119901120572

119886119891

119894119895+ 119908120572

for 119894 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119895 = 119894 + (119896 + 1) 119899 119896 = 0 ℎ119898 minus 119905119901120572

119886119891

119894119895minus 119908120572

for 119894 = 119895 + (119896 + 1) 119899 119895 = 119899 (119905119901120572

minus 1) + 119894119901120572

+ 119896119899

119896 = 0 ℎ119898 minus 119905119901120572

(14)

elsewhere

(iii) Reject the booking 119903120572

(34)1015840 Set 120572 = 120572 + 1 and return to Step 3

Step 41015840Wefinish when all the bookings have been processed

7 Some Additional Considerationsabout the Model

In our assumptions we have considered that we start thescheduling of bookings from scratch starting on time 119905

1 but

this is only the real case once in the company lifetime Theinterval of time 119905

1 119905

ℎ119898must be finite Nevertheless we

can consider that before running the algorithm on the modelwe have already confirmed some bookings that started before1199051and some that will finish after 119905

ℎ119898 In order to introduce

them in our model

(i) for every existing booking (119894119901 119905119901 119894d 119905119889 119908) with 119905

119901lt

1199051and 1199051le 119905119889le 119905ℎ119898 we add a new edge (119904 V

119894119889 119905119889) with

maximum and minimum capacity equal to 119908(ii) for every existing booking (119894

119901 119905119901 119894119889 119905119889 119908) with 119905

1le

119905119901le 119905ℎ119898

and 119905ℎ119898

lt 119905119889 we add a new edge (V

119894119901119905119901 119905)

with maximum and minimum capacity equal to 119908

We have also considered that we are dealingwith only onetype of car If our fleet has several types of cars ordered inincreasing category as 119909

1≺ 1199092≺ sdot sdot sdot ≺ 119909

119897 we will propose a

model with 119897-layers In the lower one we have a network forcars of type 119909

1 in the one above of it we deal with the cars

of type 1199092 and so on We should point out that in this case

the number of parking spaces is shared by several types ofcars Sometimes the clients could ask for a car of low typefor instance 119909

1 and the company could have none of those

cars available of this layer for renting However we can try tosee if we can offer him a car of type 119909

2 If this is the case we

can confirm the booking and grant the client with an upgradewhen he arrives to the pick-up depotThe client will be happyand the service have accepted a booking that otherwise couldbe lost

8 Results and Discussion

The proposedmodel simulates the flow of the fleet of vehiclesof a car-rental service without staff dedicated to move carsfrom one location to another one as could sometimes beneeded to do due to one-way bookings This model has theadvantage that let us recover the flow of cars across the depotsalong the time as it is indicated in Remark 6

The model is based on determining the admissibility ofa flow on a network with minimum capacities Its imple-mentation is backed by Theorem 3 In our first model everynew booking only requires defining at most one new edgeon the auxiliary network and applying the well-known Ford-Fulkerson algorithm on it Later a simplification of thenetwork permits us to solve the problem using a shortest pathalgorithm

On one hand Ford-Fulkerson algorithm can be easilycomputed on a network with Mathematicacopy by using thecommand NetworkFlow [network source sink] of the Com-binatorica package In our case network would be the graphassociated with 119873

1015840 1199041015840 would be the source and 1199051015840 would

be the sink The complexity of Ford-Fulkerson algorithm isO(|E| sdot 119891(1198731015840)) whereE is the set of edges in the network1198731015840and 119891(119873

1015840

) is the maximum flow on it see for instance [19

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 10: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

10 Journal of Applied Mathematics

Table 1 Comparison between the 2 algorithms for 6 cities at 20different times

Number ofbookings With NetworkFlow (s) With FindShortestPath (s)

1 0125 00625 0718 026610 1828 051515 3265 078230 9235 156275 34609 4078125 61547 6765200 100265 1100300 139593 16657400 163484 22422500 207984 28281

20 26] Therefore every time a booking 119903 = (119894119901 119905119901 119894119889 119905119889 119908)

is accepted we add at most two more new edges and the flowis increased in119908 which is the number of cars in the bookingAn implementation using Edmonds-Karp algorithm has acomplexityO(|119881| sdot |E|2) which is independent of the numberof cars considered and only depends on the set of vertex 1198811015840and the set of edges E [19 20 26]

On the other hand the shortest path between two nodesin a network can be easily computed withMathematica usingFindShortestPath [network source sink] of theCombinatoricapackage with the same values for network source and sink asbefore There are several algorithms for solving the shortestpath problem between two points The well-known Dijkstraalgorithm has a cost O(|119881|2) when it is implemented withlistsThe order of the cost can be reduced if it is implementedwith binary heaps O((|E|) log |119881|) or with Fibonacci heapsO(|E| + |119881| log |119881|) see [19 20 26] Therefore the simpli-fication proposed of the algorithm shown in Section 6 canprovide much more better computational results

This can be seen on a simulation carried out over time-expanded network of 6 depots at 20 different times and 500bookings The computations were performed on a computerwith a processor of 250GHz and 325Gb of RAM usingMathematicacopy 80 The comparison of the execution timesof each one of these methods is presented in Table 1 Weobserve a significant improvement in the computationaltime required to solve the problem if we use the simplifiedalgorithm based on the search of shortest paths using theresidual network

Finally this model let us simulate if it is profitable for thecompany that manages the service to invest or not either inmore cars or in more parking slots taking into account thehistoric of petitions of bookings received This can be doneusing a list of all the requests of bookings received during aperiod of time despite they were accepted or notWe analyzewith the historical data of petitions if when we increase themaximum and minimum capacities at one or some of theedges (119904 V

1198941) the number of accepted bookings is increased

and whether the new expected incomes coming from these

bookings are enough to invite us to invest Analogously wecan consider if there is a significant increment of benefits if weaugment the number of parking spaces at one or some depotsBoth types of analysis can be jointly considered

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

Acknowledgments

J Alberto Conejerois is supported by MEC ProjectMTM2013-47093-P The authors thank Vıctor Fernandezand Raul Urbano from the Mobincity Project for theirhelpful discussions on the topic Esther Sanabria-Codesal issupported by MEC Project MTM2012-33073

References

[1] A Fink and T Reiners ldquoModeling and solving the short-termcar rental logistics problemrdquoTransportation Research E vol 42pp 272ndash292 2006

[2] H2020 Workprogramme 2014-2015 ldquoObjective GV8-2015Electric vehiclesrsquo enhanced performance amp integration into thetransport system amp the gridrdquo httpeceuropaeuresearchpar-ticipantsportaldesktopenopportunitiesh2020topics2608-gv-8-2015

[3] The Mobincity Project Smart Mobility in Smart cityhttpwwwmobincityeu

[4] European Vehicle Market Statistics Pocketbook 2013 2014httpwwwtheicctorgsitesdefaultfilespublicationsEU veh-iclemarket pocketbook 2013 Webpdf

[5] I Steizen V Gintner L Suhl and N Kliewer ldquoElectric vehi-cles charging into the futurerdquo German Institute For EconomicResearch vol 6 no 27 2010

[6] J Abara ldquoApplying integer linear programming to the fleetassignment problemrdquo Interfaces vol 19 no 4 pp 20ndash28 1989

[7] D Teodorovic Airline Operation Research Gordon and BreachScience New York NY USA 1988

[8] S Yan C H Tang and M C Lee ldquoA flight scheduling modelfor Taiwan airlines under market competitionsrdquoOmega vol 35pp 175ndash186 2007

[9] S Yan and C H Tseng ldquoA passenger demand model for airlineflight scheduling and fleet routingrdquo Computers and OperationsResearch vol 29 pp 1559ndash1581 2002

[10] M Lohatepanont and C Barnhart ldquoAirline schedule planningintegrated models and algorithms for schedule design and fleetassignmentrdquo Transportation Science vol 38 pp 19ndash32 2004

[11] I Steizen V Gintner L Suhl and N Kliewer ldquoA time-space network approach for the integrated vehicle-and crew-scheduling with multiple depotsrdquo Transportation Science vol44 pp 367ndash382 2010

[12] S Yan and C H Chen ldquoOptimal flight scheduling models forcargo airlines under alliancesrdquo Journal of Scheduling vol 11 no3 pp 175ndash186 2008

[13] A T Ernst E O Gavriliouk and L Marquez ldquoAn efficientLagrangean heuristic for rental vehicle schedulingrdquo Computersamp Operations Research vol 38 no 1 pp 216ndash226 2011

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 11: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Journal of Applied Mathematics 11

[14] A Hertz D Schindl and N Zufferey ldquoA solution method for acar fleet management problem with maintenance constraintsrdquoJournal of Heuristics vol 15 pp 425ndash450 2009

[15] Y Yang W Jin and X Hao ldquoCar rental logistics problem areview of literaturerdquo IEEE International Conference on ServiceOperations and Logistics and Informatics vol 2 pp 2815ndash28192008

[16] A Dolan and J Aldous Networks and Algorithms An Introduc-tory Approach John Wiley amp Sons Chichester UK 1993

[17] J A Conejero and C Jordan ldquoAplicaciones de la Teorıa deGrafos a la vida realrdquo Massive Open Online Course (MOOC)offered by UPV[x] 2014 httpcursografosupvxesficha

[18] J R Evans and E Minieka Optimization Algorithms for Net-works and Graphs Marcel Dekker New York NY USA 1992

[19] J L Gross and J Yellen GraphTheory and Its Applications Dis-creteMathematics and its Applications (Boca Raton) Chapmanamp HallCRC New York NY USA 2006

[20] J L Gross and J Yellen Handbook of Graph Theory Chapmanamp HallCRC New York NY USA 2003

[21] M C Hernandez-Ayuso Introduccion a la teorıa de redesSociedad Matematica Mexicana Tlalpan Mexico 2005

[22] C Jordan ldquoEstructuras Matemaaticas para la Informaatica IIOpen Course Ware (OCW)rdquo (Look at Informacion amp Materi-ales) httpwwwupvesocwasi20106024

[23] C Jordan and J R Torregrosa ldquoHerramientas de la teorıa degrafos para la modelizacionrdquo Modelling in Science Educationand Learning vol 4 no 22 pp 275ndash289 2011

[24] C Jordan and J R Torregrosa Introduccion a la teorıa de grafosy sus algoritmos Universitat Politecnica de Valencia ValenciaSpain 1996

[25] L Bodin B Golden A Assad and M Ball ldquoRouting andscheduling of vehicles and crews the state of the artrdquoComputersamp Operations Research vol 10 no 2 pp 63ndash211 1983

[26] S Pemmaraju and S SkienaComputational DiscreteMathemat-ics Cambridge University Press Cambridge UK 2003

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 12: Research Article An Iterative Algorithm for the Management of an Electric Car-Rental ...downloads.hindawi.com/journals/jam/2014/483734.pdf · 2019. 7. 31. · Research Article An

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of


Recommended