Abstract
Keywords
1. Introduction
The promising epitome of sustainable manufacturing essentially demands for optimal utilization of expensive and seldom used resources in modern manufacturing systems. The desired sustainability can be efficiently incorporated in reconfigurable and flexible manufacturing systems using multi-robot systems. Multi-robot systems have inherent advantages like efficient sharing of resources, reduction in cycle time and optimal energy consumption. These aspects are of prime importance from sustainable manufacturing point of view where emphasis is on optimal use of resources and conservation of natural resources. In order to bring out these advantages associated with multi-robot systems, there is a need for a flexible and generic framework for motion planning and control of multi-robot systems.
Motion planning of multiple robots is still challenging since it has to address numerous important aspects ranging from modeling of workcell to optimal trajectory generation. The problem becomes more challenging with increasing number of robots, complexity of tasks to be performed by robots, the number of constraints related to robots, stationary obstacles, and the presence of other robots in the workspace. Attempts made by researchers on development of motion planners for coordinated motion planning of multiple robots are reviewed in the following section to provide the basis for developing a flexible and generic approach that can address the generation of conflict free coordinated motion plan for multiple robots.
A typical motion planning system for coordinated motion of multiple robots must essentially consider various aspects ranging from modeling of robots and the environment to the generation of optimal trajectory for achieving any specific task with multiple robots. The conventional motion planning systems consider all these aspects in a sequential fashion by devising strategies dependent on (a) the geometry used for robot and environment modeling (Hwang

Flexibility associated with agent based systems
2. Agent Based Systems
The theory of agent based systems goes decades back when research in distributed artificial intelligence had been initiated. Along with the information and communication technology, the application of agent based systems is becoming very popular in manufacturing decision making and control systems. While this novel paradigm has several roots as far as its theory, enabling technologies and applications are concerned, there is a general consent about its two main concepts:
An agent is a computational system that is situated in a dynamic environment and is capable of exhibiting autonomous and intelligent behavior.
An agent may have an environment that includes other agents. The community of interacting agents, as a whole, operates as a multi-agent system.
The definition of an agent, agent categorization methods and the previous attempts to develop agent based systems for robot motion planning are discussed in the next section.
2.1 Agent Definition
Agent based approach for system modeling and control is relatively new concept. Agents in these systems are active and persistent components that perceive, reason, act and communicate. Generally, the agents are developed as a part of multi-agent system than a single entity. An agent can be defined as “An agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives” (Wooldrige 2002). Moreover, an agent can be considered as a logical and autonomous entity which tries to contribute to the overall task achievement based on its own strategy (Dastani et al., 2002; d'Inverno, 1998; Jennings and Wittig, 1992).
An Agent provides an abstraction for structuring and developing control system that offers certain benefits and is suited to certain types of applications. The effectiveness of agents in control system design relies on the mappings of the distinctive features of an agent into the properties of a control system. One of the major advantages of an agent-based system is the ability of agents to decouple from one another so as to eliminate cross coupling. Hence, an agent is a self-contained entity that achieves its goals and tries alternatives to adapt to certain changing environment. Agents require minimal supervision and human intervention.
2.2 Basic Characteristics of Agents
An agent operates in an environment from which it is clearly separated (Fig. 2). Hence, an agent (1) makes observations about its environment, (2) has its own knowledge and beliefs about environment, (3) has preference regarding the states of the environment, an finally, (4) initiates and executes actions to change the environment.

The agent and its environment (Russel and Norvig, 1995)
The most important common properties of agents are as follows (Monostori et al., 2006):
Agents act on behalf of their user in order to meet a particular purpose.
They are autonomous in the sense that they control both their internal state and behavior of environment.
They exhibit some kind of intelligence, from applying fixed rules to reasoning planning and learning capabilities.
They interact with their environment and other agents.
They are ideally adaptive, i.e. capable of tailoring their behavior as per the changes in the environment.
2.3 Agent Categorization
The capabilities of an agent are determined by its design. Several researchers have given different designs of an agent to facilitate the control of robot systems. Agent can be categorized as functional agent and integrated agent. Functional Agent is capable to perform some specific function while an Integrated Agent performs holistic function for a robot system (Bastos-Filho et al., 1998).
With the functional agent categorization approach, it is easy to define agent capabilities due to the direct mapping of the corresponding functionality. The interaction of agents is exclusive due to the unambiguous requirement of information for a particular behavior. The functional agent categorization approach achieves flexibility and extensibility by the addition of agents for extension of system capabilities and behavior. The functional agent categorization approach accommodates heterogeneous agent design that is incapable for homogenous agents design.
The integrated agent categorization approach is to design an agent based system with integrated behavioral agents that achieves modularity and homogeneity. Each agent consists of its own sensor, behavior and actuator. Each agent senses the environment and drives the assigned actuator with its own strategy. This approach attempts to map directly between the hardware and the control software (Lau and Ng, 2004).
2.4 Agent Based Systems for Robot Motion Control
Agent based systems are very widely used in control of various manufacturing systems and it has become inevitable for meeting the requirements of modern manufacturing systems (Papakostas et al., 1999; Chryssolouris et al., 2000). Though agent based systems are gaining importance in manufacturing system modeling and control, attempts made towards application of these system for motion planning and control of robot are limited. In literature, very few attempts can be seen towards developing an agent based system for robot motion control.
In the agent based system proposed by Mori et al., (1996), four agents were deployed and each individual agent participated in execution of a peg-in-hole task with a robotic arm (Fig. 3). Three of them, could only control one joint that is assigned to them. Fourth agent monitored the execution of tasks and reported the status to other agents. The joint controlling agents decide and carry out their own behavior based on the information obtained from sensors and other agents. Precise trajectory of the manipulator was unknown beforehand because the actions are concurrently and independently performed. Thus, the behavior is a result of agent interactions.

Task execution by 4 agents using task decomposition (2D) (Mori et al., 1996)
Ramdane-Cherif et al., (2002) proposed an agent control for a planar redundant robot arm (Fig. 4). The control system monitored the end-effector position while varying individual joint parameters. If an agent itself could reach a specific destination, it would drive robot arm to the specific destination and this task is said to be completed. Otherwise, this agent would require its neighboring agent(s) to bring the end-effector towards the destination. The initiating agent then evaluates the current situation and determines the subsequent movement. Under this model, robot joints near to the end-effector have higher priorities in controlling the position of the end-effector. The realization of such an agent-based control algorithm was done with a Java simulation model.

The collaboration protocol between agents (Ramdane-Cherif et al., 2002)
Bohner and Luppen (1997) proposed hierarchical agent architecture for the control of redundant manipulators (Fig. 5). An integrated agent approach was adopted such that each agent is capable of perceiving the joint information and performs tasks. Together with these integrated agents, a superior agent was deployed to coordinate each joint agent and direct them to achieve goals. A task level and optimising level used the model of the entire manipulator to optimise the manipulator motion for realizing the target position and to execute the complex path planning algorithms. The implementation of agent architecture was done on a seven DOF hyper-redundant manipulator.

An architecture of agent-based robot system (Bohner and Luppen, 1997)
All these approaches are applicable for a single robot motion planning and their performance rely on the sensors. The implementation complexity of these approaches increases with an increase in the number of robots sharing the common workspace. Moreover, these techniques work well in on-line mode. Online coordinated task planning of multiple robots can be done efficiently only if the current state of workspace is made available using high performance sensory system and with parallel computational facilities. Moreover, it essentially demands for stopping of robots during the path planning. Hence, this approach is mostly suited for situations where the tasks are simple and can be taught to robot by trial and error.
In a flexible and reconfigurable manufacturing environment, typical manufacturing processes like spray painting, spot welding or precision assembly are handled with multiple robots and task change is variable due to a variety of products being manufactured in those systems. In such situation, it is essential to generate the path in advance by offline methods to avoid the interruption of robots performing the tasks continuously. In this context, off-line path planning approaches are the most appropriate ones for multi-robot motion planning. Multiple robot motion planning problem is the best candidate for agent based system as it is modular (it has a set of well defined variables and knowledge of a clear interface with environment), decentralized (each aspect is independent), changeable (one piece of information can be varied with minimum impact on others) and complex (consideration of many aspects at a time) problem. Till date, no attempts have been made to develop an agent based framework for coordinated motion planning of multiple robots in an off-line mode.
However, no attempt was made to develop an agent based framework for coordinated motion planning of multiple robots in off-line mode, considering all the vital aspects mentioned above. With this motivation, the present work proposes to develop a plug and play natured agent based framework for coordinated motion planning of multiple robots and explores certain new approaches for each of these aspects in order to impart the desired flexibility to the framework.
3. Proposed Agent Based Framework
The outline of the proposed agent based framework is presented in Fig. 6, which considers robot specifications, nature and geometry of obstacles, and task specification as input and gives out collision free and conflict free trajectory for all the participating robots in order to perform the specified task. In this work, each robot and every motion planning activity is viewed as an agent. These agents are categorized as a) Functional agent b) Integrated agent based on the task to be undertaken by them. The activities like modeling of robot and its environment, generation of Configuration space Time (CST), Coordinated motion planning, estimation of inverse kinematics solutions, determination of optimal trajectory are supposed to perform some specific task and hence each of these activities is considered as a Functional Agent. Robots are responsible to perform holistic function for entire system and hence each robot is considered as an Integrated Agent. The functional agent can obtain required information from other agents as per necessity, whereas the integrated agents share the information among them using CST. The detailed description of these agents and new strategies developed for Functional Agents are explained here.

Outline of the proposed agent based framework for coordinated motion planning of multiple robots
3.1 Integrated Agent-Robot
The proposed framework can consider any revolute type of robot whose kinematic and dynamic parameters are known. This is essential to plan the path and trajectory for the robots involved in coordinated task. In this work, Kuka Kr-15 six degree of freedom, serial fixed based manipulator (Fig. 7) is considered since its kinematic parameters, DH parameters and dynamic parameters are known (Verdonck, 2004).

Coordinate frames attached to the rigid body of KUKA-Kr-15 robot
3.2 Functional Agent A – Modeling of Robot and Workspace
Effective modeling of robot and obstacles present in the workspace is important to map the workspace more accurately. By this, the accuracy of path planned for the tasks can be enhanced. In this work, Swept Sphere Volume (SSV) technique is employed to model the elements of work cell environment since this technique is capable of modeling various links of robot, objects and obstacles more realistically (Harden et al., 2005). A set of algorithms based on SSV are developed to determine the safe distance between an obstacle and a link of robot, links of robot and link of a robot and rectangular platform (Chiddarwar and Ramesh Babu, 2009a). Thus, this particular

Modeling of robot and its environment using SSV (
3.3 Functional Agent B – Configuration Space - Time Generation
It is well known that the path planning approaches consider configuration space for planning the collision free path for a single robot performing the tasks in a constrained environment. However, the coordinated path planning approaches need the configuration space with time (CST) to plan for collision free path for multiple robots since each robot is viewed as a dynamic obstacle by other robots during the task planning. By using the algorithms proposed (

Determination of CST (
3.4 Functional Agent C- Decoupled Coordination
The task of coordination among the robots is planned by a decoupled path planning approach proposed in this work. The proposed approach, covered with
Path Planning Phase: Collision free configurations of each robot, provided by Agent B, are used to determine an optimal collision free path for each robot using well known heuristic search algorithm i.e. A* algorithm. This path of each robot with respect to time and CST of each robot determined by
Coordination Phase: Optimal collision free path obtained for each robot can safely be used only when the paths of other robots do not conflict with the path of considered robot. In case of multiple robots, conflicts can occur between two robots and more than two robots. In case of conflict between any two robots in a multi-robot system, the conflict configuration is removed from the CST of these two robots. It is then searched with incremental A* algorithm (Koenig and Likhachev, 2002) to determine the modified path for each robot. Based on the length of modified path for each robot, the path of robot having the shortest path length is chosen for modification and the path for coordination of multiple robots is obtained. In case of conflict among three robots in a multi-robot system, the present work proposes a path modification sequence (PMS) to arrive at the sequence of robots for conflict free path determination. It makes use of incremental A* algorithm for modifying the path of each robot conflicting with other robots. The cost of PMS is determined by using the length of modified path. For each PMS, cost of PMS = cost of PMS with priority – cost of PMS without priority. For this computation, the cost of respective paths were taken into account as for example ℓ(R2R1R3) = [ℓ(R2R1) + ℓ(R2R1R3)] - [ℓ(R1) + ℓ(R3)]. Among all the available PMS, the minimum cost PMS is selected and this optimal PMS automatically yields the optimal set of path modification sequence to resolve a conflict situation. In case of ‘n’ robot agents conflicting in the environment, the issue of conflict resolution can be attempted by identifying the groups of two or three robots conflicting among the many robots (Chiddarwar and Ramesh Babu, 2009b).
3.5 Functional Agent D- Computation of Inverse Kinematics Solutions
Collision and conflict free path provided by Agent C can be implemented only when this path is converted into joint angle configurations. Normally, the Cartesian path is transformed into joint angles by inverse kinematics. Unlike geometric and algebraic methods, the artificial neural network seems to be promising since it is independent of the geometry of robot and initial solution. For quick and precise transformation of Cartesian path into joint angle path, a fusion process is proposed in this work (Fig. 11). The proposed fusion approach is the blend of artificial neural network and forward kinematics relations of robot. It uses radial basis function neural network (RBF) for prediction of joint angles. In order to estimate the deviation in predicted value from the desired value, the pose at that configuration is computed using forward kinematics relations. The proposed algorithm utilizes this information and continues to improve the solution. In order to develop the neural network, the required database is obtained from forward kinematics relations. (Chiddarwar and Ramesh Babu, 2010). Thus, the task of determining the joint angle configuration for movement of robot end-effector along the path obtained by using

Schematic of two phase approach developed for coordinated motion planning of multiple robots (

Schematic of fusion approach proposed for estimation of IK solutions (
3.6 Functional Agent E- Trajectory Tracking
Estimation of kinematic control parameters is necessary to move the robot end-effector along the specified path. For this purpose, a neural network based approach is proposed in this work (Fig. 12). The proposed approach generates the necessary data for training of neural network by fitting fifth order B-spline to the entire CST of each robot. The corresponding velocity, acceleration and jerk are computed by taking derivative of the spline. This database is further used for training of radial basis function neural network, which takes joint angle path of robot in time domain as an input and predicts the values of velocity, acceleration and jerk at that particular configuration (Chiddarwar and Ramesh Babu, 2009c). Hence, this

Outline of neural network approach developed for trajectory tracking (
3.7 Functional Agent F - Optimal Trajectory Planning
The
Subject to constraints
|θ
|θ̈
|
|θ
vp = number of via points, h
θ
θ̈
The torque computation is done by considering the dynamics of robot as well as the gripping force necessary to grip the payload with two finger gripper. The formulated objective function and constraints are represented in terms of coefficients of spline used for modeling the trajectory and are further used as optimization variables for optimization process. The values of these variables are determined by means of a multi objective genetic algorithm. The computed values of these variables are further used to estimate the values of kinematic control parameters. Thus, the function of

Schematic of the proposed approach for optimal trajectory generation (
4. Results and Discussion
In this work, an agent based framework is developed for coordinated motion planning of multiple robots. The various agents of the system and their functionalities are identified and new approaches are developed to impart flexibility with the plug and play nature of modules into the framework. The performance of proposed approaches for realising the functionality of various agents is compared with commonly used approaches and the results thus obtained are discussed in this section.
In order to evaluate the performance of the proposed decoupled approach for coordinated motion planning of multiple robots (

(a) Four robot workcell (b) Collision free path for four robots with respect to stationary obstacles

Conflict free coordinated path obtained for four robot agents after resolving conflicts (Output of the coordination phase of
Comparison of performance of various coordination techniques used to determine conflict free path for robot agents of four robot case study
In order to assess the performance of the proposed fusion approach for estimation of inverse kinematic solution (
The requisite trajectory along the specified path is determined by using
Time required for the completion of the task by using velocity profiles generated by various trajectory generation techniques
Computation of the total torque by using various trajectory generation techniques
5. Major Observations
The developed agent based framework consists of various agents classified based on their functionality. In order to make the developed approach flexible, the agents responsible for coordinated motion planning generation of inverse kinematics solutions and trajectory generation are of major importance. Hence, new approaches are developed to achieve the functionality of these agents. The major findings of this work are as follows:
The proposed approach of dynamic determination of PMS for modifying the path to avoid conflicts and achieve desired coordination is efficient than other approaches as it does not allow any deadlock situation to happen. In addition, this approach facilitates concurrent movement of all the robots with optimal velocity. The proposed approach shows around 40% reduction in total time required for complete task execution and 12 − 33% reduction in the individual time taken by the robot as compared to other approaches liked fixed priority, velocity reduction, delay in startup time.
The RBF ANN based fusion process for determination of IK solutions seems to be effective in terms of accuracy of solution and time required for determination of the solution. The error in prediction of joint angle is in the range of 0.06 to 0.11 degrees which is very less as compared to MLP ANN and conventional neural network architectures.
The trajectory tracking method made use of quintic B-spline for modeling of trajectory and RBF ANN with 7by6 ANN architecture for prediction of the kinematic control parameters shows 0.4–6 % error in the solution whereas when computation is done with algebraic spline error is 0.9–18%. This method is very handy for the determination of the kinematic control parameters when the dynamics of robot need not be considered.
The optimized trajectory obtained along the specified path by using quintic B-spline for modeling of trajectory and genetic algorithm for optimization process seems to be efficient than trigonometric spline modeling and sequential quadratic programming for optimization. When trajectory estimation is done by using quintic B-spline for modeling of trajectory and GA based optimization technique then 11–43% reduction in total computed torque is obtained.
6. Conclusions
A systematic study on multi-robot coordinated motion planning and its important aspects showed the effectiveness of agent based framework developed in this work. Among the various agents necessary for successful implementation of the proposed framework, the agents responsible for achieving coordination, estimation of inverse kinematics solutions and optimal trajectory planning are very important. The strategies developed for these agents ensure collision free, conflict free and smooth movement of multiple robot agents sharing the common workspace. This framework can be used for motion planning of multiple robots independent of task to be performed and the number of robots sharing the common workspace. The effective utilization of resources, minimum time and energy consumption are the highlights of the proposed approach, which helps to introduce sustainability in modern reconfigurable and flexible manufacturing systems.
