Git Product home page Git Product logo

rtt-algorithm's Introduction

RTT_ALGORITHM

Implementation of RTT Algorithm for robot motion plannig with MATLAB and CoppeliaSim.

I defined a "goal area" to simulate the set goal, in order to get faster results.
I bias the sampler towards the goal, if the sampled point is within the tolerance (0.01 - 0.02), then it is consider as the goal.
This way the algorithm is much faster and finds the goal in almost all cases. The algorithm can be found in the Modern Robotics book.

Other functions that I use:

Closest Node: outputs Xnearest, calculates EuclideanD of Xsamp and all the nodes.
LocalPlanner: outputs Xnew and if there is any collisions. Checks if the new segment line collides with any circle.
InterX: function available in Matlab to find intersections of two curves ("polyxpoly" also available).
MakePath: retrieves the path from the goal to the start of the graph.
Sampler: random uniform distribution number between -0.5 and 0.5. If the number is within the "goal area" then Xsamp = Xgoal.
RandCost/Hcost: random uniform distribution number within certain limits.
EuclideanD: Euclidean distance of two points in space.

CoppeliaSim example: ScreenshotCoppelia

MATLAB example 1: ScreenshotGoal1

MATLAB example 2: ScreenshotGoal2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.