Presentation is loading. Please wait.

Presentation is loading. Please wait.

Final Project Presentation on autonomous mobile robot

Similar presentations


Presentation on theme: "Final Project Presentation on autonomous mobile robot"— Presentation transcript:

1 Final Project Presentation on autonomous mobile robot
Submitted to Prof, Jaebyung Park Robotics Lab Submitted by Ansu Man Singh Student ID ( )

2 Outline Title Objective Procedure Binary Image
Attractive Potential field Repulsive Potential field Total field Gradient descent Navigation function

3 Title Path planning using attractive and Reflective potential field

4 Objective To generate a path for mobile robot using attractive and repulsive potential field

5 Procedure Goal Position Attractive Potential field Binary Image
Repulsive Potential field Start Position Gradient Descent Algorithm Required Path

6 Binary Image Binary Image of 200 by 200 pixel is taken
1’ will represent free space, 0’s will represent obstacle space example Obstacles

7 Attractive Potential Field
The Attractive Potential field is generated using conic and quadratic functions Quadratic Conic

8 Attractive Potential Field
Attractive Potential function Goal Position

9 Attractive Potential Field
Code Section goal_pos = [ ]; 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

10 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

11 Repulsive Potential Field

12 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; Uref(i+k,j+p)= 8; end Uref(i,j) = Uref(i,j) +0;

13 Total Field Total Potential field is addition of attractive and Repulsive field +

14 Gradient Descent Algorithms used to find the path in the field
Gradient descent always follows negative slope Input: 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

15 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;

16 Gradient Descent Contour map of field with path Start point = (0,80)

17 Gradient Descent Path 2

18 Gradient Descent Local Minima problem

19 Gradient Descent Local Minima problem can be using navigation function
Navigation function definition A function is called a navigation function if it is smooth (or at least Ck for k ≥ 2), has a unique minimum at qgoal in the connected component of the free space that contains qgoal, is uniformly maximal on the boundary of the free space, and is Morse.

20 Navigation function Navigation function on sphere world
Obstacle functions Distance to goal function

21 Navigation function Switch function which is used to map from (0 to infinity) to [0 1] Sharpening function to make critical points non-degenerate

22 Navigation function Final navigation function on sphere world

23 Navigation function Implementation of navigation function on sphere world

24 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

25 Navigation function Conversion from star-shaped set to sphere shaped set This conversion is essential for representation of object in real world.

26 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

27 Thank You


Download ppt "Final Project Presentation on autonomous mobile robot"

Similar presentations


Ads by Google