]> rtime.felk.cvut.cz Git - hubacji1/iamcar.git/log
hubacji1/iamcar.git
5 years agoFix missing nearest neighbour version check
Jiri Hubacek [Thu, 20 Sep 2018 13:11:12 +0000 (15:11 +0200)]
Fix missing nearest neighbour version check

5 years agoLog tree only when logging edges
Jiri Hubacek [Thu, 20 Sep 2018 13:10:48 +0000 (15:10 +0200)]
Log tree only when logging edges

5 years agoUpdate changelog
Jiri Hubacek [Thu, 20 Sep 2018 12:42:06 +0000 (14:42 +0200)]
Update changelog

5 years agoMerge branch 'feature/obstacle-distance'
Jiri Hubacek [Thu, 20 Sep 2018 12:41:04 +0000 (14:41 +0200)]
Merge branch 'feature/obstacle-distance'

5 years agoCompute obstacle cost for root/goal
Jiri Hubacek [Thu, 20 Sep 2018 12:35:15 +0000 (14:35 +0200)]
Compute obstacle cost for root/goal

5 years agoMake JSON edges output macro-dependent
Jiri Hubacek [Thu, 20 Sep 2018 12:34:48 +0000 (14:34 +0200)]
Make JSON edges output macro-dependent

5 years agoUpdate RRT planner adding child
Jiri Hubacek [Thu, 20 Sep 2018 12:03:03 +0000 (14:03 +0200)]
Update RRT planner adding child

When adding child node in RRT planner `next` method, compute node's
distance to obstacles.

5 years agoAdd obstacle cost method to RRT planner base
Jiri Hubacek [Thu, 20 Sep 2018 11:54:05 +0000 (13:54 +0200)]
Add obstacle cost method to RRT planner base

5 years agoUpdate RRTNode with obstacle cost
Jiri Hubacek [Thu, 20 Sep 2018 11:48:59 +0000 (13:48 +0200)]
Update RRTNode with obstacle cost

Update:
- constructor.

Create:
- getter,
- setter.

5 years agoMerge branch 'feature/time-dimension'
Jiri Hubacek [Thu, 20 Sep 2018 11:36:26 +0000 (13:36 +0200)]
Merge branch 'feature/time-dimension'

5 years agoUpdate `add_child` method with time
Jiri Hubacek [Thu, 20 Sep 2018 07:52:22 +0000 (09:52 +0200)]
Update `add_child` method with time

5 years agoUpdate RRTNode with time
Jiri Hubacek [Thu, 20 Sep 2018 07:44:27 +0000 (09:44 +0200)]
Update RRTNode with time

Update:
- getter,
- setter,
- constructor.

5 years agoFix 80 text width typo
Jiri Hubacek [Thu, 20 Sep 2018 06:18:13 +0000 (08:18 +0200)]
Fix 80 text width typo

5 years agoMerge branch 'feature/rebase-rrt'
Jiri Hubacek [Wed, 19 Sep 2018 14:30:46 +0000 (16:30 +0200)]
Merge branch 'feature/rebase-rrt'

5 years agoChange planning logic
Jiri Hubacek [Wed, 19 Sep 2018 14:25:46 +0000 (16:25 +0200)]
Change planning logic

There is change in the main planning loop. If the goal is not found in
`TMAX` interval, rebase to the nearest node and continue in planning
until goal found.

Also, in each "goal not found" iteration, log all RRT edges to JSON.

5 years agoRemove samples traversing in rebase method
Jiri Hubacek [Wed, 19 Sep 2018 13:50:23 +0000 (15:50 +0200)]
Remove samples traversing in rebase method

Samples are not added to RRT so no need to traverse when rebasing.

5 years agoReturn false if trying to rebase on root/goal
Jiri Hubacek [Wed, 19 Sep 2018 12:35:11 +0000 (14:35 +0200)]
Return false if trying to rebase on root/goal

5 years agoFix Karaman2011 next steer collide behaviour
Jiri Hubacek [Wed, 19 Sep 2018 11:59:57 +0000 (13:59 +0200)]
Fix Karaman2011 next steer collide behaviour

Only rewire when connected.

Only reparent if old parent exists.

When next steer node `ns` introduces collision, remove `ns`'s parent,
and remove `ns` from `iy_` nearest neighbour structure.

5 years agoFix possible overflow in `add_iy` method
Jiri Hubacek [Wed, 19 Sep 2018 11:26:57 +0000 (13:26 +0200)]
Fix possible overflow in `add_iy` method

5 years agoFix scaling for `iy_` nearest neighbour structure
Jiri Hubacek [Wed, 19 Sep 2018 10:56:46 +0000 (12:56 +0200)]
Fix scaling for `iy_` nearest neighbour structure

5 years agoFix omp reduction in collide
Jiri Hubacek [Wed, 19 Sep 2018 10:19:24 +0000 (12:19 +0200)]
Fix omp reduction in collide

5 years agoFix LaValle1998 next steer collide behaviour
Jiri Hubacek [Wed, 19 Sep 2018 10:07:49 +0000 (12:07 +0200)]
Fix LaValle1998 next steer collide behaviour

When next steer node `ns` introduces collision, remove `ns`'s parent,
and remove `ns` from `iy_` nearest neighbour structure. When collision
free, continue.

5 years agoRemove goal parent when goal not found
Jiri Hubacek [Wed, 19 Sep 2018 10:06:56 +0000 (12:06 +0200)]
Remove goal parent when goal not found

5 years agoFix reset visited_ in `rlog`
Jiri Hubacek [Wed, 19 Sep 2018 10:05:35 +0000 (12:05 +0200)]
Fix reset visited_ in `rlog`

5 years agoFix scaling for `iy_` nearest neighbour structure
Jiri Hubacek [Wed, 19 Sep 2018 09:59:45 +0000 (11:59 +0200)]
Fix scaling for `iy_` nearest neighbour structure

5 years agoMove sample procedure definitions to header file
Jiri Hubacek [Wed, 19 Sep 2018 08:27:18 +0000 (10:27 +0200)]
Move sample procedure definitions to header file

5 years agoAdd log tree structure/methods
Jiri Hubacek [Wed, 19 Sep 2018 05:33:16 +0000 (07:33 +0200)]
Add log tree structure/methods

5 years agoAdd remove parent method to RRTNode
Jiri Hubacek [Tue, 18 Sep 2018 10:33:09 +0000 (12:33 +0200)]
Add remove parent method to RRTNode

5 years agoAdd rebase method - rebase RRT to another node
Jiri Hubacek [Mon, 17 Sep 2018 16:38:30 +0000 (18:38 +0200)]
Add rebase method - rebase RRT to another node

5 years agoChange tlog to log elapsed time (not current)
Jiri Hubacek [Mon, 17 Sep 2018 16:17:48 +0000 (18:17 +0200)]
Change tlog to log elapsed time (not current)

5 years agoFix findt method
Jiri Hubacek [Mon, 17 Sep 2018 16:15:14 +0000 (18:15 +0200)]
Fix findt method

5 years agoAdd deleted nodes vector to RRTBase
Jiri Hubacek [Mon, 17 Sep 2018 15:35:54 +0000 (17:35 +0200)]
Add deleted nodes vector to RRTBase

5 years agoAdd method find trajectory (backward) from node
Jiri Hubacek [Fri, 24 Aug 2018 13:56:10 +0000 (15:56 +0200)]
Add method find trajectory (backward) from node

5 years agoAdd obstacle's distance to node method
Jiri Hubacek [Fri, 24 Aug 2018 08:41:06 +0000 (10:41 +0200)]
Add obstacle's distance to node method

5 years agoFix typo in obstacle header file
Jiri Hubacek [Fri, 24 Aug 2018 08:10:24 +0000 (10:10 +0200)]
Fix typo in obstacle header file

5 years agoUpdate changelog
Jiri Hubacek [Mon, 17 Sep 2018 14:15:14 +0000 (16:15 +0200)]
Update changelog

5 years agoFix not deleted nodes by steer
Jiri Hubacek [Mon, 17 Sep 2018 14:05:22 +0000 (16:05 +0200)]
Fix not deleted nodes by steer

This commit fix nodes by steer deletion for Karaman2011.

See also: 0bf7e109a6a94bf0224530b06f916f71d91cf83e

5 years agoSplit `rewire`, `connect` from `next` procedure
Jiri Hubacek [Mon, 17 Sep 2018 13:56:41 +0000 (15:56 +0200)]
Split `rewire`, `connect` from `next` procedure

5 years agoFix not deleted nodes by steer
Jiri Hubacek [Mon, 17 Sep 2018 13:06:22 +0000 (15:06 +0200)]
Fix not deleted nodes by steer

Procedure `steer` returns the vector of the nodes (exactly pointers
initialized by `new`). Only used nodes are inserted into RRT and other
structures, and therefore deleted by destructor.

This commit fix behaviour in such a way that not used nodes (colliding
or after goal found) are directly deleted.

5 years agoAdd next method as virtual in RRTBase
Jiri Hubacek [Mon, 17 Sep 2018 07:12:30 +0000 (09:12 +0200)]
Add next method as virtual in RRTBase

5 years agoMove mem free to RRTBase destructor
Jiri Hubacek [Mon, 17 Sep 2018 07:07:24 +0000 (09:07 +0200)]
Move mem free to RRTBase destructor

5 years agoFix test script to enable parallel testing
Jiri Hubacek [Tue, 11 Sep 2018 08:02:55 +0000 (10:02 +0200)]
Fix test script to enable parallel testing

5 years agoIncrease font size in plot
Jiri Hubacek [Tue, 11 Sep 2018 07:57:17 +0000 (09:57 +0200)]
Increase font size in plot

5 years agoUpdate changelog
Jiri Hubacek [Mon, 3 Sep 2018 13:18:05 +0000 (15:18 +0200)]
Update changelog

5 years agoParallelize near vertices function
Jiri Hubacek [Mon, 3 Sep 2018 13:04:09 +0000 (15:04 +0200)]
Parallelize near vertices function

5 years agoAdd near vertices version 2
Jiri Hubacek [Mon, 3 Sep 2018 11:09:52 +0000 (13:09 +0200)]
Add near vertices version 2

Version 2 of near vertices functions consider same structure as used in
nearest neighbour function version 2 (`nn3`).

5 years agoFix parallel nearest neighbour search
Jiri Hubacek [Sat, 1 Sep 2018 11:24:11 +0000 (13:24 +0200)]
Fix parallel nearest neighbour search

User-defined reduction needed for proper functionality.

5 years agoAdd success rate plot for single core
Jiri Hubacek [Thu, 30 Aug 2018 12:14:10 +0000 (14:14 +0200)]
Add success rate plot for single core

5 years agoAdd count existing vars function
Jiri Hubacek [Thu, 30 Aug 2018 12:12:34 +0000 (14:12 +0200)]
Add count existing vars function

5 years agoAdd general plot module
Jiri Hubacek [Thu, 30 Aug 2018 07:47:00 +0000 (09:47 +0200)]
Add general plot module

This python module contains procedures and functions to ease plots.

5 years agoMerge branch 'feature/omp'
Jiri Hubacek [Thu, 23 Aug 2018 13:22:39 +0000 (15:22 +0200)]
Merge branch 'feature/omp'

5 years agoUpdate changelog, readme
Jiri Hubacek [Thu, 23 Aug 2018 13:22:28 +0000 (15:22 +0200)]
Update changelog, readme

5 years agoUpdate changelog (build with Ninja)
Jiri Hubacek [Thu, 23 Aug 2018 11:53:52 +0000 (13:53 +0200)]
Update changelog (build with Ninja)

5 years agoAdd OMP parallelization for nearest neighbour
Jiri Hubacek [Sun, 8 Jul 2018 23:05:58 +0000 (01:05 +0200)]
Add OMP parallelization for nearest neighbour

5 years agoAdd OMP parallelization for collide procedure
Jiri Hubacek [Sun, 8 Jul 2018 19:31:38 +0000 (21:31 +0200)]
Add OMP parallelization for collide procedure

5 years agoFix memory free and return in collide method
Jiri Hubacek [Sat, 7 Jul 2018 14:14:49 +0000 (16:14 +0200)]
Fix memory free and return in collide method

- Get for loop ready for Open MP.

5 years agoAdd OpenMP to cmake file, update readme
Jiri Hubacek [Fri, 6 Jul 2018 12:56:09 +0000 (14:56 +0200)]
Add OpenMP to cmake file, update readme

5 years agoMerge branch 'feature/refactor'
Jiri Hubacek [Thu, 23 Aug 2018 11:48:07 +0000 (13:48 +0200)]
Merge branch 'feature/refactor'

5 years agoBuild with ninja
Jiri Hubacek [Wed, 11 Jul 2018 14:56:12 +0000 (16:56 +0200)]
Build with ninja

5 years agoUse nn2 in build script
Jiri Hubacek [Sun, 8 Jul 2018 23:30:50 +0000 (01:30 +0200)]
Use nn2 in build script

5 years agoExtend cost plot by plotting #nodes
Jiri Hubacek [Sat, 7 Jul 2018 17:22:55 +0000 (19:22 +0200)]
Extend cost plot by plotting #nodes

5 years agoUpdate readme with commands for batch tests
Jiri Hubacek [Sat, 7 Jul 2018 13:55:09 +0000 (15:55 +0200)]
Update readme with commands for batch tests

5 years agoSet planner iterations to fixed time limit
Jiri Hubacek [Thu, 5 Jul 2018 08:08:24 +0000 (10:08 +0200)]
Set planner iterations to fixed time limit

5 years agoFix goal found parameters
Jiri Hubacek [Thu, 5 Jul 2018 07:34:41 +0000 (09:34 +0200)]
Fix goal found parameters

5 years agoAdd elapsed time to JSON output, plot
Jiri Hubacek [Wed, 11 Jul 2018 18:26:04 +0000 (20:26 +0200)]
Add elapsed time to JSON output, plot

5 years agoMerge branch 'feature/index-y'
Jiri Hubacek [Tue, 10 Jul 2018 21:04:14 +0000 (23:04 +0200)]
Merge branch 'feature/index-y'

5 years agoAdd nearest neighbour version macros
Jiri Hubacek [Tue, 10 Jul 2018 20:58:57 +0000 (22:58 +0200)]
Add nearest neighbour version macros

5 years agoAdd nn3 procedure
Jiri Hubacek [Tue, 10 Jul 2018 20:45:05 +0000 (22:45 +0200)]
Add nn3 procedure

5 years agoAdd indexing by y array
Jiri Hubacek [Tue, 10 Jul 2018 19:17:43 +0000 (21:17 +0200)]
Add indexing by y array

5 years agoLog number of samples to cerr
Jiri Hubacek [Tue, 10 Jul 2018 14:39:31 +0000 (16:39 +0200)]
Log number of samples to cerr

5 years agoFix typo
Jiri Hubacek [Sun, 8 Jul 2018 23:03:52 +0000 (01:03 +0200)]
Fix typo

5 years agoMerge branch 'feature/nn2'
Jiri Hubacek [Sun, 8 Jul 2018 23:00:39 +0000 (01:00 +0200)]
Merge branch 'feature/nn2'

5 years agoUpdate changelog
Jiri Hubacek [Sun, 8 Jul 2018 23:00:32 +0000 (01:00 +0200)]
Update changelog

5 years agoFix nn1 procedure parameters
Jiri Hubacek [Sun, 8 Jul 2018 22:56:13 +0000 (00:56 +0200)]
Fix nn1 procedure parameters

- Update root node to vector of nodes (nn2 compatibility).

5 years agoAdd nn2 procedure
Jiri Hubacek [Sun, 8 Jul 2018 22:34:26 +0000 (00:34 +0200)]
Add nn2 procedure

- Nearest neighbour serch over `nodes()`.

5 years agoFix cost plot null content
Jiri Hubacek [Sat, 7 Jul 2018 12:19:50 +0000 (14:19 +0200)]
Fix cost plot null content

5 years agoAdd cost plot script
Jiri Hubacek [Sat, 7 Jul 2018 11:54:29 +0000 (13:54 +0200)]
Add cost plot script

5 years agoEnable plot commenting in test script
Jiri Hubacek [Sat, 7 Jul 2018 11:49:37 +0000 (13:49 +0200)]
Enable plot commenting in test script

5 years agoLog number of nodes to cerr
Jiri Hubacek [Fri, 6 Jul 2018 13:26:58 +0000 (15:26 +0200)]
Log number of nodes to cerr

5 years agoAdd number of nodes log
Jiri Hubacek [Fri, 6 Jul 2018 13:26:37 +0000 (15:26 +0200)]
Add number of nodes log

5 years agoLog costs and seconds to cerr
Jiri Hubacek [Fri, 6 Jul 2018 13:13:28 +0000 (15:13 +0200)]
Log costs and seconds to cerr

5 years agoAdd seconds log
Jiri Hubacek [Fri, 6 Jul 2018 13:13:05 +0000 (15:13 +0200)]
Add seconds log

5 years agoMove JSON related declarations to top
Jiri Hubacek [Fri, 6 Jul 2018 13:11:43 +0000 (15:11 +0200)]
Move JSON related declarations to top

5 years agoAdd JSON log macros
Jiri Hubacek [Fri, 6 Jul 2018 08:52:28 +0000 (10:52 +0200)]
Add JSON log macros

5 years agoChange width of perpendicular scenario
Jiri Hubacek [Fri, 6 Jul 2018 08:51:50 +0000 (10:51 +0200)]
Change width of perpendicular scenario

5 years agoMerge branch 'feature/aux-scripts'
Jiri Hubacek [Fri, 6 Jul 2018 09:04:10 +0000 (11:04 +0200)]
Merge branch 'feature/aux-scripts'

5 years agoAdd auxiliary build and test scripts
Jiri Hubacek [Fri, 6 Jul 2018 09:02:10 +0000 (11:02 +0200)]
Add auxiliary build and test scripts

5 years agoMerge branch 'feature/compile-macros'
Jiri Hubacek [Thu, 5 Jul 2018 12:14:27 +0000 (14:14 +0200)]
Merge branch 'feature/compile-macros'

5 years agoUpdate changelog, readme
Jiri Hubacek [Thu, 5 Jul 2018 12:14:06 +0000 (14:14 +0200)]
Update changelog, readme

5 years agoInclude compile macros to cmake file
Jiri Hubacek [Thu, 5 Jul 2018 11:46:16 +0000 (13:46 +0200)]
Include compile macros to cmake file

5 years agoAdd cumulative cost macro, fix [Kuwata2008] costs
Jiri Hubacek [Thu, 5 Jul 2018 10:55:47 +0000 (12:55 +0200)]
Add cumulative cost macro, fix [Kuwata2008] costs

5 years agoAdd RRT procedures macros
Jiri Hubacek [Thu, 5 Jul 2018 10:35:23 +0000 (12:35 +0200)]
Add RRT procedures macros

- Use macros in the RRT planner based on [LaValle1998] paper.
- Use macros in the RRT planner based on [Kuwata2008] paper.
- Use macros in the RRT* planner based on [Karaman2011] paper.
- Use macros in the testing RRT* planner T1.

5 years agoMove goal first macro to header file
Jiri Hubacek [Thu, 5 Jul 2018 10:20:49 +0000 (12:20 +0200)]
Move goal first macro to header file

5 years agoMove maximum time constant to header file
Jiri Hubacek [Thu, 5 Jul 2018 10:17:20 +0000 (12:17 +0200)]
Move maximum time constant to header file

5 years agoAdd macro specifying used planner
Jiri Hubacek [Thu, 5 Jul 2018 10:15:58 +0000 (12:15 +0200)]
Add macro specifying used planner

5 years agoAdd compile header file
Jiri Hubacek [Thu, 5 Jul 2018 10:14:36 +0000 (12:14 +0200)]
Add compile header file

5 years agoFix legend in plot
Jiri Hubacek [Thu, 5 Jul 2018 08:57:47 +0000 (10:57 +0200)]
Fix legend in plot

5 years agoMerge branch 'release/0.1.0'
Jiri Hubacek [Thu, 5 Jul 2018 08:24:13 +0000 (10:24 +0200)]
Merge branch 'release/0.1.0'

5 years agoRelease version 0.1.0 v0.1.0
Jiri Hubacek [Thu, 5 Jul 2018 08:23:16 +0000 (10:23 +0200)]
Release version 0.1.0

### Added
- Changelog, license, readme.
- Class for RRT nodes.
- Base class for RRT planners.
- RRT primitive procedures:
        - cost,
        - nearest neigbour search,
        - samling procedure,
        - steering procedure.
- RRT planner based on [LaValle1998] paper.
- Main program (input/output) with cmake file.
- Obstacles class (circle obstacle, segment obstacle).
- Collision check function to base RRT class.
- Bicycle car model used for collision check with car frame.
- Near vertices procedure.
- RRT\* planner based on [Karaman2011] paper.
- Alternative steering procedure.
- Reeds and Shepp cost, steering procedures.
- Bicycle car simulation.
- Closed loop controller with PI for speed and PurePursuit based on
  [Coulter1992] paper for steering.
- Testing parking scenarios.
- Plot python script.
- RRT planner based on [Kuwata2008] paper.
- RRT testing planner `T1`. First node of steer add as in RRT\* (connect and
  rewire procedures) then the rest stick to the first node without rewiring.
- Cost log and legend with cost in plot.

### Changed
- Adding JSON ouput for edges, samples.
- Steer procedure `st2` use bicycle car model.

### Fixed
- Memory leaks.
- RRTNode heading overflow in constructor.
- Sampling range in `sa1` algorithm.

5 years agoMerge branch 'feature/cost-log'
Jiri Hubacek [Thu, 5 Jul 2018 08:10:00 +0000 (10:10 +0200)]
Merge branch 'feature/cost-log'