Abstract
Introduction
A large number of robots have been developed to work in critical environment, such as, space, ocean bottom, power plants, as well as, in the fields of clinical medicine, hazard prevention, etc., and researchers continue to design robots with greater capabilities to perform more challenging and comprehensive tasks (Hirose et al., 1986; Ooka et al., 1986; Cruse et al., 1994; Chen et al., 2002a; Habib, 2003a). There are many ways for a robot to move across a solid surface in which wheels, crawlers, and legs were common options for the available robots. The application fields of such robots are naturally restricted, depending on the condition of the ground.
Wheeled mobile robots are mechanically simple, easy to construct, easy to implement a controller, dynamically stable in general, and they are ideal for operation on level and hard surfaces. When the surface is rough and has projections and depressions with dimensions that are greater than the diameter of the wheel or when the surface is soft, resistance to the movement increases drastically and their function as transport machines is almost lost, which leads to poor performance. The crawler type locomotion mechanisms have traverse ability higher than that of the wheel, but its control is hard and the dead-reckoning is difficult to realize, though it is possible to move on different terrains.
In order to have good mobility over uneven and rough terrain a legged robot seems to be a good solution because legged locomotion is mechanically superior to wheeled or tracked locomotion over a variety of soil conditions and certainly superior for crossing obstacles. The path of the legged machine can be (partially) decoupled from the sequence of footholds, allowing a higher degree of mobility. This can be especially useful in narrow surroundings or terrain with discrete footholds (Raibert, 1986; Hirose, 2001). However, creating and controlling a legged machine that is powerful enough, but still light enough is very difficult. Legged robots are usually slower and have a lower load/power ratio with respect to wheeled robot. Autonomous legged robots have distinct control issues that must be addressed. These problems are amplified when the robot is small with an on-board controller that is purposely simple to accommodate weight and expense restrictions. The kinematics and dynamics of legged robots are nonlinear, while robot parameters, such as center of mass position, amount of payload, etc. are not known exactly and might also vary (Nishikawa et al., 1998). In addition, it is difficult to estimate states of the system (Pugh et al., 1990). The system might be unstable without control, and the goal of keeping balance is difficult to be decomposed into actuator commands. A legged system has a lot of degrees of freedom in which a high motion performance and ground adaptation ability on irregular terrain can be demonstrated. In order to allow a completely decoupled motion over irregular terrain, at least three degrees of freedom per leg are required. Two joints would be enough to place the foot in any desired position, and with the third joint, the robot can climb over much larger obstacles relative to its size and also can climb a slippery hill that a leg with two joints can not perform. But, this will result in using 12 actuators for a four-legged robot, which yields to increase weight and control complexity compared to six actuators for a traditional industrial manipulator (Waldron et al., 1984). Contact forces, in general, only allow pushing the feet into the surface, not pulling. This directly limits the total downwards acceleration that can be applied to a walking machine. This initiates a challenge to investigate the technical problems involved in the realization of a robot that uses legs to navigate in difficult, partially unstructured and unknown environments.
Autonomous robots operating in an unknown and uncertain environment have to cope with dynamic changes in the environment. Hence, enable a robot to navigate successfully to goals while avoiding both static and dynamic obstacles is a challenging problem for mobile robots in general and for legged robots in specific. There is a large body of work devoted to the navigation of wheel-based mobile robots. Some common approaches are odometry, inertial navigation and landmark navigation. The progress made so far in the design of legged robots has been mostly in the areas of leg coordination, gait control, stability, incorporation of various types of sensors, etc. But what is missing in most of these robots is some perception-based high-level control that would permit a robot to operate with a measure of autonomy. Legged mobile robots do not require avoiding all obstacles by altering the path in the obstacle avoidance task as in the case of wheeled and crawler robots. Because legged robots have the ability to step over and onto obstacles in their path depending on the obstacle configuration and the current state of the robot, they are uniquely suited to overcoming these difficulties. However, many existing navigation planning methods fail to consider these additional capabilities, because they were primarily designed for wheeled mobile robots.
The navigability of an autonomous multi-legged system is a crucial element of its overall capabilities (Go et al., 2006). The design of algorithms to compute robust goal-directed navigation strategies for legged robots is an important area of research. The basic difference between path planning for legged robots and mobile robots is that for mobile robots the path is continuous, while for legged robots it is not. In addition, the ability to follow a particular trajectory also depends on the design of the legged robot, i.e., a path planning method that may work for one type of legged robot may not work efficiently for all other types of legged robots. Navigation planning for legged robots via foot placement planning has enabled several walking type robots to traverse various environments autonomously. The available planning approaches for legged robots can be classified based on how much details are considered during the planning process. One category of planning approaches uses every detail in solving the navigation problem. This involves solving a giant motion planning problem for all degrees of freedom of the robot (Hauser et al, 2005); Kallmann et al, 2004; Kuffner et al, 2002). However, the high computational cost becomes a critical problem for locomotion. Another category of planning systems have used local planning that allows the robot to adjust its gait locally in response to the type of terrain (Bares & Wettergreen, 1999; Hodoshima et al, 2004; Krotkov et al, 1991). In addition, another category of planning approaches ignores all the details of the legs, and treats the robot as a wheeled robot than can be steered within its environment. In general, global navigation strategies for mobile robots aim to search for a collision-free path in a 2D environment. These techniques have been applied to legged robots, resulting in conservative global navigation strategies. However, this always forces the robot to go around obstacles rather than using the ability to traverse obstacles by stepping over or onto them. Other approaches build action models trying to simplify the planning problem. One action model uses straight sequences of footsteps to the edges of obstacles similar to a visibility graph, combined with turning in place and stepping-over actions to cross through obstacle-filled environments (Chestnutt et al, 2004).
Biological systems have a tightly integrated action perception cycle. Hence, for walking robots, to realize their full potential, distal environment sensing must be tightly integrated with the walking cycle. Distal sensing is crucial to allow anticipatory gait adjustment to accommodate varying terrain. Close coupling of the visual and locomotor cycle can lead to rapid, adaptive adjustment of the robot (Lewis, 2002). This problem is even more difficult when the robot is unable to generate accurate global models of the obstacles in its environment. Determining an optimal navigation policy without this information can be difficult or impossible. A legged mobile robot is a free roving collection of functions primarily designed to reach a target location. Equipping robots with more sensors increases the quantity and reliability of information the robot can extract from its environment to support robot's intelligent behavior (Ferrell, 1994). In order to facilitate flexible obstacle detection and avoidance techniques, it is necessary to acquire the 3-dimensional (3D) information about the surrounding environment. Generally, 3D information is acquired through external sensors, such as binocular cameras, ultrasonic sensors (Ohya et al., 1997), laser range finders, etc. However, a high computational cost is required to analyze 3D information because the binocular camera needs to process two frames from two cameras (Okada et al., 1999, Okada et al., 2003). In addition, although the ultrasonic sensor can accurately measure the distance to an object, there is a difficult problem in determining the azimuth. Therefore, it remains a challenging task to build a robust real-time obstacle avoidance system for a robot using vision data.
Quadruped Robot and Behavior based Solution for Obstacle Avoidance
It is well known that the autonomous walking of a quadruped robot depends on not only the implementation of the locomotion but also the navigation control. Although there are a lot of works published on the implementation of the locomotion in the rough terrain for quadruped robots, few works can be recognized on the adaptive navigation in a cluttered environment. In this paper, a quadruped walking robot TITAN-VIII (Arikawa & Hirose, 1996; Hirose & Arikawa, 2000) has been used as a platform to test and demonstrate the development and implementation of a behavior selection based obstacle avoidance algorithm (See Figure 1.(a)). TITAN VIII is a walking machine that has four modular legs. The leg mechanism is composed of a planar 2 degrees of freedom link-wire mechanism and a rotating mechanism which rotates the planar. Hence, this leg mechanism has 3DOF. One of the characteristics of this leg is usage of wire and pulley driving system within the leg. The feet of TITAN VIII can be used also as wheels in order to achieve faster motion on flat surfaces. TITAN VIII walks in a walking posture jutting out its legs to each side. This is standard walking posture of TITAN VIII. In such a walking posture, good energy efficiency can be achieved (Arikawa & Hirose, 1996; Hirose & Arikawa, 2000). An ART-based Fuzzy controller for the adaptive navigation of a quadruped robot has been developed (Chen et al., 2002b), and then different type of sensors has been integrated with the robot to support its navigation (Yamaguchi et al., 2002a; Yamaguchi et al., 2002b). Visual and ultrasonic sensors have been integrated with the quadruped robot. The aim of these sensors is to detect and acquire 3D information of obstacles along the path of the robot. The first sensor was the USB camera. The camera was fixed at the front side of the robot body (See Figure 1.(b)). In addition, three ultrasonic sensors have been used and configured at the tip of each of the front legs (See Figure 1.(c)).

Quadruped robot and the sensors used
The obstacle is roughly measured by processing the image acquired through the USB camera, and the ultrasonic sensors are used to complement the visual information in relation to obstacle and to perform the selection of the suitable actions at the right time. In order to facilitate this process, a set of behavioral actions is decided, designed and implemented. Currently, the main actions in the list include: default, detour, striding, and climbing-over obstacles actions. Thus, fusing information through the use of different and multiple sensors separately according to the situation and obtaining the information necessary for obstacle avoidance can support the right decision to select the suitable set of actions to avoid obstacles in real-time.
The size of an obstacle within the environment of the robot is measured by ultrasonic sensors and a USB CCD camera. The maximum measurable distance of the ultrasonic sensor is about 600 [mm]. The image resolution of the camera is set to 320 × 240 [pixel], and the specification of the camera is listed in Table 1. The camera is mounted on the front of the robot body.
Specification of USB camera
Specification of USB camera
The measurement model between a camera and an obstacle in top view is shown in Fig. 2. The parameter definitions relevant to the top view are listed in Table 2.

Camera model in top view
Physical parameters of camera model in the top view
The obstacle width
where
In an exploratory experiment, the acquisition range
Next, parameters in a vertical direction are defined as listed in Table 3 and the corresponding side view is shown in Fig. 3.

Camera model in side view
Physical parameters of the camera model in the side view
The obstacle height is calculated by using parameters defined for the vertical direction, such that
where
and
In an exploratory experiment, the acquisition range
If the obstacle shape is assumed to be a rectangular parallelepiped, then the obstacle depth can be obtained by a perspective method. The perspective is the art of making some objects or people in a picture look further away than others. The concept of perspective is shown in Fig. 4, where

Concept of perspective to calculate the obstacle depth
The raw colored image is first converted into the shade (or gray scale) image and further converted into the monochrome image by image binarization. Then, the 3D size information of obstacle is calculated based on the perceived number of surfaces of the obstacle. The flow of this process is illustrated in Fig. 5.

Flow of image data processing
When the acquired image has only the front surface of an obstacle as shown in Fig. 6, the width
where the image point (

Image of one surface
When the acquired image includes the front and top surfaces as shown in Fig. 7, the width
using the image coordinates for apexes P1, P3 and P4.

Image of two surfaces
In this case, the vanishing point V(
Then, the depth
When the acquired image includes the front, the top and the side surfaces as shown in Fig. 8, the width
using the image coordinates for apexes P1 and P4. In this case, the height of the rear surface is the distance between the points P2 and P3, and the width of the rear surface is the distance between the points P2 and P5.

Image of three surfaces without any lacking of parts
Let us consider a situation where a part of the obstacle is not reflected in the acquired image, which is shown in Fig. 9.

Image of three surfaces with the lacking of parts
In this situation, the width and the height of the front surface are defined as
In this case, the vanishing point V is the point that the straight line passing through the points P1 and P3 intersects the straight line passing through the points P2 and P6. In this situation, the width of the rear surface for the obstacle is defined as the distance between the point P2 and the intersection point at which the horizontal line passing through the x coordinate of point 2 and parallel to the line passing through the points P4 and P6, intersects the straight line passing through the points V and P4. The height of the rear surface is the distance between points P2 and P3.
Primitive actions with different level of abstraction have been designed and implemented to support formulating the behavior of a robot using a combination of these actions. In general, the description of an action set can have the following form,
where
where
In this research, the gait of the quadruped robot is selected to be an intermittent crawl gait (Tsukakoshi et al., 1996). The leg order in one cycle is 4th leg, 2nd leg, 3rd leg and 1st leg. In this paper, the
where Δ
The following subsections describe the core actions, which enable the robot to avoid obstacle at different circumstances.
The default action
where the unit of
The process sequence of the developed striding action The robot approaches an obstacle up to the distance in which the robot can stride the obstacle, Front legs of the robot stride the obstacle, Rear legs of the robot approach the obstacle, and then Rear legs of the robot stride the obstacle.
Climbing-over Action: A3
The process sequence of the developed climbing-over action The robot approaches an obstacle up to the distance in which the robot can climb the obstacle, Front legs of the robot climb the obstacle, Rear legs of the robot approach the obstacle, Rear legs of the robot climb over the obstacle, Front legs of the robot get off the obstacle, and then Rear legs of the robot get off the obstacle.
Detour Action: A4
The detour action The robot approaches an obstacle up to the distance in which the robot can avoid it, The robot moves to side as the crab walking up to the distance in which the robot can avoid the obstacle, and then The robot moves forward up to the distance in which the robot passes the obstacle.
Action Selection
Autonomous intelligent systems are characterized by the fact that they select one from a set of equivalent action alternatives in a given situation as appropriate (Habib, 2003b). Hence, it is important to develop a navigation strategy with efficient action selection mechanism. Currently, the authors have implemented a rule based logical flow to support the selection of a suitable action according to perceived relation between the robot and the detected obstacle. Brief listing of the rule based logical flow is shown below,
where
Experimental Results
Experiments have been conducted to prove that the designed set of action modules enables the robot to recognize and avoid obstacles in real-time under different situations. The selected gait of the robot during the experiments was an intermittent crawl gait. In addition, a unit cycle has been used to illustrate the total time required to perform each action. A unit cycle represents the time required for moving each of the four legs of the robot once according to the pattern of the selected gait. However, the total number of cycles depends on the environment and the type of the available obstacles. The following subsections highlight the experimental results and achievements.
Striding Action
This experiment aims to demonstrate a striding action. The observed robot behavior was described by the following set of actions,
The results obtained through this experiment illustrate the ability of the robot to perform the striding action successfully. Figure 10 shows the tips of left side legs of the robot, i.e., the 1st and 3rd legs, didn't have any contact with the obstacle during the avoidance. In addition, Figure 11 shows the z positions for the tip of the 1st leg. The time performance for executing the set of actions above as illustrated by Figure 11 is shown below,

Experimental result of striding action

Tip of 1st leg in the experimental result of striding action
Action
Thus, the total number of cycles is 5 + 6 + 4 = 15cycles.
The climbing-over action has been demonstrated in this experiment, and the observed robot behavior was described by the following set of actions,
The robot has performed the climbing-over action successfully. The experimental results are illustrated in Figure 12, in which it also highlights the case where the tips of left side legs of the robot didn't have any contact with the obstacle at anytime during swing phase.

Experimental result of climbing-over action
Figure 13 shows the z positions for the tip of the 3rd leg. The results illustrate a contact point between the obstacle and the tip of the robot leg during a support phase while climbing-over. The time performance for executing the set of actions above as illustrated by Figure 13 is shown below,

Tip of 3rd leg with a climbing-over action
Action
The observed robot behavior during the execution of the detour action was described by the following set of actions,
The experimental result of a detour action is shown in Fig. 14. The results show none of the robot's legs tips did have any contact with the obstacle during the avoidance. The time performance for executing the set of actions as stated above is,

Experimental result of detour action
Action
Action
Thus, the total number of cycles is 5 + 15 + 3 = 23 cycles.
An experiment was demonstrated to verify the effectiveness of the present approach in case of having multiple obstacles crossing the path of the robot. The successful experimental results with two obstacles are shown in Fig. 15 and Fig. 16. The set of actions that has been selected to formulate the intended behavior is shown below,

Experimental result of detour and striding action
During this behavior, the robot approaches the first obstacle with action

Tip of 2nd leg with a detour and striding action
Action
Action
Action
Thus, the total number of cycles is 2 + 16 + 5 + 7 + 2 = 32 cycles.
The set of actions that has been selected to formulate this behavior is as follow,
Successful experimental results have been achieved to avoid two obstacles and it is shown in Fig. 17 and Fig. 18 respectively. During the execution of this behavior, first, the robot activates the default action

Experimental result of detour and climbing-over action

Tip of 1st leg in the experimental result of detour and climbing-over actions
Action
Action
Action
Thus, the total number of cycles is 4 + 19 + 5 + 9 + 3 = 40 cycles.
This paper presented a robust approach to the design of a set of behavioral actions with a strategy that adapt robot actions to the local terrain during legged navigation planning. The developed navigation and obstacle avoidance algorithm has the capability to use a combination of primitive actions to formulate a set of high level behaviors, which supports quadruped robots navigation. The developed algorithm enable the robot to select the suitable behavior in real-time to avoid obstacles based on sensory information through visual and ultrasonic sensors utilizing the robot's ability to step over obstacles, and move between surfaces of different heights. These adaptive action models have been applied to a quadruped robot with very promising results, allowing these robots to successfully and reliably navigate environments.
Future Work
Intelligent systems should exhibit emergence property that is not designed into any of its individual subcomponents. In order to make these systems adaptable to various situations and type of goals to be pursued in the world, it is necessary to dynamically select behaviors and to change their respective priority to make the system behave appropriately according to the situations it encounters in the real world.
Since behavior modules take part at different levels of the control hierarchy, an efficient action selection mechanism should be devised to deal with scheduling, management, coordination and communication between modules constituting behavior based systems so that coherent behavior can be achieved. Learning to select appropriate actions is still an open challenge in terms of real-time performance, complexity of task and the environment dynamics. Under certain situations the action set of a robot may not have the action required to support the transition from a particular state. In such a case, it is necessary that the robot has the ability to the new action to the set in order to fulfill the need to recover from that situation.
