[Course thesis] Simulation Implementation of Path Planning Algorithm Based on Fuzzy Control

Source: Internet
Author: User

Simulation Implementation of Path Planning Algorithm Based on Fuzzy Control

 

Abstract: The Path Planning of mobile robots in unknown environments is simulated, and a shortest path planning algorithm based on fuzzy control is proposed. Fuzzy inference is used to construct a control response table with better results. To address the deadlock problem in the local path planning algorithm, the algorithm makes full use of the three detection distance information to establish a deadlock prevention mechanism, it allows the robot to detect dangerous areas, that is, walking along the edge of the obstacle to bypass the obstacle, which effectively avoids the occurrence of deadlock and provides a new way of thinking to solve the deadlock problem. Simulation experiments are carried out in a circular obstacle environment with different radius. The simulation results show the effectiveness and feasibility of the algorithm.

Keywords: Mobile Robot Path Planning Fuzzy Control

 

0

Path Planning is an indispensable part in the mobile robot technology field. Based on the degree to which the robot knows the environment information, there are two types: global Path Planning with full environmental information and local path planning with completely unknown environmental information or partially unknown [1]. The fuzzy logic method simulates the driver's driving philosophy and combines the robustness of fuzzy control with the physiological "Perception-action-behavior, this solution avoids the disadvantages of traditional algorithms that are sensitive to Mobile Robot positioning accuracy and highly dependent on environment information. It demonstrates great superiority in dealing with planning problems in unknown environments. The fuzzy logic method is symmetrical and uncertain. When a robot encounters certain types of obstacles, this phenomenon causes the robot to fall into a deadlock, the most typical of which is U.
Type obstacle trap. The traditional deadlock resolution mode is usually to first determine whether the robot is in a deadlock state, and then adopt a policy to solve the deadlock, such as the Virtual target point strategy, and walk along the edge of the obstacle. The algorithm path planning effect of this mode is not ideal, because the robot has taken a detour when judging from the deadlock. The algorithm proposed in this article gets rid of the above deadlock solution mode and establishes a mechanism to prevent deadlocks, instead of waiting for the deadlock to occur before solving it, so as to optimize the path. The algorithm is simple in theory and easy to implement. The effectiveness and feasibility of the method are verified through simulation.

All the machines mentioned in this article have undergone idealized processing, and there is no location Deviation during walking, so they can turn 360 degrees in place, the width required by the path is taken into account, while the space required for its redirection is ignored. The ranging system is composed of three measuring sensors that generate an acute angle. Three distance data can be obtained at a time, and the maximum measurement distance is limited according to the actual application.

1. Fuzzy Controller Design

1.1 input and output variables of the Fuzzy Controller

In the path planning system of the mobile robot, the average distance D from the controller input to the three detectors and the difference r between the left and right detectors are selected. The distance refers to the direction from the robot to the target, the distance between the robot and the obstacle in front is shown in input variable 1. The output of the controller is the robot Rotation Angle and walking step ratio factor.

Figure 1 input language variables of the Fuzzy Controller

 

1.2 fuzzy language description of Input and Output Variables

The distance range D tested by the main sensor is uniformly quantified to the range [0, 10], and the universe is [1, 3, 5, 7, 9]. The difference r between the left and right detectors is uniformly quantified to the range [-]. The R universe is [-7,-4,-, 7]. The output corner proportional factor SA is uniformly quantified to the range [-1.5], where the universe is [-0.75,-0.75, 0, 1.5,]. The output step size proportional factor SD is uniformly quantified to the range [0, 2], and the universe is [0, 0.3, 0.6, 1, 1.4, 1.5]. Define the fuzzy language of each variable as D =
{Vs, S, M, B, VB}, r = {rvb, Rb, Ce, LB, lvb}, SA = {trvb, TRB, Z, TLB, tlvb }, SD = {vs, S, M, B, VB}, the letter meaning is (V: Very, S: small, M: middle, B: Big, R: Right, z: Zero, L: Left, T: Turn ). When the obstacle on the left (right) side of the robot moves closer to the robot, R is positive (negative), and the robot changes to positive (negative) to the left (right ). The membership function of each language variable is a symmetric triangle and the fuzzy segmentation is completely symmetric,
The membership function of D, R, SA, and SD is 2-5.

 

1.3 Establish fuzzy control rules

The basic idea of Robot Obstacle avoidance is to ensure that the obstacle is as close as possible to the target. When the target point is on the left (right) side of the obstacle, the robot turns left (right). When the target point is in front of the robot and the obstacle is very close to the robot, the robot determines whether to turn left or right based on the Environment Information on the left and right. When the left obstacle distance is greater than the right obstacle distance, the robot chooses to turn left, because it is safer to turn left, and vice versa. Fuzzy Rule repository 6 is used for reasoning.

Figure 6 fuzzy rule repository

 

1.4 fuzzy reasoning and clarity

In this paper, the Mamdani reasoning method is used, and the clearness method uses the weighted average method to obtain the clear value, and then the scale transformation becomes the actual control value.

 

2. Basic Idea of Path Planning Algorithm

2.1 robot probe progress

Based on the values of input variables D and R, the robot does not move forward immediately after it rotates according to the output Angle Factor and step factor of the fuzzy controller. Because the robot does not know the obstacle information in the new direction after turning, if it advances immediately, it may hit the obstacle. After the robot turns, it also needs to detect whether the distance between the obstacle in front is greater than the planned step size. If the value is greater than that, the robot will move forward. Otherwise, the robot will not be able to move forward, and a certain direction (such as to the left) will be required for continuous deflection.DeltaContinue the probe, that is, secondary rotation and obstacle avoidance until a safe forward direction is found, and then the planned step forward. The robot's detection process is 7. In Figure 7, the robot is located
Point, Ab1 is the forward direction after the robot rotates according to the output corner. After detection, the obstacle distance in the Ab1 direction is smaller than the fixed step size, and the robot deflection angle to the left (assumed)DeltaThe direction is AB2. Continue the test. The distance between the obstacle on the ab2 direction is still smaller than the fixed step size, and then the angle is redirected to the left.DeltaThe probe goes down until the safe forward direction Abi is found, and the robot moves forward to point C.

 

2.2 Basic Ideas for solving deadlocks

This algorithm uses a mechanism to prevent deadlocks when dealing with deadlocks. The mechanism to prevent deadlocks is: when the robot reaches a new position, it first detects the target direction. If the action in this direction is blocked within a small range, it enters the dangerous area and starts the Unlock algorithm. First, stand in the same place and turn to the detection exit on both sides, select the least side of the corner, and mark the robot in the unlock status according to the rules. When the robot is unlocked and is still blocked when it reaches a new position, it will deepen this state. Otherwise, the danger mark will be removed and restored to 0.

 

As shown in figure 8, only the solid line with arrows indicates that the robot is turning the corner.DeltaAnd then proceed directly. The solid line with arrows and the dotted line with arrows indicate the Rotation Angle of the robot.DeltaAnd then continue to the deflection angle before the step. At initialization, t = 0. When the robot starts from the starting point to the point, D, D2, and D3 can determine that the robot is blocked, and the robot enters the dangerous area to prevent deadlock. According to the rule in the rule repository, if the robot turns left to avoid obstacles, t is set to 1. After detection, 1 is safe and the robot advances to B. In B
Point, the target direction is still blocked. The value of tplus 1. According to the Unlock algorithm, the output Angle Factor SA is invalid at this time, and the step size factor is small, then, the robot redirects a small angle to the left along the direction of 2 to B. After detection, the obstacle distance in the direction of 2 is smaller than the fixed step size. According to the T value of 1, the robot continuously redirects to the left.DeltaUntil the safe forward direction is detected. 3. The robot moves forward to point C. In turn, the robot moves forward to point E. It can be seen that the robot's obstacle avoidance process is embodied in walking behavior along the side. In summary, we can see that the robot has detected a dangerous area, that is, walking from point B along the edge of the obstacle to point F, bypassing the U-type obstacle.

3. Path Planning Simulation

The simulation program was developed in the environment of MATLAB 2009a. During the simulation process, the radius and position of the circular obstacle are set randomly, the starting point is fixed as the origin, and the ending point can be set as needed, when path planning is performed, the motion track of the robot is depicted. In this way, the correctness and reliability of the algorithm can be verified in any environment. The simulation result is 9-10.

4 Conclusion

Due to the limited distance between sensors and the uncertainty of the surrounding environment, it is difficult for a mobile robot to make optimal path planning. Therefore, the robot can make optimal local path planning, that is, it seems to be the best choice at present, so that the final result is close to the optimal path. This paper uses a fuzzy control algorithm to control the robot and uses a mechanism to prevent deadlocks when dealing with deadlocks. The algorithm is simple in theory and has a small amount of computing. In an unknown environment where an obstacle exists, the robot successfully finds a non-touch path from the starting point to the target point, and the path planning effect is satisfactory.

 

References

[1] Wang yaonan. Robot Intelligent Control Project [M]. Beijing: Science Press, 2004.

[2] Li Peng, Wen sufang. Implementation of Path Planning Algorithm Based on Fuzzy Control [J]. Journal of Hangzhou University of electronic science and technology, 2007.12 (27): 82-86.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.