Abstract
The smart factory leads to a strong digitalization of industrial processes and continuous communication between the systems integrated into the production, storage, and supply chains. One of the research areas in Industry 4.0 is the possibility of using autonomous and/or intelligent industrial vehicles. The optimization of the management of the tasks allocated to these vehicles with adaptive behaviours, as well as the increase in vehicle-to-everything communications (V2X) make it possible to develop collective and adaptive intelligence for these vehicles, often grouped in fleets. Task allocation and scheduling are often managed centrally. The requirements for flexibility, robustness, and scalability lead to the consideration of decentralized mechanisms to react to unexpected situations. However, before being definitively adopted, decentralization must first be modelled and then simulated. Thus, we use a multi-agent simulation to test the proposed dynamic task (re)allocation process. A set of problematic situations for the circulation of autonomous industrial vehicles in areas such as smart warehouses (obstacles, breakdowns, etc.) has been identified. These problematic situations could disrupt or harm the successful completion of the process of dynamic (re)allocation of tasks. We have therefore defined scenarios involving them in order to demonstrate through simulation that the process remains reliable. The simulation of new problematic situations also allows us to extend the potential of this process, which we discuss at the end of the article.
Keywords
Introduction
The smart factory leads to a strong digitalization of industrial processes [1, 2], but also to continuous communication between the different tools, systems and workstations, integrated into production, storage and supply chains. Among the challenges of Industry 4.0 are the development and optimization of data, product and material flows [3]. Certain technological bricks have been defined [4], in particular for the use of autonomous mobile systems [5]: automated guided vehicle (AGV), autonomous industrial vehicle (AIV), and other autonomous/intelligent mobile robot [6].
The deployment of fleets of AIVs is problematic on several levels: the location of the vehicles, the fluidity of traffic, the perception of disturbances in the environment (dynamics), the vehicle heterogeneity, the acceptability by employees and even their cooperation. Currently, to achieve their goals, vehicles have navigation autonomy linked to rails, physical or virtual beacons. They follow predetermined trajectories while detecting obstacles to avoid collisions. Their decision-making capacities are often limited to following these predetermined trajectories and stopping in the event of obstacles. During incidents, the presence of obstacles or broken down vehicles, for example, the modification of routes is ensured by the central system or a supervisor, which sends a change of mission order to the vehicles.
The level of vehicle autonomy is well characterized in the context of the road vehicle: six levels of autonomous driving have been proposed [7, 8]. However, this is not the case for autonomous industrial vehicles. The autonomy of AIVs is often limited to local visibility of their environment, as well as visibility and knowledge of other AIVs operating in the same environment. The ability of AIVs in the same fleet to exchange information between themselves, with the active elements of the infrastructure that they encounter on their route, or with the human beings who operate in their environment, should improve the decision-making autonomy of these vehicles, make the solutions collectively defined more robust, and enable greater adaptability to changing traffic conditions [9].
For an AIV to be autonomous, it must be able to manage and control a set of tasks well discussed in the literature: perception [10, 11], mapping [11, 12], task allocation [13], localization [14, 15], path planning [16, 17] and path finding [18], motion planning [14], and vehicle management [19, 20]. The autonomy of an AIV fleet can be further increased if the AIVs can collectively manage and optimize the task allocation problem: that means they collectively assign the set of tasks to the set of AIVs with a high level of efficiency (for instance, minimization of energy costs or mission completion time) [13, 21].
Task allocation and planning are often managed centrally, even semi-centrally when global and local planning are differentiated [22]. For the proper functioning of autonomous and dynamic systems, the requirements of flexibility, robustness and scalability, lead to consider decentralized mechanisms to react to unexpected situations. Autonomy and decentralization are two excessively linked notions to the extent that an autonomous system operates and make decisions autonomously, and a system is decentralized if the decision, which are made, are not centrally controlled [23, 24]. The problem of task allocation [25, 26], tasks which grouped together can constitute missions, must therefore be thought of in a decentralized way [13]. However, before being definitively adopted, decentralization must first be modelled and simulated [23]. The concept of multi-agent systems is well suited to perform this type of modelling and simulation [27, 28, 29]. Furthermore, many tools have been developed to facilitate agent-based modelling and simulation (ABMS) [30]. It should also be noted that multi-agent systems are also used to physically control AGVs [31, 32, 33].
Some studies have focused on leveraging data from other autonomous vehicles within a fleet to control the physical behaviour of a specific autonomous vehicle from the same fleet. This is the case with reference [34], which proposes a suspension control strategy based on a deep learning algorithm. Also, based on deep learning algorithms, techniques for controlling connected autonomous vehicles are well-documented in the literature. In [35], the authors addressed this topic for adaptive convoy control, while [36], within the same subject, specifically considers communication failure situations.
In this article, we start by presenting a state of the art on the allocation of tasks in centralized or decentralized modes as well as on the different types and standards of V2X communication. In Section 3, we propose a dynamic task (re-)allocation process for an AIV fleet. In Section 4, we successively present the agent model designed to simulate this task (re-)allocation process, the simulation interface used and then the different test scenarios proposed in an industrial context such as a smart warehouse. We discuss the different results obtained in simulation in Section 5. Finally, we conclude on the proposed dynamic task allocation-reallocation process, and then we present different work perspectives.
State of the art
Task allocation for mobile multi-robots
Task allocation consists of optimally assigning a set of tasks to be performed by agents, actors, robots or processes, grouped and organized in a global system [37]. This is the case for mobile multi-robot systems [25, 26] or the AIV fleets addressed in this article [38, 39].
In global way, the multi-robot task planning includes two processes: 1) a multi-robot task decomposition that refers to how a team mission can be decomposed into several subtasks which can be completed by the robots, and 2) the multi-robot task allocation that consist to determinate how each subtask can be assigned to one robot [40]. Thus, two major objective functions are defined for analysing a solution to the multi-robot task allocation problem: the makespan (number of time steps required for all robots to reach their tasks), and sum of costs (sum of time steps requires by each robot to reach its task) [41].
In the field of mobile robotics, the taxonomy presented in [13] makes it possible to better characterize the task allocation process. A task can be assigned to one or more robots, and several tasks can be assigned to heterogeneous robots or multitasking robots. These tasks can be allocated instantly or extended over time. As many combinations as exhaustively detailed by numerous surveys on the issue of Multi-robot task allocation [26].
Task allocation in multi-robot systems is complex and the tasks themselves may have many time, precedence or resource constraints [37]. It is then necessary to determine the objectives to be optimized, in particular among: the travel cost (time, distance, fuel or battery consumption), the fitness (quality of task performing), the reward (gain of task completing), the priority (urgency of task completing), and the utility (balance between cost and fitness-reward) [13].
For reasons of flexibility, robustness and scalability, we are interested in decentralized task allocation solutions. These solutions must be able to assign tasks to a fleet of homogeneous or heterogeneous robots. Different models of solutions are proposed in the literature, mainly the following three: 1) solutions based on optimization (exact algorithms, dynamic programming, heuristics and metaheuristics) [26]; 2) solutions based on the Contract Net Protocol, particularly in the field of multi-agent systems (an initiating agent sends a call for proposals to the entire community of agents, chooses the best proposal received, then informs all the agents choice) [42]; or 3) solutions based on the market concept (announcement by an auctioneer, submission by bidders, selection by the auctioneer and award by the auctioneer) [43]. Solutions based on the market concept can easily be applied in a distributed context, where each mobile robot is able to become an auctioneer [44]. For each situation, a single mobile robot is appointed auctioneer [45]. He retains this role until the situation is definitively managed.
V2X communication and cooperation
In order to be able to successfully perform all the tasks assigned to them, AIVs must coordinate and therefore cooperate and share information about their activity and their perception of the environment. Four types of coordination can then be implemented according to increasing degrees of autonomy: centralized (with the assistance of a coordinator), negotiated (with respect for a specific negotiation protocol), agreement (with dynamic protocol) and emergent (with self-organizing algorithms) [46]. The last three coordination approaches are characterized as decentralized, they therefore require that the AIVs be connected to each other [47, 48, 49] and/or communicate frequently [32]. The link between V2X communication and cooperation, often presented from the perspective of cooperative control, is widely emphasized and extensively documented in the literature, as exemplified in [50] and [51].
The communication that takes place between vehicles is commonly referred to as vehicle-to-vehicle communication (V2V) [52]. While the literature widely covers V2V communications, it seems relevant to highlight specific variations, such as decentralized intersection traffic light synchronization [53], simulation of mixed traffic with cooperative lane changes [54], and traffic light optimization [55]. Vehicles can also request or receive information from the infrastructure, in particular to warn them of the presence of obstacles. This communication is then called vehicle-to-infrastructure (V2I) communication [52], and is highly developed in environments such as smart warehouses [56].
Many systems use these two last modes of communication to intelligently manage and coordinate connected vehicles in problematic situations such as crossing an intersection [57], accessing a highway [58], allocating a parking space in a smart car park [59], platooning and traffic flow optimization [46], or multiple vehicle cooperation and collision avoidance [60].
Communication between intelligent vehicles and pedestrians/humans is also used to increase vehicle autonomy and ensure better safety for humans in shared human-robot environments [61]. This communication is called vehicle-to-pedestrian communication (V2P) [62]. It also makes it possible to set up collaboration between humans and autonomous vehicles, for example when a vehicle has detected an obstacle that requires the intervention of a human operator to clear it. In the rest of the article, we will call vehicle-to-everything communications (V2X) all of the three communication modes presented above (V2V, V2I, and V2P) [63].
The ETSI (European Telecommunication Standard Institute) has defined standard communication messages for intelligent transport systems (ITS), which we have transposed and used in previous works [64]. The Decentralized Environmental Notification Message (DENM) (ETSI standard EN 302 637-3 [65]) are alert messages, issued at the time of an unexpected event in order to notify it, and therefore to cooperate by broadcasting information in the geographical area concerned. The Cooperative Perception Messages (CPM) (ETSI standard TR 103 562 [66]) provide warning and help vehicles make decisions on their route. Thus, if an AIV detects an obstacle obstructing an aisle of a warehouse, it can signal it to the other AIVs which can then recalculate and plan a new route, if necessary to be able to accomplish their tasks. An infrastructure camera can also detect obstacles and send this type of message to AIVs. Note that beyond AIVs, recent literature suggests various types of V2V communications. For instance [67], proposes, in the field of urban transportation, a dynamic control strategy for a fleet of connected buses using a multi-agent system that leverages bus history along with traffic information. This approach enables each bus to adjust its movement based on weighted information from downstream buses.
Another type of V2V communication could be useful to improve cooperation between AIVs in carrying out their tasks. Indeed, if an AIV finds itself blocked by obstacles in a warehouse aisle, broken down or generally unable to perform the task in progress, it sends a DENM message by default. It could then be useful for him to send a cooperative message to delegate the realization of his task with the necessary information.
We therefore propose a new Cooperative Task Message (CTM), which would allow in particular delegating a task. Häfner et al. [68] propose a protocol with four new types of messages, including the Cooperative Response Message (CRM) for transmitting the response to a request for cooperation. The AIV agents, modelled in the simulation part of this article (cf. §4), will use this type of message in feedback from the CTM messages to signify their agreement to take charge of a task for example.
Tasking process for AIV fleets
The common objective of the AIVs belonging to the same fleet is to perform all the tasks assigned to them while respecting a certain number of time and priority constraints. In this context, given
Where
A set of
Given two sets
Task allocation process.
The task allocation process that we have defined is based on a market model type solution [45]. The flexibility of this solution allows a good adaptation for a decentralized system. In the rest of the article, we will apply and test this task allocation process to a fleet of homogeneous mobile robots, loading and unloading goods in a warehouse. Its process is depicted in Fig. 1.
When a task has been defined by an organizational actor (call supervisor in the rest of the article), it is sent by the supervisor using a CTM message to an available AIV (
For greater efficiency, before starting the auctions, the AIV auctioneer can cluster certain tasks received. This involves, in particular, associating tasks having ending points and starting points in common. For example, consider the task
Following the association of tasks to form missions, these are sent to all vehicles by the AIV auctioneer. Then, AIVs calculate costs to perform the various missions, taking into account a set of performance indicators (distance, energy, time, etc.), and produce their bids. Each AIV returns all of its bids to the AIV auctioneer. This runs a simple optimization algorithm: the clustered tasks are listed in priority order. Subsequently, the AIV that bid with the lowest cost for a mission wins the auction (strategy of choice by the auctioneer for the least expensive proposal).
CTM and CRM messages exchanged during task allocation.
To summarize at the communication level, the AIV auctioneer allocates a task (eventually clustered tasks) to each chosen AIV, sending to it via a CTM message. The receipt of this CTM message by an AIV ends with a CRM message sent to the auctioneer in order to inform him of his acceptance. The different interactions between the supervisor, the AIV auctioneer and the other AIVs are identified in the sequence diagram of Fig. 2. This allocation mechanism is also used for task reallocation. Indeed, a robot can re-auction a task becoming an auctioneer in turn to manage the reallocation of all or part of its tasks. The robot offering the best bid will then add the reallocated task(s) to the set of tasks it must perform.
Agent model for AIVs
Many simulation-based approaches have been proposed in literature in the context of Industry 4.0, mainly: Agent-based modelling and simulation, Discrete Event Simulation, System Dynamics, Virtual Reality, Augmented Reality, Artificial Intelligence, Petri Nets simulation, Hybrid Simulation (characterized by the combination of two or more simulation methods, i.e., multi-paradigm model), Digital Twins, or Virtual Commissioning [23]. Among these approaches, the use of the agent paradigm to simulate or model complex, interactive, adaptive, distributed or cooperative systems has become common [27]. Indeed, the properties for which the agent-based approach is most suitable are: modularity [69], decentralization [24, 28], autonomy [30], flexibility [70] and agility [23]. Agent-based systems (ABS) have thus been proposed in many engineering fields, such as for industrial applications [71], for intelligent manufacturing [72, 73, 74], for supply chain management [75], for autonomous vehicles [29, 76], or for AGV [31]. In this last area, the case study “AGV control in an industrial bakery” proposed by Mes and Gerrits is well representative of the developments of ABS to control AGVs in the context of industry 4.0 [33]. The distribution of agents (decentralization) allows the systems that implement them to be more flexible and reactive. On the other hand, the agent concept is well suited for modelling and simulating cyber-physical systems [77] including AGVs or AIVs.
The basic definition of an agent is something that acts, to which it is useful to add three key properties: autonomous, interactive and adaptive. Thus, an agent is an autonomous entity that can adapt to and interact with its environment or other agents [42].
Other properties can be associated with the concept of agent: situated, social, flexible, proactive, and robust [33]; but also, mobile, intelligent, rational, temporally continuous, coordinative, cooperative, competitive, rugged (able to deal with errors and incomplete data robustly) [78]. These different properties will be discussed in Section 5, in relation to the results obtained during the simulation of the scenarios proposed to illustrate this article.
The basic behaviour of an agent can be modelled by an automaton [79]: 1) an agent perceives inputs using detectors (sensors); 2) it analyses, processes and interprets its inputs (recognizes, normalizes, etc.); 3) it determines the actions to be performed by interpreting the data, examining its goals and its current state; then 4) it performs the actions through effectors (its outputs).
The design of an agent-based system (ABS), often studied from a processual or methodological point of view [80], supposes that the designer proceeds with a local vision to respect the fact that each agent manages its own knowledge and actions (autonomy). ABS design support languages are numerous [13, 81]. The support tools, both for agent-based modelling and for agent-based simulation, are also very numerous: JADE, GAMMA, Matlab, MASON, NetLogo, AnyLogic, SN2, Sinalgo, etc. [82, 83, 84].
In [85], we proposed a four-step ABS design method that largely refers to AUML (Agent Unified Modelling Language) [86]:
Step 1. Definition of use case diagrams (services provided by ABS). Step 2. For each use case, draw sequence diagrams representing the interactions (exchanges of messages and scheduling) between the agents involved. Step 3. From the sequence diagrams, which identify the agents, the objects and their interactions, create a class diagram: the objects are associated with classes, the messages exchanged (requests for service between objects) are translated into operations on classes, parameters associated with operations are translated into class attributes – it may be possible to complete this diagram with a collaboration diagram. Step 4. From the class diagram, define the behaviours of each agent using a state or activity diagram. These behaviours integrate a whole set of functionalities fulfilled by the agents. As an example, Mes and Guerrits specify a set of six generic functionalities to be fulfilled by AGV agents [33]: DemandManagement, ParkManagement, VehicleScheduling, VehicleRouting, ConflictResolution and BatteryManagement.
Simulator architecture: dynamic elements in red, static in green, and not related to the environment in purple.
a) Representation of the circuit, and b) directed graph corresponding to the circuit.
Figure 3 presents the agent architecture developed to simulate the AIV traffic situations that we wish to study. Each agent of this architecture has its own knowledge (in particular on the other AIV agents, on the traffic environment, as well as on the paths and tasks allocated), and has functional capacities of observation, communication, decision and of action [39].
In this architecture, an industrial infrastructure (production lines, warehouses, etc.) is deployed in an environment, and is composed of a circuit and active elements such as beacons, tags, stations and cameras. These active elements are modelled as agents. Static or dynamic obstacles (e.g. human operators) may be present in the environment. Human workers or operators, with whom AIV agents can communicate to carry out cooperative activities, are also modelled as agents.
AIV agents, grouped in the same agent community, perform missions defined by paths on the traffic map. They are equipped with a radar that allows them to evolve in a partially known environment, and can thus avoid obstacles and collisions between them. The internal architecture of these agents is defined in such a way as to allow them to manage the four essential functions of an autonomous mobile robot: perception, localization, planning and control [87].
Multi-agent simulation interface.
AIV agents cooperate with each other to optimize the performance of a set of missions, which are transmitted to them by a supervising agent who acts as an organizing service (these missions can be sent to the AIV in packets or in continuous flow). The active elements of the infrastructure (cameras, tags, beacons, stations, etc.) participate in the cooperation [88], in particular by contributing to the safety of AIV travel. To ensure this cooperation based on inter-agent communications in VTX mode, different types of standardized messages are used (CAM, MCM, CPM, CTM, CRM and DENM).
The environment chosen in this article, to illustrate our scenarios of problematic situations, is a typical warehouse presented in Bechtsis et al. [89]. Certainly, this environment is small, but it allows us to detail very finely and from an educational point of view all the scenarios that we have defined, in particular the 4 scenarios studied in the following sections. However, the framework presented in Fig. 3 was developed to model larger warehouses and to simulate problematic traffic situations involving a large number of AIVs (for example, it is currently used to simulate the activity of a hundred baggage conveyor robots in an airport).
The warehouse circuit shown in Fig. 4a comprises several intersections, in which the vehicles can arrive from different sides as in a warehouse. This type of traffic plan offers the different characteristics of an industrial environment and allows us to carry out simulated experimental tests, in accordance with realistic scenarios of an industrial context. Five AIV agents are integrated into this environment corresponding to the five parking spaces available in this environment. One of the major interests of simulation is to be able to test the size of the vehicle fleet. Also, if the flow of tasks proposed to the AIVs becomes too great, leading to waiting times that are too long for the allocation of these tasks, the simulation conditions could be easily adapted in the environment with the addition of new AIVs and of AIVs parking lots.
The costs in distance between the different nodes of the circuit are represented in the directed graph of Fig. 4b. They have been chosen and applied to favour certain directions of circulation. These costs are used to find the shortest paths in the graph (minimization of distance costs in this case), in order to optimize the times for performing tasks by AIV agents. The interested reader will find presentations and discussions on the different types of optimization algorithms that allow a mobile robot to determine a shortest path (Dijkstra, A*, D*, Genetic algorithm or Particle Swarm Optimization) in many surveys [14, 38, 90].
The simulation interface presented in Fig. 5 has been designed generically to integrate different types of traffic plans. We use and develop this simulator for various laboratory experiments, and for teaching engineering students. In order to facilitate community utilization, we are releasing the code of our project, on the Github page:
a) Simulation of the detection of an obstacle by a camera agent, b) sequence diagram of the scenario sc1.
a) Simulation of an AIV agent breakdown at access point n∘14, b) sequence diagram of the scenario sc2.
This interface is divided into five frames:
Frame 1: visualization of the warehouse presented in Fig. 4a. The white squares represent tag agents, used by AIV agents to locate themselves. AIV agents are visualized by coloured circles, and obstacles are surrounded by a red circle of variable size corresponding to their level of obstruction in the aisle. The four camera agents of the infrastructure are identified by a black square evoking their viewing area of the aisle. Frame 2: application management and its various features. It is thus possible: 1) to simulate the four types of scenarios illustrated in the rest of the article, as well as a random scenario; 2) to generate obstacles randomly on the circuit; 3) to emulate a robot or camera failure; or 4) to view a model of the circuit with the node numbers, as in Fig. 4b, by clicking on the circuit button. Frame 3: supervision of AIV agents. This frame makes it possible to visualize the missions assigned to the various AIV agents, their paths, their statuses and other information useful to the supervisor agent. When an AIV agent plays the role of auctioneer, he is graphically identifiable by a frame. Frame 4: supervision of camera agents. This frame makes it possible to identify their status, their position and their detection of obstacles. When a camera agent has detected an obstacle, it is graphically identifiable by a black frame. Frame 5: task supervision. This frame makes it possible to monitor the progress of the performance of the tasks allocated to the AIVs. The states of the different task attributes are updated there: task identifiers, task starting point and ending point, and task states (attribute, in progress, blocked, completed).
The traffic plan chosen, and presented in the form of a directed graph in Fig. 4b, makes it possible to start a set of problem scenarios that can be easily configured in the interface. In the following, we will focus on three scenarios called sc1
, sc2
and sc3
. The missions will be named
In [64], we proposed AIV agent blocking scenarios that highlighted the need to increase cooperation/communication between agents if we wanted to effectively manage these problems. In [39], we showed that the use of MCM, CAM and DENM messages made it possible to respond effectively to the problem of avoiding obstacles and collisions between AIV agents.
To verify the ability of AIV agents to carry out their missions while cooperatively managing the problems of obstacles or AIV agent breakdown, we have defined four new scenarios. These scenarios include five AIV agents, simulating five real AIVs of the same type, and illustrate the different types of V2X cooperation/communication that allow agents to anticipate problems and thus improve the performance of their missions collectively: V2I for the first scenario, V2V for the second, and V2P for the third. All information concerning the communication during these scenarios is resumed in the Table 10. The scenarios are run in the environment shown in Fig. 4a (a simplified warehouse). VIAs perform simple tasks: 1) load goods at a source storage point, then 2) drop them off at a destination storage point. Each AIV agent has knowledge of the environment, i.e. the position of aisles, intersections, parking lots, storage points, battery replacement points and active elements of the infrastructure such as camera agents.
a) Simulation of a blocked task at access point n∘15, b) sequence diagram of the scenario sc3.
The first scenario sc1 is represented in Fig. 6a and 6b. It makes it possible to test the contribution of the cooperation between the AIV agents and the infrastructure agents for the performance of the tasks entrusted to the AIV agents. In this scenario, the camera agent placed to monitor the area around storage point n∘14 detects an obstacle and send a CPM message to the five AIV agents. The AIV agents, whose mission involves passing through the aisle obstructed by the obstacle, are able to re-plan their rout in advance. Thus, this cooperation with the infrastructure makes it possible to avoid waiting for an AIV agent to detect the obstacle with its LIDAR and to warn the four other AIV agents when it passes near the obstacle (therefore saving time on detection). This scenario allows measuring the performance of a collective strategy including the infrastructure compared to a collective approach based only on V2V communications between AIV agents.
The sc2 scenario corresponds to an inability for an AIV agent to complete his mission. This one can be blocked by obstacles or have a breakdown but without this preventing it from communicating (Fig. 7a and 7b). In this case, it is the dynamic task allocation mechanism presented in Section 3, which is launched to reallocate the unfinished mission. The blocked AIV agent becomes an auctioneer. He transmits all the tasks he had to perform to the four other AIV agents using a CTM message. The AIV agents bid according to their situation and the tasks they are performing, which allows the AIV auctioneer agent to make his choice for the reallocation of the tasks he cannot complete.
Scenario sc3, depicted in Fig. 8a, illustrates the ability of an AIV agent to handle the blocking problem when a task cannot be completed due to an event occurring on the warehouse circuit or in the defined environment to perform the task. It is further assumed that this blocking could not be detected by an infrastructure agent and therefore that its resolution was carried out by an AIV agent. For example, if a stock point designated as a target in the mission of an AIVi agent is inaccessible (for instance, because of the presence of several obstacles), then the AIVi agent must be able to inform the four other AIV agents that its mission cannot be carried out, using a CPM message. Subsequently, a human or an AIVj agent having the ability to clear the obstacles in the aisle can intervene in response to the request made to it by the AIVi agent, by sending a DENM message (Fig. 8b). The task that could not be performed before the human intervention is put back to auction as soon as the human has informed the AIVi agent that the aisle is clear again, by sending a CPM message. The AIVi agent then temporarily becomes an auctioneer to manage the reallocation of the task. This prevents the AIVi agent from waiting for human intervention to be able to continue its mission, and can possibly complete another tasks.
Scenario sc4 presents a situation similar to Scenario sc3, where an AIV agent encounters what seems to be an obstacle, as detected by a camera. However, in this instance, the camera’s assessment is faulty, and there is no actual obstruction present. Upon detecting the apparent obstacle, the camera notifies both the five AIV agents and the worker. However, upon closer inspection, it is revealed that the obstacle does not exist. Subsequently, the worker promptly sends two messages to the five AIV agents: a CPM message confirming the absence of an obstacle at the specified location, and a DENM message alerting about the failure of the camera agent.
The four scenarios presented in the previous section were tested with the same dataset. The different types of V2X communications illustrated in the scenarios are summarized in the Table 9. The choice therefore fell on an allocation of tasks by packet, rather than continuously. A supervisor agent sends 10 tasks to an available AIVi agent (when the AIV agents have no more missions to perform, they inform the supervisor agent). The AIVi agent starts by clustering the tasks in missions, and then offers them up for auction.
The four scenarios were analysed with the following performance indicators:
tasks to be performed, tasks fully completed, difference between the number of tasks to be performed and the number of tasks fully performed by each AIV agent, total distance covered by each AIV agent, load distribution (in particular to distribute the energy costs between the different vehicles and facilitate the management of battery charging).
Test sets for the four scenarios
Obstacle obstructing an aisle, detected by the AIV4 agent
Obstacle obstructing an aisle, detected by a camera agent
Table 1 corresponds to the performance of all the tasks by the AIV agents, without them encountering any problem. This table includes the performance indicators listed above: the tasks requested then allocated to each AIV agent, the tasks actually performed by the AIV agents, the ratio between the tasks allocated and performed, as well as the total distance covered by each AIV agent (distance in meters in this case).
Breakdown during part 1 of the AIV2 mission
Breakdown during part 2 of the AIV2 mission
Stock point n∘15 has become inaccessible
The results obtained during the execution of the scenario sc1 corresponding to Fig. 6a are given in Table 3. The obstacle was detected by the camera, which saves time on obstacle detection. Indeed, we tested this same scenario by disabling the camera agent. It was necessary to wait for the AIV4 agent to arrive near the obstacle for it to be detected by its LIDAR. These results appear in Table 2. Thus, the total distance covered is 640 in the case where the camera agent detects the obstacle (Table 3), and 710 if the camera agent is deactivated (Table 2). This makes it possible to verify that cooperation with the infrastructure via camera agents can save time for the detection of obstacles, in particular by anticipating problems, and thus minimize distances for the performance of the missions of AIV agents.
The scenario sc2 was simulated in two cases:
the delegation of a complete mission (two clustered tasks), the delegation of the second part of a mission (only one task).
These delegations of mission by an AIV agent can occur when the latter is unable to perform the mission in progress, following a breakdown or a blockage in an aisle for example. Thus, in Tables 4 and 5, it is possible to observe that the AIV2 agent could not finalize its mission because its number of tasks performed is not equal to its number of tasks to be carried out. In Table 5, the AIV2 agent was able to perform one task out of two of its mission. He then started the task reallocation process, which resulted in the second uncompleted task being auctioned off. This task was won and performed by the AIV1 agent. The latter therefore perform three tasks, whereas two tasks had initially been assigned to him. The second test for task delegation corresponds to Table 5 where it is possible to see that the entire mission of the AIV2 agent has been reallocated. In this case, it was the AIV1 agent who took over the complete mission, while minimizing the overall distance covered.
The stock point n∘15 has become inaccessible, then cleared by a worker (human operator)
A worker checks the presence of camera-detected obstacle
Simulation of a worker checking for an obstacle at storage point 15 detected by the camera, b) sequence diagram of the scenario sc4.
The results of the simulated dataset with a problem accessing a stock point appear in Table 6. They correspond to the simulation of the sc3 scenario with the blocking of stock point n∘15 identified in Fig. 8. We can notice that the AIV3 agent who had two tasks related to the deposit or the retrieval of stock at stock point n∘15 could not perform his tasks. Only eight of the ten tasks provided by the supervisor agent could be performed in this scenario. It is therefore necessary in this case, that an AIV agent or a human can come and unblock the situation (Fig. 8b).
The various V2X communications in the different scenarios proposed
The symbols means agent properties are captured ❬ or partially captured ❷, and the properties are:
The modified scenario, with human intervention and all tasks completed, is named sc3’. It is defined in Fig. 8b and the simulation results are presented in Table 7. Furthermore, the supervisor agent can also be informed so that it does not request the performance of other tasks related to this storage point as long as it is not accessible.
Finally, the results of the scenario sc4 presented in Fig. 9 appear in Table 8. The results obtained are the same as those in Table 7. The time differences compared to the scenario sc3 occur if there are tasks continuous tasks. Because the AIVs will continue to pass through this area, and they will not have to wait for clearance by a worker or another robot related to an obstacle, as in scenario sc3. This scenario sc4 demonstrates qualitative gains and robustness in processing. It highlights the importance of verifying information provided by the infrastructure because it can be faulty. This scenario underscores the importance of reliable infrastructure and effective communication channels among human operators, AIVs, and surveillance systems to address inaccuracies and ensure operational efficiency.
We indicated in Section 4.1 that a certain number of properties can be associated with the concept of agent: situated, social, flexible, proactive, robust, mobile, intelligent, rational, temporally continuous, coordinative, cooperative, competitive, rugged (able to deal with errors and incomplete data robustly). The four scenarios presented in this article, as well as the one proposed in a previous article [39], which we will call Sc0, make it possible to verify the relevance of agent-based simulation. Indeed, all of the above properties are addressed during the realization of these scenarios (Table 10), where the AIVs agents will:
carry out their missions in an environment where they will be located; communicate with each other, with the infrastructure and with workers, to establish collective intelligence; pursue a common objective of carrying out all tasks by cooperating with each other, with the infrastructure or with a worker; re-plan their paths and missions, or reallocate tasks, if necessary; listen to other AIVs and active elements of infrastructure, and continue to act even if they are blocked; coordinate themselves by using an auction mechanism for the allocation of tasks; collectively check possibly incorrect information and communicate with a worker to resolve any problems; act even when having incomplete data when receiving information without the AIVs being able to verify it themselves.
In the context of the current smart factory, mobile robots must become increasingly autonomous in order to perform their missions effectively, i.e. optimize their activity according to performance indicators such as distances covered, energy consumed, time for perform missions, availability, etc. Autonomy and decentralization are two excessively linked notions to the extent that an autonomous system operates and make decisions autonomously, and a system is decentralized if the decision, which are made, are not centrally controlled. Therefore, we proposed a dynamic task (re-)allocation process model for autonomous industrial vehicles, managing their activity in a decentralized context. We then developed a multi-agent application to be able to simulate this process and test it on different scenarios of problematic traffic situations. The proposed scenarios allow us to move towards strong cooperation between AIV agents, but also between AIV agents and infrastructure agents (cameras, tags, beacons, etc.). The V2X communication implemented to enable this cooperation is an essential element of our decentralized agent-based simulation approach. We have shown that it brings more flexibility and robustness in the management of problematic dynamic situations. We wish to accentuate these types of cooperation to increase the autonomy of the AIVs that we use in real experiments.
The different perspectives that emerge from our work are data fusion and shared memory of AIV agents. For example, how to merge data related to the detection of an obstacle by an AIV agent and by a camera agent at different times. We want also to work on ways to verify the presence of an obstacle, for example by asking an AIV agent to go and verify the presence of it. A shared memory would allow AIV agents to have, for example, global information on task delegation requests, but also to map the environment. For this, we plan to suppress the CRM messages, and to choose to return to all AIV agents the mission assigned to them. These prospects for enhanced cooperation would make it possible to increase the autonomy and efficiency of autonomous industrial vehicles. Furthermore, we continue to develop the simulation platform to integrate fleets of heterogeneous robots, therefore with robots that will not be able to perform all the defined tasks.
Footnotes
Acknowledgments
The authors would like to thank the Brittany region for funding the VIASIC and ALPHA projects, as part respectively of the ARED-2021-2024 call for projects entitled “The economy at the service of industry for intelligent production” and the PME 2022 call for projects entitled “Accelerate time to market of digital technological innovations from SMEs in the Greater West”.
