Homework 1

Tangent bug implementation

Introduction

This page demonstrates an implementation of Tangent Bug algorithm. This algorithm is applied on a robot has a range sensor with a 360 degree infinite orientation solution. For the simplicity and realizing real robots, it obtains distances some certain angle steps.


From starting qstart point to qgoal, we expect our final result to be collision free shortest path. In this system our robot has some features by default:

  • Robot has 0.5m sensor range
  • Robot initially start from collision-free part of the platform.
  • Robot can obtain distance values at 30 steps. That means 360/30 = 12 degree steps.

Our simulation platform has also some default values:

  • simulation platform has some bounds. It is initially 10x10 m.
  • In the platform, obstacles are determined as distinct polygons.

This simlation has been implemented on MATLAB 2014b and all quantities are in meter, kilogram and second (MKS) format. Therefore, distances are in meter and angles are in radian.

To run the simulation, download the files and run the file named "ceng786_hw1.m". If you want, you can modify the arena_map, qstart, qgoal, sensor_range and more.. By the way, you can create your own arena by using draw_arena() that is inlcuded in the .zip file.

Simulation platform

In the left figure, Here you can see robot and some obstacles. Small blue circle is starting point of the robot. Actually robot is a point robot and it is omnidirectional. To emphasize it is depicted as it has some volume. x is the goal point. Black areas are obstacles. We want our algorithm to draw a collision-free path. In the right figure, you can see the path from start point to the goal.


Here are a small video shows how robot can find its way to goal.


Various Cases

Here you will see several cases, each shows different behaviour.

Case0


Here are a small video shows how robot can find its way to goal.

Case1


Here are a small video shows how robot can find its way to goal.

Case2


Here are a small video shows how robot can find its way to goal.

Case3


Here are a small video shows how robot can find its way to goal.


Discussion

Images are responsive sed @mdo but sum are more fun peratis unde omnis