Abstract
The objective of this paper is to propose a robust obstacle avoidance method for service robot in indoor environment. The method for obstacles avoidance uses information about static obstacles on the landmark using edge detection. Speed and direction of people that walks as moving obstacle obtained by single camera using tracking and recognition system and distance measurement using 3 ultrasonic sensors. A new geometrical model and maneuvering method for moving obstacle avoidance introduced and combined with Bayesian approach for state estimation. The obstacle avoidance problem is formulated using decision theory, prior and posterior distribution and loss function to determine an optimal response based on inaccurate sensor data. Algorithms for moving obstacles avoidance method proposed and experiment results implemented to service robot also presented. Various experiments show that our proposed method very fast, robust and successfully implemented to service robot called Srikandi II that equipped with 4 DOF arm robot developed in our laboratory.
1. Introduction
Service robot will become an important part of our everyday lives. A typical application is a service robot that should recognizes people and obstacles in indoor/outdoor environment and accomplishes a specific task given by a user. Navigation and moving obstacles avoidance in dynamic and real-world environments for service robot is a complex and challenging task. The robot should maneuvers to avoid obstacles and also reach the goal in an optimal manner. This will lead to demand for robust algorithm for localization, collision free detection and autonomy of service robot (Qing-Xiao Y. et al., 2010; Borenstein J. et al., 1991; Cuesta F., 2005).
During the recent years, many techniques has been developed in order to carry out efficient robot obstacles avoidance using recent sensor data (Masehian E. et al., 2007; Oka F. et al, 2003). General obstacle avoidance can be accomplished with several sensors including vision, sonar, or laser. Potential Field Method (PFM) and Virtual Force Histogram (VFH) for obstacle avoidance have gained increased popularity in the field of mobile robots (Chatib O., 1986; Borenstein J., 1991). PFM is an attractive approach to collision avoidance because of its simplicity and efficient implementation. However, the complexity of tasks that can be implemented using the approach is limited and inherent limitations such as no passage between closely spaced obstacles, oscillations in the presence of obstacles and in narrow passages.
In a cluttered environment, the robot may become trapped at local minima in the resultant potential field, these occur when the attractive forces of the goal are balanced by the repulsive forces due to the presence of obstacles. VFH also have shortcoming that the result is sensitive to threshold and expensive hardware because using histogram grid world model that is updated by rapidly firing 24 sensors around the robot during motion (Borenstein J., 1991). Another drawbacks is PFM and VFH didn't provide complete mechanism for vision based obstacles avoidance and maneuvering for service robot. Obstacle avoidance methods based on ultrasonic sensors must account for the sensor's shortcomings, such as inaccuracies, crosstalk, and spurious readings, so combination of vision and ultrasonic sensors for this research considered, because they are important sensors for face recognition and tracking system and distance measurement for vision-based service robot.
The main challenge for development of service robot is to accurately detect moving obstacles in the landmark. Moving entities must be identified and their future position needs to be predicted over a finite time (Lidoris G. et al., 2008). Due to sensor limitations, the robot can observer only small part of its environment and these observations are corrupted by noise. By integrating successive observations, a map can be created, but since the motion of the robot is subject to error, the mapping problem also comprises a localization problem.
The system for mobile robot to detects moving obstacles in order to gradually stop the robot to avoid collision without maneuvering around obstacle already proposed in (Li Y., et al, 2005), the system uses polar mapping to simplify the segmentation of the moving object from the background. Predictive control of robot velocity to avoid obstacles in a dynamic environments using Hierarchical Partially Observable Markov Decision Process (POMDP) proposed in (Oka F., et al., 2003), in this method, the robot can choose to move at three different speeds: slow, normal and fast.
Bayesian techniques provide a powerful statistical tool to help manage measurement uncertainty and perform multisensor fusion and identity estimation. The advantages of probabilistic robotics are able to accommodate imperfect sensors, robust in real world applications and best known approach to many hard robotics problem. Using sensory information to locate the robot in its environment is the most fundamental problem to providing a service robot with autonomous capabilities (Thrun S., 2006).
Based on literatures obtained by the authors, many research in development of service robot such as (Acosta L. et al., 2006 and Qing-Xiao Y. et al., 2010) that providing basic service such as ordering, fetching and sending food, settlement and so on for customers in the robot restaurant. But there is no flexible and robust obstacles avoidance and maneuvering method for service robot in indoor environment exposed. In previous paper, we already proposed a novel method for static and moving obstacles avoidance for vision-based service robot, but it was using predefined maneuver (Budiharto W. et al, 2010).
The contribution of this paper is the introduction of a new method for navigating and maneuvering to avoids moving obstacle that very fast and suitable for service robot in indoor environment. Bayesian decision theory proposed to determine the optimal response for the robot based on inaccurate sensor data. Our system consist of a single camera which obtains frontal view for object tracking and recognition system and static obstacle detection, compass and 3 ultrasonic sensors for distance measurement. The system easy to be reconfigured if the environment changed. This is presented in Section 2 and 3. Finally, results from the implementation of the proposed method and algorithms on the service robot Srikandi II, that is depicted in Fig 1, are presented in section 4.

Vision-based service robot called Srikandi II developed and used in this research equipped with 4 DOF arm robot. The camera has a 640×480 pixel resolution. Compass sensor, 3 ultrasonic sensors used as additional sensor for distance measurement and Laptop for image processing (Budiharto, W. et al., 2010).
2. Kinematics Of Wheeled Service Robot
We developed a vision-based service robot called Srikandi II that able to avoid static and moving obstacles, this wheeled robot is next generation from Srikandi I (Budiharto. W. et al, 2010). A mobile robot involving two actuator wheels is considered as a system subject to nonholonomic constraints. Consider an autonomous wheeled mobile robot and position in the Cartesian frame of coordinates shown in fig. 2, where

Proposed Cartesian representation of robot, moving obstacle and goal.
Finally, the linear velocity
Camera as a vision sensor have limitation in angle area for capturing object. We defined θ
θ
We using recursive Bayes decision rule and loss function for deciding the best action for robot (manuevering or stop) that will be described in detail in section 3.2. The speed of moving obstacle
Fig. 3 shown below is an architecture of service robot Srikandi II that utilizing single camera, compass and distance sensors. Because this robot need to recognizes and tracks people, many supporting functions developed and integrated such as face recognition system, static and moving obstacles detection, moving obstacle tracking and Bayesian Filtering, to make the robot robust and reliable. We developed efficient Faces database used by Face recognition system for recognizing customer. There is interface program between Laptop for coordinating robot controller. 4 DOF arm robot with predefined motion used for giving a cup to customer when robot arrived at goal position. 1 master controller used for coordinating actuator and communication with the laptop and another controller used dedicated for distance measurement. In our previous research, Srikandi II implements path planning for the shortest path based on using Dijkstra algorithm(Dijkstra, 1959).

General architecture of service robot Srikandi II. Hardware and software parts are separated by the dashed line. All arrows indicate dataflow.
3. Proposed Method
3.1. Moving obstacle avoidance Method
In this paper, we proposed a new method for maneuvering robot whereas the robot detects static and moving obstacle and predicts that collision will occurred as shown in fig. 4. This method is combination of static and moving obstacles detection using vision and ultrasonic sensors. Information about static obstacle obtained when robot start to running. Images from the landmark captured and stored in .jpg file and program will scanning the images for find the free area used by robot for running. At the end of program, the path from start to goal position obtained. The next step is detection and face recognition to identify the customer. Moving obstacle information obtained when robot detects and tracks the people walks in front of robot periodically every 500ms and distance of moving obstacle obtained using 3 ultrasonic sensors periodically every 100ms.

Flow chart of obstacles avoidance and state estimation of moving obstacle using Bayesian decision rule for service robot from start to goal position.
We introduces a new geometrical model for moving obstacle avoidance. The proposed model for maneuvering moving obstacle shown in our model in fig. 5 below:

Model of maneuvering method for moving obstacle avoidance. This show that robot maneuvers to avoids collision with moving obstacle smoothly based on calculation of direction, velocity and distance between robot and moving obstacle.
The constant of collision angle denoted as
And if
If
3.2. State Estimation using Bayesian
Bayesian decision rule probabilistically estimate a dynamic system state from noisy observations. Bayes filters represent the state at time
At each point in time, a probability distribution over
This posterior is the probability distribution over the state
This probability distribution is often referred to as prediction in the context of probabilistic filtering (Thrun S., 2006). To apply Bayesian decision theory for obstacle avoidance, we consider the appearance of an unexpected obstacle to be a random event. The probabilistic information in
If we want service robot should stay on the path in any case, strategies to avoid moving obstacle include:
Maneuver, if service robot will collides.
stop, if moving obstacle too close to robot.
Then, we restrict the action space denoted as A as:
We define a loss function
Then, based on the posterior distribution in (21), we can compute the posterior expected loss of an action (Hu. H et al., 1994):
For implementing the above method, we proposed algorithm obstacles avoidance for service robot that run from start to goal position, giving a cup to customer and going back to home as shown below.
4. Experimental Results and Discussion
Experiments of obstacle avoidance has been tested for navigating service robot to delivers a cup in our lab. 4×5meters as a simulation of indoor environment. Face tracking and recognition based on eigenspaces with 3 images per person used and databases for the images have been developed (Budiharto, W., 2010). For maneuvering the robot, we setup the experiment to ensure that moving obstacle will collides with robot, we use parameters shown in Table 1:
Variables used in our experiments.
The procedure of experiment can be described here. First, robot will capture the landmark and processing the images to obtain static obstacles and start-goal position as shown in fig. 6, then robot will detects if the customer available or no, if the customer exist, program will detects and tracking moving obstacles. We use upper body features for moving obstacles detection from OpenCV library, frontal face features used for customer's detection and camshift method for tracking. Robot continuously measures the distance of obstacle and send the data to Laptop. Because the limitation of area, people as moving obstacle only walk straight in front of robot and approach to robot. The speed of robot limited to 3 condition, low speed is 0.1 m/s, normal speed is equal to 0.2m/s and fast is equal to 0.3 m/s.

Result of simulation for service robot for detecting static obstacles using CANNY edge detection and path planning from start to goal position. Line from start to goal as a guidance for robot to moves.
For estimating the direction of moving obstacles, we use tracking and motion history method as shown in fig. 7. These methods better than optical flow method that very sensitive and difficult to calculating the speed.

Detecting and tracking moving obstacle and direction identification of movement (a) and motion history with the direction of movement in red line indicated that the people walk approach to robot (b).
If there is was no moving obstacle, robot run from start to goal position in normal speed. If moving obstacle appeared and collision will occurred, robot will maneuver to avoids obstacle, and the turning angle and speed varied based on Eq. 8–10. To calculate the Bayes decision, suppose:
where
Then, we calculate the posterior distribution :
Then, we calculate the posterior expected loss for
Definition of loss function
Based on (29) and (30), we see that
Figure shown below is result of static and moving obstacle avoidance and maneuvering for service robot in our experiments.

Result of experiment for obstacle avoidance for service robot. It shown that robot succesfully avoids static and moving obstacle while reaching the goal position.
In general, the proposed method has been successfully implemented and shows good performance. 3 ultrasonic sensors satisfied to detect and measure the distance of moving obstacle continuously. Noise or imperfect distance measurement still give expected action for robot to maneuver smoothly. As indication of the fast performance of our method and algorithm is the sampling time
Obtain 3 sonar information from the sensor controller
Calculating the moving obstacle distance
Calculate the speed command
Determine the action
Communicate with the motion controller for send speed and steer command.
On Laptop Intel Atom 1.6 GHz and 1 GB RAM,
5. Conclusion
This paper presents a robust obstacles avoidance method for service robot in indoor environment. Geometrical model for moving obstacle avoidance and algorithms for static and moving obstacle proposed then implemented to service robot. Integration of vision and ultrasonic sensors proved applicable as main sensors for service robot. Experimental results with various situations have shown that the robot reaches the goal points while avoiding moving obstacle with the proposed method, and does not have limitation of improving the complexity the system as the changes of environment. The Strength of the maneuvering method proposed shown good performance for moving obstacle avoidance. Bayesian decision rule implemented for state estimation makes this method more robust because the optimal solution for avoiding obstacles is obtained by trading between maneuver and stop action. Our future work will focus on the navigation system and arm capabilities for giving a cup to customer using stereo vision.
