final project presentation on autonomous mobile robot
DESCRIPTION
Final Project Presentation on autonomous mobile robot. Submitted to Prof, Jaebyung Park Robotics Lab. Submitted by Ansu Man Singh Student ID (201150875). Outline. Title Objective Procedure Binary Image Attractive Potential field Repulsive Potential field Total field - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/1.jpg)
Final Project Presentation on autonomous mobile robot
Submitted toProf, Jaebyung Park
Robotics LabSubmitted by
Ansu Man SinghStudent ID (201150875)
![Page 2: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/2.jpg)
Outline
• Title• Objective• Procedure• Binary Image• Attractive Potential field• Repulsive Potential field• Total field• Gradient descent• Navigation function
![Page 3: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/3.jpg)
Title
• Path planning using attractive and Reflective potential field
![Page 4: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/4.jpg)
Objective
• To generate a path for mobile robot using attractive and repulsive potential field
![Page 5: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/5.jpg)
Procedure
Binary Image
Attractive Potential field
Repulsive Potential field
Gradient Descent Algorithm
Required Path
Goal Position
Start Position
![Page 6: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/6.jpg)
Binary Image
– Binary Image of 200 by 200 pixel is taken– 1’ will represent free space, 0’s will represent
obstacle space– example
Obstacles
![Page 7: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/7.jpg)
Attractive Potential Field
• The Attractive Potential field is generated using conic and quadratic functions
QuadraticConic
![Page 8: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/8.jpg)
Attractive Potential Field
• Attractive Potential function
Goal Position
![Page 9: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/9.jpg)
Attractive Potential Field
• Code Sectiongoal_pos = [180 180];Uatt = zeros(wSpace_Size);d_xtrix_goal =3;K=0.06;const1 = 0.5*K*d_xtrix_goal^2;for i=1:wSpace_Size(1) for j=1:wSpace_Size(2); A=(goal_pos(1)-i)^2+(goal_pos(2)-j)^2; distance=sqrt(A); if(distance > d_xtrix_goal) Uatt(i,j)=d_xtrix_goal*K*distance -const1; else Uatt(i,j)=0.5*d_xtrix_goal*K*distance^2 ; end endend
![Page 10: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/10.jpg)
Repulsive Potential Field
• Repulsive function used
• Repulsive function is generated by the help of binary image.
• Steps used in generating Repulsive function– Find the obstacle position in the binary image– Generate field using the equation for the distance
Q* above and below the obstacle pixel position
![Page 11: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/11.jpg)
Repulsive Potential Field
• Repulsive Potential Field
![Page 12: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/12.jpg)
Repulsive Potential Field• Code section
for i=1:wSpace_Size(1) for j=1:wSpace_Size(2); if(wSpace_Bin(i,j)==0) Uref(i,j)=8; for k= -xtrix_OBS:xtrix_OBS for p =-xtrix_OBS:xtrix_OBS if((i+k)>wSpace_Size(1)||(i+k)<1||(j+p)>wSpace_Size(2)||(j+p)<1) else if(wSpace_Bin(i+k,j+p)~= 0) distance2 = sqrt((k)^2+(p)^2); Uref(i+k,j+p)=Uref(i+k,j+p)+ 0.5*2*(1/distance2 - 1/xtrix_OBS)^2; else Uref(i+k,j+p)= 8; end end end end else Uref(i,j) = Uref(i,j) +0; end endend
![Page 13: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/13.jpg)
Total Field• Total Potential field is addition of attractive
and Repulsive field
+
![Page 14: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/14.jpg)
Gradient Descent• Algorithms used to find the path in the field• Gradient descent always follows negative
slopeInput: A means to compute the gradient ∇U (q)at a point q Output: A sequence of points {q(0), q(1), ..., q(i)} 1: q(0) = qstart 2: i = 0 3: while ∇U (q(i)) ≠= 0 do 4: q(i + 1) = q(i) + α(i)∇U (q(i)) 5: i = i + 1 6: end while
![Page 15: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/15.jpg)
Gradient Descent• Code section
while(flag) position(iteration+1,:) = [pos_x pos_y U_tot(pos_y,pos_x)]; pos_x = ceil(pos_x+ alpha*grad_x); pos_y = ceil(pos_y+ alpha*grad_y); if((grad_x==0&&grad_y==0)||iteration >1000) flag = 0; end if (pos_x>=200||pos_y>=200) flag =0; else grad_x=-fx(pos_y,pos_x); grad_y=-fy(pos_y,pos_x); iteration= iteration+1; end end
![Page 16: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/16.jpg)
Gradient Descent• Contour map of field with path
Start point = (0,80)
![Page 17: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/17.jpg)
Gradient Descent• Path 2
![Page 18: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/18.jpg)
Gradient Descent• Local Minima problem
![Page 19: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/19.jpg)
Gradient Descent• Local Minima problem can be using
navigation function• Navigation function definition
A function is called a navigation function if it1.is smooth (or at least Ck for k ≥ 2),2.has a unique minimum at qgoal in the connected component of the free space that contains qgoal,3.is uniformly maximal on the boundary of the free space, and4.is Morse.
![Page 20: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/20.jpg)
Navigation function • Navigation function on sphere world• Obstacle functions
• Distance to goal function
![Page 21: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/21.jpg)
Navigation function • Switch function which is used to map from (0
to infinity) to [0 1]
• Sharpening function to make critical points non-degenerate
![Page 22: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/22.jpg)
Navigation function • Final navigation function on sphere world
![Page 23: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/23.jpg)
Navigation function • Implementation of navigation function on
sphere world
![Page 24: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/24.jpg)
Navigation function • Code section
clear all ;x= -10:0.1:10;y= -10:0.1:10; x_goal = 8;y_goal = 8;K= 4;nav_fxn = zeros(length(x),length(y));lambda = 2;for i = 1 :length(x) for j = 1:length(y) beta = beta_function(x(i),y(j)); dist_goal = norm([x(i)-x_goal y(j)-y_goal],2); radius = norm([x(i) y(j)],2); if(radius>10) nav_fxn(i,j) = 1; else nav_fxn(i,j) = dist_goal^2/(dist_goal^(2*K) + lambda*abs(beta))^(1/K); end endend
![Page 25: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/25.jpg)
Navigation function
• Conversion from star-shaped set to sphere shaped set
• This conversion is essential for representation of object in real world.
![Page 26: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/26.jpg)
References
• [1] Howie Choset et al, Principle of robot Motion-Theory, Algorithms and Implementation,
• [2]Elon Rimon, Daniel E Koditschek, Exact Robot Navigation Using Artificial Potential Functions
![Page 27: Final Project Presentation on autonomous mobile robot](https://reader036.vdocuments.net/reader036/viewer/2022081512/568161ca550346895dd1b132/html5/thumbnails/27.jpg)
Thank You