Download - khelchandra project on ai
Thongam Khelchandra Jie Huang Somen Debnath Information systems Department, Department of Information Technology,
The University of Aizu, Japan Mizoram University, India
2
1. Introduction• Problem Definition• Previous Work• Tools Used• Advantage • Diagram showing whole process
2. Path Planning using Artificial Neural Network3. Fuzzy Logic System for Obstacle Avoidance4. Results5. Conclusion
a robot with an initial location and orientation, a goal location and orientation
a set of obstacles located in workspace (static or moving)
compute a collision-free path for the robot
intelligent control of the robot which should move safely in the environment.
Problem definition
3
Computational geometry- potential functions, roadmap methods, cell
decompositions, sampling based algorithms- unfeasible in real time Artificial neural network- solves the problem- use of parallel algorithm by ANN Hybrid system (Neuro-Fuzzy, Genetic-
Fuzzy)
4
• Artificial Neural Network- Multilayer Perceptron with BP learning
algorithm- Classification task- Trained to choose a path from n set of
paths• Fuzzy Logic System - FL is use for obstacle avoidance
The difficulties of traditional method in creating the configuration space with expensive computation are solved by using neural networks
This method realizes a considerable increase in performance and speed
If some of the neurons do not work due to lack of information, still the system will work and get the output
the combination ANN and fuzzy system is computationally efficient by helping each other to eliminate their individual limitations.
INPUT NEURAL NETWORK
OUTPUT
FUZZY SYSTEM
Collision free path
If all paths
blocked by
obstaclesDistances to obstacles
Schematic Diagram of the whole process
• ANN is trained with some training samples initially• xi is the input which is the distance in n directions to the first obstacle• Vij is the weight connecting the ith input to the jth hidden neuron• wjk is the weight connecting the jth hidden neuron to the kth output neuron• ok is the output, 0 or 1
MLP Network
TRAINING PHASE•x1, x2, x3 are inputs to ANN
• if obstacle in the path, then desired output di = 0 else di = 1
• in the figure, di = [ 0, 1, 1]
• error between the actual output oi and desired output di is minimized by adjusting the connecting weights
• wjk(n+1) = wjk(n) + η*δk(n)*yj(n)
• vij(n+1) = vij(n) + η*δj(n)*xi(n)
Robot choosing direction
OPERATION PHASE
•Use the weights vij and wjk to find the outputs
• eg: oi = [0,1,0] will choose the center path
• if all paths block by obstacle i,e oi = [0,0,0] then FL system is use to avoid the obstacles
Path of the robot
• At position 5, all the 3 paths are blocked by obstacles
• In such situation, FL is applied
All paths blocked by obstacles
• Input1. Variable : angle - Angle between the left obstacle edge and
the robot centreValues : {small, medium, large}
2. Variable : distance- Distance between the robot and the
obstacle blocking the middle pathValues : {near, far, very far}
3. Variable : left_obstacle_dist- Distance between critical obstacle and
nearest obstacle on the left side Values : {near, far}
4. Variable : right_obstacle_dist- Distance between critical obstacle and
nearest obstacle on the right side Values : {near, far}
• Output1. Variable : adjustment angle - Adjustment Angle of the robot to avoid
possible collisions with obstacles on left or right side of the critical obstacleValues : {small_left, normal_left, big_left, small_right, normal_right, big_right}
• angle, distance, left_obstacle_dist, right_obstacle_dist are the input variables • adjustment angle is the output variable• the robot avoids the obstacles O’s when moving from point c• the rule base consist of 36 rules of the formif(angle == S) and (distance == F) and (left_obstacle_dist== F) and (right_obstacle_dist == F) then adjustmentangle = SL
Avoiding obstacles
Calculation for degree of membership of the input values • Use Trapezoidal membership function with max-min composition T1 = (input - a) / (b - a) T2 = (d - input) / (d - c)T1 = Min(T1, Min(1, T2))T= Max(T1, 0)
Rule Evaluation
15
Weight of a rule is calculated byW = angle(angle-input) * distance(distance-input) *
left_obs_dist(left_obs_dist-input) * right_obs_dist(right_obs_dist-input)
The function angle( ), distance( ), left_obs_dist( ), right_obs_dist( ) will give the value of degree of membership
Actual output is calculated by equationCrisp output= [(w1 * v1) + (w2 *v2) + (w3 *v3) + (w4
*v4) +(w5 *v5) + ………......+ (wn * vn)]/ [w1+w2+w3+w4+w5+……wn]
Defuzzification
16
Robot path upto ninth motion
the robot chooses the middle path for the first, second and third motion using neural network in the fourth motion, the robot chooses the right path from fifth to seven, it chooses the middle path in eight motion, it chooses the left path at the ninth motion, all the 3 paths are blocked by obstacle A the obstacle at the ninth motion is avoided using fuzzy logic
Robot reaching the goal
The values of the input variables of the fuzzy system of the robot ninth motion are 1. angle = M 2. distance = F 3. left_obstacle_dist = N 4. right_obstacle_dist = N. The degree of membership for variable angle with linguistic value: (1) small = 0.000000 (2) medium = 0.386667 (3) large = 0.226667. The degree of membership for variable distance with linguistic value: (1) near = 0.000000 (2) far = 0.750000 (3) very far = 0.500000. The degree of membership for variable left_obstacle_dist with linguistic value: (1) near = 1.000000 (2) far = 0.500000. The degree of membership for variable right_obstacle_dist with linguistic value: (1) near = 0.666667 (2) far = 0.750000.
Proposed a new method of path planning of a mobile robot using ANN and Fuzzy system
ANN is used to choose a path from a set of paths The fuzzy system is used when all the paths are
blocked by obstacles Results show that the combination of these
features is computational efficient by helping each other to eliminate their individual limitations
increase in performance and speed as compared to traditional method with computational geometry
Future work can be path planning in dynamic environments containing moving obstacles
Thank you very much !