Command Fusion for Navigation of Mobile Robots in Dynamic Environments with Objects

  • cc icon

    In this paper, we propose a fuzzy inference model for a navigation algorithm for a mobile robot that intelligently searches goal location in unknown dynamic environments. Our model uses sensor fusion based on situational commands using an ultrasonic sensor. Instead of using the “physical sensor fusion” method, which generates the trajectory of a robot based upon the environment model and sensory data, a “command fusion” method is used to govern the robot motions. The navigation strategy is based on a combination of fuzzy rules tuned for both goal-approach and obstacle-avoidance based on a hierarchical behavior-based control architecture. To identify the environments, a command fusion technique is introduced where the sensory data of the ultrasonic sensors and a vision sensor are fused into the identification process. The result of experiment has shown that highlights interesting aspects of the goal seeking, obstacle avoiding, decision making process that arise from navigation interaction.


    Command fusion , Fuzzy inference , Intelligent control , Mobile robot , Navigation


    An autonomous mobile robot is an intelligent robot that performs tasks by interacting with the surrounding environment through sensors without human control. Unlike general manipulators in a fixed working environment [1,2], intelligent processing in a flexible and variable working environment is required. Robust behavior by autonomous robots requires that the uncertainty in such environments be accommodated by a robot control system. Therefore, studies on fuzzy rule-based control are attractive in this field. Fuzzy logic is particularly well suited for implementing such controllers due to its capabilities for inference and approximate reasoning under uncertainty [3-5]. Many fuzzy controllers proposed in the literature utilize a monolithic rule-based structure. That is, the precepts that govern the desired system behavior are encapsulated as a single collection of if-then rules. In most instances, these rules are designed to carry out a single control policy or goal. However, mobile robots must be capable of achieving multiple goals whose priorities may change with time in order to achieve autonomy. Thus, controllers should be designed to realize a number of taskachieving behaviors that can be integrated to achieve different control objectives. This requires formulation of a large and complex set of fuzzy rules. In this situation, a potential limitation to the utility of the single command fuzzy controller becomes apparent. Since the size of the complete single command rule-base increases exponentially with the number of input variables [6,7], multi-input systems can potentially suffer degradations in real-time response. This is a critical issue for mobile robots operating in dynamic surroundings [8,9]. Hierarchical rule structures can be employed to overcome this limitation by reducing the rate of increase to linear [1,10].

    This paper describes a hierarchical behavior-based control architecture. It is structured as a hierarchy of fuzzy rule bases that enables the distribution of intelligence amongst special purpose fuzzy-behaviors. This structure is motivated by the hierarchical nature of the behavior as hypothesized in ethological models. A fuzzy coordination scheme is also described that employs weighted decision making based on contextual behavior activation. Performance is demonstrated by simulation that highlights interesting aspects of the decision making process that arise from behavior interaction.

    First, this paper briefly introduces the operation of each command and the fuzzy controller for navigation system in Section II. Section III explains the behavior hierarchy based on fuzzy logic. In Section IV, the experimental results to verify the efficiency of the system are shown. Finally, Section V concludes this work and outlines possible future related work.


    The proposed fuzzy controller is as shown in Fig. 1. We define three major navigation goals: target orientation, obstacle avoidance, and rotation movement. Each goal is represented as a cost function. Note that the fusion process has a structure of forming a cost function by combining several cost functions using weights. In this fusion process, we infer each weight of the command by a fuzzy algorithm, which is a typical artificial intelligence scheme. With the proposed method, the mobile robot navigates intelligently by varying the weights depending on the environment and selects a final command to keep minimum variation of the orientation and velocity according to the cost function [11-15].

      >  A. Goal Seeking Command

    The orientation command of a mobile robot is generated as the nearest direction to the target point. The command is defined as the distance to the target point when the robot moves to the orientation, θ, and the velocity, v. Therefore, the cost function is defined as Eq. (1).


    where v is the vmaxk?|θcθ| and k represent the reduction ratio of the rotational movement.

      >  B. Avoiding Obstacle Command

    We represent the cost function for obstacle-avoidance as the shortest distance to an obstacle based upon the sensor data in the form of a histogram. The distance information is represented as a form of second order energy and represented as a cost function by inspecting it for all θ, as shown in Eq. (2).


    To navigate in a dynamic environment to the goal, a mobile robot should recognize the dynamic variation and react to it. For this, the mobile robot extracts the variation in the surrounding environment by comparing the past and the present. For continuous movement of a robot, the transformation matrix of a past frame w.r.t. the present frame should be clearly defined.

    In Fig. 2, the vector,


    is defined as the position vector of the mobile robot w.r.t. the {n-1} frame, and


    is defined as the vector w.r.t. the {n} frame. Then, we obtain the relation between




    as follows:




    is the rotation matrix from {n-1} to the {n} frame, and


    is the translation matrix from the {n-1} frame to the {n} frame.

    According to Eq. (3), the environment information measured in the {n-1} frame can be represented as w.r.t. the {n} frame. Thus, if Wn-1 and Wn are the environment information in the polar coordinates measured in the {n-1} and {n} frames, respectively, we can represent Wn-1 w.r.t. the {n} frame, and extract the moving object using Eq. (4) in the {n} frame.


    where nWn-1 represents Wn-1 transformed into the {n} frame.

      >  C. Minimizing Rotation Command

    Minimizing rotational movement aims to rotate the wheels smoothly by restraining rapid motion. The cost function is defined as the minimum at the present orientation and is defined as the second order function in terms of the rotation angle, θ, as in Eq. (5).


    The command represented as the cost function has three different goals to be satisfied at the same time. Each goal contributes differently to the command by a different weight, as shown in Eq. (6).



      >  A. Behavior Decision

    Primitive behaviors are low-level behaviors that typically take the inputs from the robot’s sensors and send the outputs to the robot’s actuator. This forms a nonlinear map between them. Composite behaviors make up a map between the sensory input and/or the global constraints and the degree of applicability (DOA) of the relevant primitive behaviors. The DOA is the measure of the instantaneous level of the activation of a behavior. The primitive behaviors are weighted by the DOA and aggregated to form the composite behaviors. This is a general form of behavior fusion that can degenerate to behavior switching for DOA = 0 or 1 [16,17].

    At a primitive level, behaviors are synthesized as fuzzy rule bases, i.e., a collection of fuzzy if-then rules. Each behavior is encoded with a distinct control policy governed by fuzzy inference. If x and y are the input and output universes of the discourse of a behavior with a rule-base of size n, the usual fuzzy if-then rule takes the following form:


    where x and y represent the input and output fuzzy linguistic variables, respectively, and Ai and Bi (I = 1…n) are the fuzzy subsets representing the linguistic values of x and y. Typically, x refers to the sensory data and y to the actuator control signals. The antecedent and the consequent can also be a conjunction of the propositions (e.g., IF xi is Ai,1 AND…xn is Ai,n THEN…)

    At the composition level, the DOA is evaluated using a fuzzy rule base in which the global knowledge and constraints are incorporated. An activation level (threshold) at which the rules become an application is applied to the DOA giving the system more degrees of freedom. The DOA of each primitive behavior is specified in the consequent of the applicability rules of the form:


    where x is typically the global constraint, αj ∈[0,1] is the DOA and Ai and Di are the fuzzy set of the linguistic variables describing them. As in the former case, the antecedent and the consequent can also be a conjunction of the propositions.

      >  B. Inference System

    We infer the weights of Eq. (6) by means of a fuzzy algorithm. The main reason for using a fuzzy algorithm is that it is easy to reflect human intelligence into the robot control. A fuzzy inference system is developed through the process of setting each situation, developing fuzzy logic with the proper weights, and calculating the weights for the commands.

    Fig. 3 shows the structure of a fuzzy inference system. We define the circumstances and the state of a mobile robot as the inputs of a fuzzy inference system and infer the weights of the cost functions. The inferred weights determine the cost function to direct the robot and determine the velocity of rotation. For control of the mobile robot, the results are transformed into the joint angular velocities by the inverse kinematics of the robot. Table 1 output surface of the fuzzy inference system for each fuzzy weight subset using the inputs and the output. The control inference rule is: ω1, the fuzzy logic controller of the seeing goal; ω2, the fuzzy logic controller of avoiding the obstacle; and ω3, the fuzzy logic controller of minimizing the rotation, as shown in Table 1.


    Fig. 4a is the image used in the experiment. Fig. 4b shows the values resulting from matching after image processing. Fig. 4 shows that the maximum matching error is within 4%. Therefore, it can be seen that our vision system is feasible for navigation. The mobile robot navigates along a corridor of a width of 2 m with some obstacles, as shown in Fig. 5a. The real trace of the mobile robot is shown in Fig. 5b. It demonstrates that the mobile robot avoids the obstacles intelligently and follows the corridor to the goal.


    A fuzzy control algorithm for both obstacle avoidance and path planning was implemented in experiments. It enables a mobile robot to reach its goal point in unknown environments safely and autonomously.

    We also present an architecture for intelligent navigation of mobile robots that determines the robot’s behavior by arbitrating the distributed control commands: seek goal, avoid obstacles, and maintain heading. The commands are arbitrated by endowing them with a weight value and combining them, and the weight values are obtained by a fuzzy inference method. The arbitrating command allows multiple goals and constraints to be considered simultaneously. To show the efficiency of the proposed method, real experiments were performed. The experimental results show that a mobile robot can navigate to the goal point safely in unknown environments and can also avoid moving obstacles autonomously. Our ongoing research endeavors will include validation of more complex sets of behaviors, both in simulation and with an actual mobile robot. Further improvements of the prediction algorithm for obstacles and the robustness of performance are required.

  • 1. Er M. J., Tan T. P., Loh S. Y. 2004 “Control of a mobile robot using generalized dynamic fuzzy neural networks” [Microprocessors and Microsystems] Vol.28 P.491-498 google doi
  • 2. Zadeh L. A. 1973 “Outline of a new approach to the analysis of complex systems and decision processes” [IEEE Transactions on Systems] Vol.3 P.28-44 google
  • 3. Nair D., Aggarwal J. K. 1998 “Moving obstacle detection from a navigation robot” [IEEE Transactions on Robotics and Automation] Vol.14 P.404-416 google doi
  • 4. Bentalba S., El Hajjaji A., Rachid A. 1997 “Fuzzy control of a mobile robot: a new approach” [in Proceedings of the IEEE International Conference on Control Applications] P.69-72 google
  • 5. Furuhashi T., Nakaoka K., Morikawa K., Maeda H., Uchikawa Y. 1995 “A study on knowledge finding using fuzzy classifier system” [Journal of Japan Society for Fuzzy Theory and Systems] Vol.7 P.839-848 google
  • 6. Itani H., Furuhashi T. 2002 “A study on teaching information understanding by autonomous mobile robot” [Transactions of the SICE] Vol.38 P.966-973 google
  • 7. Mehenen J., Koppen M., Saad A., Tiwari A. 2009 Application of Soft Computing : From Theory to Praxis. google
  • 8. Beom H. R., Cho H. S. 1995 “A sensor-based navigation for a mobile robot using fuzzy logic and reinforcement learning” [IEEE Transactions on System, Man and Cybernetics] Vol.25 P.464-477 google doi
  • 9. Ohya A., Kosaka A., Kak A. C. 1998 “Vision-based navigation by a mobile robot with obstacle avoidance using single-camera vision and ultrasonic sensing” [IEEE Transactions on Robotics and Automation] Vol.14 P.969-978 google doi
  • 10. Mehrjerdi H., Saad M. M., Ghommam J. 2011 “Hierarchical fuzzy cooperative control and path following for a team of mobile robots” [IEEE/ASME Transactions on Mechatronics] Vol.16 P.907-917 google doi
  • 11. Wang D., Zhang Y., Si W. 2011 “Behavior-based hierarchical fuzzy control for mobile robot navigation in dynamic environment” [in Proceedings of the 2011 Chinese Control and Decision Conference (CCDC)] P.2419-2424 google
  • 12. Jouffe L. 1998 “Fuzzy inference system learning by reinforcement methods” [IEEE Transactions of System, Man, and Cybernetics Part C] Vol.28 P.338-355 google doi
  • 13. Leng G., McGinnity T. M., Prasad G. 2005 “An approach for online extraction of fuzzy rules using a self-organising fuzzy neural network” [Fuzzy Sets and Systems] Vol.150 P.211-243 google
  • 14. Nishina T., Hagiwara M. 1997 “Fuzzy inference neural network” [Neurocomputing] Vol.14 P.223-239 google doi
  • 15. Takahama T., Sakai S., Ogura H., Nakamura M. 1996 “Learning fuzzy rules for bang-bang control by reinforcement learning method” [Journal of Japan Society for Fuzzy Theory and Systems] Vol.8 P.115-122 google
  • 16. Tunstel E. 2000 “Fuzzy-behavior synthesis, coordination, and evolution in an adaptive behavior hierarchy” [in Fuzzy Logic Techniques for Autonomous Vehicle Navigation] google
  • 17. Tunstel E. 1999 “Fuzzy behavior modulation with threshold activation for autonomous vehicle navigation” [in Proceedings of the 18th International Conference of the North American Fuzzy Information Processing Society] P.776-780 google
  • [Fig. 1.] Overall structure of the navigation algorithm.
    Overall structure of the navigation algorithm.
  • [Fig. 2.] Transformation of the frame.
    Transformation of the frame.
  • [Fig. 3.] Structure of the fuzzy inference system.
    Structure of the fuzzy inference system.
  • [Table 1.] Inference rule of each weight system
    Inference rule of each weight system
  • [Fig. 4.] Experimental result of the vision system (a) Input image, (b) result of matching.
    Experimental result of the vision system (a) Input image, (b) result of matching.
  • [Fig. 5.] Navigation of a robot in a corridor environment (a) Navigation in a corridor without a local minimum, (b) navigation robot in a corridor with the local minimum.
    Navigation of a robot in a corridor environment (a) Navigation in a corridor without a local minimum, (b) navigation robot in a corridor with the local minimum.