Skip to main content

AGENT platform for robot control in real-time dynamic environments

Page 1

ARTIGO TÉCNICO Nuno Sousa, Eugénio Oliveira LIACC - Laboratório de Inteligência Artificial e Ciência de Computadores Faculdade de Engenharia da Universidade do Porto

AGENT PLATFORM FOR ROBOT CONTROL IN REAL-TIME DYNAMIC ENVIRONMENTS ABSTRACT This paper describes a platform that enables a real robot control through a software Agent capable of learning, planning and navigating in a dynamic real-time environment. The Agent can be adapted to any mobile robot and creates a two-dimensional representation of the world that is used for navigation and path planning. Current implementation supports two environments: a simulated robot environment and a real world environment with a four legged walking robot. Our main contributions include: adapting BDI agents to real-time requirements and an algorithm to build a two-dimensional representation of that environment. Keywords: Agents, Algorithms, Control, Learning, Navigation, Path planning, Real-time, Robots, Sensor fusion

1. INTRODUCTION

2.1. Service Oriented Architecture

Although concepts akin to today’s robots go back to 450B.C. (Wikipedia, 2006), robots nowadays still haven’t delivered the promise of that companion that would help us in our daily lives. Today’s robots are heavily used in the industry but they still fall behind the initial vision of creating an artificial human. In fact, despite all the advances in Behavioural, Navigation and Path Planning techniques, commercial robots sold today do not provide basic capabilities like navigation and path planning without relying on devices that are installed in their operating environment. This limitation prevents robots from being used effectively in Dynamic Real-Time Environments like our own houses.

The platform proposed uses a Service Oriented Architecture. This type of architecture has been highly valued in the recent past and has a simple key concept: functionality should be split into several Services that work as a team. This means that there will be services that provide services to others, services that built on other services and even services that collaborate. The main purpose of this division is to ensure service isolation and clearly defined interfaces between the services. Having this isolation makes it possible to distribute the service by several systems. Having a clearly defined interface makes it possible to swap the implementation of a service without having any impact on services that are using it.

In recent years we saw the beginnings of an industry that develops what are called Entertainment Robots. Although these robots are targeting the average person, they have been taken by Universities worldwide as a hardware platform on which new techniques can be investigated and tested.

A Service Oriented Architecture makes it possible to swap out services in order to improve the platform or simply to support a new type of robot. It also makes it possible and easy to test each service individually. This is highly important since one of the goals of the platform is to be adaptable to any robot. To achieve this the platform provides a mechanism to develop and test the interface with a new robot without having any other service running that might, either interfere with the tests, or simply cause entropy when the goal is to develop an interface with the hardware.

These robots are real world implementations of solutions to many problems faced when creating a robot, but the problems solved are mainly physically related. Solutions for high level problems like path planning are not provided in these commercial solutions. In fact most investigation projects that use these robots rely on artificial landmarks for navigation and path planning. A platform is proposed that can turn a robot into an Agent that not only has Navigation and Path Planning capabilities but that can also create a representation of the environment were it was inserted using only the sensors available on the robot. This platform builds upon existing Artificial Intelligence concepts and techniques for Navigation and Path Planning but uses an innovative technique in order to build a model of the environment.

To simplify the process of developing the interface with a new robot a Toy Service is provided by the platform (see Fig. 1). This service depends exclusively on the service that provides the interface with the robot’s hardware in order to turn the robot into a simple toy, that is, a robot that: 1. moves forward; 2. stops moving forward and starts turning when it gets close to a wall and, 3. resumes its forward motion when no walls are in its way.

2. THE PLATFORM The platform is described incrementally. First the Software Architecture chosen is presented, followed by the technique used to abstract the robot’s hardware. The adaptations made to the Belief, Desire, Intention Agent Architecture in order to be used by a Real-Time environment are presented next, continuing with the technique used to build the Agent’s Model of the World, ending with the Navigation and Path Planning techniques.

[16]

robótica

Figure 1 . Platforms Services and their dependencies


The platform provides a Graphical User Interface to support inspection of the Agent’s internal structures. This interface displays the state of the abstract robot interface, a two-dimensional representation of the World Model and a view of the robots Intentions, Actions and resources in use.

it not only allows others to use it but to enhance it and give back to the community. The platform’s implementation of the interface towards the AIBO uses the Tekkotsu framework. There are several reasons behind this choice: 1. Tekkotsu already provides a high level walking control that is used for the platforms Motion Controller, 2. Tekkotsu is C++ event driven code unlike Sony’s proposed Open-R solution and, 3. Tekkotsu supports the creation TCP/IP sockets using the AIBO’s Wifi card. These sockets are used to communicate between the robot and the agent. The proposed platform should provide the major ground and low-level work needed to turn a robot into an agent. Using the platform the low-level work needed to create a world model, plan movements in this model and navigate in the model is already provided. The platform also provides the grounds needed to build a Belief, Desire, Intention agent. With this platform, robot’s can be deployed into unknown environments and build their own model of that environment incrementally. It is no longer necessary to install devices that are used as guides or landmarks in the environment. This fact opens the possibility to use a robot in environments thatcan not be changed to support the robot.

Figure 8 . Screen shot of the World Model display provided by the platform

5. FUTURE WORK For the Abstract Robot Interface a graphical display draws the robot’s abstract representation and the state of its parts. When the robot interface reports that a part has been moved the display is updated to display the state reported by the interface. The World Model display shows the World Cells, the robot and the last processed Scan. The World Cells are represented using a colour coding: known areas are represented using white and unknown areas in gray. The borders of the cells are also represented with colours: walls are shown as red lines, frontiers in blue and passages in green. The last processed Scan borders are colour coded with the same rule as the World Cells borders but are represented as dashed lines. The state of the robot is also displayed, including the state of its movable parts.

The platform has to be tested with different robots to verify how well it adapts to a new robot. Even though the platform is being tested both in a simulated environment and a real world environment, tests in a real world environment using a different robot would provide insights into the platforms solutions. Path planning techniques described here do not take into consideration risk taking procedures. It seems to be a logical step for the robot to verify if there is a passage nearby to the target position even if it involves passing through an unknown part of the environment. This risk taking procedures have been excluded from the platform as they require further analysis. A possibility is to use Emotion Simulation techniques to control the agent risk taking behaviour.

3.1. Simulated Environment A simulated environment was also built for the platform. Its main goal is to support building and testing the agent in simulated environment before testing it in the real environment. This solution makes it possible to clear the main problems from the agent’s implementation before testing it with the real robot. This separation should be sufficient to distinguish between problems that are purely software related from problems that concern adapting to a specific robot.

REFERENCES Arkin, Ronald C. (1989). Navigational path planning for a vision-based mobile robot. In: Robotica. Vol. 7. Cambridge University Press. Bratman, M. E. (1987). Intentions, plans, and practical reason. Harvard University

Press: Cambridge, MA. Likhachev, Maxim (2005). Anytime dynamic a*: An anytime, replanning algorithm.

The support for a Simulated Environment can be used to build agents that exist only in purely simulated environments. This can be used to develop agents that will use robots that still haven’t being implemented as physical devices, a functionality that can be used by robot development teams that develop their control software and the robot’s hardware simultaneously.

3.2. Sony’s AIBO in the Laboratory To test and demonstrate the platform a robot interface was implemented towards Sony’s AIBO four legged robot. (Tira-Thompson, 2004) proposed a framework for rapid development of robots called Tekkotsu. Since then the framework has been continuously developed by a community of Carnegie Mellon University investigators. Since Tekkotsu’s has an open source license

[20]

robótica

In: Proceedings of the International Conference on Automated Planning and

Scheduling (ICAPS). Tira-Thompson, Ethan (2004). Tekkotsu: A Rapid Development Framework for Robotics. PhD thesis. Carnegie Mellon University.

Wikipedia (2006).

AGENT PLATFORM FOR ROBOT CONTROL IN REAL-TIME DYNAMIC ENVIRONMENTS

3. IMPLEMENTATION


Turn static files into dynamic content formats.

Create a flipbook