Journal of Advanced Transportation

Volume 2018, Article ID 2493401, 11 pages

https://doi.org/10.1155/2018/2493401

## Hybrid Optimization-Based Approach for Multiple Intelligent Vehicles Requests Allocation

Correspondence should be addressed to Ahmed Hussein; se.m3cu.gni@niessuha

Received 17 November 2017; Accepted 29 January 2018; Published 11 March 2018

Academic Editor: Aboelmaged Noureldin

Copyright © 2018 Ahmed Hussein et al. This 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.

#### Abstract

Self-driving cars are attracting significant attention during the last few years, which makes the technology advances jump fast and reach a point of having a number of automated vehicles on the roads. Therefore, the necessity of cooperative driving for these automated vehicles is exponentially increasing. One of the main issues in the cooperative driving world is the Multirobot Task Allocation (MRTA) problem. This paper addresses the MRTA problem, specifically for the problem of vehicles and requests allocation. The objective is to introduce a hybrid optimization-based approach to solve the problem of multiple intelligent vehicles requests allocation as an instance of MRTA problem, to find not only a feasible solution, but also an optimized one as per the objective function. Several test scenarios were implemented in order to evaluate the efficiency of the proposed approach. These scenarios are based on well-known benchmarks; thus a comparative study is conducted between the obtained results and the suboptimal results. The analysis of the experimental results shows that the proposed approach was successful in handling various scenarios, especially with the increasing number of vehicles and requests, which displays the proposed approach efficiency and performance.

#### 1. Introduction

Self-driving cars could revolutionize how people get around; with the introduction of automation into roads, it will contribute to solving the issues related to the traffic accidents, congestion, and energy consumption. The driverless vehicle technologies are advancing on a great scale, specifically the multiple sensors fusion techniques, deep learning, and computational intelligence. Together, they enable these vehicles to understand the nearby surroundings and take appropriate actions to navigate on their own from one point to another. The technology does not stop at vehicle being fully automated; however multiple of them cooperate together to achieve smoother driving operation [1–3].

Researchers in the Intelligent Transportation Systems (ITS) field are investing more time on the self-driving cars research and development [4–6]. However, during the last decade, Multirobot Systems (MRS) fell under the research attention of the ITS community. This increased interest comes from the significant advantages and higher potential provided by MRS over single robot systems. MRS can be simply understood to be a group of robots cooperating together for accomplishing a certain task or mission [7, 8]. With reference to the literature review survey, the coordination and cooperation among multiagent systems can be modeled as Multirobot Task Allocation (MRTA) problem. MRTA is a NP-hard problem, which concerns the use of the available resources in an efficient manner. Accordingly, the decision of which robot will do which task strongly affects the performance of the system [9, 10].

Accordingly, this paper introduces a hybrid optimization-based approach to solve the MRTA problem. This approach can coordinate among several intelligent vehicles and aid in the cooperation for better overall performance. The algorithm is implemented on automated golf carts and tested in off-road environments in real-life scenarios. Moreover, in order to prove the proposed solution efficiency, several experiments are carried out over well-known benchmarks. The benchmarks optimal solution is obtained after hundreds of hours of computations. The proposed approach was able to obtain a near-optimal solution in a matter of seconds. This proves the proposed approach high performance.

The remainder of the paper is organized as follows: Section 2 presents the previous work in the field of multiple automated vehicles and the allocation problem, followed by Section 3, which introduces the problem formulation, solution constraints, objective function, and the proposed solving hybrid approach. In Section 4, the used platform is described, along with the experimental setup in the designed architecture, selected scenarios, and the evaluation metrics. Results and discussion are illustrated in Section 5. Finally, the conclusion and future work are summarized in Section 6.

#### 2. Related Work

Autonomous cars are becoming more frequent in nowadays scientific and industrial context, since Google launched their driverless car project in 2011 [4]. From then onwards, many other approaches proposed different architectures and solutions, all of them moving towards the development of the autonomous vehicle. For instance, Mercedes with the Bertha project proved the viability of autonomous vehicles in German roads based on advance sensing capabilities [11]. The V-Charge project researches in the direction of allowing automated valet parking for self-driving cars [12]. Moreover, several vehicle manufacturers have proposed different solutions in the field of autonomous vehicles which are close to markets, such as BMW and Audi [13], Mercedes-Benz [14], and Volvo [15]. Furthermore, several other proposals offer the possibility of including autonomous vehicles in public transportation systems [5, 6].

The self-driving technology is advancing rapidly, but in order to safely deploy vehicles on public roads, cooperation with other road users is mandatory. This cooperation would allow the safe interaction with other vehicles, whether with a human driver or driverless. Although some of the proposed solutions already handle the presence of other vehicles in the road [16–18], by handling static and dynamic obstacles and adapting the trajectory accordingly, the cooperative driving is not yet achieved. Cooperative driving demands the information exchange and control strategies deployed in all the vehicles involved following a two-way communication. In this sense, during recent years many works have addressed this topic, trying to provide solutions based on different configuration and solutions. The Grand Cooperative Driving Challenge 2016 was created with the purpose of boosting cooperative automated vehicles in the form of a cooperative based competition [19]. On the one hand, authors in [20] presented an auction-based cooperative control for autonomous vehicles; on the other hand, authors in [21] proposed an approach to enhance common motion planning algorithms; this proposal allows cooperation with human-driven vehicles. Additionally, a novel concept is presented, based on a centralized strategy, using maneuver templates, which are formalized collaborative maneuvers, to select cooperative driving strategies [22]. All this work proves the importance of collaboration and communication among vehicles to allow a safe and efficient deployment of autonomous vehicles really in driving scenarios.

Since cooperation is essential among multiple vehicles on the road, coordination becomes the first issue to solve. In the MRS, the question of which robot is going to execute which task is answered through task allocation problem, which is commonly known as MRTA problem. By reviewing the literature, it was found that different optimization approaches have been used in order to solve the general task allocation problem and were also used in order to solve the MRTA problem. In [23], a mixed integer linear programming optimization approach was used in order to allocate heterogeneous robots for maximizing the coverage area of the regions of interest. In [24], a simulated annealing approach was used to solve the allocation of MRS through formulating the MRTA problem as multi-Traveling Salesmen Problem (mTSP). Then in [25], a market-based approach was proposed to solve the MRTA problem for heterogeneous robots and task formulated as mTSP. Moreover, the task allocation problem was also solved using hybrid optimization approaches such as the tabu search with random search method in [26] and tabu search with noising method in [27].

#### 3. Methodology

In this section, the MRTA problem modeling and formulation are introduced, followed by the selected objective cost function. Afterward, the proposed algorithm is described, highlighting the main contribution. MRTA problem [7] is formulated to allocate multiple robots, in this case, vehicles, to numerous tasks, in this case, requests. The procedures are summarized as follows:(1)Given a set of vehicles, .(2)Given a set of requests, .(3)Allocation of the requests to the vehicles occurs, .(4)Output set is the best allocation of the requests to the vehicles:(5)Allocation minimizes or maximizes a certain objective function in order to get the best performance of the system.

##### 3.1. Problem Formulation

A variant of mTSP is used to model MRTA problem. In the standard mTSP formulation, nodes are defined with the edges distances and salesmen are known. The salesmen are required to cover all the available nodes and return back to their starting node, such that each salesman makes a round trip. The mTSP can be formally defined on a graph where is the set of nodes and is the set of edges. Let be the distance matrix associated with . Assuming the more general case which is an asymmetric mTSP, thus . The mTSP can be formulated as follows [9]:where (3) represents the objective function which is the summation of the total distance traveled, (4) and (5) ensure that exactly salesmen departed their starting node and returned back. Equations (6), (7), and (8) are the usual assignment constraints. Finally, (9) is the subtour elimination constraint.

The proposed formulation is extended and adapted to the problem, where vehicles represent the salesmen and requests represent the cities. Therefore, vehicles capabilities and requests requirements are considered and included in the mTSP implementation. The added features of the vehicles are capacity, velocity, energy, efficiency, and sensors, and the ones for the requests are timestamp, priority, and passengers.

Where the vehicle capacity is the maximum number of passengers that it can hold, the velocity is a representation of the maximum speed it can reach, the energy is a representation of the battery level, the efficiency is a representation of the aging factor, and finally the sensors are a set of on-board devices to consider the vehicles as heterogeneous robots. On the other hand, the request timestamp is the date and time of the request creation, the priority is a representation or the request urgency based on the request type, and passengers are a representation of the number of users for the request.

##### 3.2. Solution Construction

The solution is constructed as a set that includes a list of all vehicles in the system, followed by their assigned requests. The order of the list defines the quality of the solution according to the objective function. For example, for a problem with three vehicles and five requests, one of the possible candidate solutions is represented as follows:

Any combination of this list presents another candidate solution, and since the mTSP is a permutation problem, therefore the order of this list affects the quality of the solution as per the objective function. The order implies that each vehicle is going to execute all requests succeeding it. In candidate solution (10), requests 1 and 2 are executed by vehicle 1, requests 3 and 4 are executed by vehicle 2, and finally request 5 is executed by vehicle 3.

##### 3.3. Objective Function

Although the MRTA problem is formulated as an instance of the mTSP, the same objective function of the mTSP previously explained in (3) cannot be straightforwardly used as the objective function for the MRTA problem. Therefore, some variations had to be introduced to the objective function of the mTSP in order to be effectively used for the MRTA problem [28].

There are three main variations of the MRTA problem objective function compared with the mTSP objective function. First, it is a multiobjective function instead of a single objective function, second, the variable to be minimized is the time rather than the distance, and, third, the time of the maximum subtour is minimized rather than the total time, thus dealing with it as a MinMax problem. Then, for subtours and requests in each subtour, the total traveling time is calculated as follows:

##### 3.4. Solution Constraints

Although any arrangements of the vehicles and requests solution set are considered as a candidate solution for the mTSP problem, this does not guarantee that this solution is feasible for the MRTA problem. Therefore, few constraints are applied to the obtained solution, to ensure its validity and feasibility, which means checking whether the vehicle capabilities and request requirements are matching.

The first constraint is related to the capacity; for example, a vehicle with a maximum capacity of 4 passengers cannot handle a request of 6 passengers in one go; thus the request is decomposed into several requests and reallocated accordingly. The next constraint is the energy; the vehicle battery level is always taken into consideration before the final allocation of the request, since if the vehicle does not have sufficient energy for a specific request, it is reallocated to another vehicle. Another constraint is the priority level of the request, which implies that some requests, maintenance request, for instance, must be executed first. Last but not least, there is a constraint related to the mounted on-board sensors, which check if the request requires the presence of a specific sensor in the vehicle.

These applied constraints strongly affect the search space of the problem through decreasing the number of candidate solutions that can be accepted as feasible solutions. One may think that this decrease of the number of feasible solutions among the candidate solutions may make it easier for the applied algorithm to find the best solution than the case without the constraints. However, these applied constraints, in fact, make it more difficult and more time consuming to find the best solution. This is mainly because the algorithm will be visiting a large number of solutions that are candidate solutions of the mTSP but are not feasible to solve the MRTA problem.

##### 3.5. Proposed Algorithm

The proposed solution is designed as metaheuristic optimization algorithm. It is a hybrid approach, which is based on both trajectory-based and population-based techniques. The trajectory-based one is the family of optimization techniques that use a single solution throughout the algorithm, in order to find the near-optimal solution. While the population-based one is the family of optimization techniques that iteratively transforms a set of solutions, in order to generate a new population of solutions with the aim of finding the near-optimal solution [29].

On the one hand, SA was selected as a trajectory-based approach, where the neighboring operator is randomly chosen at each iteration for diversity. The mutation operators are swapping, deletion and insertion, inversion, and scrambling. On the other hand, genetic algorithm (GA) was selected as the population-based approach, where the selected mutation operators are the same; however, additional crossover operators are selected, which are partially mapped crossover and order crossover.

The swapping operator chooses two random elements of the solution list and swaps them with each other. Deletion and insertion operator chooses a random element and deletes it from its current position and randomly inserts it in a new position. The inversion operator chooses two random positions and inverts the order of elements between these two positions. The scrambling operator picks two random positions and scrambles the elements between these two positions. Figure 1 illustrates an example of all proposed operators, where positions 1 and 6 are selected as the two random elements. At each iteration, one of the four mutators is randomly chosen in order to generate a neighboring solution of the current solution. The four methods vary in their diversification and intensification effect on the generated neighboring solution.