Code Monkey home page Code Monkey logo

owly's Issues

Baseline planner to achieve desired behavior of vehicle

Motivation

Achieve/Plan the desired behavior of vehicle

  • when there is only free space and static geometry around, driving with 100% speed is permitted
  • drive with reduced speed (e.g. 50%) when there is a person in a certain radius of the vehicle
  • drive with reduced speed when the vehicle is in the vicinity of space that due to the sensor configuration cannot be classified as empty
  • stop if a human is blocking the vehicle

Make use of existing functionality

With the right setup, the GLC planner generates a trajectory that meets the desired behavior of the vehicle while still being "optimal" according to min-time/min-distance/min-curvature, ... etc.

Baseline planner

The road map described in the milestones leads to a non-trivial planner that produces trajectories in real-time, and is suitable to be used on the gokart in the dubendorf hangar

Suggested Milestone 1

  • car-like robot in SE2, time invariant scenario, i.e. 3D
  • create new controls for the vehicle to plan with both 50% and 100% speed
  • implement a TrajectoryRegionQuery that only permits planned trajectory segments that are driven with 50% of the speed within a certain radius of a central coordinate
  • visualize these regions and show that the vehicle drives slowly when passing through the region
  • show that the vehicle may prefer to go around such a region if min-time is the objective

Suggested Milestone 2

  • car-like robot in SE2, time dependent scenario, i.e. 4D
  • create new controls for the vehicle to plan with 0%, 50%, and 100% speed
  • use the TrajectoryRegionQuery from the previous milestone to simulate moving pedestrians that walk along the lane, or cross the lane (assume that the motion of the pedestrians is known)
  • visualize the planned behavior of the vehicle: drive slowly, and even stopped even when min-time is the objective

Suggested Milestone 3

  • adapt an existing map (for instance the Figure 8 map) to feature narrow/"tunnel-like" passages
  • detect the "exit from narrow passages" in the map (using whatever criteria) depending on the position of the vehicle
  • convert the "exit from narrow passages" into regions that permit only trajectories that are driven at 50% of the speed

Related work

Initial Trajectory Generation for the Gokart

Motivation

The task description is the result of the discussion on 2018-03-05.
The motivation for the approach described below is to have available a baseline trajectory planner for a fixed map as soon as possible that can be integrated with the gokart in the hangar.
The initial use of GLC in favor over RRT* was proposed by @ynager.

Background

  • The owly repository includes an implementation of the GLC planner. The state-space model for a car-like robot without slip is available.
  • At the moment, 1) the goal of the planner is updated via user interaction by mouse input, and 2) the simulated robot follows the trajectory at constant speed.

Task Description

  • Auto-generate goals for the planner so that the simulated robot loops indefinitely within a map. This can be achieved for instance by predefining a collection of way-points.
  • Update the goal and replan based on proximity (instead of elapsed time).
  • Modify the simulated robot to vary in velocity (between zero and max speed) so as to more realistically simulate the gokart's pure pursuit mode.
  • The planner should be demonstrated to work with a map that approximates the free space available to the gokart in the hangar.

Related Work

image
https://www.youtube.com/watch?v=SQuYCnUP5Fg
https://www.youtube.com/watch?v=-YZ1ro5RMVk

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.