Plant And Objective
Continuing on from the first project, this second project also provides you with an opportunity to apply the methodologies you are taught in the lectures and hence to develop a better understanding of them. The project is designed based on Matlab Fuzzy Toolbox and Simulink.
Plant And Objective
The plant in this project is a mobile robot, which is required to move in a two-dimensional space from
- set starting location (X = 3.4, Y = 5.8)on the 13-obstacle arena provided (13OA-obstacle_data.m), until it reaches the perceived (or only estimated) target goal location. In doing so it must also avoid certain unsafe obstacles areas (irregular polygons) that are suspected mine fields. If the robot enters one of these areas it may detonate a mine (Game Over). A simple 5-obstacle arena (5OA-obstacle_data.m) is also provided to aid the development of your controller – simply copy and rename either arena file to become:
Initially the target location is only approximately estimated, and as the robot moves closer towards this, clearer signals will be received by the robot sensors, with higher signal to noise ratio. With these stronger signals, more accurate determinations of the true target location become possible – hence the final (or actual) target location may be different compared to its initial estimated location. Although path planning is one approach to addressing this problem, you are required to develop an Intelligent Controller to achieve this without pre-planning – that is you should utilise any coordinate positions in your submitted robot controller otherwise marks will deducted.
Matlab code for the kinematics of the robot has been already written in order to simulate its dynamic response in a range of contexts. Importantly, the motion and precise direction, or pose of the robot, is achieved through independent control of both left and right wheels. The robot model also includes a number of sensor mechanisms, which your designed controller can utilize, to guide progress towards the goal, as well as avoid any nearby obstacles. This has subsequently been incorporated within the Simulink environment, in order to facilitate the development of various intelligent control solutions. Thus the robot model in this case represents a multi-input multi-output, or MIMO system.
Task 1 – Fuzzy Control Simulation
Apart from developing a general Fuzzy controller to drive the robot to its destination, you will also need to capture data of your controller’s behaviour and responses. Several sections of data may need to be captured, and saved as training data for the alternative approaches of Task-2, such as custom developed neural network controllers, or alternatively ANFIS optimisations.
You should provide plots of the complete trajectory of the robot as it travels to the target, as well as all input and output signals (on the same graph if possible), as well as the rule surface in each case. You should also report the odometer value, the total distance travelled by your robot in reaching its target.
In this task you are required to develop Neural Controller, OR alternately an optimised Adaptive Neural Fuzzy Inference System (ANFIS) controller for the same robot in Task-1. The second alternative will require you to convert your initial fuzzy controller of Task-1 to an ANFIS equivalent.
This will require you to compare all membership functions in the initial ANFIS system with those of the former (Mamdani or TSK). Using the training data of Task-1 (and maybe now Task-2) you should adapt and optimise the various membership functions using the “ANFISEDIT” tool. Once again comparing the MF’s, and once again, provide plots of all input and output signals (on the same graph if possible) as well as the rule surface in each case.
The mobile robot is designed so as to use artificial intelligence to enable its propagation in different situations. Artificial intelligence seeks to find a pattern in the activities of a human being or a device as the human beings make very concrete decisions even when the input is not precise or numerically accurate. For instance, it is very easy for a human being to change direction while walking without even had prior information unlike the mobile robot which moves in a given direction until instructed to propagate elsewhere. These mobile robots have sensors installed so as to detect obstacles and targets as well as define the trajectories. Researchers have constantly sought methods and models to solve the motion control problems in a mobile robot. Some of the models used are fuzzy logic controllers, neural networks, genetic algorithms, and a combination of the highlighted methods. The outstanding model used in the mobile robot currently is the fuzzy logic controller (Aguirre & Gonzales, 2000). The fuzzy controller is based on rules which provide reasoning and decision making when uncertain and imprecise information is used as the input. The control model is quite tolerant to disturbance and errors found in the information that is obtained from the sensory system. The system has found application in the multivariable input-output systems, MIMO systems. One of the main caveats the mobile robot faces is in the measurement of distances to the obstacles and the optical encoders to provide the actual position and speeds (Alyahmedi, et al., 2009). The goal reaching behavior tends to drive the robot from a given initial position to a stationary or moving target position. This behavior drives the robot to the left to the right or forward depending on θ-error, the difference between the desired heading and the actual current heading.
The configuration of the robot is set up using the x, y scale coordinates. In this case, the position of the robot is set at, (3.4, 5.8). there are a number of parameters that need to be taken into consideration: linear velocity of left and right wheels, angular velocity of the mobile robot, abscissa of the robot, intercept of the robot, actual position coordinates of the robot, orientation of the robot, and the distance between the driving wheels. The kinematic model equations are based on these parameters such that,
Figure 1 Kinematic model of the mobile robot [source: Hindawi.com]
Task 1 – Fuzzy Control Simulation
These equations are used in the MATLAB simulation of the mobile robot. The kinematic equation can also be expressed in discrete form,
- To design one fuzzy controller for the trajectory and obstacle avoidance for the mobile robot using sensors.
The simulation is performed using the MATLAB Fuzzy logic toolbox alongside other Simulink models. Some of the robot models used in the implementation are the kinematic model and the trajectory tracking model using the MIMO fuzzy controller.
Figure 2 Implementing a fuzzy logic controller to control the trajectory of the mobile robot [source: Hindawi.com]
Task 1: Fuzzy Control Simulation
The fuzzy controller has 3 sections namely fuzzification, inference, and defuzzification. It collects the real value inputs, uses rules to analyze them using the membership type MAMDANI and the system is later defuzzied. The syntax of the rules is
The outputs of the fuzzy logic control system are the speeds of the left and right wheels of the mobile robot. The controller uses the following equations to determine the navigation of the mobile robot towards the target,
To avoid obstacles as one gets to the target, the following considerations are focused on,
- Right fast
- Right slow
- Straight
- Left slow
- Left fast
The inputs are obtained as,
Ob_loc1 |
Ob_loc2 |
Ob_loc3 |
Ob_loc4 |
Ob_loc5 |
Ob_loc6 |
|
-9 |
-5 |
-2.5 |
0 |
2.5 |
5 |
|
Negative |
Left-slow |
Right-slow |
Right-fast |
Left-slow |
Left-fast |
Left-slow |
Zero |
Straight |
Right-slow |
Right-fast |
Left-fast |
Left-fast |
Left-slow |
Positive |
Right-slow |
Right-slow |
Right-fast |
Right-slow |
Left-fast |
Left-slow |
The rules are formulated as shown in the rule viewer below,
There are 18 rules
The surface viewer based on the rules is given as,
Task Ii: Fuzzy Anfis Control
The task seeks to develop a neural controller or an optimized adaptive neural fuzzy inference system controller for the mobile robot. Training data is obtained from task one parameters.
The first step taken is to load data onto the ANFIS as training data.
Odometry seeks to use the data obtained from the moving sensors, in this case, the ultrasonic sensors, to estimate the change in position over time. The method seeks to estimate the robot’s position with reference to the starting location. The use of odometry checks the errors that are as a result of the integration of velocity measurement over a given time to give position estimates. Odometry requires very accurate and swift data collection and equipment calibration techniques (Fatmi, et al., 2006).
Hybrid Systems are combinations of two separate systems or techniques to produce a more efficient and optimal solution. The product of the combination usually takes advantage of each technique’s merit and decreases the limitation of their demerits. An example of such hybrid system is a Neuro-Fuzzy system which combines neural network and fuzzy logic into one model (Saffiotti, 2007). Neural networks are well suited for learning and adaptive tasks. The training and testing is performed as illustrated below,
Neural networks are well suited for learning and adaptive tasks (Jacobsen, 2008, p.45) but difficult to understand the modalities of its operation. On the other hand, fuzzy logic controllers are well suited for incorporation and interpretation of knowledge but limited in learning and adaptation. Odometry seeks to use the data obtained from the moving sensors, in this case, the ultrasonic sensors, to estimate the change in position over time. The method seeks to estimate the robot’s position with reference to the starting location.
In a nutshell, the two tasks achieved to control the robot to get to its target while the second task enabled the optimization and improvement of the trajectory.
References
Aguirre, E. & Gonzales, A., 2000. Fuzzy behaviours for mobile robot navigation: Design, coordination and fusion. International ournal of approximate reasoning, Volume 25, pp. 255-289.
Alyahmedi, A. S., El-Tahir, E. & Perez, T., 2009. Behaviour based control of a robotic based navigation aid for the blind. Control and applications conference, p. 15.
Fatmi, A., Alyahmedi, A. S., Khirji, L. & Masmoudi, N., 2006. A Fuzzy logic based navigation of a mobile robot. World Academy of science, engineering, and technology, pp. 169-174.
Saffiotti, A., 2007. The uses of fuzzy logic for autonomous robot navigation: A catalogue raisonn'e. Software Computing research journal, 1(4), pp. 180-197.
To export a reference to this article please select a referencing stye below:
My Assignment Help. (2020). Developing An Intelligent Controller For A Mobile Robot Using Fuzzy Logic, ANFIS, And Neural Networks. Retrieved from https://myassignmenthelp.com/free-samples/ecte441-intelligent-control/design-and-model-of-the-mobile-robot.html.
"Developing An Intelligent Controller For A Mobile Robot Using Fuzzy Logic, ANFIS, And Neural Networks." My Assignment Help, 2020, https://myassignmenthelp.com/free-samples/ecte441-intelligent-control/design-and-model-of-the-mobile-robot.html.
My Assignment Help (2020) Developing An Intelligent Controller For A Mobile Robot Using Fuzzy Logic, ANFIS, And Neural Networks [Online]. Available from: https://myassignmenthelp.com/free-samples/ecte441-intelligent-control/design-and-model-of-the-mobile-robot.html
[Accessed 26 December 2024].
My Assignment Help. 'Developing An Intelligent Controller For A Mobile Robot Using Fuzzy Logic, ANFIS, And Neural Networks' (My Assignment Help, 2020) <https://myassignmenthelp.com/free-samples/ecte441-intelligent-control/design-and-model-of-the-mobile-robot.html> accessed 26 December 2024.
My Assignment Help. Developing An Intelligent Controller For A Mobile Robot Using Fuzzy Logic, ANFIS, And Neural Networks [Internet]. My Assignment Help. 2020 [cited 26 December 2024]. Available from: https://myassignmenthelp.com/free-samples/ecte441-intelligent-control/design-and-model-of-the-mobile-robot.html.