All Projects → jvgomez → Fast_methods

jvgomez / Fast_methods

Licence: gpl-3.0
N-Dimensional Fast Methods: Fast Marching, Fast Sweeping, Group Marching, Fast Iterative, etc.

Projects that are alternatives of or similar to Fast methods

Algorithms Study Group
Study group for algorithms in Ruby, hosted at App Academy
Stars: ✭ 94 (-7.84%)
Mutual labels:  algorithm
Advisor
Open-source implementation of Google Vizier for hyper parameters tuning
Stars: ✭ 1,359 (+1232.35%)
Mutual labels:  algorithm
Onp
The implementations of "An O(NP) Sequence Comparison Algorithm"
Stars: ✭ 100 (-1.96%)
Mutual labels:  algorithm
Must Do Coding Questions
GeeksforGeeks Must-Do-Coding-Questions Solutions
Stars: ✭ 96 (-5.88%)
Mutual labels:  algorithm
Algorithms
Algorithms and data structures implemented in JavaScript with explanations, for further readings
Stars: ✭ 99 (-2.94%)
Mutual labels:  algorithm
Algorithms
A collection of algorithms and data structures
Stars: ✭ 11,553 (+11226.47%)
Mutual labels:  algorithm
Repository
个人学习知识库涉及到数据仓库建模、实时计算、大数据、Java、算法等。
Stars: ✭ 92 (-9.8%)
Mutual labels:  algorithm
Boswatch
Python Script to process input data from rtl_fm and multimon-NG - multiple Plugin support
Stars: ✭ 101 (-0.98%)
Mutual labels:  algorithm
Fracture
generative algorithm
Stars: ✭ 99 (-2.94%)
Mutual labels:  algorithm
Pydsa
Not maintained in favor of: https://github.com/TheAlgorithms/Python
Stars: ✭ 100 (-1.96%)
Mutual labels:  algorithm
Scalacaster
Purely Functional Algorithms and Data Structures in Scala
Stars: ✭ 1,342 (+1215.69%)
Mutual labels:  algorithm
Deep Reinforcement Learning With Pytorch
PyTorch implementation of DQN, AC, ACER, A2C, A3C, PG, DDPG, TRPO, PPO, SAC, TD3 and ....
Stars: ✭ 1,345 (+1218.63%)
Mutual labels:  algorithm
Javascript
A repository for All algorithms implemented in Javascript (for educational purposes only)
Stars: ✭ 16,117 (+15700.98%)
Mutual labels:  algorithm
Geogeometry
GeoGeometry is a set of algorithms and functions for manipulating geo hashes and geometric shapes with geo coordinates.
Stars: ✭ 94 (-7.84%)
Mutual labels:  algorithm
Tastylib
C++ implementations of data structures, algorithms, and system designs.
Stars: ✭ 101 (-0.98%)
Mutual labels:  algorithm
Competitive Programming
My solutions to problems from various competitive programming websites.
Stars: ✭ 93 (-8.82%)
Mutual labels:  algorithm
Earcut
The fastest and smallest JavaScript polygon triangulation library for your WebGL apps
Stars: ✭ 1,359 (+1232.35%)
Mutual labels:  algorithm
Acm Icpc Preparation
ACM-ICPC Preparation Guide
Stars: ✭ 1,377 (+1250%)
Mutual labels:  algorithm
Data Structures And Algorithms
A collection of some implementations of data structures and algorithms.
Stars: ✭ 101 (-0.98%)
Mutual labels:  algorithm
Leetcode
JavaScript AC solutions to problems on LeetCode
Stars: ✭ 100 (-1.96%)
Mutual labels:  algorithm

N-Dimensional Fast Methods Library v0.7

Authors:

  • Javier V. Gomez javvgomez at gmail.com
  • Jose Pardeiro jose.pardeiro at gmail.com
  • Pablo Gely

ALGORITHMS

All the theory and algorithms implemented in this library can be found in my PhD thesis. In fact, all the benchmarking data in chapter 4 has been produced with this library and it is stored on the experiments branch.

Fast Marching Methods:

  • FMM: Fast Marching Method with Binary Queue and Fibonacci Queue (binary by default).
  • FMM*: FMM with CostToGo heuristics.
  • SFMM: Simplified Fast Marhching Method.
  • SFMM*: SFMM with CostToGo heuristics..

O(n) Fast Marching Methods:

  • GMM: Group Marching Method.
  • UFMM: Untidy Fast Marching Method.
  • FIM: Fast Iterative Method.

Fast Sweeping Methods:

  • FSM: Fast Sweeping Method.
  • LSM: Lock Sweeping Method.
  • DDQM: Dynamic Double Queue Method.

Fast Marching Square motion planning algorithms:

  • FM2: Fast Marching Square Method.
  • FM2*: Fast Marching Square Star FM2 with CostToGo heuristics.

ROS

ROS nodes using this code (tested in the TurtleBot) are provided in a separate repo

DISCLAIMER and IMPORTANT NOTES

  • The code is not deeply tested. I've just tested it works for the cases I need. If you find any problem, have any question (or whatever), please write to: javvgomez at gmail.com

  • The compilation time is highly increased due to CImg library. Please, omit it when possible as it is used only for visualization purposes.

  • License GNU/GPL V3

  • This is a source code intended for my research. Although I want it to be useful for other people it is not intended to act as a library (there are many many points to improve). However, if you show interest or have feature request do not hesitate to contact me and I will try my best to improve the code for whoever needs it. I am also open to contributions and to create a formal library if necessary.

Documentation

Building the code

Check the building section of the documentation.

Design and folder structure

Check the design section of the documentation.

KNOWN ISSUES

  • Gradient Descent for FM2* could fail if very narrow passages are in the way of the path.
  • It seems that UFMM can fail in maps with random (or similar) velocity changes.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].