+ All Categories
Home > Documents > Komputer

Komputer

Date post: 31-Jan-2016
Category:
Upload: muhammad-taufik-firmansyah
View: 5 times
Download: 0 times
Share this document with a friend
Description:
komputer
Popular Tags:
16
Mobile Robot Navigation using a Behavioural Strategy P. Nattharith School of Mechanical and Systems Engineering Newcastle University Abstract This paper addresses the issue of mobile robot navigation in an indoor environment. In the system, an obstacle is defined as any object which prevents the mobile robot from achieving its goal. The robot needs to detect and avoid these objects and make its way to the desired location. Hence the robot’s behavioural ability in avoiding obstacles becomes a major issue, along with its ability to plan a path to its goal. The collision avoidance behaviour is a strategy which the mobile robot will adopt to prevent it from hitting obstacles as well as maintaining its track to its goal. In the proposed work, a hybrid architecture is adopted. It combines two components: a deliberative architecture and a reactive architecture which is based upon the motor schema. Several perceptual and motor schemas are employed in order to facilitate both the aspects of global and local navigation. The deliberative planning creates the safe path using a wavefront algorithm. It is then passed to the reactive module in terms of a series of waypoints. These are treated as immediate subgoals and are used to form behaviours leading the mobile robot to achieve its goal without experiencing any collision within an optimum travel distance and reasonable amount of time. High level processing of the data will be undertaken as part of the overall behavioural and path planning strategies, which will require significant consideration and design in order to implement them as part of a Player/Stage architecture. Key words: Mobile robot navigation, Mobile robot architectures, Player/Stage architecture, Wavefront algorithm, Motor schema. 1. Introduction Autonomous navigation requires an intelligent control system including a deliberative architecture for global path planning and a reactive architecture for local real-time obstacle avoidance. Global techniques require a complete model of the robot’s environment in order to create a safe path from its starting point to its goal. However it is not appropriate for a dynamically varying environment. On the other hand, local methods place more emphasize on real-time obstacle avoidance than creating an optimal solution. A combination of these two systems has been able to improve the overall robot’s performance and results in a type of hybrid architecture, which includes high level path planning, combined with low level obstacle avoidance.
Transcript
Page 1: Komputer

Mobile Robot Navigation using a Behavioural Strategy

P. Nattharith School of Mechanical and Systems Engineering

Newcastle University

Abstract This paper addresses the issue of mobile robot navigation in an indoor environment. In the system, an obstacle is defined as any object which prevents the mobile robot from achieving its goal. The robot needs to detect and avoid these objects and make its way to the desired location. Hence the robot’s behavioural ability in avoiding obstacles becomes a major issue, along with its ability to plan a path to its goal. The collision avoidance behaviour is a strategy which the mobile robot will adopt to prevent it from hitting obstacles as well as maintaining its track to its goal. In the proposed work, a hybrid architecture is adopted. It combines two components: a deliberative architecture and a reactive architecture which is based upon the motor schema. Several perceptual and motor schemas are employed in order to facilitate both the aspects of global and local navigation. The deliberative planning creates the safe path using a wavefront algorithm. It is then passed to the reactive module in terms of a series of waypoints. These are treated as immediate subgoals and are used to form behaviours leading the mobile robot to achieve its goal without experiencing any collision within an optimum travel distance and reasonable amount of time. High level processing of the data will be undertaken as part of the overall behavioural and path planning strategies, which will require significant consideration and design in order to implement them as part of a Player/Stage architecture. Key words: Mobile robot navigation, Mobile robot architectures, Player/Stage architecture, Wavefront algorithm, Motor schema.

1. Introduction Autonomous navigation requires an intelligent control system including a deliberative architecture for global path planning and a reactive architecture for local real-time obstacle avoidance. Global techniques require a complete model of the robot’s environment in order to create a safe path from its starting point to its goal. However it is not appropriate for a dynamically varying environment. On the other hand, local methods place more emphasize on real-time obstacle avoidance than creating an optimal solution. A combination of these two systems has been able to improve the overall robot’s performance and results in a type of hybrid architecture, which includes high level path planning, combined with low level obstacle avoidance.

Page 2: Komputer

In this paper, path planning and navigation of a mobile robot moving around a simulated environment are described. The following sections provide a brief description of the path planning and navigation issues for mobile robots, and detail the mobile robot architectures and Player/Stage architecture. The further sections describe the design of a behaviour based hybrid architecture that is adopted, followed by some results of how a simulated mobile robot plans the path and navigates around its environment. The system utilizes a path planner containing a wavefront algorithm combined with the potential field method [1, 2] for the obstacle avoidance, as well as odometry system which is used to maintain all possible robot positions. The path planner ensures that the robot maintains a safe distance from the obstacles, while finding an optimal path from each position to the next. Simulated experiments reveal that this system can safely and effectively navigate the mobile robot around a designated environment. 2. Mobile Robot Navigation Path planning and navigation are the key research issues in mobile robotics. Path planning and navigation algorithms comprise two categories, namely global navigation and local navigation. The global navigation problem deals with the navigation on a larger scale in which the robot can not observe its goal from its initial position. In most cases, the robot uses a pre-specified map to plan its path as well as to determine its location in the environment. This solution allows the robot to achieve its distant goals which are specified according to the global map. The local navigation problem, on the other hand, deals with the navigation over short distances or from point to point, where the main focus is one of obstacle avoidance. Local navigation allows the robot to move in its environment and to reach local goals without collisions. 2.1 Global Path Planning using Wavefront Algorithm The wavefront algorithm involves the breadth first search technique, searching along the horizontal plane of the graph, beginning at the start point propagating out until it reaches the goal point. A grid of squares is created from the map using an appropriate size of square. Each square is initialized to a numerical value of 0. Squares known to contain a physical object or part of an object are assigned a numerical value of 1. The goal point is then identified and allocated a value of 2. To create the wavefront values, any squares which surround the goal point are given a higher number depending on how close they are to the goal point. A value of 3 is assigned to the squares adjacent to the goal point, with the value of 4 assigned to the squares adjacent to those squares having a value of 3, and so on. Once the start point is assigned a numerical value, the algorithm then proceeds to select the lowest value square nearest the start point. It is marked as a waypoint. Then the algorithm moves to the selected square and selects the nearest square having the lowest value. It is also marked as the waypoint. The sequence is repeated until the goal point is reached. This creates the safe path, in terms of a series of waypoints, from the start point to the goal point. However, some waypoints can be eliminated if the path from the previous waypoint to the next waypoint does not cross through the obstacle. Therefore, the algorithm can iteratively eliminate some waypoints and it is repeated until

Page 3: Komputer

no other waypoint can be eliminated. Figure 1 displays an example of the wavefront values. 2.2 Local Obstacle Avoidance using Potential Field Method This section describes an obstacle avoidance technique, namely a potential field method [1, 2]. In this method, obstacles exert a repulsive force, while the target applies an attractive force to the robot. A resultant force vector, comprising the sum of a goal-directed attractive force and repulsive forces from obstacles, as shown in Figure 2, is calculated for a given robot position [3]. With the resultant vector, as the accelerating force acting on the robot, the robot’s new position for a given time interval is calculated, and the algorithm is repeated until the robot reaches its goal. 3. Mobile Robot Architecture The mobile robot architecture is the process of taking information about the environment through the robot’s sensors, processing it as necessary in order to make decisions about how to act, and executing action in the environment. The complexity of the environment has a direct impact on the complexity of control, which is directly related to the robot’s task. Although there are many ways to program a robot, there are fundamentally three classes of the mobile robot architectures. The first one is a deliberative architecture, also called the sense-plan-act approach, which emphasizes on planning. The mobile robot senses the world, plans its next action, and then acts. All sensor data are gathered into a global world model and at each step the robot explicitly plans the next move. The second type is a reactive architecture or the sense-act approach. The mobile robot has multiple instances of sense-act couplings. Each tightly couples between sensory input and effector outputs. This architecture typically involves no intervening reasoning to allow the mobile robot to respond very quickly to the dynamically varying and unstructured environment to achieve its task. The third type is a so called hybrid architecture which integrates the previous two architectures. The mobile robot first plans how to best decompose a task into subtasks and what suitable behaviours to accomplish each subtask. Sensor data are passed to each reactive module and are also available to the planner module for construction of a global world model. Figure 3 displays three classes of mobile robot architectures. A recent trend in robotic architecture has been a focus on the behaviour based architecture, where the system contains various behaviours, some of which are emergent. This system is characterized by tight coupling between sensors and actuators. These couplings are simultaneous processes, called behaviours, which acquire the sensor data and compute the best action to perform independently of what the other behaviours are doing. The mobile robot will either select only one output behaviour from several active behaviours, or combine these behaviours to produce a result. These two approaches are called arbitration and fusion, respectively. Command arbitration is a process of selecting one behaviour from multiple candidates while command fusion is a process of combining multiple candidate behaviours into single output behaviour.

Page 4: Komputer

Subsumption architecture, introduced by Brooks [4], is the best known system for behaviour based architecture. It is built up from layers of interacting finite-state machines, connecting sensors to actuators directly. These layers are called behaviours. Subsumption has an arbitration mechanism that enables higher level behaviours to override signals from lower level behaviours. Another popular example of behaviour base architectures is Arkin’s motor schema [5]. It generates response vectors based on the outputs of the perceptual schemas. Motor schema has a fusion mechanism which is used to combine the generated response vectors in a manner similar to a potential field method [1, 2]. Figure 4 displays two popular examples of behaviour based architecture. 4. Player/Stage Architecture Play is an open-source software tool for robot and sensor applications. It is a network oriented device server [6]. The Player server is a distributed device server that provides clients with network-oriented programming interfaces to access the robot’s actuators and sensors, and includes a collection of device drivers for many popular robot hardware devices. Client programs use proxy objects, defined in a Player client library, to write and read data to and from the desired devices. Player employs a one-to-many client/server style architecture where one server serves all clients of a robot’s devices. Accompanying Player is the robot simulator Stage, which allows programmers to control virtual robots navigating inside a virtual environment. Stage simulates a population of mobile robots, sensors and objects in a two-dimensional bitmapped environment. It is designed to support research in autonomous systems. Stage is most commonly used as a Player plug-in module, providing populations of virtual devices for Player. Users write robot controllers and sensor algorithms as clients to the Player server. Player clients which are developed using Stage will work with little or no modification with the real robots and vice versa. Thus Stage allows rapid prototyping of controllers destined for real robots. It also allows experiments with realistic robot devices. Various sensors and actuators are provided, including sonar, scanning laser rangefinders, vision, and odometry. Player/Stage was developed primarily under Linux; however, it also runs on other UNIX variants such as Solaris and FreeBSD that support TCP socket mechanisms and under Windows with Cygwin [7]. The client programs can be implemented in any language such as C, C++, TCL, Java and Python. 5. Behaviour Based Hybrid Architecture The majority of behaviour based architectures reported in the past can be generally categorized into two main groups depending on their behaviour action-selection mechanism. The behaviour arbitration mechanism [4] handles one behaviour at a time, while the command fusion mechanism [2, 3] handles multiple behaviours at a time. The arbitration mechanisms are suitable for competitive behaviours, while the command fusion techniques are appropriate for cooperative behaviours [8]. Two main problems observed with the behaviour arbitration are instability [9] and starvation [10]. Instability arises when the control of the robot alternates between two behaviours and starvation occurs when the behaviour does not gain control of the robot for a long time. The

Page 5: Komputer

command fusion mechanism partially removes these problems by activating all behaviours at the same time. Motor schema [3, 5] is a popular command fusion technique in the mobile robot navigation, where the robot’s task is decomposed into specific motor schemas, also called behaviours. The vector summation of those motor schemas is treated as the coordinated action for the robot to achieve its task. A block diagram of behaviour based hybrid architecture is shown in Figure 5. It is the combination of two components: deliberative planning and reactive control. Deliberative planning that generates an optimized path based on the model of the working environment is at the top level. The behaviour based controller executes the plan in a reactive manner. All modules of the system are designed, tuned and evaluated independently, and are joined by a set of intermediate module. A short description of each module is given below. Planner module processes the two-dimensional world map of a given environment to generate a safe path through the modelled obstacles. In the laboratory the physical dimension of the environment is 15 x 25 m. In image plane, it is 600 x 1000 pixel, where each pixel is mapped to a physical dimension of 25 x 25 mm. For global path planning, the navigation is assumed in configuration space, i.e. obstacles are grown by an amount equal to the width of the robot. The wavefront algorithm was adopted to generate a collision free path between the start position and the desired position of the robot. The output of the wavefront algorithm is a series of waypoints which are then passed down to an intermediate module. After the intermediate module returns a successful flag for the final waypoint indicating that all waypoints have been reached, the planner module will declare the mission a success and the robot control algorithm will stand by to await the next instructions. If there is no further mission, the algorithm will stop. Intermediate module accepts a series of waypoints from the planner module and passes them, one at a time, to a reactive module for execution. The intermediate module also regularly checks to see if the robot has reached its current waypoint destination. If it has, the reactive module then returns a successful flag for the current waypoint indicating that it has been reached, and the intermediate module then sends down the next waypoint. Reactive module creates two motor schemas using the robot’s sensory data and a series of waypoints from the upper module. The schemas are defined as follows; go_to_waypoint – this behaviour uses the information from the odometry system for localization. The perceptual schema for this behaviour is a series of waypoints received from the intermediate module while the motor schema generates an output vector that directs the robot towards the current waypoint (see Figure 2). This output vector is a unit

vector, also called the attractive force ( ). The robot’s visitation at each waypoint ends when it gets within the so called distance tolerance ( ), e.g. 1 m of the waypoint. However, this condition is not used for the final waypoint, i.e. the goal, where the robot’s

tF

td

Page 6: Komputer

task is completed when the distance tolerance is reduced to 0.5 m of the goal. The attractive force is given by [1];

∧∧∧ −+

−= y

tdyy

xtdxx

F ttt )()(

00 (1)

where = distance between robot and its goal. )(td = goal coordinates. tt yx , = robot’s current coordinates. 00 , yx avoid_obstacle - this behaviour uses the robot’s sonar sensor array to avoid obstacles. The perceptual schema for this behaviour is the detection of the nearby obstacles in the direction of the motion of the robot. The motor schema for this behaviour is the generation of an output vector giving the direction and magnitude of motion that directs

the robot away from any detected obstacles (see Figure 2). This output vector ( ) is a unit vector directed to the sum of the repulsive forces generated by each obstacle point ( ). Each repulsive force ( ) is inversely proportional to the square of the distance between the obstacle and the robot such that;

rF

ji yx , F

⎪⎩

⎪⎨

>

≤⎥⎦

⎤⎢⎣

⎡ −+

−=

∧∧

0

000

2

),(0

),(),(),(),(

1),(

djidif

djidifyjidyy

xjidxx

jidjiFji

(2)

where = distance between robot and obstacle point . ),( jid ),( ji = distance of influence of the object. 0d = obstacle point coordinates. ji yx , = robot’s current coordinates. 00 , yx In Equation 2 [1], the obstacle exerts a strong repulsive force when it is in the immediate vicinity of the robot, and a weak repulsive force when it is further away from the robot. The resultant repulsive force, ( ), which is the vector sum of the individual forces from all obstacle points, is given by;

rF

∑=

jir jiFF

,),( (3)

Then, the unit vector ( ) is defined as; ∧

rF

r

rr F

FF =∧

(4)

Page 7: Komputer

Behaviour coordination module receives control vectors from individual behaviours and fuses them into a single control behaviour ( R ). The output of the behaviour coordination module is given by [11];

i

n

i

ii

n

iF

β

1

1

=

=

⋅∑= (5)

where iβ = behaviour coefficients corresponding to individual schemas.

iF = unit vector of individual schema which is active at the time. The objective of the behaviour coordination module is also to generate the appropriate values for a set of behaviour coefficients, [ ]iβ , to satisfy each motor schema. Translator module receives the resultant vector from the behaviour coordination module and produces the actual control commands. Two control variables completely define the output behaviour of the robot; the translation velocity command ( ), and the steering rate command (Ω ) where [12];

v

[ ]δθ )(−=Ω k (6)

where = proportional constant for steering (in seck -1). θ = robot’s current direction (in degree).

δ = resultant vector’s direction (in degree) The is a specially defined operator for two operands [12] which provides the shortest rotational difference between

)(−θ and δ . Therefore, Ω is always in the range of

. °<<°− 180180 c 6. Modelling and Simulation using Player/Stage Architecture In order to estimate the capability of the proposed work for expressing useful tasks, several algorithms have been evaluated. The Player/Stage simulator [6] was used to conduct the experiments to confirm that the robot can successfully plan the path, wander around its environment, visit each waypoint and finally reach its goal without collisions. 6.1. Experimental Results of Path Planning Algorithm Although the Player/Stage simulator includes a planner proxy, called a wavefront driver, it can not be executed on a physical mobile robot unless the robot’s localization system is established in the laboratory. At this time the mobile robot currently only uses its odometry system for localization which is not accepted as an input by the planner proxy. All experiments, using the planner proxy, were conducted with the ideal localization on

Page 8: Komputer

the Player/Stage simulator. Therefore, the planning algorithm was developed for that reason for using on the Player/Stage simulator as well as for further implementation on the physical mobile robot. The purpose of the experiment is to create the safe path from the robot’s current position to its goal. The experiment revealed that the path planning algorithm works for any given reachable goal location. If the algorithm is given an unreachable goal location, it will state this fact and be able to recognize this unreachable goal. The goal could be unreachable because it is inside the obstacles or it is behind the wall, with no access. The algorithm was tested for a range of different goal positions and that it could plan the path to each reachable goal in the laboratory. Table 1 shows the outputs of the path planning algorithm, in terms of a series of waypoints, from the different start positions to the different goal positions. The x,y coordinates of the Docking area, Room1, Room2, and Room 3, as shown in Figure 6, are (0, 0), (3, 5), (12, 5), and (6, -6), respectively. The prohibited areas are also shown in Figure 6, where and represent the prohibited area A and B. The results also revealed that the waypoints did not occur in any prohibited areas on the map as shown in Table 2. Figure 6 displays the outputs of the path planning algorithm, with a series of waypoints from the different start positions to the different goal positions.

Start Goal No. of waypoints Waypoints

Dock Dock Dock Room 1 Room 1 Room 1 Room 2 Room 2 Room 2 Room 3 Room 3 Room 3

Room 1 Room 2 Room 3 Dock Room 2 Room 3 Dock Room 1 Room 3 Dock Room 1 Room 2

2 4 3 2 6 5 4 5 6 3 4 6

(2.6, 0.8), (3, 5) (12,0), (12.7, 1.3), (12.4, 3.7), (12, 5) (4.8, -1.1), (5.1, -3.1), (6, -6) (2, 0.7), (0, 0) (3, 0.7), (3.4, 0.2), (12.2, 0.2), (12.7, 1.3), (12.4, 3.7), (12, 5) (3, 0.7), (3.4, 0.2), (4.8, -1.5), (5.1, -3.1), (6, -6) (12.7, 3.5), (12.5, 1), (9.6, 0.2), (0,0) (12.7, 3.5), (12.5, 1), (9.6, 0.2), (2.8, 0.2), (3, 5) (12.7, 3.5), (12.5, 1), (9.6, 0.2), (4.8, -1.1), (5.1, -3.1), (6, -6) (4.5, -3.1), (4.2, -1.3), (2.6, 0.3), (3, 5) (4.5, -3.1), (4.2, -1.3), (2.6, 0.3), (3, 5) (4.5, -3.1), (4.2, -1.3), (11.6, -0.8), (12.7, 1.2), (12.5, 3.7), (12, 5)

Table 1. Outputs of the path planning algorithm from the different start positions to the

different goal positions.

Start Goal No. of waypoints Waypoints

Dock Dock

Area A Area B

0 0

Path is unreachable. Path is unreachable.

Table 2. Outputs of the path planning algorithm in cases of the unreachable goals.

No claims about the optimality of the wavefront algorithm are made at this point, however, the experiments have shown that the algorithm plans acceptable path plans for the particular environment.

Page 9: Komputer

6.2. Experimental Results of Behaviour Based Hybrid Architecture In this section, the Player/Stage simulator was used to conduct the experiments. The purpose of the experiment is to navigate the robot to each position in the laboratory without experiencing any collision and to successfully get to within a short distance of its goal and a reasonable amount of time. All experiments, however, were conducted with the odometry system on the simulator. In the experiment, the following parameters are defined: start position, goal position, initial heading, behaviour coefficients, minimum and maximum speed, and distance tolerance for reaching waypoints and the goal (see Table 3). The initial parameters, however, might not be used in a real scenario because they are dependent on the physical dynamics of a real mobile robot.

Parameters Descriptions Start position (x, y) Goal position (x, y) Initial heading angle Attractive behaviour coefficient Repulsive behaviour coefficient Minimum speed Maximum speed Distance of influence of the object Distance tolerance

Docking Area: (0,0) Room 1: (3, 5) for Figure 7 Room 2: (12, 5) for Figure 9 Room 3: (6, -6) for Figure 8 θ = 0.0˚ βt = 1.0 βr = 2.5 v = 0.0 m/s v = 0.5 m/s d0 = 2.0 m dt = 1.0 m for reaching waypoint dt = 0.5 m for reaching goal

Table 3. Initialization of the robot control algorithm.

By using the developed behaviour based hybrid system, initialized with the parameters given in Table 3, the desired path and a series of waypoints are obtained, as shown in Figures 7 to 9, in which a series of waypoints are represented by dots on the Stage simulator. Figure 7 displays the robot’s trajectory with no obstacle along the robot desired path, while Figures 8 and 9 show the modified trajectory when the unexpected objects are placed along the desired path. As shown in Figures 8 and 9, the robot efficiently avoids the unexpected object using the avoid_obstacle behaviour, before resuming its desired path and continued moving to its goal. Figures 7 to 9 also demonstrate that the algorithm ensures the mobile robot tracks the desired path on the Stage simulator. The experiments demonstrated that the path planning algorithm safely navigated the simulated robot to each location in the laboratory. Figures 7 to 9 show that the robot did not collide into any wall or obstacle and did no harm itself or to the other objects when it moved throughout its environment. The results also show that the robot can effectively wander around the laboratory. It did not attempt to enter any prohibited area on the map and did not get lost or confused in any area.

Page 10: Komputer

7. Conclusion and Future Work Although the simulated robot was able to effectively navigate in the simulated experiments under the odometry system provided by the Player/Stage simulator, these experiments do not guarantee that the real robot will perform in the same way when the same experiments are conducted under real conditions, primarily because the simulated robot model does not include any of the robot dynamics, and the sensors are modelled as being ideal. Furthermore, the simulated environment was relatively uncluttered and did not contain other moving obstacles, such as humans or other robots that could have obstructed its performance. However, since the simulated environment was similar to the actual conditions in the laboratory, it is postulated that the robot will achieve an acceptable level of performance under real conditions. Future work consists of further developing the system’s components, designing a series of experiments to facilitate rigorous testing, and evaluation of the mobile robot so that it can undertake a number of specific tasks. Additional behaviours including laser_ovoid_obstacle, follow_wall, random_turn, wander, cross_door, escape_loop, and emergency_stop, will be designed, tuned and evaluated independently. They will be then added to the reactive module as part of the overall behavioural strategies. After that, the behaviour coordination module will be developed for automatically computing a set of behaviour coefficients, [ ]iβ , corresponding to the individual robot’s behaviours and its current environment state. Control techniques, especially fuzzy logic control, will be adopted at this stage as the possible means to develop such a module and optimize the robot behaviour. All behaviours will be multiplied by their behaviour coefficients and then combined to produce a single robot’s behaviour which will be evaluated and tested on the physical mobile robot under real conditions.

Page 11: Komputer

References 1. Siegwart, R. and I.R. Nourbakhsh, Introduction to Autonomous Mobile Robots. 2004. 2. Khatib, O., Real-Time Obstacle Avoidance for Manipulators and Mobile Robots. The

International Journal of Robotics Research, 1986. 5(1): p. 90-98. 3. Arkin, R.C., Motor Schema-Based Mobile Robot Navigation. The International

Journal of Robotics Research, 1989: p. 92-112. 4. Brooks, R.A., A Robust Layered Control System for a Mobile Robot. IEEE Journal of

Robotics and Automation, 1986. RA-2(1): p. 14-23. 5. Arkin, R.C., Motor schema based navigation for a mobile: An approach to

programming by behavior. Proceedings IEEE International Conference on Robotics and Automation, 1987. 4: p. 246-271.

6. Gerkey, B.P., et al., Most Valuable Player: A Robot Device Server for Distributed Control. Proceedings of the IEEE/RSJ Intl. Conf. on Intelligent Robots and Systems (IROS), 2001: p. 1226-1231.

7. Collett, T.H.J., B.A. MacDonald, and B. Gerkey, Player 2.0: Toward a Practical Robot Programming Framework. Proceedings of the Australasian Conference on Robotics and Automation (ACRA 2005), 2005.

8. Arkin, R.C., Behavior-Based Robotics. 1 ed. Bradford Book. 1998: MIT Press. 491. 9. Egerstedt, M., Behavior Based Robotics using Hybrid Automata. Proceedings of the

Third International Workshop on Hybrid systems: Computation and Control, 2000: p. 103-116.

10. Sahota, M.K., Action Selection for Robots in Dynamic Environments through Inter-behaviour Bidding. Proceedings of the Third International Conference on Simulation of Adaptive Behavior, 1994: p. 138-142.

11. Taliansky, A. and N. Shimkin, Behavior-Based Navigation for an indoor Mobile Robot. 21st IEEE Convention of the Electrical and Electronic Engineers in Israel, 2000: p. 281-284.

12. Borenstein, J. and Y. Koren, Real-time Obstacle Avoidance for Fast Mobile Robots. 1989 IEEE. Reprinted, with permission, from IEEE Transactions on Systems, Man, and Cybernetics, 1989. 19(5): p. 1179-1187.

13. Mataric, M.J., The Robotics Primer. 2007.

Page 12: Komputer

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1 1 1 1 1 1 1 1 1 1 1

1

1

1

1

1

11 1 1 1 1 1

1

1

1

1

1 1 1 1 1 1 1 1 1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1 1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1

1

1

1

1

1

1

1

1

1

1

1

1

11 1

2

54

3

3

3

3 44

44

4

4 55

5

5

5

5 66

6

6

6

6

6

7

7

7

7

7 7

7

7

8

8

8

8

8

8

8 8

8

9

9

9

9

9

9

9 9

9

10

10

10

10

10

10

10 10

10

11

11

11

11

11

11

11

11

1212

12

12

12

12

12

13

13

13

13

13

14

14

14

14

14

15

15

15

15

15

16

16

16

16

17

17

17

18

18

19

15

16

16

16

17

17

18

18

18

24 2325262728293031323335 3436373839404142434445464786

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

29 28 030 30 31 32 33 34 35 36 37 38

41 40 39 38 37 36 37 38 39 40 41

0 0 0 37 36 35 37 38 39 40

35 34

36

36 36 37 38 39

34 33

35

35 35 36 37 38

30 29 031 31 32 33 34

31 30 032 32 33 34 35

32 31 033 33 34 35 36

33 32 034 34 35 36 37

35 36 37 38 39 41

36 37 38 39 40 41

51 50 49 48 47 46 45 44 43 4261 60 59 58 57 56 55 54 53 52

55 64 55 54 53 52 51 50 49 48

58 57 56 55 54 63 56 55 54 53

57 56 55 54 53 62 57 56 55 54

56 55 54 53 52 61 58 57 56 55

55 54 53 52 51 60 59 58 57 56

59 58 57 56 55 54 53 52 51 50

57 56 55 54 53 52 51 50 49 48

56 55 54 53 52 51 50 49 48 47

55 54 53 52 51 50 49 48 47 46

47 46 45 44 43 42 41 40 39 38

46 45 44 43 42 41 40 39 38 37

45 44 43 42 41 40 39 38 37 36

50 49 48 47 46 45 44 43 42

49 48 47 46 45 44 43 42 41

48 47 46 45 44 43 42 41 40

54 53 52 51 50 49 48

53 52 51 50 49 48 47

52 51 50 49 48 47 46

41 40 39 38 37 36 35

40 39 38 37 36 35 34

39 38 37 36 35 34 33

53 52 51 50 49

60 59 58 57 56

61 60 59 58 57

62 61 60 59 58

63 62 61 60 59

64 63 62 61 60 59 58 57 56

58 57 56 55

66 65 64 63

57 56 55 54

58 57 56 55

61 60 59 58

62 61 60 59

55 54 53 52

56 55 54 53

59 58 57 56

60 59 58 57

61 60

64 63

65 64

62 61

63 62

59 58 57 5662 61 6063

52 51 5053 49 48 47

46 45 4447 43 42 41

47 46 4548 44 43 42

51 50 4952 48 47 46

50 49 4851 47 46 45

49 48 4750 46 45 44

48 47 4649 45 44 43

54

49

53

52

51

50

48

27 26 028 28 29 30 31

28 27 029 29 30 31 32

32 33 34 35 36

33 34 35 36 37

25 24 026 26 27 28 29

26 25 027 27 28 29 30

30 31 32 33 34

31 32 33 34 35

24 2325

22 2123

23 2224

20 1921

21 2022

27 2628

25 2426

26 2527

23 2224

24 2325

22 2123

22 2123

21 2022

24 2325

23 2224

1920

1819

2021

1920

2223

2122

26 2425

24 222327 2526

0 2625 27 2928 30 3231

17

19

20

21

33

34 33 32 31 30

39

38

37

36

35

34

37 36 3538

28

34

33

29

30

31

32

26

27

24

25

Start Cell Robot Path Goal Cell

x

y

Figure 1. Wavefront Values.

Page 13: Komputer

Figure 2. Potential field concept.

a) A diagram of a deliberative architecture.

b) A diagram of a reactive architecture.

c) A diagram of a hybrid architecture.

Figure 3. Three fundamental classes of mobile robot architectures [13].

Page 14: Komputer

a) Subsumption-based robot control architecture.

b) Motor schema-based robot control architecture.

Figure 4. Examples of the behaviour based architecture [8].

Planner Target (x, y, ө)

go_to_waypoint

avoid_obstacle

vector

vector

Odometry

Sonar

Reactive Module

[β] TranslatorΣ

outputvector

a series of waypoints status

Deliberative Module

Map

speed,turnrate

Behaviour Coordination Module

Intermediate Layer

next waypoint signal that waypoint is reached

Figure 5. The behaviour based hybrid architecture.

Page 15: Komputer

Figure 6. The outputs of the developed path planning algorithm.

Figure 7. The mobile robot navigates from Room 3 to Room 1.

Robot

Room 1 Room 1

Room 3 Room 3

Room 2Room 2

Docking Area Docking Area

Goal

waypoint 1

waypoint 2

waypoint 3

a) Robot and a series of waypoints. b) Robot reaches its goal.

Room 1 Room 1

Docking Area Docking Area

Robot Room 3 Room 3

Room 2Room 2

Goal

waypoint 1

waypoint 2

waypoint 3

Page 16: Komputer

Figure 8. The mobile robot navigates from Docking area to Room 3.

Figure 9. The mobile robot navigates from Docking area to Room 2.


Recommended