Abstract
Industry 4.0 leads to a strong digitalization of industrial processes, but also a significant increase in communication and cooperation between the machines that make it up. This is the case with autonomous industrial vehicles (AIVs) and other cooperative mobile robots which are multiplying in factories, often in the form of fleets of vehicles, and whose intelligence and autonomy are increasing. While the autonomy of autonomous vehicles has been well characterized in the field of road and road transport, this is not the case for the autonomous vehicles used in industry. The establishment and deployment of AIV fleets raises several challenges, all of which depend on the actual level of autonomy of the AIVs: acceptance by employees, vehicle location, traffic fluidity, collision detection, or vehicle perception of changing environments. Thus, simulation serves to account for the constraints and requirements formulated by the manufacturers and future users of AIVs. In this paper, after having proposed a broad state of the art on the problems to be solved in order to simulate AIVs before proceeding to experiments in real conditions, we present a method to estimate positions of AIVs moving in a closed industrial environment, the extension of a collision detection algorithm to deal with the obstacle avoidance issue, and the development of an agent-based simulation platform for simulating these two methods and algorithms. The resulting/final/subsequent simulation will allow us to experiment in real conditions.
Keywords
Introduction
Digitization of the factory is the main objective of Industry 4.0 [1]. It’s also the prospect of the factory being smarter. This smart factory is characterized by continuous communication between the various tools and workstations integrated into the production, storage and supply chains. Among the challenges facing Industry 4.0 are the development and optimization of the flows of data, products, and materials in production companies. Certain technological bricks have been defined [2], in particular, for the use of automated guided vehicles and other autonomous mobile robots. While the autonomy of autonomous vehicles has been well characterized in the field of road and road transport (six autonomous driving levels distinguished by the Society of Automotive Engineers [3]), this is not the case for the autonomous vehicles used in industry (autonomous industrial vehicles or AIVs) and other types of intelligent mobile robots [4] or intelligent autonomous vehicles [5].
The establishment and deployment of AIV fleets in industrial companies remain problematic in several respects, including their acceptance by employees, the location of vehicles, the fluidity of traffic, and the vehicles’ perception of disturbance in its surroundings and, therefore, dynamic environments. Autonomy of AIVs has, accordingly, been limited to predetermined trajectories and the visibility or knowledge of each AIV. Thus, we assume that the capacity to exchange information among the various AIVs of a fleet should improve this autonomy in terms of:
adaptation to traffic constraints, especially when the AIV environment changes over time (in the dynamic environments of storage areas, production lines, etc.), with this adaptive capacity making full use of the development of AI and IoT technologies [6] to perceive the environment; decision-making, even when the information available to an AIV is incomplete, uncertain, or available but fragmented [7]; communication with other AIVs in a fleet and with the associated infrastructure or people (commonly referred to as “V2X communications” for road vehicles) [8]; and reduction (or simply control) of the energy impact, irrespective of any traffic constraints [9].
To increase the autonomy of an AIV, and even more the autonomy of a fleet of AIVs in a decentralized approach [10], one way is to develop a collective intelligence to make the behaviors of vehicles adaptative. So, we started by developing a method based on matrix beaconing for estimating the position of AIVs, essential to implement collective strategies to address traffic problems [11]. Then, we focused on a class of problems faced by AIVs related to collision and obstacle avoidance [12]. This occurs when two vehicles need to cross an intersection at the same time, known as a deadlock situation, but also, when obstacles are present in the aisles and need to be avoided by the vehicles safely. We then developed an enhancement to the cooperative collision avoidance algorithm experimented in the study [13], in order to handle the problem of obstacle avoidance.
All these algorithmic developments have followed the same methodological framework, namely a modelling of traffic problems to be solved collectively by a fleet of AIVs, then a cyberphysical co-simulation, allowing both virtual and physical simulation. This co-simulation is driven by scenarios that can be deployed on a simulation platform in which different types of circuits are integrated. These circuits can be completely specific to deal with a specific problem which occurs at a high frequency by design, this is the case for the illustration used in this article; they can also reflect the reality of an industrial environment (factory, warehouse, for instance).
The primary aim of this paper is to propose a cooperative approach to avoiding obstacles and collisions between AIVs in a co-simulation platform. The paper is organized as follows: Section 2 presents a survey of the related work, relevant research questions, and open issues; Section 3 presents a fuzzy agent-based simulation platform used for our experimentations; Section 4 presents a method for estimating the positions of AIVs moving in a closed industrial environment; Section 5 presents the extension of a collision detection algorithm to deal with the obstacle avoidance issue; Section 6 presents illustrations and results of simulations from various scenarios; and finally, Section 7 provides the conclusions as well as a discussion of the study’s implications for future research.
In researches on Intelligent Transport System (ITS), mainly in context of smart cities [14], the autonomy of vehicles is well determined with six levels of autonomy [6]. However, no such scale exists in the industrial context, and too little research exists in this area [15]. A few articles establishing a state of the art on the algorithms and techniques proposed to improve the control and relevance of the reactions of AIVs in the face of complex situations make it possible to verify the importance of this subject for Industry 4.0 [10]. These articles show a very active domain with more and more decentralized control algorithms proposals in fields as varied as: cooperative control in production and logistics [16], production system for the automotive industry [17], control strategy for the coordination of AGV systems [18], control of multi-AGV systems in autonomous warehousing applications [19], distributed control for engineering applications [20], control architectures in the context of Industry 4.0 [21].
Among the problems to be solved to make AGVs (and also AIVs) more autonomous, considering the global vehicle system [22], we can note the following main problems: multi-robots task allocation (MRTA) that has been the subject of numerous state-of-the-art reviews: a survey and analysis of MRTA algorithms [23], a survey on the principal approaches to MRTA with a strong focus in solutions used in service and field robotics [24], a formal analysis and taxonomy of MRTA systems [25], and a review on challenging aspects of MRTA problem [26]; localization and vehicles positioning estimation: a localization of a low-cost automated guided cart [27], a flexible AGV system using topological and grid maps [28], a RFID-enabled positioning system [29], a mapping of technologies for AGVs, including those concerning localization [30], a sensor fusion for automated guided vehicle localization [31]; path planning: issues in path planning and obstacle avoidance [32], a guide to selecting path planning algorithm [33], and a survey of path planning algorithms [34]; motion planning, considering: the robot mobile system architectures [35], the artificial intelligence solutions [36], the centralized collision avoidance for AGVs in a flexible manufacturing system [37] or in an industrial plant inspection system [38], and the decentralized collision avoidance for industrial AGVs[39] or industrial cooperating robots [40]; deadlock avoidance: deadlock detection and resolution for multiple mobile robots [41], protocol for AGVs in industrial environments [42], and solution in a flexible manufacturing system [43]; and vehicle resources management [44] with mainly battery management [45].
The main objective of our research is to improve the AIV autonomy integrated in a fleet based on collective intelligent strategies. The capacity to exchange information between the different AIVs of a fleet is necessary to improve this autonomy [46]. Thus, problems like obstacle detection or collision avoidance can be solved by the cooperation between AIVs[33].
Consequently, we will divide the study of bibliography into four areas: 1) problems of communication among AIVs, 2) methods for estimating the positions of the AIVs in a simulation platform, 3) issues on collision detection and obstacle avoidance, and 4) perspectives of development of an agent-based simulation platform.
Communication among vehicles
Research in the field of the connected and communicating car is very abundant and interests the readers of many scientific journals. For example, the journal Computer-Aided Civil and Infrastructure Engineering (CACAIE) has just published a special issue: “Computational modeling of connected and automated transport systems” [47] providing contributions on a wide variety of topics such as the behavior of connected cars in intersections [48], the problem of lane change in mixed environments of autonomous vehicles and human-driving vehicles [49, 50], the self-driving technology achieved through the communication between road infrastructure and the vehicle where sensors are mainly installed on the road [51], the autonomous transportation systems considering parking behavior [52], or the traffic regulation in highway work zones [53].
The experimental self-driving cars that are already plying roads all over the world to accumulate data and miles do not cooperate with their surroundings. Instead, they rely on on-board sensors [54], such as radar, laser or lidar, cameras, and GPS and information collected internally (through an odometer, assessment of the condition of the wheels, etc.), to acquire raw information with which they build a representation of their surroundings. To improve its self-positioning a vehicle’s control system could match its perception with a priori known information, such as a detailed map or a learned representation of the environment in which it is operating [55] or it is simulated [56]. The same is true for the AIVs increasingly deployed at industrial production sites, which still have very limited capacity of self-adaptation [57].
In recent years, the automotive industry has joined forces with telecommunications players to develop communication standards that facilitate direct cooperation among vehicles through the exchange of structured information [58]. Thus, for instance, a vehicle may start to decelerate or brake, not because it observes that it is approaching the vehicle ahead of it, but because the vehicle ahead indicates that it has initiated such an action. This type of coordination saves precious time in reactions to critical events and, therefore, improves safety in addition to contributing significantly to profitability. Thus, for example, vehicles can be linked for movement on a highway in convoys (platooning) [59] or to optimize passing through intersections [60].
The European Institute of Telecommunications Standards (ETSI) has published a standard for these kinds of cooperative awareness messages (CAM) (ETSI EN 302 637-2 standard: Cooperative Awareness Basic Service [61], and Cooperative awareness in VANETs [62]) and decentralized environmental notification messages (DENM) (ETSI EN 302 637-3 standard [63]). These specifications and messages are approved and constitute building blocks for the safety of future intelligent transport systems [64]. The purpose of CAM messages is similar to Hello_msg in [13]. They make it possible to learn where are other vehicles in real time. DENM messages are alert messages. They are issued at the time of an unexpected event in order to cooperate, notify and consequently disseminate information in the relevant geographical area.
ETSI has also published a standard for Cooperative Perception Messages (CPM) (ETSI TR 103 562 standard [65]). They allow vehicles to broadcast information about objects perceived in their detection area by their sensors to other vehicles such as obstacles, pedestrians or other vehicles. Another way to cooperate is to inform other vehicles of these intentions. In this regard, the ITS WG1 is currently working on the definition of a Maneuver Coordination Service (MCS) and its associated Maneuver Coordination Messages (MCM) [66].
Estimating the locations and positions of AIVs
The CAM messages standardised by ETSI are based on the strong assumption that a vehicle knows where it is, using GPS. However, in indoor environments GPS does not work, and even more in disturbed industrial environments, GPS is not the tool used for AIVs to locate themselves. Vehicles must therefore be given other means to locate themselves. A position estimation provides an approximation of a vehicle’s location in relation to its environment; whether the environment is outdoor or indoor [67]. The literature on estimation theory is vast, encompassing a wide variety of techniques and ideas. Naturally, the most common techniques receive frequent attention. These general techniques can be applied to a variety of problems, an example being parametric estimation methods such as weighted least squares estimators, maximum-likelihood estimators and minimum mean-square error estimators [68].
Incremental or relative localization [69] makes it possible to determine the position and orientation of a vehicle by taking into account its successive movements from a known starting point. Absolute localization [70], by contrast, involves determining the position of a vehicle or robot in its external or internal environment using exteroceptive sensors. Two strategies are used for localization that rely on either natural or artificial landmarks (e.g., GPS or beacons), respectively. Absolute localization by definition avoids the drift over time that characterizes relative localization; the main disadvantage of this strategy is the loss of visibility of the landmarks in the environment that a vehicle uses to determine its position.
In our study, the measurements necessary for the estimation were susceptible to corruption by noise. The result can be generation of an input that introduces uncertainty into the inference. Uncertainty is, then, at the heart of the estimation problem: in the absence of uncertainty, many problems would have simple algebraic solutions [68].
AIVs collision detection and obstacle avoidance
Special topics of automated vehicles coordination and/or cooperation, using vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2I) communication techniques, are well studied.
Rios-Torres and Malikopoulos [71] cover the literature related to coordination of connected and automated vehicles for intersection or merging at highway on-ramps, using centralized and decentralized approaches, with the goal to limit traffic congestion and reduce transportation energy consumption and emissions by improving traffic flow.
Mariani et al. [72] propose a taxonomy and a survey on coordination of autonomous vehicles to treat traffic problems like intersection management, smart parking, ride sharing, ramp merging or platooning. In the particular case of crossing intersections, Glorio et al. [73] propose an adaptive approach capable of selecting the most appropriate solution presented in [72], depending on the traffic situation.
Among the problems to be solved to make AIVs more autonomous, we can particularly note the location and positioning of vehicles that we discussed above [11], as well as the avoidance of other vehicles or obstacles [74]. The detection and avoidance of collisions are topics that have been the subject of much research for several decades [75], both in the field of ITS[76], industrial robots using vision [77] or charge generated virtual force fields [78], manipulator robots performing real-time obstacle avoidance [79] or collision avoidance [80], than mobile robots for resource-constrained [81] or adaptive navigation [82].
In our context, the collision avoidance problem can be solved by the cooperation between AIVs[83], and a multiagent approach such as those capable of managing intersections [84] or coordinating traffic [85]. The capacity to exchange information between the different AIVs of a fleet should improve this autonomy [86]. The study presented in [13], proposed a cooperation strategy based on the exchange of messages to determine the passing priority at an intersection between AIVs. The solution requires the vehicle to know its own position, and to be able to communicate with the other vehicles. This collision avoidance algorithm allows AIVs to communicate and cooperate using different types of messages.
The communication between AIVs is done with three different types of messages: Hello_msg message sent by an AIV to indicate its presence with its position – which is similar to CAM messages; Coop_msg message sent by an AIV before an intersection area to determine passing priority; and Ack_msg message sent by an AIV to confirm receipt of a Coop_msg.
As presented above, CAM and DEMM messages are important messages that would complete the range of possible messages to be exchanged to cooperate and avoid collisions for the AIVs in the Bahnes et al. algorithm. We will discuss their possible use from an experimental perspective in the last section.
Simulation platforms for AIVs
Before full-scale testing of traffic scenarios involving autonomous vehicles in industrial or more complex traffic situations can begin, it is essential to consider the simulation involved. The cooperative activity of mobile robots can also be studied by simulation-based virtual environment [87]. Perhaps the greatest advantage to be gained by running a simulation is that actionable results can be obtained without applying a scale factor.
Indeed, there are many urban and industrial challenges concerning autonomous vehicles, and simulation makes it possible to address them well: the autonomous vehicles in city traffic [88], autonomous vehicles storage and retrieval systems [89], collaborative autonomous vehicles [90], low-cost mixed reality for industrial vehicle environment [91], or end-to-end scalable autonomous vehicle testing when rare events appear [92]. As might be expected, there are numerous methods in use for such testing [93].
Key advantages of the use of simulation in evaluating AIV’s operations is well presented by Tsolakis et al. [5]. Mainly, simulation reduces development time and cost of an AIV, minimises potential AIV operational-related risks, allows feasibility assessment of different AIV scenarios at a strategic or operational horizon, enables rapid understanding about AIV’s operations (under limited data availability), and identifies improvement in facility layout configurations accommodating AIVs.
Another advantage of simulation environments consists in introducing humans into simulation scenarios in order to convince, before the deployment of autonomous mobile robots on industrial sites (factories or warehouses), of the secure nature of coexistence and possible interactions between future (mobile) robots and human operators in industry [94] or in autonomous transport systems [95]. Moreover, classifications of these Human-AGV safety problems have been proposed in the literature, whether for the interaction methods [96] or for the systems developed to facilitate their collaboration [97].
While progress in the autonomy of automobiles is widely reported [98], particularly in the context of ITS[99] and more recently in that of cooperative intelligent transport systems (C-ITS) [100], studies of AIVs have been relatively few. AIVs and autonomous mobile robots more generally have the capacity to adapt to their environments. Self-adaptation framework development can then increase their autonomy [101]. A combination of computer and physical solutions can facilitate shared communications and, thereby, the autonomy of these vehicles.
Agent-based approaches are often presented in this case: for the management of adverse weather situations on the road network [102], for the development of intelligent route management systems [103], and very frequently and generally for the simulation of autonomous vehicles [104].
Problems like large-scale multiagent path planning [105], multi-agent optimal target assignment [106], or multi-agent pathfinding [107], with collision and obstacle avoidance, are already well addressed. Multi-agent systems are interesting for the simulation and modelling of self-adaptive phenomena, such as self-organization [108], complexity of systems [109], and autonomy [110]. They are also adapted to manage the potential heterogeneity of organizations [111].
In this paper, we propose more specially the use of fuzzy agents to manage the levels of imprecision and uncertainty involved in modelling the behavior of simulated vehicles [112]. Fuzzy set theory is particularly suitable for processing uncertain or imprecise information that must nevertheless lead to decision-making, a situation that autonomous agents may face [113]. The concept of fuzzy agent can then be proposed as a partial implementation of this theory. Furthermore, fuzzy agent-based modelling has already demonstrated its relevance in other and various areas, as recently for the modelling of the motivation and performance of construction teams [114] or the movement of users in the urban space [115].
Although this is not directly addressed in this article, it is worth noting that all the control tasks performed by autonomous mobile robots, as identified by De Ryck et al. [10], have been the subject of a performance improvement study with the use of fuzzy logic: for mobile robot navigation with various points of view such as: concepts, theories and applications in mobile robot navigation [116], navigation of several mobile robots [117], navigation of a mobile robot in an unknown environment [118], navigation of a mobile robot in a real time environment [119], control of the mobile robot navigation [120], or performance comparison of fuzzy logic and neural network design for mobile robot navigation [121]; for obstacle avoidance with various points of view such as system design [122], comparison of different types of fuzzy logic usable for this problem [123], or unknown dynamic environment [124]; for path planning strategies with focus on obstacles avoidance [125] or global navigation [126]; for motion planning [127]; for mobile robot localization [128]; and for intelligent energy management [129].
Futhermore, various other approaches have been proposed to improve navigation and obstacle avoidance by autonomous mobile robots: potential fields, neural networks, genetic algorithm, vision-based navigation, particle swarm or ant colony. Elements of comparison of these different approaches are presented in [130].
A fuzzy agent-based simulation platform
Fuzzy agent modelling of AIVs
Using the paradigm agent to simulate or model complex, adaptive, and interactive systems, either distributed or cooperative, is not a new paradigm [131]. Agent-based systems have been proposed in many industrial and engineering fields (industry [132], manufacturing [133] or autonomous vehicles [104]), because their distribution and decentralization allow engineering systems to be flexible and agents are well suited to enabling cyber-physical systems [134].
An agent-based system is fuzzy if agents that compose it are fuzzy. This means that: 1) agents have fuzzy knowledge (fuzzy decision rules, fuzzy linguistic variables and fuzzy linguistic values) [135] which can be shared or communicated to other fuzzy agents; 2) they can have fuzzy behaviours; 3) their interactions, roles and resulting organizations can also be fuzzy.
Reactive and autonomous agents can update and follow the fuzzy information evolution coming from their environment and other agents [136]. By interpreting the fuzzy information that they receive or perceive, fuzzy agents interact within a multi-agent system; they can also interact in a fuzzy way. For instance, a fuzzy agent can discriminate a fuzzy value of interaction to evaluate its degree of affinity (or interest) with another fuzzy agent [137].
We start by defining the model of fuzzy agents, derived from a previous model presented in [112]. Table 1 describes the different elements of this model: (1) the fuzzy agent-based system
Presentation of the fuzzy agent model
Presentation of the fuzzy agent model
Figure 1 shows the fuzzy agent model for AIVs simulation. Indeed, an infrastructure is deployed in the environment and is composed of a traffic plan, and active elements such as beacons, tags, stations. These three active elements are modelled as agents. In fact, static or dynamic obstacles (e.g. operators) may be present in the environment. AIV, which are modeled as fuzzy agents, carry out missions defined by path on the traffic map. AIV agents are equipped with radar and thanks to their knowledge of the environment they can avoid collisions. Moreover, AIV agents can also cooperate by communicating with different types of standardised messages. AIV agents are fuzzy agents because they have incomplete, fragmented, fuzzy and uncertain knowledge. Conceptually a fuzzy agent is derived from a simple agent to which we have added the specificities listed in Table 1.
Agent-based model for AIVs co-simulation.
Formally, concerning the agentification of the active elements integrated in the simulation platform, each AIV of the set
Then, each AIV agent
The simulation platform is composed of 1) a digital simulation framework that is agent-oriented, allowing it to simulate the movements of vehicles in a virtual environment, and 2) a physical platform that serves to develop scenarios for the circulation of vehicles of reduced size or a set of small vehicles (Fig. 2). The objective is to visualize the same movements through the virtual and physical simulations. Figure 2 shows the platform architecture. The obstacles that a vehicle encounters on the physical platform must appear on the software platform. The platform also offers the ability to conduct augmented simulations (for example, adding a new vehicle, a person, or even direct communications between AIVs virtually). We developed two interfaces to follow the evolution of the simulations, one on the server side, for viewing the simulation and managing the components of the two systems, and the physical system, including communication with the vehicles moving on the platform and the virtual system including communication with simulator agents (Fig. 3). This latest HMI allows users to increase the simulation by introducing a new virtual vehicle to the set or making a human operator appear on the vehicle’s traffic map.
Architecture of the co-simulation platform.
Server HMI to monitor the evolution of AIVs states.
The AIVs of the physical platform are small and capable of following the road (line tracking), stopping in front of an obstacle, geolocating on the circuit, communicating by radio, and transmitting information (position, speed, for examples) or receiving it from roadside equipment. They can also decide on an action to be taken based on all of the information received from the environment.
The simulator’s AIVs are fuzzy autonomous software agents. Thus, they manage their movements while responding to the directives of the server (or of the simulator through the server). To do so, the fuzzy agents communicate with the server and/or with the other agents.
When designing the first scenarios involving autonomous vehicles, we were particularly interested in those that favor crossing traffic situations. Accounting for this characteristic led us naturally to diagram the circulation in four loops, as shown in Fig. 3 (the server HMI) and Fig. 4 (the physical platform).
We thus defined a traffic platform as an entity consisting, on the one hand, of a circuit made up of four curving sections and four straight sections placed end-to-end to form what we designated “CircuitLacet4”; and, on the other hand, of a set of 12 RFID tags distributed along the circuit. Each quadrant had three markers, with each marker being represented by one RFID tag, so that any nearby vehicle could position itself on the circuit.
Beyond basic functionality, such as line tracking and the detection of nearby obstacles, we incorporated three speed-increasing kinematics into the AIVs. We also developed communication functions (using wifi) between the vehicles and the server so that each vehicle could send its position back to the server relative to the RFID tags on the road circuit.
If the “CircuitLacet4” circuit is well suited to simulate and test intensive crossings of AIVs and therefore to increase the risk of collisions between vehicles, it is obviously not suitable for addressing other problems related to autonomy of AIVs (collective localization, pathfinding, motion planning, AIV management, etc.).
Physical platform: AIVs circulating on the “CircuitLacet4” circuit profile.
To experimente these differents situations, the literature provides a large quantity of test circuits, such as the circuit proposed by Bahnes et al. [13] that we used to test obstacle detection and avoidance [12], the one proposed by Tsolakis et al. [5] which we use to simulate collective obstacle avoidance strategies with the implementation of pathfinding algorithms [139], or again the typical Kiva warehouse system presented by [106] to illustrate the multi-agent pathfinding (MAPF) problem and which we use for the current research. Each of these circuits can easily be integrated into the simulation platform.
To conduct our expriments and test our scenarios with fleets of heterogeneous AIVs, we use different types of mobile robots. Thus, each of them is equipped with the same modules. These included controlling modules and modules for detecting RFID tags, indicating the vehicle’s status on an LCD display, detecting obstacles, regulating the power supply, transmitting data to the server, receiving instructions from the server regarding movements, operating the motors, and line monitoring.
Internal architecture of the AIVs shown in Fig. 4.
It is important that the electronic module for each of these functions be easily identifiable within the system, just as each function must be easily monitored, when conducting a dynamic search for sources of dysfunction. Thus, for each autonomous vehicle to fulfill the tasks assigned to it, we had to define the organization in a structured manner and as much as possible from the perspective of the software, the hardware, and the electronics.
The result of this work was a complete internal map of the autonomous vehicles. For example, and considering the AIVs shown in Fig. 4, the Fig. 5 highlights the various modules as well as the connections among them.
The PRAV module, which controls the detection of RFID tags and the display, is connected physically to both the RFID module and the AFFI module. The ground markings detection (DEMS) and wheel motor control (PMOT) modules are connected to the module dedicated to the line tracking control (PILS) through the BRAC module. We designed the BRAC module, located in the center of a star based on DEMS, PMOT, and PILS, to connect with the PILS module through simple superposition according to the form factor of an arduino board in a connection identified as Bus3.
The TSAV module, which also controls an obstacle detection module (DOBS) through a direct four-wire connection, provides telecommunications with the remote server. Notably, the TSAV is implemented by means of a raspberry card, which requires a power supply that is both sufficient and stable. This situation justifies the presence of the power supply regulator module (RALI) that is connected through Bus6 to its input (USB-C). In a multi-connection crossroads, the TSAV is the most-surrounded module in the system, its neighbors being the server via the radio link, the DOBS module via the direct link, RALI via Bus6, the PRAV module via Bus5, and, lastly, PILS via Bus3. Figure 5 shows clearly the central position of the TSAV module from the perspectives of both its functions and its systemic connections.
Conceptual model of the platform
AIV position estimation point of view, dotted outline in red, from static model of the global simulation system.
The co-simulation system includes a simulator capable of reproducing virtually the AIVs evolving in their traffic environment, also called traffic zone. The conceptual vision of such a device naturally leads to highlight a set of entities, each representing a real object deemed sufficiently relevant for inclusion in the simulation model. The main entities that constitute the static model of the simulation device as a whole are the traffic area, the beacons, the AIV’s components involved in the estimation of their positions, the circuit that we named “CircuitLacet4” shown in Fig. 4.
Figure 6 shows the class diagram of the static model of the entire simulation device. This class diagram must be read according to the UML language. In this paper section, we are mainly interested in the organization aspects of the circulation area, AIV and localization, corresponding to the part surrounded by dotted lines in Fig. 6. Seen as the global environment in which the AIV operates, the TrafficZone model includes on the one hand a Circuit, and on the other hand it has a set of Beacons, distributed according to a matrix grid. The pitch of the grid thus obtained constitutes an adjustment parameter. The “has a set of …” relationship is represented with a diamond shape in Fig. 6.
The model of fuzzy agent representing the Autonomous Industrial Vehicle (AIV) is the extension of an agent model, the latter being itself the heir of a Thread process. The inheritance relationship is represented by a hollow triangle in Fig. 6. Note that the agent aspect brings to the AIV its autonomous character which allows it, for example, to arm an internal timer to trigger various actions on its own initiative, such as transmitting its timestamped position.
Furthermore, the AIV model has a reference on a RadioInterface model, which allows it to have remote communication with the AIV server (not mentioned in Fig. 6). The location of the autonomous industrial vehicle in the traffic area is gathered in the TimeStampedPosition model, which includes the data of the geographical position, extended by the corresponding date. The “has a refence on …” relationship is represented by a simple line in Fig. 6. Thus, the TimeStampedPosition model will give the position of the AIV at a given time. In the traffic zone, the AIV concretely follows a circuit whose form can change according to the application context.
The simulation system must be able to virtually reproduce the kinetics of an AIV on a circuit representation, without making strong assumptions about its shape or profile. For this reason we design the circuit as a series of sections, each of these reflecting the local topology. The section has a great importance in our modelling. It is important to note that during its movement, the AIV has a reference to the section of circuit on which it is currently located. It is therefore the current section of the AIV which will inform it about its next position.
One of these sections is the initial section of the circuit, referenced by S0. It can be noted that the Circuit model can be extended to other more concrete models, such as CircuitLacet4, or CircuitIndus8[11]. Similarly, the Section model can be extended to other more concrete Section models. The Section model has references to other models with which it is associated, such as: the previous Section (Previous) and the following Section (Next) on the circuit, the position of the first end (Ex1), and that of the second end (Ex2) of the Section.
Our computational approach also makes it possible to obtain the next position of the AIV on the circuit given its current position. Schematically, we defined the current position of the AIV as
Algorithm for updating the position of an AIV agent.
We then defined a concrete traffic section model by building on the aforementioned abstract model. The concrete section model served for the actual calculation of
For a circular arc section with center
The algorithm for updating the position of an AIV makes it possible to calculate the new position
At this step, it is important to know if the current movement of the AIV remains or not within the limits of the current Section. To do this, we calculate the Length of the Route Outside the Section (LROS) according to the expression LROS
It should be noted that the intelligence of the update of the position of the AIV is hosted in the model of the Section, which is normal, because this calculation depends on the topological profile of the considered Section.
Improvement of Bahnes’s algorithm to deal with the correlated problem of collision and obstacle.
Thus, the current section being referenced by the variable CS, and the position update function, being called “computeNextAIVPosition”, the calculation of the next position of the AIV will be carried out, in a programming language such as python, thanks to the instruction Pos
The collision avoidance algorithm proposed by Bahnes et al. [13] makes it possible to deal with the priority of different vehicles when approaching an intersection. However, it does not deal with the problems of detection, communication and avoidance of fixed or moving obstacles (e.g. human operators).
The Bahnes’s algorithm proposed a cooperation strategy based on the exchange of messages to determine the priority to pass an intersection between AIVs. The solution requires the vehicle to know its own position, and to be able to communicate with the other vehicles. This collision avoidance algorithm allows AIV agents to communicate and cooperate using different types of messages.
The communication between AIVs is done with three different kinds of messages:
Hello_msg: a type of message used by an AIV for indicating its presence and its position to other AIV;
Coop_msg: a type of message sent by and AIV before an intersection area to other AIVs, in the goal to determine priority;
Ack_msg: a type of message sent by AIVs to confirm the reception of a Coop_msg message from another AIV.
We extended the Bahnes’s algorithm, in a previous work [12], to handle the presence of fixed or moving obstacles (Fig. 8). In order to address the problem of obstacles present in warehouse aisles, we proposed two new types of messages for collaborative perception (added to the three messages already defined):
the Obstacle_msg message sent by an AIV to other AIVs circulating in the warehouse to indicate the perception of an obstacle, the Alert_msg message sent by an AIV to other AIV circulating in the warehouse to indicate an unavoidable obstacle.
Then, we simulate the algorithm staying within the framework of the three scenarios proposed by Bahnes et al. [13]. These simulations rely on a fuzzy agent-based model where the AIVs are fuzzy agentified (cf. §3.1). Indeed, agent-based simulation for AIVs[140] is the most common approach in the same way as simulations based on discrete events or robotics software [141].
Simulation of a radar use: a) at the top of the picture: a green AIV perceives a fixed obstacle in front of him; while waiting for the green AIV to avoid the obstacle, the radar of the blue AIV allows him to stop and keep its distance to avoid colliding, b) the green AIV avoided the obstacle, and the blue AIV perceives in turn the obstacle.
AIV agents have the ability to exchange messages and are equipped with radar. This allows them to detect vehicles in front of them. For instance, given an AIV agent
We assume that individual autonomy facilitates the deployment and operation of the fleet, however sharing some information would increase the responsiveness of each robot. Thus, increasing the collective autonomy of the AIV agents would strengthen the decision making, and the individual autonomy of each AIV agent.
The simulation platform presented above was designed generically to integrate different types of circulation plan. The circulation plan chosen and presented in Fig. 9 allows us to launch scenarios that we consider as a benchmark plan to compare results. This specific circuit includes several intersections, where vehicles can arrive from different sides like in a warehouse (four intersections on a short circuit, two types of scenarios and the possibility of generating obstacle randomly on the circuit are shown in Fig. 9 and 10). Thus, this kind of circulation plans provides the different characteristics of an industrial environment and allows us to realize simulated experimental tests in line with realistic scenarios of intersection situations.
Scenario 1: Anti-collision algorithm simulation results
Scenario 1: Anti-collision algorithm simulation results
Simulation of the Bahnes algorithm: a) on the right top side of the picture two green and red AIVs arrive at an intersection, b) the green AIV passed the intersection after communicating with other AIVs, and the red AIV waits to cross the intersection.
Let us consider the scenario 1 in which four AIV agents circulate continuously, independently (while exchanging messages to cross intersections) and at randomly changing speeds (see Fig. 10a). To make the illustration more visual, the AIV agents each have their own colour (orange, blue, green and red). When approaching the intersection, the green and red AIVs send a Coop_msg message to the other AIVs. After receiving a request, an AIV send an ACK_msg message to show its agreement. A priority list of intersections known to the AIVs is then updated after all AIVs have agreed. Thus, an AIV that has received agreement from everyone and has received its agreements first is at the top of the priority list and can therefore afford to cross (see Fig. 10b).
The simulations of scenario 1 on the circuit “CircuitLacet4” with four AIVs circulating at different speeds made it possible to verify the absence of collisions when using the extended Bahnes algorithm. We were able to measure the cost of implementing this algorithm on the AIVs, with the objective of maximizing the number of complete laps performed by each AIV (Table 2):
31% less of complete laps for the AIV that circulates the fastest, which is the result of the many slowdowns at very frequent intersections – nevertheless, this is still superior to an AIV at average speed and in nominal conditions (without other AIV on the circuit, or obstacles); 15% less of complete laps for an average speed, which becomes acceptable for the implementation of anti-collision between AIVs – the cost in number of complete laps performed is less and the energy expenditure is much lower since the speed variations (speed reductions then accelerations to cross the intersections) decrease significantly compared to the AIV moving at a higher speed; 13% less of complete laps for a lower speed, which represents a small gain compared to the average speed and which means that it is not necessary that the AIVs circulate too slowly.
Let us now consider scenario 2 which allows to randomly generate obstacles on the circuit (spatial and temporal generation). The radar of an AIV agent can also perceive obstacles in the aisles ahead that constrain its path. On perceiving them, it cooperates to warn other AIVs by sending an Obstacle_msg, and then avoids the fixed obstacle by going around it, if possible, as in the situation (see Fig. 9a and 9b).
The simulations of scenario 2 are carried out using the same specifications/constraints as scenario 1, but this time adding the presence of obstacles on the circuit.
Scenario 2: Obstacles avoidance algorithm simulation results
Scenario 2: Anti-collision and obstacles avoidance algorithm cost
Table 3 provides the results of these simulations, in number of complete laps performed by the four AIVs, according to varying numbers and sizes of obstacles. Given the circuit chosen for these tests, a number of obstacles greater than ten does not seem to make sense. On the other hand, the sizes of the obstacles are classified from 1 to 4 in ascending order of their encumbrance on the circuit.
Table 3 shows that for the same number of obstacles, the impact on the number of turns made by the AIVs will depend on the size of these obstacles. Thus, considering three obstacles, the AIV1 will do 23 laps if the obstacles are small or medium (sizes
If we vary the number of obstacles with sizes of similar values (here four, five then ten obstacles), the incidence only becomes slightly significant for ten obstacles. The probability of having ten obstacles (even a group of humans) on this small circuit at the same time being very low, we can consider that this is a very good result.
Table 4 provides the values of the cost of using this algorithm extended to obstacle avoidance by AIVs (here for four obstacles of sizes
We verify in these visual scenarios that the obstacles and other AIV agents are perceived by each AIV agent, and consequently, they will be able to avoid collisions. Therefore, the simulation validates the extended Bahnes’s algorithm with collision avoidance and fixed or dynamic obstacle detection processing.
Beyond the simulation context, if we wish to cross the threshold of experimentation based on actual and cooperative mobile robots, we must take an interest in communication standards, starting with those presented in our state of the art at the “Communication among vehicles” section. It is then a question of asking whether it is possible to adopt the same standards in the industry than the one developped in the C-ITS community for road vehicles (or even adapt the standards if it is more relevant).
Situation of intersection crossing by three AIVs.
In order for each vehicle in a fleet of vehicles to cooperate and provide relevant information to the other vehicles in the fleet, it is necessary that it can locate itself accurately. Using this condition as a springboard, we started by working on this aspect and have proposed a method in this paper. We will therefore develop the problem of standardized messages in the rest of this section.
The standardized cooperative messages defined by ETSI are of several types; we have selected three of them: 1) CAM (Cooperative Awareness Message) messages which broadcast the position of the transmitting vehicle and which thus allow other vehicles to locate themselves in real time in relation to it; 2) CPM (Cooperative Perception Message) messages which broadcast the relevant objects perceived by the transmitting vehicle and which thus make it possible to inform vehicles in the same area of the presence of objects such as obstacles, pedestrians or other vehicles; and 3) DENM (Decentralized Environmental Notification Message) messages which allow the transmitting vehicle to broadcast notification messages when detecting/perceiving special events such as vehicle collisions or vehicle breakdowns.
In addition, the ETSI ITS WG1 is curently working on the definition of a “Maneuver Coordination Service” (MCS) and its associated Maneuver Coordination Messages (MCM) [66]. The outcome of this work item is planned for end of 2023. We expect MCM could be used or enhanced to schedule the access to crossroads.
Cooperative messages used for intersection crossing (Note: in a purely distributed scenario, infrastructure is not required).
It is then possible to transform the two algorithms presented in this article (the one of Bahnes and its augmented version) by replacing the messages in the following way:
the Coop_msg messages sent by an AIV at the entrance of an intersection zone to determine its priority have no equivalent yet in the ITS standards, but will hopefully be replaced by future MCM or an extension of them; in the same logic, the ACK_msg messages sent by an AIV to confirm the reception of a Coop_msg message will be replaced by the future MCM; the Hello_msg messages sent by an AIV to indicate its presence and position are replaced by CAM messages; the Obstacle_msg messages sent by an AIV to indicate the presence of a perceived obstacle are replaced by CPM messages; the Alert_msg messages sent by an AIV to indicate an unavoidable obstacle are replaced by a DENM message.
To illustrate the use of standardized ITS messages in our industrial context, we will consider the situation described below (see Fig. 11).
The previous figure (see Fig. 12) specifies the type and the order of the standardized messages sent by the AIV1 which wants to cross the intersection as presented in Fig. 11. Following the perception of the Tag
There has been a great deal of research on autonomous vehicles, but relatively little of it has concerned industrial vehicles (or mobile robots), the focus instead remaining on road vehicles. Obvious similarities exist between these two types of autonomous vehicles, starting with the need to simulate the vehicles and their traffic contexts before developing and deploying them in real environments.
In the industrial field, simulation serves to account for the constraints and requirements formulated by the manufacturers and future users of autonomous vehicles, before their secure integration in situ. Design a safe workplace, shared by human and robot, which also increase their mutual interactions, requires simulating and testing anti-collision systems before they are developed.
The development of simulation platforms is, therefore, an important step in improving the autonomy of AIVs. The platforms identified in the literature are either exclusively virtual or physical oriented. However, as our approach relies on co-simulation experiments combining physical and/or virtual situations of AIV circulation, we decided to develop an agent-based co-simulation platform. On both the physical and virtual levels, it is essential to determine the correct location of the vehicles. Therefore, we proposed an approach for estimating the position of AIVs according to the principle of matrix beaconing that we then implemented in our simulation framework.
This platform allows us to consider heterogeneous fleets managed by different actors but sharing a common part of the infrastructure, such as in an industrial area for example. Moreover, the Industry 4.0 context implies that many actors cross paths in different areas of a warehouse or a factory: vehicles, operators, obstacles (objects that fall or are left in aisles). This heterogeneity of mobile robots and the multiplication of interactions between actors and mobile robots generate a complexity that makes the use of a simulation platform even more essential.
We extended a cooperative algorithm based on a message communication protocol that allows the AIVs to prioritize passage through an intersection in order to have the possibility of handling the detection of these fixed and mobile obstacles. We validated the extended algorithm by a simulation approach; then, in a perspective of real experimentation with heterogeneous mobile robots, we proposed an adaptation of this new algorithm using the standard messages defined by ETSI.
In the future, we want to focus not only on the cooperation of vehicle perception information but also on the participation in common tasks. We will also work on simulating other levels of autonomy through collective strategies – cooperation between AIVs but also cooperation integrating the infrastructure and the AIV environment. Cooperation with sensors in the infrastructure can also help to announce information, such as the presence of pedestrians, and thus reduce the cost of AGVs by limiting the number of sensors they must carry.
This cooperation of the infrastructure would help the safety of humans in a shared work environment with autonomous and intelligent mobile robots, whether for simple coexistence or for human-robot co-working in the perspective of Industry 5.0 [142], should become a more important concern in our work. It will be a question of progressively considering this problem more like risk management (pre-collision, post-collision and risk prevention) than the unique development of anti-collision systems. We also plan to continue our research work according to our parallel working methodology – simulations and real experiments with intelligent mobile robots – to validate our future collective strategies.
