• No results found

Localization of Mobile Robots in a Network using Mobile Agents

N/A
N/A
Protected

Academic year: 2020

Share "Localization of Mobile Robots in a Network using Mobile Agents"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

Localization of Mobile Robots in a Network using Mobile Agents

Shashank Srivastava

Robotics and Artificial Intelligence Indian Institute of Information Technology

Allahabad, India [email protected]

G.C Nandi

Robotics and Artificial Intelligence Indian Institute of Information Technology

Allahabad, India [email protected]

Abstract— With the progressive growth in the domain of autonomous mobile robot, mobile robots should have the capability of taking intelligent decision for their movement plan. In real time, it should be necessary for mobile robots to consume less amount of energy in navigating also. In our paper we proposed a multi agent based architecture which aims to utilize mobile agent architecture and distributed computing for localization of mobile robots in a low bandwidth network. It involves information retrieval from the mobile robots, the information being their location in a global map.

According to location information of each mobile robot, administrator implements low level control over mobile robots in their navigation plan and obstacle avoidance with the help of communication through mobile agents. This can also be done using basic client server architecture, but due to the inherent low bandwidth nature of the network, such architectures suffer from extreme lagging and network congestion as the number of networks’ nodes increases, thus making it unsuitable for dynamic exchange of information. Hence we are using mobile agent architecture which involves transfer of executable code to the location of the data instead of transferring data to the location of the executable code.

Keywords- Mobile Robots, Localization, Mobile Agents, Jade, Webot.

I. INTRODUCTION

In our daily life, mobile robot can be used in many applications like providing services to patients in hospital and provides services in military operations etc. For this kind of applications, controlling of mobile robots in real time is a challenging job for researchers in modern perspective [1].

A mobile agent is a software object oriented program which has the properties of intelligence autonomy, responsiveness, communication ability and adaptability [3]; it also has ability to move from one host to another host and uses the resources of host to perform its specified tasks Mobile agents are generally used in critical systems like real time systems that need to give response instantaneously according to environmental changes [2]. Real time examples of mobile agents are the control of robots engaged in distributed processes .Controlling of robots through network creates significant delays, which are not suited to real time applications. So for this, mobile agents act locally and execute the instruction of central controller directly. Although this approach may overcome the problem of

network latency, it also creates the security related problems. So our main motive is to controlling the actions of network robots in distributed real time environment and in a secure manner.

Localization is the process of determining target position of particular objects with respect to particular reference point in coordinate frame [5]. Localization of an object can be achieved by sensors [6] or by image processing, but in real time scenario image processing is not so useful. Localization is a task of finding positions of an object within a reference coordinate system, whereas tracking is ongoing or dynamic process in which collection of localization takes place.

In this paper we proposed mobileagent architecture for controlling multiple mobile robots remotely. Generally, networked robots use TCP/IP protocol for communication and follows client server based architecture [7]. In order to provide intelligence to network robots, mobile agent based architecture is used. In client server paradigm, server controls different clients (mobile robots) through sending control command like left, right, fast, slow etc.

Mobile agent needs an execution environment to execute itself; agent server provides different places for execution of mobile agents. Multiple hosts in a network provide a distributed and heterogeneous environment for execution of mobile agents [7, 9]. Mobile agents use the mechanism like RMI and CORBA for remote communication. In order to implement our project, we used Jade software platform for implementing multi agents based architecture.

JADE is a software platform that provides the basic middleware-layer functionalities which are independent of a specific application and which simplify the realization of distributed applications that exploit the software agent abstraction [14 ] .A JADE platform is composed of agent containers that can be distributed over the network. Agents live in containers which are the Java process that provides the JADE run-time and all the services needed for hosting and executing agents. There is a special container called the main container which represents the bootstrap point of a platform: it is the first container to be launched and all other containers must join to a main container by registering with it.

(2)

model, program and simulate mobile robots. It can be used to design complex robotic setups, with one or several, similar or different robots, in a shared environment. The properties of each object, such as shape, color, texture, mass, friction, etc., can be chosen by the user. Also available are simulated sensors and actuators to equip each robot. The robot controllers can be programmed with the built-in IDE or with third party development environments and its behavior can be tested in physically realistic worlds. In our proposed model, at the server (administrator) end we created a main container. And different containers are created at the places where instance of webots are running. Server’s container registers the entire container of network and retrieves the location’s information of each robot with the help of agent’s communication and gives control commands to different mobile robots for navigation. The overall paper is as follows. Section2 presents an overview of related work which had been performed in the area of mobile robots navigation plan and localization with the help of mobile agents. In Section 3 we have proposed multi agent based system architecture to perform localization of mobile robots in an unknown paradigm. Section 4 has covered the implementation details of architecture and results and finally in section 5 future work and conclusion have been mentioned.

II. ANALYSIS OF PREVIOUS RESEARCHES

The advancement and globalization in the field of robotics, controlling and localizing mobile robots in real time is the biggest challenge for researchers. With the enhancement in the domain of autonomous mobile robot, mobile robots should have the capability of taking intelligent decision for their movement plan. So for this kind of applications, mobile robots should have the properties of intelligence, autonomy etc that will make it more efficient in taking decisions.

Gechter Franck proposed reactive multi agents systems for localizing and tracking of an object in uncertain environment [5]. Localization is the process of determining target position of particular objects with respect to particular reference point in coordinate frame. With the help of sensors and image processing localization of an object can be achieved, but in real time circumstances image processing is not so effective due to processing overhead and time lagging. Localization is a task of finding positions of an object within a reference coordinate system, whereas tracking is ongoing or dynamic process in which collection of localization takes place.

Path planning in an unknown infrastructure can be accomplished with the help of agent based communication between mobile robots [4]. Chia-HowLin [11] proposed an agent based architecture for controlling mobile robots in real time. In proposed setup, the practical demonstration was performed on two mobile robots. In order to find target, first, robot explored the environment on the basis of ultrasonic sensors and send the target related information to second robots through mobile agents. Second robot initially

planned for the path to target and then tried to get it in efficient manner. Here each mobile robot in a network did path planning with the help of information which was sent by another mobile robot. So each robot had to wait for sensors based information for path planning which resulted in an unwanted delay in navigation.

Another method of controlling mobile robot was based on planning agents proposed by Bianca Innocenti of Agent

research lab [15]. In this paper, authors proposed a multi

agent system. In multi agent system, there are various planning mobile agents which are used to control single robot. In proposed multi agent architecture, there are task planning agent, the reactive agent, facilitator agent, monitor agent and user interface agent. Multi agent interface architecture is characterized into two levels of abstraction. At level 0, there were one facilitator agent that that communicates with reactive agent, task planning agent and monitor agent. At level 1, there were various planning agents that communicated directly with coordination agent. According to authors, role of following mobile agents were as follows: The Task Planning Agent provides a plan according to some specific predefined goal. The Reactive agent was used for obstacle avoidance. The monitor agent monitors the whole system and detects errors and possible failures. The facilitator agent had the knowledge of all mobile agents and the user interface agent used to show the results of the task to the user.

(3)

Local control agent sent control remote control agents, on the basis of which remote controlled agent controls multiple robots. Each robot had a robot interface agent, which directly communicated with remote control agent and provided feedback information related to movement. Local display agents provide a display GUI for multiple mobile robots. GUI display the current location of robots in terms of coordinate (x, y, α). Remote display agent takes the feedback information, which is related to position of robots from multiple robots and send it to local display agent for displaying robot locations.

III. SYSTEM ARCHITECTURE AND DESIGN

In order to facilitate the control of multiple mobile robots at remote server, we have proposed an integrated multi agent based architecture, where agents provide intelligence to remote server for controlling the mobile robots in a distributed network. We have implemented this on the Java Platform using JADE framework .For creating mobile agents we have used JADE framework and for simulating the robots behavior, we used webot as simulator software.

Figure1. Jade Frame work with Main Container and Container-1

In brief, JADE is a software platform that provides the basic middleware-layer functionalities which are independent of a specific application and simplify the realization of distributed applications that exploit the software agent abstraction [14].A JADE platform is composed of agent containers that can be distributed over the network. Agents live in containers which are the Java process that provides the JADE run-time and all the services needed for hosting and executing agents. There is a special container called the main container which represents the bootstrap point of a platform: it is the first container to be launched and all other

containers must join to a main container by registering with it. See fig [1]

Webots is a three-dimensional mobile robot simulator [13] (see fig [2]). It is a development environment used to model, program and simulate mobile robots. It can be used to design complex robotic setups, with one or several, similar or different robots, in a shared environment. The properties of each object, such as shape, color, texture, mass, friction, etc., can be chosen by the user. Also available are simulated sensors and actuators to equip each robot. The robot controllers can be programmed with the built-in IDE or with third party development environments and their behavior can be tested in physically realistic worlds. A Webots simulation is composed of a Webots world file that defines one or more 3D robots and their environment, and controller programs which control the robots specified in a word file.

Figure2. Webot Simulation

A. Proposed Multi Agent Based Architecture

(4)

At the administration end, we assume that the initial positions of all mobile robots are known. In our proposed model, we track continuously changing in parameters (responsible for navigation) of differential wheel robots and mimic the navigation of different mobile robots at the administration end. The overall process of proposed architecture is as follows.

Figure3.Proposed Multi Agent Based Architecture

At the Server (Administrative end):

- Jade Main Container (Agent Platform) which is responsible for creating path tracking mobile agent. - Path Tracking Agent (Mobile Agent).

- An instance of webot (For real time navigation tracking of mobile robots of different instance).

At the Clients end:

- Container (Agent Platform) at each client, which

has to register with main container.

- Stationary Agent (running at each client) which

communicates with path tracking agent and act as a mediator between path tracking agent and robot (webot instance).

- Instance of webot (running at each client).

A mobile agent is triggered on the administrator computer which travels to all the other three computers (Robot’s Instance) one by one. This agent travels to Robot 1, collects its location information in terms of differential wheel parameters and travels to Robot 2.

Similarly from 2, it collects the location information of the robot and travels to Robot 3 where it collects C’s location information. This collected information is then sent back to the administrator computer which then tracks the movement of all three robots in its own instance of Webots. The overall operation of tracking is performed in parallel. At each instance of webot, a thread executes the path tracking agent and gives the location information of robot to it through stationary agent which is continuously running on each

robot’s instance and retrieves location information of robot.

IV. EXPERIMENTS AND RESULTS

We have implemented our architecture using Java Platform using JADE framework [14, 16] .For creating mobile agents we have used JADE framework. These agents move to the places where data are stored and retrieve the information requested by server. Initially at the server’s side a main container has to be formed which would be containing the entire container’s information present in the network. We tested our application on a LAN with a server and three clients each of them have a running instance of Webots and the JADE platform.

The Webots implementation consists of a wheeled robot which moves around in the map. Motion of a wheeled robot is set by setting the speed of its left and right wheels using the following function [16]: differential_wheels_set_speed

(left_speed, right_speed).

Following parameters are used in tracking: - The robot id

- speed of its left wheel - speed of its right wheel

- Timestamp and maximum speed of the robot’s wheel

These parameters are written into a file called “data.csv” which is then passed to the robot in the server computer using the mobile agent. The robot at the server end takes the same 5 parameters as input for its wheeled robot, and accordingly sets the speed of this robot, which then moves around the map in the same motion as the individual robot. The above stated abstraction is realized in java by using the following classes of JADE framework [16].

- PathTrackingAgent - PathTrackingBehaviour

- GetAvailableLocationsBehaviour - PathTrackingAgent. Log_row

PathTrackingAgent:

PathTrackingAgent class extends the jade.core.Agent class and implementing the setup () method. The actual job that an agent has to perform is typically carried out within behaviors. PathTrackingAgent uses two behaviors GetAvailableLocationsBehaviour, PathTrackingBehaviour.

GetAvailableLocationsBehaviour:

This class extends Jade.core.Behaviour which is used to retrieve the list of available containers in the network. This list of available Locations is added to the PathTrackingAgent.dir.

PathTrackingBehaviour:

(5)

Webot simulations saves the movement of mobile robots in data.csv file which contains Node id, left wheel speed ,right wheel speed, timestamp and maximum speed of robot. PathTracking agent (Localization agent) uses two behaviors Get localization behavior and PathTracking behavior. PathTracking behavior of localization agent performs in an infinite loop and retrieves data through streams. Path tracking behavior creates file reader stream for read data of client’s bots and file writer stream for writing data at server end. The overall process is shown in Figure4.

Figure4. Process flow of experiments

PathTrackingAgent. Log_row:

PathTrackingAgent.Log_row class contains containerID, LeftSpeed, RightSpeed, Time, MaxSpeed which read from the output of webot simulation’s instance. In this way, at the administrator end, webot instance at the server end takes the same 5 parameters as input for its wheeled robot, and accordingly sets the speed of their robots, which then move around the map in the same motion as the individual robot move in different instance in real time.

V. CONCLUSION AND FUTURE WORK

Our proposed multi agent based architecture tracks the movement of different mobile robots in a map remotely which helps to localize the mobile robots in real time. With the rapid advancement in the field of robotics, real time navigation and localization of mobile robots in an unknown environment is the biggest challenge for researchers. Researchers are facing challenges like real time tracking of mobile robots in a network, dynamic changing environment [Due to unknown obstacles], reconstruction of shortest path

dynamically, sensors overhead problems, High energy consumption and delay in processes [if shortest path is not predefined]. Mobile agents have the properties of intelligence autonomy, responsiveness, communication ability and adaptability which may helps to face these types of challenges in future. Our next plan is to move toward dynamically changing environment and follow the layered and integrated approach of local path planning as well as global path planning in real time scenario.

REFERENCES

[1] Ugar Gurel and Osman Parlaktuna “Agent based route planning for

a mobile robot” 5th International Advanced Technologies

Symposium (IATS’09), May 13-15, 2009, Karabuk, Turkey. [2] Danny B. Lange and Oshima, “Seven Good Reasons for Mobile

Agents” March 99/Vol. 42, No.3 COMMUNICATIONS OF THE

ACM.

[3] Parineeth M Reddy, “Mobile Agents” General Article, RESONANCE July 2002.

[4] T. R. Wan, H. Chen and R Earnshaw “Real-time Path Planning for

Navigation in Unknown Environment” Proceedings of the Theory

and Practice of Computer Graphics (TPCG’03).

[5] Gechter Frank, Chevrier vincent “ A reactive Multi agent System

for localization and tracking in mobile robotics”. 16th IEEE

International Conference on Tools with Artificial Intelligence (ICTAI 2004).

[6] A. OUALID DJEKOUNE1, KARIM ACHOUR, “A Sensor Based

Navigation Algorithm for a Mobile Robot using the DVFF Approach” International Journal of Advanced Robotic Systems, Vol. 6, No. 2 (2009) pp. 97-108.

[7] L. M. Cragg and H. Hu, “IMPLEMENTING MULTIPLE ROBOT

ARCHITECTURES USING MOBILE AGENTS” Control 2004, University of Bath, UK, September 2004.

[8] Umar Manzoor, Samia Nefti “Agent Based Activity Monitoring

System” 20th IEEE International conference on Tools with Artificial

Intelligence, pp.220-223, 2008.

[9] Michael Gerke and Helmut Hoyer, “Planning of optimal paths for autonomous agents moving in inhomogeneous environments” ICAR ‘97Monterey, CA, July 7-9, 1997.

[10] Yi Li, Kamal Gupta and Shahram Payandeh, “ Motion planning of

multiple agents in virtual environment using co ordination graph” Proceedings of the 2005 IEEE International Conference on

Robotics and Automation Barcelona, Spain, April 2005.

[11] Chia-How Lin and Kai-Tai Song, Gary T. Anderson, “Agent Based Robot Control Design for Multi Robot Co-operation”.

[12] Gireesh Kumar .T, Vinodh. P. Vijayan, “A Multi –agent optimal

Path Planning Approach to Robotics Environment” International

Conference on Computational Intelligence and Multimedia Applications 2007 IEEE. pp. 400-404.

[13] cyberobotics, 2010, “Webots User Guide”, www.cyberbotics.com. [14] Telecom Italia Spa, "Java Agent Development framework",

[online]. Available: http://jade.tilab.com/.

[15] Bianca Innocenti1, Beatriz Lopez1, “Multi-Agent System

Architecture with Planning for a Mobile Robot” Agents Research

Lab. http://eia.udg.es/arlab.

References

Related documents

This effect is somewhat smaller but still signi fi cant throughout most of our models and involves increasing the odds of being reelected for those local governments which receive a

In this article, the discrepancy between the intended pedagogy and the reality of classroom instruction for teaching English as a foreign language in China was examined from

One of the major problems of foreign firms is that the consultancy concerning restructuring is separated from the companies' actual activity, (as is the case with

Initial HTML Form or URL Generated HTML Form Client 1 MATLAB Client n http daemon matweb matlabserver M-files Data Graphics Initial HTML Form or URL Generated HTML

Biller Details on invoicing party Element 1..1 XML composite InvoiceRecipient Details on invoice recipient Element 1..1 XML.. composite OrderingParty In case the

The Social Media presence of companies in the tourism industry becomes increasingly important and consumers see it as an extremely easy and transparent means of

Die navorsingstudie het die beleefde ervaringe van ‘n geselekteerde groep van vier vroue-adjunkhoofde in die Overberg Onderwysdistrik ondersoek. In Suid-Afrika en wêreldwyd

The sample for the second study included 72 Iranian students (34 females and 38 males) who reside in Iran, and in the third study the sample was composed of 66 Iranians (35 females