Git Product home page Git Product logo

mobilerobotics's Issues

Gallery potential field and wavefront

Use functions created by potential field and wavefront members to solve the gallery review problem. Add gallery map to the environments folder, and reuse existing or move new controllers for each to the controller folder.

ICP Scan Registration

Evaluate 2D scan registration methods and either code up a clean simple one, or select the best available one to use (fastest, most reliable). Ensure a set of options are available to be set for how to use the scan registration method, and tune the options for some generic sets of laser scanner and Kinect (2D) parameters.

Voronoi

Create an example motion planner that uses the Voronoi decomposition to find a safe path through the environment. Can be an omni wheel robot that follows lines exactly.

Kalman filter

The three kalman filter examples need to use a common kalman filter function, taking in the state space model, state, measurement etc. Examples need to be easily selectable.

Trapezoid and other decomps

Use standard environments in conjunction with other planner issues. Modularize the decomposition step, and use the trapezoid and any other available methods described in class (delauney, for example).

Visibility graph generation

Speed up collision checking, generate large visibility graphs quickly, only check edges that could be a part of a shortest path through the environment. Test scalability and make code functionalized and efficient.

Trajectories

Functionalize and allow any motion model to define motions. Define a class of input functions that generate particular trajectories (swerves, nudges, lane changes, corners).

Fast SLAM

Modularize code and create a Rao-Blackwellized particle filter function for Fast-SLAM. Confirm correct operation of resampling step and run on different feature maps and with different sensor and motion models. Possible extension to FastSLAM 2.0 motion updates would be interesting.

Gyro covariance estimation

Gyro data should be moved to a datasets folder, and the gyro sim should be cleaned up and added as an example.

Graph Search

Organize the shortest_path function to accept a heuristic for A-star, and flags to run breadth first, depth first, Dijkstra's and A-star using the same code. Experiment with graph size and identify any efficiencies that can be exploited (sparse connectivity matrices, or other methods to define the shortest path problem that don't require large memory).

Potential Fields

Coordinate with other planner methods to use common environments and environment generators. Make functions of potential and gradient calculations, and define controllers to use gradient to drive common robots.

Nonlinear steering

Generalize and functionalize nonlinear steering example to not just work on error dynamics but to work on any line segment (or if possible any curve for which a shortest distance to curve function can be defined), with bicycle model. Recreate current example, and add examples for driving around a course of line segments.

Scanner and inversescanner model refinement

Laser scanner models need to be cleaned up, added to sensor, and made efficient. Bresenham should be an option in the model and the code for it is now a utility, and example codes should be added.

Unscented Kalman Filter

Example needs to be improved and filter needs to be tuned to work as well as possible. Code to be functionalized and optimized.

Particle localization

Working with Particle Filter issues owner, move feature selection methods to a good folder in environments, then redo examples to use Particle filter function, and motion and measurement models. Test multiple configurations.

GPS GDOP needs to be organized.

GDOP example relies on helper GPS functions. These helpers should be in utilities, and the GDOP code needs to be cleaned up and added as an example.

EKF SLAM

Convert example to use EKF function created by another team member, make measurement and motion models modular, improve gradient construction and resize map efficiently as new features are observed. Extend example to different maps, and different sensor models.

Wavefront

Convert wavefront to use standard environments (use maps or functions to be added to environments folder), make efficient if possible and test on small and large environments. Create a function that computes the wavefront for any binary array (example exists in gallery_wavefront, one of the review exercises).

LQR-LQT

Convert LQR and LQT code to functions and redo examples with different linear motion and measurement models. Add different desired trajectories and define standard plotting for vehicle control.

Probabilistic roadmaps

Convert to functions the sampling methods, investigate efficiency of sampling approaches. Move environment generation to environment and develop multiple examples with different environments.

EKF Localization

Working with EKF issues owner, move feature selection methods to a good folder in environments, then redo examples to use EKF function, and motion and measurement models. Test multiple configurations.

Error ellipse

The error ellipse function is a utility now, and the example should use it. Some more interesting animation of sampling or varying the covariance would be nice.

EKF

The EKF should be a function that uses motion and measurement models and their derivatives. Needs to work with RANSAC, SLAM, Localization.

Particle filter

Needs to be functionalized, and made more efficient. Multiple examples are needed. Must work for flyover example, and feature localization.

Linear programming

Convert script into functional form, using any linear models for motion and measurement, and adding in constraints on states in an automatic way. Define an example that better exemplifies a linear robotics problem.

RANSAC

Convert example to run on EKF measurement update, simplify example and present more clearly the stages of the RANSAC algorithm, make a ransac function that can be used on any set of data with an update function specified through a function handle.

Mapping

Functionalize occupancy grid mapping with inverse measurement models.Test on multiple environments, and with different sensor options. Use inverse measurement models for lidar, sonar in both windowed block update mode and bresenham ray trace mode. Test on both small and large maps.

Nonlinear programming

Create different scenarios and collision avoidance constraints that can be included in the nonlinear programming approach. Change vehicle models, desired trajectories and horizons easily.

Bayes filter

Should be reorganized, a bayes filter function should be made and the example should use it. The plotting could be nicer too. And a different example might also be useful.

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.