Goal Directed , State and Behavior based Navigation Algorithm for Smart “ Robosofa ” Furniture

The object of our work was to create a control system for the intelligent furniture “RoboSofa” with a goal to navigate its way through a known environment to the target in the shortest possible time. The target can be preset by a human using various input modalities or remote control devices. The additional environmental scanning and image recognition (location markers) were implemented. In order to solve the “Robosofa” localization and navigation problem, the data fusion (from sensors) was performed. This information was combined with a-priori knowledge of the environment to estimate the “Robosofa” device’s position and send commands to the actuators for movement. To perform successful locomotion, obstacle avoidance task – one of the most important aspects of mobile robotics must be solved. Whereas the “Robosofa” has sensors and actuators, reacts to the environment and has the objective, it can also be defined as a “robotic” device.


Introduction
The object of our work was to create a control system for the intelligent furniture "RoboSofa" with a goal to navigate its way through a known environment to the target in the shortest possible time.The target can be preset by a human using various input modalities or remote control devices.The additional environmental scanning and image recognition (location markers) were implemented.
In order to solve the "Robosofa" localization and navigation problem, the data fusion (from sensors) was performed.This information was combined with a-priori knowledge of the environment to estimate the "Robosofa" device's position and send commands to the actuators for movement.To perform successful locomotion, obstacle avoidance task -one of the most important aspects of mobile robotics must be solved.Whereas the "Robosofa" has sensors and actuators, reacts to the environment and has the objective, it can also be defined as a "robotic" device.

Position estimation and navigation techniques in indoor environments
Tracking techniques, such like odometer readings or other dead reckoning methods, keep track of the position of a mobile robot while it is navigating in the environment.These techniques have a serious weakness cause the position estimates are based on earlier positions.Due to this, the techniques accumulate errors from sensors and wheel slippage, the error in the estimates increases over time, and periodical recalibration procedures are required.Other techniques use different types of environment features as easily and reliably recognizable objects [1,2].
For path planning or navigation landmarks [3] can be used.Mata M. et al. in their paper [4] describe a visionbased landmark learning and recognition system for use in mobile robot navigation tasks.The proposed system uses Genetic Algorithms (GA) for learning and recognition processes.The strongest point of their proposed system is ability to learn new landmarks with a very little human intervention.The recognition system can read text inside the landmarks.According to the authors this learning ability has been tested with two very different landmarks that have been successfully used for indoor topological robot navigation.There is a possibility to use the objects of the environment as landmarks, with the perception algorithms designed specifically for each object.Beccari et al. [5] describe a series of motor and perceptual behaviors used for indoor navigation of the mobile robot.Walls, doors and corridors were used as landmarks.
Cassinis et al. [6] argue that localization is one of the fundamental problems in mobile robot navigation and present a study on a new methodology aimed at localizing a mobile robot in indoor and outdoor environments using active markers and commercial off-the-shelf webcams.They propose marker detection system based on the difference of working frequencies of the shutter of a webcam and of a signal from the marker.The system relies on the recognition of an active marker by a vision system.In this system the traditional placement of sensors and markers are reversed, i.e. the marker is on the robot and the sensors are placed in a fixed location.Computation can take off-board the robot, relieving its processor from the burden of image processing and coordinates computation.
Other researchers describe an algorithm for indoor mobile robot navigation using a wireless sensor network [7].In their navigation system, a robot can navigate autonomously without the need of a map, a compass, or GPS.They use only several sensor nodes with ultrasonic sensors.Sensor nodes are deployed in an indoor environment and each sensor node has routing paths to all available destination-nodes through flooding.Measuring the distance from one sensor node after another along the routing path, the mobile robot moves towards the direction of the shortest distance and finally comes the destination.
The validity of the proposed algorithm has been illustrated by many experiments.
Obstacle avoidance is one of the most important aspects of mobile robotics.Without it the robot movement would be very restrictive.There are many techniques that can be used for obstacle avoidance.The best technique depends on a specific environment and what equipment is available.Usually the robots must maneuver in dynamically changing environment.They have to cope with uncertain, incomplete or approximate information.Moreover they have to identify sudden perceptual situations to maneuver in real time.Harmut et al. in their paper describes a fuzzy rule based system approach for controlling the movement of an autonomous mobile robot "MORIA" [8].Difficult guiding and controlling properties of the robot were achieved by combining the local actions and global strategies within the fuzzy controller.Different behaviors and perceptions were detected with the help of fuzzy rules and stored in the fuzzy state variables.These state variables activate different fuzzy rule sets which in turn change the behavior of the fuzzy controller.Obstacle avoidance can be realized using various techniques.The simplest way is to use If-Then rules [9].Parameters of intelligent control system based on the If-Then rules can be found using Evolutionary Algorithms.More flexible system can be designed using a Fuzzy Logic [10].In this case there is the same problem on how to find the parameters for optimal control in quick enough time period.Usually Evolutionary Algorithms are not very fast.Much faster way to train the device to circuit the obstacles is the usage of Artificial Neural Networks [11] and human expert knowledge and skills [12].
One of the most advanced and fastest growing ways to control technical equipment and devices, including robots [13], is to control them by scanning data directly from brain signals.Neuro-robotics will serve particularly well for people whose limbs are amputated.They will be able to control not only domestic appliances, but also their prosthetic limbs.Such control methods are investigated by many neuro-robotics specialists [e.g.14; 15] but these methods are still deemed too expensive.

Our approach
We have used learned behaviors method for going round the obstacle from the left and the right sides for a device control.These behaviors have been trained in the previous experiments [16].Path planning problem in this case is still not solved.The algorithm and movement of device was modeled on a two wheel drive Khepera2 robot.
Our task was formulated like so: the device has to go through in-sequence numbered target points -bases.Device moves only in 2D space.The device receives information in which direction to go in order to achieve the next goal point (Fig. 1).The device also receives information about its direction in 2D space.The information angle α is calculated between the device's direction and the direction of the target point which must be reached.According to that information the device should be targeted where to go.Then the device would obtain this information from a programmed robot tracking system (RTS).
The RTS system mimics a GPS, only in a localized area.This system is based on webcam, which sends visual information to the computer.Visual treatment is carried out with a help of red markers that are on the device in order to determine where the device is and what its direction is.The coordinates of the objective points (e.g.black dots on the floor) were specified manually at the beginning of the experiment.In reality, the equivalent task could be illustrated like so: the commanding officer gives a soldier the task to go to the particular destination.The soldier, in accordance of the device's evidence, which shows the direction to the target point, has to go to that location.Traveling soldier himself has to decide how to overcome the obstacles met on the road: marshy areas, ditches, rivers etc.
In the proposed intelligent control system device does not "know" its position coordinates.In addition our device has no prior information about the obstacles on its way towards the target point.The device finds out about the obstacles only during the approach and captures them by its infrared proximity sensors (IRPS).The schema of this intelligent control system algorithm is depicted in figure 2.
Upon the detection of an obstacle the device then checks whether it interferes with a movement towards the target point.If it does not, the device continues to drive towards the target point.If the obstacle does not allow the device to move towards the target point, the intelligent control system makes a decision which side the robot must go around the obstacle.This decision is taken using a device's six front sensors (Fig. 1).The decision is taken in this way: if a sum of 1, 2, and 3 sensor values is greater than the sum of 4, 5 and 6 sensor values, then the device turns right in order to begin to go round an obstacle from the left.Otherwise, the device turns left so that it could begin to go around from the right.Thus, the device makes decision to move the direction where the lower sensor values are located.Of course, this path is not always the shortest because the device does not know all the detailed map information.While the device goes round the obstacle from the left or the right it continuously checks if it is already a time to complete the tour and to continue moving towards the target point.When the device reaches a goal point, the RTS shows the direction to the next target point.
where O is output of the ANN.O 1 is speed of the left wheel and O 2 is speed of the right wheel of the device.Function f(x) is transfer function of ANN (in our case a log-sigmoid).v is a weight matrix between hidden and output layers, and w is a weight matrix between input and hidden layers.v 0α and w 0α are biases of output and hidden layers.x is input vector -values of IRPS.These behaviors have been trained using the expert guided autonomous mobile device on-line learning technique [17].The states of the control system were used to switch the behaviors.
The following states of the intelligent control system were used: 1. To move to the target point using information about directions and infrared proximity sensor data; 2. To rotate to the direction of the target point; 3. To prepare to move leaving the obstacle on the left; 4. To circuit the obstacle keeping it on the left; 5. To prepare to move leaving the obstacle on the right; 6.To circuit the obstacle keeping it on the right.The following behaviors of the intelligent control system were used: 1. To go to the target point when there is no obstacles which impede to go directly to the target point; 2. To circuit the obstacle keeping it on the right; 3. To circuit the obstacle keeping it on the left.Some sample trajectories of autonomous mobile device's path controlled by our control system are shown in Fig. 4. In a moving field five goal points were noted.The device was set to go round them in a numerical order.Having reached the fifth base, the device is re-routed to the first.The device circuits 10 times.The Fig. 4a illustrates a field with simple obstacles that the device can very easily circuit.In a field shown in Fig. 4b, the device traveling from the third to the fourth base or from the fifth to the first base falls into a local deadlock.Trapped in a local deadlock the device applies the same action scheme as coming to an easily circuited obstacle.Nearing the wall, the device determines on which direction to make a circuit according to the data from infrared proximity sensors, and then the device turns to the right direction and begins to circuit an obstacle.From the illustrated trajectories we can see that the device has fulfilled its tasks to circuit all target points.In some way in different moving moments the device had different solutions from which side to circuit the obstacle.For instance, Fig. 4a shows that moving from the first to the second base the device circuited the obstacle from the left side eight times and two times from the right.Analogue situation is shown in Fig. 4b.Here, the device moving from the third to the fourth base circuited the obstacle eight times from the left and two times from the right.Decisions to circuit the obstacle not according the dominated trajectory were "taken" because the device approaching the obstacle has turned more to the one side than to the other or because the appropriate sums of meanings from 1 st , 2 nd , 3 rd and 4 th , 5 th , 6 th sensors (used for the turn decision making) were more or less equal and determined only by the deviations of the sensors data.

Conclusions and discussions
The object of our research was to create a control system for the intelligent furniture "RoboSofa" capable of navigating its way through a known environment to the target in the shortest possible time.A behavior and state model based system was created.The experimental results done on the small Khepera2 robot shown, that the device was able to drive to all target points even when it felt into a local deadlock.The proprietary, modular algorithm ensured an uninterrupted control of the prototype.
The tracking system was based on a computer vision using webcam.For real larger "Robosofa" device -the tracking system will be more advanced.It will be equipped with a few cameras in different locations (rooms) also there will be a camera on the "RoboSofa" itself and the visual markers on ceiling or vertical surfaces.Currently the life size device is being evaluated in our laboratory.This article presents a navigation system for the intelligent furniture of the "RoboSofa" project capable of navigation through a known environment and reaching the target in the shortest possible time.The target can be set by human being using various input modalities or remote control devices.The additional environmental scanning and image recognition (location markers) features were implemented in this solution.Our solution works by performing the data fusion gathered from sensors.This information is combined with a-priori knowledge of the environment to estimate "Robosofa" position and send commands to the actuators for movement.The main goals described were to solve one of the most important aspects of mobile robotics -to perform successful locomotion, obstacle avoidance task.The Khepera2 based mobile test platform controlled based on proposed control system effectively avoids obstacles and reliably reaches the target point.Ill.4, bibl.17 (in English; abstracts in English and Lithuanian).Straipsnyje pristatoma navigacijos sistema, skirta pagal projektą "RoboSofa" kuriamiems išmaniesiems baldams.Aprašomi tyrimai, kaip nuvažiuoti nežinomą maršrutą žinomoje aplinkoje trumpiausiu laiku.Tikslą gali nustatyti vartotojas, naudodamas įvairias įvesties modalijas arba nuotoliniu būdu.Taip pat buvo įdiegti aplinkos skenavimo ir vaizdų atpažinimo algoritmai.Įranga veikia analizuodama sensorių teikiamus duomenis.Ši informacija sujungiama su a priori žiniomis, siekiant nustatyti įrenginio poziciją ir perduoti komandas valdikliams.Svabiausias tikslas buvo išspręsti pagrindinius robotikos navigacijos uždavinius: efektyviai apvažiuoti kliūtis ir greitai pasiekti tikslą."Khepera2" pagrindu sukurta mobilioji testavimo platforma efektyviai apvažiavo įvairios formos kliūtis arba jų išvengė ir patikimai pasiekė numatytas pozicijas.Il. 4, bibl.17 (anglų kalba; santraukos anglų ir lietuvių k.).

Fig. 1 .
Fig. 1.The device's movement to the target point

Fig. 2 .
Fig. 2. The schema of goal directed, state and behavior based control algorithm for our autonomous mobile deviceThe proposed intelligent control system has six states and three behaviors.The behaviors for the device are trained or they simply are programmed by hand.Artificial Neural Network (ANN) shown in Fig.3is the base of behaviors rounding the obstacle on the left or on the right.

Fig. 3 .
Fig. 3.The structure of the ANN used in the experimentsThe function of ANN depicted in Fig.3is equivalent to(1)

Fig. 4 .
Resulting traces when the autonomous mobile device was controlled by goal directed, state and behavior based intelligent control system