Learning fuzzy controllers in mobile robotics with embedded preprocessing
Graphical abstract
Introduction
The control architecture of mobile robots usually includes a number of behaviors that are implemented as controllers, which are able to solve specific tasks such as motion planning, following a moving object, wall-following or avoiding collisions in real time. These behaviors are implemented as controllers whose outputs at each time point (control commands) depend on both the internal state of the robot and the environment in which it evolves. The robot sensors (e.g. laser range finders, sonars, cameras, etc.) are used in order to obtain the augmented state of the robot (internal state and environment). When the robot operates in real environments, both the data obtained by these sensors and the internal state of the robot present uncertainty or noise. Therefore, the use of mechanisms that manage them properly is necessary. The use of fuzzy rules is convenient to cope with this uncertainty, since it combines the interpretability and expressiveness of the rules with the ability of fuzzy logic for representing uncertainty.
The first step for designing controllers for mobile robots consists of the preprocessing of the raw sensor data: the low-level input variables obtained by the sensors are transformed into high-level variables that are significant for the behavior to be learned. Usually, expert knowledge is used for the definition of these high-level variables and the mapping from the sensorial data. After this preprocessing stage, machine learning algorithms can be used to automatically obtain the mapping from the high-level input variables to the robot control commands. This paper describes an algorithm that is able to perform the preprocessing stage embedded in the learning stage, thus avoiding the use of expert knowledge. Therefore, the mapping between low-level and high-level input variables is done automatically during the learning phase of the controller.
The data provided by the sensors is of high dimensionality. For example, a robot equipped with two laser range finders can generate over 720 low-level variables. However, in mobile robotics it is more common to work with sets or groupings of these variables, (e.g. “frontal sector”) that are much more significant and relevant for the behavior. As a result, it is necessary to use a model that is capable of grouping low-level variables, thus reducing the dimensionality of the problem and providing meaningful descriptions. The model should provide propositions that are able to summarize the data with expressions like “part of the distances in the frontal sector are high”. This kind of expressions can model the underlying knowledge in a better way than just using average, maximum or minimum values of sets of low level variables. Moreover, these expressions also include the definition of the set of low-level variables to be used. Since these propositions involve fuzzy quantifiers (e.g. “part”), they are called Quantified Fuzzy Propositions (QFPs) [1]. QFP provide a formal model that is capable of modeling the knowledge involved in this grouping task.
Evolutionary algorithms have some characteristics that make them suitable for learning fuzzy rules. The well-known combination of evolutionary algorithms and fuzzy logic (genetic fuzzy systems) is one of the approaches that aims to manage the balance between accuracy and interpretability of the rules [2], [3]. As it was pointed out before, fuzzy rules can be composed of both conventional and QFPs (therefore, they will be referred to as QFRs). Furthermore, the transformation from low-level to high-level variables using QFPs produces a variable number of propositions in the antecedent of the rules. Therefore, genetic programming, where the structure of individuals is a tree of variable size derived from a context-free grammar, is here the most appropriate choice.
This paper describes an algorithm that is able to learn QFRs of variable structure for the design of controllers with embedded preprocessing in mobile robotics. This proposal, called Iterative Quantified Fuzzy Rule Learning (IQFRL), is based on the Iterative Rule Learning (IRL) approach and uses linguistic labels defined with unconstrained multiple granularity, i.e. without limiting the granularity levels. This proposal has been designed to solve control (regression) problems in mobile robotics having as input variables the internal state of the robot and the sensors data. Expert knowledge is only used to generate the training data for each of the situations of the task to be learned and, also, to define the context-free grammar that specifies the structure of the rules.
The main contributions of the paper are: (i) the proposed algorithm is able to learn using the state of the robot and the sensors data, with no preprocessing. Instead, the mapping between low-level variables and high-level variables is done embedded in the algorithm; (ii) the algorithm uses QFPs, a model able to summarize the low-level input data; (iii) moreover, IQFRL uses linguistic labels with unconstrained multiple granularity. With this approach, the interpretability of the membership functions used in the resulting rules is unaffected while the flexibility of representation remains. The proposal was validated in several simulated and real environments with the wall-following behavior. Results show a better and statistically significant performance of IQFRL over several combinations of well-known learning algorithms and preprocessing techniques. The approach was also tested in three real world behaviors that were built as a combination of controllers: path tracking with obstacles avoidance, object tracking with fixed obstacles avoidance, and object tracking with moving obstacle avoidance.
The paper is structured as follows: Section 2 summarizes recent work related with this proposal and Section 3 presents the QFRs model and its advantages in mobile robotics. Section 4 describes the IQFRL algorithm that has been used to learn the QFRs. Section 5 presents the obtained results, and Section 6 shows three real world applications of IQFRL in robotics. Finally, Section 7 points out the most relevant conclusions.
Section snippets
Related work
The learning of controllers for autonomous robots has been dealt with by using different machine learning techniques. Among the most popular approaches can be found evolutionary algorithms [4], [5], neural networks [6] and reinforcement learning [7], [8]. Also hibridations of them, like evolutionary neural networks [9], reinforcement learning with evolutionary algorithms [10], [11], the widely used genetic fuzzy systems [12], [13], [14], [15], [16], [17], [18], or even more uncommon
QFRs for robotics
Machine learning techniques in mobile robotics are used to obtain the mapping from inputs to outputs (control commands). In general, two categories can be established for the input variables:
- •
High-level input variables: variables that provide, by themselves, information that is relevant and meaningful to the expert for modeling the system (e.g. the linear velocity of the robot, or the right-hand distance from the robot to a wall).
- •
Low-level input variables: variables that do not provide by
Evolutionary learning of knowledge bases
Evolutionary learning methods follow two approaches in order to encode rules within a population of individuals [3], [24]:
- •
Pittsburgh approach: each individual represents the entire rule base.
- •
Michigan, IRL [25], and GCCL [26]: each individual codifies a rule. The learned rule base is the result of combining several individuals. The way in which the individuals interact during the learning process defines these three different approaches.
The discussion is focused on those approaches for which an
Experimental setup
The proposed algorithm has been validated with the well-known in mobile robotics wall-following behavior. The main objectives of a controller for this behavior are: to keep a suitable distance between the robot and the wall, to move at the highest possible velocity, and to implement smooth control actions. The Player/Stage robot software [30] has been used for the tests on the simulated environments and also for the connection with the real robot Pioneer 3-AT (Fig. 14). This real robot was
Real world applications
Two of the most used behaviors in mobile robotics are path and object tracking. In recent years several real applications of these behaviors have been described in the literature in different realms. For instance, in Ref. [37], a tour-guide robot that can either follow a predefined route or a tour-guide person was shown. With a similar goal, an intelligent hospital service robot was presented in Ref. [38]. In this case, the robot can improve the services provided in the hospital through
Conclusions
This paper describes a new algorithm which is able to learn controllers with embedded preprocessing for mobile robotics. The transformation of the low-level variables into high-level variables is done through the use of Quantified Fuzzy Propositions and Rules. Furthermore, the algorithm involves linguistic labels defined by multiple granularity without limiting the granularity levels. The algorithm was extensively tested with the wall-following behavior both in several simulated environments
Acknowledgements
This work was supported by the Spanish Ministry of Economy and Competitiveness under grants TIN2011-22935 and TIN2011-29827-C02-02, and the Galician Ministry of Education under grant EM2014/012. I. Rodriguez-Fdez is supported by the Spanish Ministry of Education, under the FPU national plan (AP2010-0627). This work was supported in part by the European Regional Development Fund (ERDF/FEDER) under the projects CN2012/151 and CN2011/058 of the Galician Ministry of Education.
References (44)
- et al.
People detection through quantified fuzzy temporal rules
Pattern Recogn.
(2010) - et al.
Ten years of genetic fuzzy systems: current framework and new trends
Fuzzy sets syst.
(2004) - et al.
Learning from demonstration in robots: experimental comparison of neural architectures
Robot. Comput.-Integr. Manuf.
(2011) Evolutionary design and behavior analysis of neuromodulatory neural networks for mobile robots control
Appl. Soft Comput.
(2007)- et al.
A highly interpretable fuzzy rule base using ordinal structure for obstacle avoidance of mobile robot
Appl. Soft Comput.
(2011) - et al.
Design of a fuzzy controller in mobile robotics using genetic algorithms
Appl. Soft Comput.
(2007) - et al.
A case study for learning behaviors in mobile robotics by evolutionary fuzzy systems
Expert Syst. Appl.
(2010) A computational approach to fuzzy quantifiers in natural languages
Comput. Math. Appl.
(1983)- et al.
Hybridizing genetic algorithms with sharing scheme and evolution strategies for designing approximate fuzzy rule-based systems
Fuzzy Sets Syst.
(2001) - et al.
Fuzzy inclusion and similarity through coherent conditional probability
Fuzzy Sets Syst.
(2009)
A three-stage evolutionary process for learning descriptive and approximate fuzzy-logic-controller knowledge bases from examples
Int. J. Approx. Reason.
A building maintenance and surveillance system based on autonomous robots
Robot. Auton. Syst.
Omnivision-based KLD-Monte Carlo localization
Robot. Auton. Syst.
A lot of randomness is hiding in accuracy
Eng. Appl. Artif. Intell.
Genetic fuzzy systems: taxonomy, current research trends and prospects
Evol. Intell.
Automatically designing robot controllers and sensor morphology with genetic programming
Genetic algorithm optimization for type-2 non-singleton fuzzy logic controllers
Recent Adv. Hybrid Approach. Design. Intell. Syst.
Reinforcement learning for robot control using probability density estimations
An intelligent control system for mobile robot navigation tasks in surveillance
Evaluation on the robustness of genetic network programming with reinforcement learning
Hybrid genetic-fuzzy approach to autonomous mobile robot
Learning weighted linguistic rules to control an autonomous robot
Int. J. Intell. Syst.
Cited by (12)
Data transferring model determination in robotic group
2016, Robotics and Autonomous SystemsCitation Excerpt :It helps to solve the first task of robots position monitoring, and search the routes. Secondly, we implemented the voting system based on fuzzy logic [16–18] for the communication network formation between robots in a group. This makes possible to choose the better node (robot) to transfer received data from TVS between a robot and the server, and for task distribution in a robotic group.
FRULER: Fuzzy Rule Learning through Evolution for Regression
2016, Information SciencesCitation Excerpt :Although Mamdani systems are well-known because of their interpretability, the linear model in TSK rules is also a good choice since it is straightforward to understand the relationship between the output and input variables. This is of particular interest in many fields, such as robotics [26,29,32], medical imaging [30], industrial estimation [27] and optimization of processes [38]. One of the most widely used learning algorithms for automatic building of fuzzy rule bases are genetic fuzzy systems (GFSs) [10], i.e., the combination of evolutionary algorithms and fuzzy logic.
Virtual fields and behaviour blending for the coordinated navigation of robot teams: Some experimental results
2015, Expert Systems with ApplicationsCitation Excerpt :Like other methodologies based on rules, a main practical problem is to write and specify those rules. In fact, when one considers non-trivial control of mobile robots, the number of fuzzy control rules increases, as it can be noticed in Mucientes, Alcalá-Fdez, Alcalá, and Casillas (2010) or in Rodríguez-Fdez, Mucientes, and Bugarín (2015). Another problem is that the result can easily become too specific for a particular robot, so a new robot may require significant changes in the rules.
Robot Path Planning Based on Improved Salp Swarm Algorithm
2022, Jisuanji Yanjiu yu Fazhan/Computer Research and DevelopmentSpeed Control of BLDC by Using Neutrosophic Fuzzy Logic Controller
2021, Proceedings - 2021 Innovations in Intelligent Systems and Applications Conference, ASYU 2021Design of fuzzy controllers for embedded systems with JFML
2019, International Journal of Computational Intelligence Systems