Distributed parking management architecture based on multi-agent systems

ABSTRACT


INTRODUCTION
In the absence of smart parking management, drivers in big cities lose a lot of time looking for an available parking place. This means a growing traffic problem for the city, very high fuel consumption, and also it has a dramatic impact on the environment. Because of this, big cities are in urgent need of a parking management system that provides drivers information about free parking in real-time and gives them the best option based on their location and current needs. The car park management system must respond to all reservation requests respecting the requirements of each type of driver, i.e. the car park closest to the user's destination, the cheapest, the most secure, highest rated, and most convenient in terms of traffic flow. Thus, this system must take into consideration the overlap issues when receiving multiple booking requests at the same time which are very likely. Several solutions were proposed in literature and from our comparative study [1], we can say that the strength of a parking management system lies in the number of services that it can offer to users, and it was stated that some services are very important to consider in smart parking management systems such as: a. Reservation service: It allows a multiple users to reserve a parking space in an area of the city. b. Geolocation service: It allows users to know the exact location of parking lots, and provides the system of real-time user location. c. Classification service: The system offers a classification of car parks in the requested area according to availability and requested requirements. The response should be optimized, and must take several criteria into account such as those related to the customer profile, his requirements and the availability of parking spaces in the parking lots. d. Detection service: It ensures the detection of users upon arrival at the reserved parking lots. e. Orientation service: The system offers two types of orientation, the external orientation, which allows users to know the exact location of the chosen car park by using Google maps, and the internal orientation towards the parking spaces when the user arrives at the car park. f.
Security service: It provides data and a car security system. g. Synchronization service: The system ensures the synchronization and updating of data in the different components of the SPMS.
On the scale of a large city, there is a set of zones, and, in each one there is a group of car parks. The researchers have proposed many solutions as we will see in the following and these solutions change according to whether the parking management of one or several car parks, or according to the parameters taken into consideration in the final decision. The aim of this paper is to propose a smart parking management system that operates a set of car parks through one application providing a maximum number of services. Each service has a particular potential and must be able to manage the information and data collected, as well as make decisions and find solutions in case of problems. In addition, each service relies on and communicates with other services. This is why, we propose in this paper the use of multi-agent systems (MAS) in the parking management field by considering each service as an agent. A MAS is a loosely coupled network of problem-solving entities that work together to find answers to problems that are beyond the individual capabilities or knowledge of each agent [2], [3]. The approach of the MAS is the most suitable in this case because of the autonomy and responsibility of agents which confirms the profitability of the system.
A multi-agent system consists of at least two agents which interact with each other in a common environment. An agent is an autonomous program, endowed with certain capacities. It can validate the reasoning, to make decisions and to control its actions according to the perception of its environment. The realization of a MAS consists in specifying the behaviors of each agent and the type of interaction between them [4], [5]. To propose a smart solution for parking management, a MAS is the suitable approach to use. Indeed, each service can be linked to an agent who will provide small solutions and the whole team will work together to provide the final answer to the user. The behavior of some agents is determined by a set of rules which express the desired control policies [6]. For example, the occurrence of certain events such as a car leaving the parking lot will generate a message from the sensors to the agent who will trigger the appropriate action. Some agent learners are more intelligent and can learn from their past experiences to make their actions more efficient. Finding available parking spaces as fast as possible, is the objective of researchers proposing smart parking systems. Many of them rely on the internet of things (IOT), others use vehicle-tovehicle communication, and also some of them use MAS. These approaches are different in regard to the techniques used, objectives, context and services offered.
Many authors of the literature combine IoT with cloud computing and big data analytics. They note that the development of an intelligent parking search solution is accelerated as the case in [7], [8]. In 2017, Mendiratta et al. [9] proposed a SPMS using the ultrasonic sensor, in combination with the use of the IoT in detection. This means monitoring available parking spaces and observing the parking condition to inform drivers of the number of free spaces at the entrance. But, their proposed system does not offer a reservation service to facilitate the search for free parking. In 2016, Caballero-Gil et al. [10] an intelligent guidance system based on IoT is proposed. The authors here developed an intelligent function to allow users to selfmanage car parks by an application via personal mobile devices. This application does not allow users to make their reservation request but only to know the availability of parking spaces in nearby car parks. The approach proposed in [11] integrates the IoT techniques and a predictive model based on ensemble methods, such as Bagging and Boosting, to optimize the prediction of the availability of parking space. This approach is reinforced from time to time by the most recent parking availability data to adjust and update the prediction. But their study does not cover the constraint of the walking distance between the user destination and the proposed parking lot. A comprehensive survey into the applicability of sensors, technologies and techniques for parking management in smart cities has been presented in [12]. The authors suggested that the combination of deep learning techniques ensures the location of an available parking space.
A centralized system is proposed in [13] for forecasting the available indoor parking spaces and low-cost mobile application for obtaining data on the actual and planned parking occupancy. The authors in this paper were interested in reducing the energy and time requirements to find the available parking space. The author of the paper [14] proposed an SPMS which allows the user to find the nearest parking area and gives him the availability of parking spaces in this respective parking area. They mainly focused on reducing the time to find parking lots. The services offered in this paper are limited to reservations and security at the entrance of the parking lot which remains insufficient for better parking management. In 2007, Zgaya [15] the authors proposed a centralized smart parking management system. As well as a network of intelligent agents that covers three services: i) search for a vacant place, ii) directions to a parking space and iii) reservation of a parking space. The user in this case can have information about the availability of a unique parking space, and not an overall visibility on all the car parks of the city. In 2013, Mejri et al. [16] a semicentralized approach has been proposed to optimize the allocation of parking spaces. Drivers here cannot have visibility about the situation of more than one parking, so they cannot make their choice in an optimal way. In 2018, Alkharabsheh [17] proposed a SPMS based on MAS to monitor empty parking spaces. They focused on four points: i) reach a decision regarding currents lots status, ii) inform the driver side agents about the parking fees, iii) inform the driver side agents about the car location, iv) inform the driver side agents about the reserved slot information i.e. floor number and slot number. The study in [18] is about a multi-agent SPMS based on the Sins city platform, dedicated to the development of machine to machine (M2M). The approach here is divided into three areas: i) the Application domain guides the drivers, ii) the Network domain manages the devices and iii) the Device domain monitors the parking spaces. The MAS takes into account two constraints: sensor usage and driver preferences. For an advanced parking management system it is insufficient. In 2019, Belkhala et al. [19] described two type layers of architectures for smart parking management systems: The application layer which shows the communication between drivers and the system, and the physical layer that details the principal connected object used in the study. The MAS presented in [20] is dedicated to a centralized SPMS and it adopts two types of agents: Drivers and manager. Two services are provided in this study: the reservation service in given parking and the detection service when users arrive. Authors in this paper do not adopted in their study a distributed reservation in an area. The approach in [21] adopted tree-structure techniques: multi-agent systems, connected objects and systems using vehicle-to-vehicle communication. Authors took into consideration in their approach only the walking distance between the car park and the users' destination but not the driving distance that remains as important (it must be minimal).
In 2019, Miao [22] two types of methods are proposed to solve the problem of parking spaces in an urban environment. The first method is based on the Q-Learning approach, which is a type of reinforcement learning without a model. The second one is about making parking decisions by using a memory based greedy algorithm and artificial neural network. A parking guidance information system (PGIS) is presented in [23] that provides drivers with just parking availability that remains insufficient for the driver.
The SPMS proposed in the literature are generally limited to two or three services for parking management, such as the reservation and detection of vehicles at the entrance to car parks. This is still insufficient for a successful intelligent parking management system. As well as, we noticed that the majority of studies proposed in the literature do not take into consideration the case of multiple reservation requests arriving at the same time, which leads to the problem of overlap. In a big city, the driver's requirements go beyond simply knowing the parking space availability in one park, but the expectations are higher, such as reservation requests in a zone with multi-parking, optimized propositions, guidance to the location, guaranteeing the vehicles and data security.
In this paper we propose a multi-agent smart parking management system (MASPMS) with multilayer architecture to propose a global solution for parking and traffic problems. The idea is designing a system that respects customer constraints and solves the problem of reservation as a multi-variable problem, i.e. multiple users ' requests Rii to multiple parking lots Pii can be processed at the same time and solved in real time. To reach this goal, each service is realized by a set of agents capable to learn with experiences [24], for example he can learn from customer profile, and his past choices to propose the best parking. The proposed MASPMS consists mainly of six agents cooperating together to facilitate the search for available parking spaces and to meet the needs of all types of drivers, like the: closest parking to its destination, cheapest parking in the region requested, parking lot with the most fluid traffic, parking lot with the maximum space available, and preferred parking choice.
The rest of this article is organized as: section 2 contains a general definition of an agent and gives the utility of a multi-agent system. Section 3 presents reviews of related work based on MAS. Architecture of our proposed multi agent system for the management of smart parking spaces in a given area is presented in section 4. Section 5 contains a comprehensive conclusion of the paper findings.

RESEARCH METHOD
In this article we propose a multi-agent system for multi-park management. The aim is to offer to drivers a complete solution with consistent services that facilitate the search, reservation and allocation of car parks. For that, our MASPMS uses eight agents interacting with each other.

Architecture description
The MASPMS proposed is composed of three services: Reservation Service, parking service and security service as shwon in Figure 1. We consider in the rest of the paper: = { 1 , … , } a set of users, = { 1 , … , } a set of zones and for each zone there is a set of parking = { 1 , … , }.

Reservation service
Quickly finding a vacant space in a parking lot without a reservation system is difficult if not impossible. In the reservation level, the MASPMS system allows users to make their reservations in a given zone by using a web or mobile application or other connected things, and then they also allow them, after a classification of the optimal car parks in the requested zone, to make their parking lot choices. The reservation service is realized through the cooperation and communication between groups of agents: a. Reservation agent (R.A) The reservation agent is responsible for interacting with customers to respond to their requests for parking space reservation in a given area. It receives a multiple reservation requests = { 1 , … , } from different users that we noted = { 1 , … , }. Each request contains the necessary information to search a parking lot, such as: Vehicle ID, drivers' destination to give the desired parking zone, drivers position verified by Geo-location agent, requirement that describes the user needs such as preferred distance, preferred parking, cost, and road fluidity.
The collected data is transferred to the classification agent responsible for making the optimal parking proposal. When the reservation is made, the synchronization agent S.A is invoked to update the available parking spaces and also update the historical data for each user. The diagram as shown in Figure 2 details the interaction of R.A in the system with other agents and users: b. Geo-location agent (G.A) The geo-location agent provides R.A with the geographic locations of the real-time position of users and their destinations by using GPS. When R.A receives the reservation request, it contacts G.A to retrieve the necessary geo-location for the data collection. The interaction of G.A in the system is shown in the diagram of Figure 3. c. Classification agent (C.A) The role of the classification agent is to provide R.A with optimal parking in the requested zone, and meet the different user requirements like: Time restriction: The parking management system must filter car parks with a parking time limit.  Security: This means whether the proposal ensures the safety of the car.  Number of free places: This is the number of free places in the car park Researchers proposing reservation systems in the literature [25] generally use genetic algorithms (GA), or a combination between GA and other techniques, such as the deep learning recurrent neural network (RNN). However, the proposed solutions do not cover all constraints and user requirements. To respond to all these, we propose using constraint satisfaction problem (CSP) to model all constraints and to propose optimized responses for users. The C.A agent receives a multi-reservation demand at the same time. The majority of reservation systems proposed in the literature uses the first in first out technique, without worrying about the occurrence of several requests at the same time. To tackle the problem of real time multiple bookings to model this problem, we believe that techniques based on dynamic CSPs can be helpful to model this problem. The diagram of Figure 4 shows interactions of C.A in the system with the other agents. When C.A receives the user's information from R.A, it contacts the Zone (j) Agent ( . ) which has already collected the information about the availability of parking spaces in the requested zone in collaboration with the synchronization agent (S.A) and( . ) of .   The purpose of the synchronization agent is to synchronize and update the information received from the parking agent ( . ), such as the number of free places in a car-park and the occupation of the parking spaces. The S.A agent also has the task of updating the user data registered in the system database in order to reconfigure the profile and use it as a constraint to be taken into account, or create a new profile for new customers. The Figure 5 shows its interaction with . and . :

Parking service
Parking services are the services offered upon arrival at the chosen car park. In this case, the system provides users with an internal guidance service to reach their chosen lots. As well, ensures the security of their vehicles with the help of a detection system at the entrance of parking lots. Agents responsible to provide this service are: a. Zone agent Each zone j is supervised by . agent. Its role is to provide the system with the necessary information about the availability of car parks in zone (j) as shown in Figure 6. Parking agent Each parking located in zone j is supervised by an . agent. Its role is the detection of the vehicle that is mainly structured in three:  Entrance detection: After a successful reservation, the user must arrive at the car park before the given time has expired. At this point, the system detects the vehicle at the entrance and activates the synchronization service at the same time.

Security service
The Security service is a transversal service that provides security for the exchange of data and also the physical security of the vehicle. The agent responsible for both types of security is: The security agent (Se.A): a. Data Security: The security of the data is a very important service; it ensures a profitable operation of the smart parking management system. b. Vehicle Security: This service provides physical car security. Only the owner's car can exit the park. It is mainly provides two controls:  Security Tagging: this service ensures the physical safety of cars against theft. The service includes a tag to the vehicle, which will be requested at the exit of the car park.  Control tag car: this service ensures that only who has a tag can bring out the car. In fact, the parking procedure in an optimal parking lot starts with a reservation in an area chosen by the users and ends when he recovers his car safely as shown in Figure 9.

RESULTS AND DISCUSSION
In the previous section, we have classified the necessary services that a parking management system must provide to drivers as well as the agents responsible for each service. In this section, we explain as a result, the reservation process and the interaction between the different agents. It begins with the entry of the driver of the various information needed by the system. The diagram in Figure 10 summarizes our approach and provides a system operation scenario and agents' reactions when it receives a reservation request in a specific region. Indeed, the goal of our reservation system is to ensure parking in the requested areas by meeting the requirements of drivers. This requires the following steps: Step 1: Receipt of a user reservation request ( ) accompanied by the necessary information of Ui.
Step 2: Checking the user Ui profile in the database of the system.
Step 3: Take into consideration user profile as a constraint. Else, create a new client profile.
Step 4: Transfer the ( ) to the classifier.
Step 5: Retrieving information on available car parks in the requested zone ( ).
Step 6: Suggestion of parking of the that responds to the user requirement. Moreover, receipt the confirmation of user parking choice.
Step 7: Detection at the entrance of the chosen parking and orientation to the local parking place.
Step 8: Exit detection and ensure security of vehicles.

CONCLUSION
In this article, we propose a multi-agent smart parking management system for big cities. Basically, the MAS are now very effective for parking management in urban areas and many researches propose to use them. However, our approach covers the entire process of a parking lot management from the reservation, through the parking to the car exit. The system also provides various complementary functionalities such as geolocalisation, parking orientation and security. In addition to the organization of the system into a set of agents that are dedicated to accomplish a set of services through communication with each other which makes it more interactive, fast. We also offer an intelligent classification service that allows us to respond to the constraints and requirements of drivers in addition to those of the parking lots. The reservation is therefore carried out according to a classification process that takes into account the profiles of the driver (his preferences), his current location, his destination and also proposes an optimization of the available choices in relation to time, cost. In the technical side, we have proposed to model the problems as dynamic satisfaction of constraints problem (DCSP), in order to satisfy all constraints (Distance, Cost, Habit/Preference, Travel time, Time restriction, Security, and Number of free places). In our future work, we will propose a mathematical model based on DCSP and propose an implementation of our system to be validated with baselines.