You can subscribe to this list here.
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2011 |
Jan
(4) |
Feb
(6) |
Mar
(16) |
Apr
(9) |
May
(6) |
Jun
(2) |
Jul
|
Aug
(14) |
Sep
(10) |
Oct
(12) |
Nov
(15) |
Dec
(3) |
2012 |
Jan
(15) |
Feb
(9) |
Mar
(10) |
Apr
(19) |
May
(20) |
Jun
(14) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
(3) |
Nov
(1) |
Dec
(2) |
2013 |
Jan
(13) |
Feb
(8) |
Mar
(11) |
Apr
(20) |
May
(11) |
Jun
(11) |
Jul
(12) |
Aug
(3) |
Sep
|
Oct
(7) |
Nov
(9) |
Dec
(1) |
2014 |
Jan
(1) |
Feb
(4) |
Mar
(13) |
Apr
(5) |
May
(10) |
Jun
(27) |
Jul
(17) |
Aug
|
Sep
(8) |
Oct
(12) |
Nov
(19) |
Dec
(31) |
2015 |
Jan
(21) |
Feb
(11) |
Mar
(15) |
Apr
(1) |
May
(15) |
Jun
(11) |
Jul
(23) |
Aug
(6) |
Sep
(28) |
Oct
(17) |
Nov
(18) |
Dec
(1) |
2016 |
Jan
(14) |
Feb
(42) |
Mar
(20) |
Apr
(10) |
May
(11) |
Jun
(3) |
Jul
(9) |
Aug
(6) |
Sep
(6) |
Oct
(8) |
Nov
|
Dec
(1) |
2017 |
Jan
(3) |
Feb
(1) |
Mar
(2) |
Apr
(6) |
May
(11) |
Jun
(5) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(4) |
Nov
(1) |
Dec
(8) |
2018 |
Jan
(8) |
Feb
(1) |
Mar
|
Apr
(2) |
May
(3) |
Jun
(8) |
Jul
(21) |
Aug
(7) |
Sep
(12) |
Oct
(4) |
Nov
(3) |
Dec
(2) |
2019 |
Jan
(9) |
Feb
(7) |
Mar
(5) |
Apr
(1) |
May
(4) |
Jun
(1) |
Jul
(2) |
Aug
(2) |
Sep
(2) |
Oct
(5) |
Nov
(2) |
Dec
(5) |
2020 |
Jan
(5) |
Feb
(5) |
Mar
(9) |
Apr
|
May
(2) |
Jun
(10) |
Jul
(7) |
Aug
(1) |
Sep
|
Oct
(3) |
Nov
|
Dec
(1) |
2021 |
Jan
(4) |
Feb
(5) |
Mar
(2) |
Apr
(5) |
May
(1) |
Jun
|
Jul
(2) |
Aug
(13) |
Sep
(5) |
Oct
(5) |
Nov
(1) |
Dec
(1) |
2022 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
|
Nov
(1) |
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
From: Puttichai L. <l.p...@gm...> - 2015-09-23 07:35:05
|
Hi Mark, Thank you very much for your response. I have reimplemented all the things in C++ and it does help a lot. For the case of 2 to 6 DOFs, average running times (50 runs) were 0.138486, 0.929931, 5.91538, 17.1691, and 68.2369, respectively. However, I still wonder if this can be improved further when using KPIECE. I think that 70 s. is still too long for planning very simple motions for a 6-DOF robot. By the way, the projection I used was the robot's end-effector position and a norm of joint velocities (4D). To select cell size and propagation step size, I planned motions for the first two joints using difference combinations of cell size and propagation step size and select the pair that performed best. Is this order of running time normal for KPIECE for this kind of problems? I even suspect that my implementation has got something wrong. Do you have any further suggestion to improve the KPIECE's performance? Thank you so much. Regards, Puttichai On Tue, Sep 15, 2015 at 11:46 PM, Mark Moll <mm...@ri...> wrote: > Hi Puttichai, > > The best thing you can do to speed up KPIECE is to rewrite your code in > C++. If you use the python bindings a lot of data tends to be copied back > and forth. For low-level code that gets called a lot (like a > statePropagator) this has a huge impact. > > The next best thing you can do is to implement a control sampler that > samples controls more intelligently. There are several control-based > samplers (RRT, PDST, EST, SyclopRRT) that can use a steering function if > you provide one (derive from SteeredControlSampler). > > Mark > > > > > On Sep 15, 2015, at 1:05 AM, Puttichai Lertkultanon < > l.p...@gm...> wrote: > > > > Hi, > > > > I'm currently working on kinodynamic motion planning using KPIECE. > > My current goal is to plan a simple motion of a 6-DOF manipulator moving > from (0, 0, 0, 0, 0, 0) to (1, 1, 1, 1, 1, 1) under velcity and > acceleration bounds with no other obstacle in the environment. I'm writing > Python code and I modified the code from ompl/tests/control/test_control.py. > > > > For the statePropagator I employ the following simple rules: > > > > qnext = q + step*qd + 0.5*step*step*qdd > > qdnext = qd + step*qdd > > > > where qdd is my control input (joint acceleration), q and qd represent > joint value and velocity, step is the propagation step size. > > > > First, I started with planning for only the first two DOFs of the robot. > I set the threshold to be 0.1. With that, the best cell size and > propagation step size were both 0.05. The avarage running time was around > 0.4 s. However, the running time increased to ~1min and ~3min when moving > to 3 and 4 DOFs, respectively. The success rate of planning (within 5 min) > was dropped to below 50% for the case of 4 DOFs. Furthermore, when planning > for 5 and 6 DOFs, the planner did not find any solution in 10 min. > > > > I have also tried changing goal bias to 0.8 (instead of using the > default value 0.05). In case of 4 DOFs it helped improve success rate to a > little bit above 50% (max running time allowed was 5 min), However, it did > not help in the case of 5 and 6 DOFs. > > > > Do you have any suggestion on how I can improve the performance of > KPIECE? > > Thank you. > > > > > > Regards, > > > > Puttichai > > > ------------------------------------------------------------------------------ > > _______________________________________________ > > ompl-users mailing list > > omp...@li... > > https://lists.sourceforge.net/lists/listinfo/ompl-users > > |
From: Mark M. <mm...@ri...> - 2015-09-22 04:00:37
|
Anirudh, For completely arbitrary cost functions it is hard to give any kind of global optimality guarantees. I’d say that PRM* is probably your best bet, but give some of the other optimizing planners listed on http://ompl.kavrakilab.org/planners.html also a try. Try the ones that use the general cost framework. Mark > On Sep 21, 2015, at 10:24 PM, Anirudh Vemula <av...@nr...> wrote: > > Hey, > > I understand that mechanical work objective will give intuitive and more desirable paths. Maybe, I will give it a try and see how it turns out. > > But specifically, what I wanted to know was on what planners can I use an optimisation objective (encoding the costmap as a mechanical work optimisation objective function, for example) and obtain paths that optimise this objective? > > Thanks, > Anirudh > ________________________________________ > From: Mark Moll [mar...@gm...] on behalf of Mark Moll [mm...@ri...] > Sent: Monday, September 21, 2015 11:05 PM > To: Luis Torres > Cc: Anirudh Vemula; omp...@li... > Subject: Re: [ompl-users] Using Costmap for a planner in OMPL > > Actually, PRM *does* support planning over costmaps (Luis, perhaps this was done after you worked on the general cost infrastructure?). > > Anirudh, for some general background on optimal planning within OMPL, please read http://ompl.kavrakilab.org/optimalPlanning.html. > > Mark > > > >> On Sep 21, 2015, at 9:50 PM, Luis Torres <lgt...@gm...> wrote: >> >> RRT and PRM do not support planning that optimizes over costmaps. >> >> If you were to naively sum up the state costs along the path, then you would unfairly bias against paths with more states in them, even if they have the same overall path length in configuration space. This would result in the motion planner returning paths that are less desirable. >> >> The default mechanical work objective is most likely exactly what you're looking for, so I recommend you give it a try. >> >> On Mon, Sep 21, 2015 at 7:41 PM, Anirudh Vemula <av...@nr...> wrote: >> Hi Luis, >> >> Thanks a lot for helping out. >> >> How do I specify the costmap when I use a planner other than T-RRT (let's say RRT or PRM)? And is there an optimisation objective where the cost of the path is minimised (summing up cost of the states along the path)? >> >> Thanks, >> Anirudh >> From: Luis Torres [lgt...@gm...] >> Sent: Monday, September 21, 2015 10:30 PM >> To: Anirudh Vemula >> Cc: omp...@li... >> Subject: Re: [ompl-users] Using Costmap for a planner in OMPL >> >> Hi Anirudh, >> >> Regardless of the form of your costmap, you must have a function that maps a robot state to a cost value. In your case, you check which cell the robot state inhabits in your discretization, then look up the cost of that cell. You can use T-RRT to plan with such a costmap by creating a subclass of MechanicalWorkOptimizationObjective that overrides the method stateCost() with the routine I just described. Then, you specify this new objective to the T-RRT planner. >> >> On Mon, Sep 21, 2015 at 1:08 PM, Anirudh Vemula <av...@nr...> wrote: >> Hi, >> >> I have a 3D costmap for a 3D environment (let's say it is discretized into tiny cells where each one has a value depicting its cost). I want to know how I can integrate the costmap information into a planner in OMPL so that it results in a path that minimises the cost. >> >> I know that OMPL currently has a planner T-RRT which optimises a mechanical work metric when given a costmap, but I was curious on how to specify the costmap and the objective optimisation to any planner in OMPL? >> >> Any help would be greatly appreciated. >> >> Thanks, >> Anirudh >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> ompl-users mailing list >> omp...@li... >> https://lists.sourceforge.net/lists/listinfo/ompl-users >> >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> ompl-users mailing list >> omp...@li... >> https://lists.sourceforge.net/lists/listinfo/ompl-users > > |
From: Anirudh V. <av...@nr...> - 2015-09-22 03:24:46
|
Hey, I understand that mechanical work objective will give intuitive and more desirable paths. Maybe, I will give it a try and see how it turns out. But specifically, what I wanted to know was on what planners can I use an optimisation objective (encoding the costmap as a mechanical work optimisation objective function, for example) and obtain paths that optimise this objective? Thanks, Anirudh ________________________________________ From: Mark Moll [mar...@gm...] on behalf of Mark Moll [mm...@ri...] Sent: Monday, September 21, 2015 11:05 PM To: Luis Torres Cc: Anirudh Vemula; omp...@li... Subject: Re: [ompl-users] Using Costmap for a planner in OMPL Actually, PRM *does* support planning over costmaps (Luis, perhaps this was done after you worked on the general cost infrastructure?). Anirudh, for some general background on optimal planning within OMPL, please read http://ompl.kavrakilab.org/optimalPlanning.html. Mark > On Sep 21, 2015, at 9:50 PM, Luis Torres <lgt...@gm...> wrote: > > RRT and PRM do not support planning that optimizes over costmaps. > > If you were to naively sum up the state costs along the path, then you would unfairly bias against paths with more states in them, even if they have the same overall path length in configuration space. This would result in the motion planner returning paths that are less desirable. > > The default mechanical work objective is most likely exactly what you're looking for, so I recommend you give it a try. > > On Mon, Sep 21, 2015 at 7:41 PM, Anirudh Vemula <av...@nr...> wrote: > Hi Luis, > > Thanks a lot for helping out. > > How do I specify the costmap when I use a planner other than T-RRT (let's say RRT or PRM)? And is there an optimisation objective where the cost of the path is minimised (summing up cost of the states along the path)? > > Thanks, > Anirudh > From: Luis Torres [lgt...@gm...] > Sent: Monday, September 21, 2015 10:30 PM > To: Anirudh Vemula > Cc: omp...@li... > Subject: Re: [ompl-users] Using Costmap for a planner in OMPL > > Hi Anirudh, > > Regardless of the form of your costmap, you must have a function that maps a robot state to a cost value. In your case, you check which cell the robot state inhabits in your discretization, then look up the cost of that cell. You can use T-RRT to plan with such a costmap by creating a subclass of MechanicalWorkOptimizationObjective that overrides the method stateCost() with the routine I just described. Then, you specify this new objective to the T-RRT planner. > > On Mon, Sep 21, 2015 at 1:08 PM, Anirudh Vemula <av...@nr...> wrote: > Hi, > > I have a 3D costmap for a 3D environment (let's say it is discretized into tiny cells where each one has a value depicting its cost). I want to know how I can integrate the costmap information into a planner in OMPL so that it results in a path that minimises the cost. > > I know that OMPL currently has a planner T-RRT which optimises a mechanical work metric when given a costmap, but I was curious on how to specify the costmap and the objective optimisation to any planner in OMPL? > > Any help would be greatly appreciated. > > Thanks, > Anirudh > > ------------------------------------------------------------------------------ > > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users > > > > ------------------------------------------------------------------------------ > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Mark M. <mm...@ri...> - 2015-09-22 03:05:21
|
Actually, PRM *does* support planning over costmaps (Luis, perhaps this was done after you worked on the general cost infrastructure?). Anirudh, for some general background on optimal planning within OMPL, please read http://ompl.kavrakilab.org/optimalPlanning.html. Mark > On Sep 21, 2015, at 9:50 PM, Luis Torres <lgt...@gm...> wrote: > > RRT and PRM do not support planning that optimizes over costmaps. > > If you were to naively sum up the state costs along the path, then you would unfairly bias against paths with more states in them, even if they have the same overall path length in configuration space. This would result in the motion planner returning paths that are less desirable. > > The default mechanical work objective is most likely exactly what you're looking for, so I recommend you give it a try. > > On Mon, Sep 21, 2015 at 7:41 PM, Anirudh Vemula <av...@nr...> wrote: > Hi Luis, > > Thanks a lot for helping out. > > How do I specify the costmap when I use a planner other than T-RRT (let's say RRT or PRM)? And is there an optimisation objective where the cost of the path is minimised (summing up cost of the states along the path)? > > Thanks, > Anirudh > From: Luis Torres [lgt...@gm...] > Sent: Monday, September 21, 2015 10:30 PM > To: Anirudh Vemula > Cc: omp...@li... > Subject: Re: [ompl-users] Using Costmap for a planner in OMPL > > Hi Anirudh, > > Regardless of the form of your costmap, you must have a function that maps a robot state to a cost value. In your case, you check which cell the robot state inhabits in your discretization, then look up the cost of that cell. You can use T-RRT to plan with such a costmap by creating a subclass of MechanicalWorkOptimizationObjective that overrides the method stateCost() with the routine I just described. Then, you specify this new objective to the T-RRT planner. > > On Mon, Sep 21, 2015 at 1:08 PM, Anirudh Vemula <av...@nr...> wrote: > Hi, > > I have a 3D costmap for a 3D environment (let's say it is discretized into tiny cells where each one has a value depicting its cost). I want to know how I can integrate the costmap information into a planner in OMPL so that it results in a path that minimises the cost. > > I know that OMPL currently has a planner T-RRT which optimises a mechanical work metric when given a costmap, but I was curious on how to specify the costmap and the objective optimisation to any planner in OMPL? > > Any help would be greatly appreciated. > > Thanks, > Anirudh > > ------------------------------------------------------------------------------ > > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users > > > > ------------------------------------------------------------------------------ > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Luis T. <lgt...@gm...> - 2015-09-22 02:50:29
|
RRT and PRM do not support planning that optimizes over costmaps. If you were to naively sum up the state costs along the path, then you would unfairly bias against paths with more states in them, even if they have the same overall path length in configuration space. This would result in the motion planner returning paths that are less desirable. The default mechanical work objective is most likely exactly what you're looking for, so I recommend you give it a try. On Mon, Sep 21, 2015 at 7:41 PM, Anirudh Vemula <av...@nr...> wrote: > Hi Luis, > > Thanks a lot for helping out. > > How do I specify the costmap when I use a planner other than T-RRT (let's > say RRT or PRM)? And is there an optimisation objective where the cost of > the path is minimised (summing up cost of the states along the path)? > > Thanks, > Anirudh > ------------------------------ > *From:* Luis Torres [lgt...@gm...] > *Sent:* Monday, September 21, 2015 10:30 PM > *To:* Anirudh Vemula > *Cc:* omp...@li... > *Subject:* Re: [ompl-users] Using Costmap for a planner in OMPL > > Hi Anirudh, > > Regardless of the form of your costmap, you must have a function that maps > a robot state to a cost value. In your case, you check which cell the robot > state inhabits in your discretization, then look up the cost of that cell. > You can use T-RRT to plan with such a costmap by creating a subclass of > MechanicalWorkOptimizationObjective that overrides the method stateCost() > with the routine I just described. Then, you specify this new objective to > the T-RRT planner. > > On Mon, Sep 21, 2015 at 1:08 PM, Anirudh Vemula <av...@nr...> > wrote: > >> Hi, >> >> I have a 3D costmap for a 3D environment (let's say it is discretized >> into tiny cells where each one has a value depicting its cost). I want to >> know how I can integrate the costmap information into a planner in OMPL so >> that it results in a path that minimises the cost. >> >> I know that OMPL currently has a planner T-RRT which optimises a >> mechanical work metric when given a costmap, but I was curious on how to >> specify the costmap and the objective optimisation to any planner in OMPL? >> >> Any help would be greatly appreciated. >> >> Thanks, >> Anirudh >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> ompl-users mailing list >> omp...@li... >> https://lists.sourceforge.net/lists/listinfo/ompl-users >> >> > |
From: Anirudh V. <av...@nr...> - 2015-09-22 02:41:51
|
Hi Luis, Thanks a lot for helping out. How do I specify the costmap when I use a planner other than T-RRT (let's say RRT or PRM)? And is there an optimisation objective where the cost of the path is minimised (summing up cost of the states along the path)? Thanks, Anirudh ________________________________ From: Luis Torres [lgt...@gm...] Sent: Monday, September 21, 2015 10:30 PM To: Anirudh Vemula Cc: omp...@li... Subject: Re: [ompl-users] Using Costmap for a planner in OMPL Hi Anirudh, Regardless of the form of your costmap, you must have a function that maps a robot state to a cost value. In your case, you check which cell the robot state inhabits in your discretization, then look up the cost of that cell. You can use T-RRT to plan with such a costmap by creating a subclass of MechanicalWorkOptimizationObjective that overrides the method stateCost() with the routine I just described. Then, you specify this new objective to the T-RRT planner. On Mon, Sep 21, 2015 at 1:08 PM, Anirudh Vemula <av...@nr...<mailto:av...@nr...>> wrote: Hi, I have a 3D costmap for a 3D environment (let's say it is discretized into tiny cells where each one has a value depicting its cost). I want to know how I can integrate the costmap information into a planner in OMPL so that it results in a path that minimises the cost. I know that OMPL currently has a planner T-RRT which optimises a mechanical work metric when given a costmap, but I was curious on how to specify the costmap and the objective optimisation to any planner in OMPL? Any help would be greatly appreciated. Thanks, Anirudh ------------------------------------------------------------------------------ _______________________________________________ ompl-users mailing list omp...@li...<mailto:omp...@li...> https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Luis T. <lgt...@gm...> - 2015-09-22 02:30:17
|
Hi Anirudh, Regardless of the form of your costmap, you must have a function that maps a robot state to a cost value. In your case, you check which cell the robot state inhabits in your discretization, then look up the cost of that cell. You can use T-RRT to plan with such a costmap by creating a subclass of MechanicalWorkOptimizationObjective that overrides the method stateCost() with the routine I just described. Then, you specify this new objective to the T-RRT planner. On Mon, Sep 21, 2015 at 1:08 PM, Anirudh Vemula <av...@nr...> wrote: > Hi, > > I have a 3D costmap for a 3D environment (let's say it is discretized into > tiny cells where each one has a value depicting its cost). I want to know > how I can integrate the costmap information into a planner in OMPL so that > it results in a path that minimises the cost. > > I know that OMPL currently has a planner T-RRT which optimises a > mechanical work metric when given a costmap, but I was curious on how to > specify the costmap and the objective optimisation to any planner in OMPL? > > Any help would be greatly appreciated. > > Thanks, > Anirudh > > > ------------------------------------------------------------------------------ > > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users > > |
From: Anirudh V. <av...@nr...> - 2015-09-21 20:26:27
|
Hi, I have a 3D costmap for a 3D environment (let's say it is discretized into tiny cells where each one has a value depicting its cost). I want to know how I can integrate the costmap information into a planner in OMPL so that it results in a path that minimises the cost. I know that OMPL currently has a planner T-RRT which optimises a mechanical work metric when given a costmap, but I was curious on how to specify the costmap and the objective optimisation to any planner in OMPL? Any help would be greatly appreciated. Thanks, Anirudh |
From: Mor V. <mve...@gm...> - 2015-09-16 10:54:08
|
Solved the problem. Needed to include in the G++ LINKER the libraries ompl_app_base and ompl_app as well. Please update this in http://ompl.kavrakilab.org/buildSystem.html Thanks 2015-09-16 13:20 GMT+03:00 Mor Vered <mve...@gm...>: > Hi all, > > I am having a problem with running any of the omplapp code on eclipse. > I followed the instructions in > https://bitbucket.org/ompl/ompl/issues/13/how-to-start-after-installing > and am able to run all of the ompl demos but not the OMPL.app demos. > > I am able to run demo_SE3RigidBodyPlanning from the command line : > "./demo_SE3RigidBodyPlanning" without any problem. > > However, when writing the first line of code alone in eclipse: > "ompl::app::SE3RigidBodyPlanning setup;" > > I get the following errors : > Description Resource Path Location Type > undefined reference to `vtable for ompl::app::SE3RigidBodyPlanning' > OMPLAPP line 30, external location: > /usr/local/include/omplapp/apps/SE3RigidBodyPlanning.h C/C++ Problem > undefined reference to `vtable for ompl::app::SE3RigidBodyPlanning' > OMPLAPP line 36, external location: > /usr/local/include/omplapp/apps/SE3RigidBodyPlanning.h C/C++ Problem > undefined reference to `vtable for ompl::app::RigidBodyGeometry' OMPLAPP line > 57, external location: > /usr/local/include/omplapp/geometry/RigidBodyGeometry.h C/C++ Problem > undefined reference to `vtable for ompl::app::RigidBodyGeometry' OMPLAPP line > 62, external location: > /usr/local/include/omplapp/geometry/RigidBodyGeometry.h C/C++ Problem > undefined reference to > `ompl::app::RigidBodyGeometry::allocStateValidityChecker(boost::shared_ptr<ompl::base::SpaceInformation> > const&, boost::function<ompl::base::State const* (ompl::base::State const*, > unsigned int)> const&, bool)' OMPLAPP line 110, external location: > /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem > undefined reference to > `ompl::app::InferProblemDefinitionBounds(boost::shared_ptr<ompl::base::ProblemDefinition> > const&, boost::function<ompl::base::State const* (ompl::base::State const*, > unsigned int)> const&, double, double, unsigned int, > boost::shared_ptr<ompl::base::StateSpace> const&, ompl::app::MotionModel)' > OMPLAPP line 93, external location: > /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem > undefined reference to > `ompl::app::InferEnvironmentBounds(boost::shared_ptr<ompl::base::StateSpace> > const&, ompl::app::RigidBodyGeometry const&)' OMPLAPP line 88, external > location: /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem > undefined reference to > `ompl::app::allocGeometricStateProjector(boost::shared_ptr<ompl::base::StateSpace> > const&, ompl::app::MotionModel, boost::shared_ptr<ompl::base::StateSpace> > const&, boost::function<ompl::base::State const* (ompl::base::State const*, > unsigned int)> const&)' OMPLAPP line 117, external location: > /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem > make: *** [OMPLAPP] Error 1 OMPLAPP C/C++ Problem > > > Any ideas ? > > Thanks a lot, > > Mor > |
From: Mor V. <mve...@gm...> - 2015-09-16 10:20:45
|
Hi all, I am having a problem with running any of the omplapp code on eclipse. I followed the instructions in https://bitbucket.org/ompl/ompl/issues/13/how-to-start-after-installing and am able to run all of the ompl demos but not the OMPL.app demos. I am able to run demo_SE3RigidBodyPlanning from the command line : "./demo_SE3RigidBodyPlanning" without any problem. However, when writing the first line of code alone in eclipse: "ompl::app::SE3RigidBodyPlanning setup;" I get the following errors : Description Resource Path Location Type undefined reference to `vtable for ompl::app::SE3RigidBodyPlanning' OMPLAPP line 30, external location: /usr/local/include/omplapp/apps/SE3RigidBodyPlanning.h C/C++ Problem undefined reference to `vtable for ompl::app::SE3RigidBodyPlanning' OMPLAPP line 36, external location: /usr/local/include/omplapp/apps/SE3RigidBodyPlanning.h C/C++ Problem undefined reference to `vtable for ompl::app::RigidBodyGeometry' OMPLAPP line 57, external location: /usr/local/include/omplapp/geometry/RigidBodyGeometry.h C/C++ Problem undefined reference to `vtable for ompl::app::RigidBodyGeometry' OMPLAPP line 62, external location: /usr/local/include/omplapp/geometry/RigidBodyGeometry.h C/C++ Problem undefined reference to `ompl::app::RigidBodyGeometry::allocStateValidityChecker(boost::shared_ptr<ompl::base::SpaceInformation> const&, boost::function<ompl::base::State const* (ompl::base::State const*, unsigned int)> const&, bool)' OMPLAPP line 110, external location: /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem undefined reference to `ompl::app::InferProblemDefinitionBounds(boost::shared_ptr<ompl::base::ProblemDefinition> const&, boost::function<ompl::base::State const* (ompl::base::State const*, unsigned int)> const&, double, double, unsigned int, boost::shared_ptr<ompl::base::StateSpace> const&, ompl::app::MotionModel)' OMPLAPP line 93, external location: /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem undefined reference to `ompl::app::InferEnvironmentBounds(boost::shared_ptr<ompl::base::StateSpace> const&, ompl::app::RigidBodyGeometry const&)' OMPLAPP line 88, external location: /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem undefined reference to `ompl::app::allocGeometricStateProjector(boost::shared_ptr<ompl::base::StateSpace> const&, ompl::app::MotionModel, boost::shared_ptr<ompl::base::StateSpace> const&, boost::function<ompl::base::State const* (ompl::base::State const*, unsigned int)> const&)' OMPLAPP line 117, external location: /usr/local/include/omplapp/apps/AppBase.h C/C++ Problem make: *** [OMPLAPP] Error 1 OMPLAPP C/C++ Problem Any ideas ? Thanks a lot, Mor |
From: Mark M. <mm...@ri...> - 2015-09-15 15:46:52
|
Hi Puttichai, The best thing you can do to speed up KPIECE is to rewrite your code in C++. If you use the python bindings a lot of data tends to be copied back and forth. For low-level code that gets called a lot (like a statePropagator) this has a huge impact. The next best thing you can do is to implement a control sampler that samples controls more intelligently. There are several control-based samplers (RRT, PDST, EST, SyclopRRT) that can use a steering function if you provide one (derive from SteeredControlSampler). Mark > On Sep 15, 2015, at 1:05 AM, Puttichai Lertkultanon <l.p...@gm...> wrote: > > Hi, > > I'm currently working on kinodynamic motion planning using KPIECE. > My current goal is to plan a simple motion of a 6-DOF manipulator moving from (0, 0, 0, 0, 0, 0) to (1, 1, 1, 1, 1, 1) under velcity and acceleration bounds with no other obstacle in the environment. I'm writing Python code and I modified the code from ompl/tests/control/test_control.py. > > For the statePropagator I employ the following simple rules: > > qnext = q + step*qd + 0.5*step*step*qdd > qdnext = qd + step*qdd > > where qdd is my control input (joint acceleration), q and qd represent joint value and velocity, step is the propagation step size. > > First, I started with planning for only the first two DOFs of the robot. I set the threshold to be 0.1. With that, the best cell size and propagation step size were both 0.05. The avarage running time was around 0.4 s. However, the running time increased to ~1min and ~3min when moving to 3 and 4 DOFs, respectively. The success rate of planning (within 5 min) was dropped to below 50% for the case of 4 DOFs. Furthermore, when planning for 5 and 6 DOFs, the planner did not find any solution in 10 min. > > I have also tried changing goal bias to 0.8 (instead of using the default value 0.05). In case of 4 DOFs it helped improve success rate to a little bit above 50% (max running time allowed was 5 min), However, it did not help in the case of 5 and 6 DOFs. > > Do you have any suggestion on how I can improve the performance of KPIECE? > Thank you. > > > Regards, > > Puttichai > ------------------------------------------------------------------------------ > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Puttichai L. <l.p...@gm...> - 2015-09-15 06:05:59
|
Hi, I'm currently working on kinodynamic motion planning using KPIECE. My current goal is to plan a simple motion of a 6-DOF manipulator moving from (0, 0, 0, 0, 0, 0) to (1, 1, 1, 1, 1, 1) under velcity and acceleration bounds with no other obstacle in the environment. I'm writing Python code and I modified the code from ompl/tests/control/test_control.py. For the statePropagator I employ the following simple rules: qnext = q + step*qd + 0.5*step*step*qdd qdnext = qd + step*qdd where qdd is my control input (joint acceleration), q and qd represent joint value and velocity, step is the propagation step size. First, I started with planning for only the first two DOFs of the robot. I set the threshold to be 0.1. With that, the best cell size and propagation step size were both 0.05. The avarage running time was around 0.4 s. However, the running time increased to ~1min and ~3min when moving to 3 and 4 DOFs, respectively. The success rate of planning (within 5 min) was dropped to below 50% for the case of 4 DOFs. Furthermore, when planning for 5 and 6 DOFs, the planner did not find any solution in 10 min. I have also tried changing goal bias to 0.8 (instead of using the default value 0.05). In case of 4 DOFs it helped improve success rate to a little bit above 50% (max running time allowed was 5 min), However, it did not help in the case of 5 and 6 DOFs. Do you have any suggestion on how I can improve the performance of KPIECE? Thank you. Regards, Puttichai |
From: Puttichai L. <l.p...@gm...> - 2015-09-12 03:50:33
|
Hi Mark, Thank you very much for your help! It works now. Regards, Puttichai On Thu, Sep 10, 2015 at 11:04 PM, Mark Moll <mm...@ri...> wrote: > Hi Puttichai, > > Here is a minimal modification of one of the demos that shows how to do > this: > > diff -r e72b869c6c09 demos/RigidBodyPlanningWithControls.py > --- a/demos/RigidBodyPlanningWithControls.py Mon Sep 07 21:14:56 2015 > -0500 > +++ b/demos/RigidBodyPlanningWithControls.py Thu Sep 10 10:03:16 2015 > -0500 > @@ -67,6 +67,20 @@ > s.setXY(coord[0], coord[1]) > ## @endcond > > +from random import uniform > + > +class MyControlSampler(oc.ControlSampler): > + def __init__(self, space): > + super(MyControlSampler, self).__init__(space) > + self.space_ = space > + def sample(self, control, state): > + bounds = self.space_.getBounds() > + control[0] = uniform(bounds.low[0], bounds.high[0]) > + control[1] = uniform(bounds.low[1], bounds.high[1]) > + > +def myControlSamplerAllocator(space): > + return MyControlSampler(space) > + > def isStateValid(spaceInformation, state): > # perform collision checking or check if other constraints are > # satisfied > @@ -95,6 +109,7 @@ > cbounds.setLow(-.3) > cbounds.setHigh(.3) > cspace.setBounds(cbounds) > + > cspace.setControlSamplerAllocator(oc.ControlSamplerAllocator(myControlSamplerAllocator)) > > # define a simple setup class > ss = oc.SimpleSetup(cspace) > > Mark > > > > > On Sep 9, 2015, at 11:16 PM, Puttichai Lertkultanon < > l.p...@gm...> wrote: > > > > Hi, > > > > I'm working with OMPL planners in Python. > > I wrote a class > > > > class MyControlSampler(control.ControlSampler) > > > > which has functions sample and sampleNext. > > > > Is this the right way to do so? > > Can you advise how I can tell the planner to use my control sampler as > its sampler? > > Thank you. > > > > > > Regards, > > > > Puttichai > > > ------------------------------------------------------------------------------ > > Monitor Your Dynamic Infrastructure at Any Scale With Datadog! > > Get real-time metrics from all of your servers, apps and tools > > in one place. > > SourceForge users - Click here to start your Free Trial of Datadog now! > > > http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140_______________________________________________ > > ompl-users mailing list > > omp...@li... > > https://lists.sourceforge.net/lists/listinfo/ompl-users > > |
From: Mark M. <mm...@ri...> - 2015-09-10 15:04:50
|
Hi Puttichai, Here is a minimal modification of one of the demos that shows how to do this: diff -r e72b869c6c09 demos/RigidBodyPlanningWithControls.py --- a/demos/RigidBodyPlanningWithControls.py Mon Sep 07 21:14:56 2015 -0500 +++ b/demos/RigidBodyPlanningWithControls.py Thu Sep 10 10:03:16 2015 -0500 @@ -67,6 +67,20 @@ s.setXY(coord[0], coord[1]) ## @endcond +from random import uniform + +class MyControlSampler(oc.ControlSampler): + def __init__(self, space): + super(MyControlSampler, self).__init__(space) + self.space_ = space + def sample(self, control, state): + bounds = self.space_.getBounds() + control[0] = uniform(bounds.low[0], bounds.high[0]) + control[1] = uniform(bounds.low[1], bounds.high[1]) + +def myControlSamplerAllocator(space): + return MyControlSampler(space) + def isStateValid(spaceInformation, state): # perform collision checking or check if other constraints are # satisfied @@ -95,6 +109,7 @@ cbounds.setLow(-.3) cbounds.setHigh(.3) cspace.setBounds(cbounds) + cspace.setControlSamplerAllocator(oc.ControlSamplerAllocator(myControlSamplerAllocator)) # define a simple setup class ss = oc.SimpleSetup(cspace) Mark > On Sep 9, 2015, at 11:16 PM, Puttichai Lertkultanon <l.p...@gm...> wrote: > > Hi, > > I'm working with OMPL planners in Python. > I wrote a class > > class MyControlSampler(control.ControlSampler) > > which has functions sample and sampleNext. > > Is this the right way to do so? > Can you advise how I can tell the planner to use my control sampler as its sampler? > Thank you. > > > Regards, > > Puttichai > ------------------------------------------------------------------------------ > Monitor Your Dynamic Infrastructure at Any Scale With Datadog! > Get real-time metrics from all of your servers, apps and tools > in one place. > SourceForge users - Click here to start your Free Trial of Datadog now! > http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140_______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Puttichai L. <l.p...@gm...> - 2015-09-10 04:16:59
|
Hi, I'm working with OMPL planners in Python. I wrote a class class MyControlSampler(control.ControlSampler) which has functions sample and sampleNext. Is this the right way to do so? Can you advise how I can tell the planner to use my control sampler as its sampler? Thank you. Regards, Puttichai |
From: Mark M. <mm...@ri...> - 2015-09-07 23:11:00
|
The problem with those unit tests is a known issue. We are working on it. The problem with running ompl_app arises because you (most likely) haven’t been able to generate and compile the python bindings. Without more information, I don’t know what the problem is with the python bindings. Mark > On Sep 6, 2015, at 5:21 AM, Mor Vered <mve...@gm...> wrote: > > Also I forgot to mention that when running "make test" > > the following tests failed : > > 92% tests passed, 2 tests failed out of 24 > > Total Test time (real) = 63.83 sec > > The following tests FAILED: > 13 - test_2denvs_geometric (Failed) > 16 - test_2dcircles_opt_geometric (Failed) > Errors while running CTest > make: *** [test] Error 8 > > > I found this on google but couldn't make anything out of it ... > > https://lists.debian.org/debian-science/2013/11/msg00010.html > > 2015-09-06 13:06 GMT+03:00 Mor Vered <mve...@gm...>: > Hello All, > > I am trying to run ompl_app and get the following error : > > Traceback (most recent call last): > File "./ompl_app.py", line 50, in <module> > from ompl import app as oa > File "/home/mor/omplapp-1.0.0-Source/ompl/py-bindings/ompl/app/__init__.py", line 17, in <module> > from ompl.app._app import * > ImportError: No module named _app > > > When running make I don't encounter any problems and this is what I initially see : > > ~/omplapp-1.0.0-Source/ompl/build/Release$ make > -- Building Release > -- Boost version: 1.54.0 > -- Found the following Boost libraries: > -- date_time > -- thread > -- serialization > -- filesystem > -- system > -- program_options > -- unit_test_framework > -- chrono > -- Boost version: 1.54.0 > -- Found the following Boost libraries: > -- python > -- Configuring done > -- Generating done > -- Build files have been written to: /home/mor/omplapp-1.0.0-Source/ompl/build/Release > Scanning dependencies of target ompl > Linking CXX shared library ../../lib/libompl.so > [ 31%] Built target ompl > Scanning dependencies of target py_ompl_base > [ 31%] Building CXX object py-bindings/CMakeFiles/py_ompl_base.dir/bindings/base/RealVectorState.pypp.cpp.o > > ... > > I have tried re running > > make installpyplusplus > cmake . > make -j 5 > > > > but it didn't make any difference. > > Any ideas ? > > Thanks, > Mor > > ------------------------------------------------------------------------------ > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Ryan L. <Lun...@gm...> - 2015-09-07 22:52:40
|
Hello Mor, You need to generate the C++-Python binding code before compilation. Try make update_bindings and then recompile the library. The 2denv and 2dcircles tests are not 100% perfect and occasionally fail to converge due to randomness or an overtaxed CPU. Ryan On Sun, Sep 6, 2015 at 5:21 AM, Mor Vered <mve...@gm...> wrote: > Also I forgot to mention that when running "make test" > > the following tests failed : > > 92% tests passed, 2 tests failed out of 24 > > Total Test time (real) = 63.83 sec > > The following tests FAILED: > 13 - test_2denvs_geometric (Failed) > 16 - test_2dcircles_opt_geometric (Failed) > Errors while running CTest > make: *** [test] Error 8 > > > I found this on google but couldn't make anything out of it ... > > https://lists.debian.org/debian-science/2013/11/msg00010.html > > 2015-09-06 13:06 GMT+03:00 Mor Vered <mve...@gm...>: > >> Hello All, >> >> I am trying to run ompl_app and get the following error : >> >> Traceback (most recent call last): >> File "./ompl_app.py", line 50, in <module> >> from ompl import app as oa >> File >> "/home/mor/omplapp-1.0.0-Source/ompl/py-bindings/ompl/app/__init__.py", >> line 17, in <module> >> from ompl.app._app import * >> ImportError: No module named _app >> >> >> When running make I don't encounter any problems and this is what I >> initially see : >> >> ~/omplapp-1.0.0-Source/ompl/build/Release$ make >> -- Building Release >> -- Boost version: 1.54.0 >> -- Found the following Boost libraries: >> -- date_time >> -- thread >> -- serialization >> -- filesystem >> -- system >> -- program_options >> -- unit_test_framework >> -- chrono >> -- Boost version: 1.54.0 >> -- Found the following Boost libraries: >> -- python >> -- Configuring done >> -- Generating done >> -- Build files have been written to: >> /home/mor/omplapp-1.0.0-Source/ompl/build/Release >> Scanning dependencies of target ompl >> Linking CXX shared library ../../lib/libompl.so >> [ 31%] Built target ompl >> Scanning dependencies of target py_ompl_base >> [ 31%] Building CXX object >> py-bindings/CMakeFiles/py_ompl_base.dir/bindings/base/RealVectorState.pypp.cpp.o >> >> ... >> >> I have tried re running >> >> make installpyplusplus >> cmake . >> make -j 5 >> >> >> >> but it didn't make any difference. >> >> Any ideas ? >> >> Thanks, >> Mor >> >> > > ------------------------------------------------------------------------------ > > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users > > |
From: Ryan L. <Lun...@gm...> - 2015-09-07 22:48:32
|
Hello Puttichai, The Boolean cast of ompl::base::PlannerStatus is true if the planner generates a path, approximate or exact. KPIECE (and several others) will return an approximate path to the closest state to the goal if an exact path is not found. If you want to ensure you have an exact solution path, you will need to compare the PlannerStatus value to ompl::base::PlannerStatus::EXACT_SOLUTION . Ryan On Sun, Sep 6, 2015 at 2:33 AM, Puttichai Lertkultanon < l.p...@gm...> wrote: > Hi, > > I have just started using OMPL. The planenr I'm interested in particular > is KPIECE. > > I have looked into the code (KPIECE1.cpp) and seen that when the > termination condition is satisfied, the problem status (solved) is most > likely to be always set to true, seeing from the line 312, > if (solution == NULL) > { > > solution = approxsol; > > approximate = true; > > } > > So doesn't that mean if the planner have at least one successful tree > extension, it will always have > solved == true, regardless of how far that resulting state is from the > goal? > > Regards, > > Puttichai > > > ------------------------------------------------------------------------------ > > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users > > |
From: Mor V. <mve...@gm...> - 2015-09-06 10:21:45
|
Also I forgot to mention that when running "make test" the following tests failed : 92% tests passed, 2 tests failed out of 24 Total Test time (real) = 63.83 sec The following tests FAILED: 13 - test_2denvs_geometric (Failed) 16 - test_2dcircles_opt_geometric (Failed) Errors while running CTest make: *** [test] Error 8 I found this on google but couldn't make anything out of it ... https://lists.debian.org/debian-science/2013/11/msg00010.html 2015-09-06 13:06 GMT+03:00 Mor Vered <mve...@gm...>: > Hello All, > > I am trying to run ompl_app and get the following error : > > Traceback (most recent call last): > File "./ompl_app.py", line 50, in <module> > from ompl import app as oa > File > "/home/mor/omplapp-1.0.0-Source/ompl/py-bindings/ompl/app/__init__.py", > line 17, in <module> > from ompl.app._app import * > ImportError: No module named _app > > > When running make I don't encounter any problems and this is what I > initially see : > > ~/omplapp-1.0.0-Source/ompl/build/Release$ make > -- Building Release > -- Boost version: 1.54.0 > -- Found the following Boost libraries: > -- date_time > -- thread > -- serialization > -- filesystem > -- system > -- program_options > -- unit_test_framework > -- chrono > -- Boost version: 1.54.0 > -- Found the following Boost libraries: > -- python > -- Configuring done > -- Generating done > -- Build files have been written to: > /home/mor/omplapp-1.0.0-Source/ompl/build/Release > Scanning dependencies of target ompl > Linking CXX shared library ../../lib/libompl.so > [ 31%] Built target ompl > Scanning dependencies of target py_ompl_base > [ 31%] Building CXX object > py-bindings/CMakeFiles/py_ompl_base.dir/bindings/base/RealVectorState.pypp.cpp.o > > ... > > I have tried re running > > make installpyplusplus > cmake . > make -j 5 > > > > but it didn't make any difference. > > Any ideas ? > > Thanks, > Mor > > |
From: Mor V. <mve...@gm...> - 2015-09-06 10:06:47
|
Hello All, I am trying to run ompl_app and get the following error : Traceback (most recent call last): File "./ompl_app.py", line 50, in <module> from ompl import app as oa File "/home/mor/omplapp-1.0.0-Source/ompl/py-bindings/ompl/app/__init__.py", line 17, in <module> from ompl.app._app import * ImportError: No module named _app When running make I don't encounter any problems and this is what I initially see : ~/omplapp-1.0.0-Source/ompl/build/Release$ make -- Building Release -- Boost version: 1.54.0 -- Found the following Boost libraries: -- date_time -- thread -- serialization -- filesystem -- system -- program_options -- unit_test_framework -- chrono -- Boost version: 1.54.0 -- Found the following Boost libraries: -- python -- Configuring done -- Generating done -- Build files have been written to: /home/mor/omplapp-1.0.0-Source/ompl/build/Release Scanning dependencies of target ompl Linking CXX shared library ../../lib/libompl.so [ 31%] Built target ompl Scanning dependencies of target py_ompl_base [ 31%] Building CXX object py-bindings/CMakeFiles/py_ompl_base.dir/bindings/base/RealVectorState.pypp.cpp.o ... I have tried re running make installpyplusplus cmake . make -j 5 but it didn't make any difference. Any ideas ? Thanks, Mor |
From: Puttichai L. <l.p...@gm...> - 2015-09-06 07:33:42
|
Hi, I have just started using OMPL. The planenr I'm interested in particular is KPIECE. I have looked into the code (KPIECE1.cpp) and seen that when the termination condition is satisfied, the problem status (solved) is most likely to be always set to true, seeing from the line 312, if (solution == NULL) { solution = approxsol; approximate = true; } So doesn't that mean if the planner have at least one successful tree extension, it will always have solved == true, regardless of how far that resulting state is from the goal? Regards, Puttichai |
From: Mark M. <mm...@ri...> - 2015-09-03 18:16:57
|
StateSampler and ValidStateSampler model different concepts. ValidStateSamplers (often) use StateSamplers as a low-level primitive. See http://ompl.kavrakilab.org/samplers.html. Mark > On Sep 3, 2015, at 11:00 AM, Becker, Pascal <Pas...@ku...> wrote: > > Hey Mark, hey Javier! > > Thanks for your answers! > They were correct and the problem was, that the sampler used a different sampler type. > > But why are the StateSamplers that separated? Is there a good reason for it? > The methods of both are almost the same and it would be easy to have a generic base class for example called 'Sampler' for StateSampler and ValidStateSampler. > Then the differentiation for each planner would be obsolete and the usage way more easy. > Have you considered this generic base class so far? > > Cheers, > Pascal > > -----Ursprüngliche Nachricht----- > Von: Mark Moll [mailto:mar...@gm...] Im Auftrag von Mark Moll > Gesendet: Mittwoch, 2. September 2015 15:39 > An: Becker, Pascal > Cc: omp...@li... > Betreff: Re: [ompl-users] Adding own ValidStateSampler to a planner > > RRT* doesn’t use a valid state sampler. It samples a (possibly invalid) state and expands towards it. Here are some planners that do use a ValidStateSampler: EST, BKPIECE, PRM, SPARS, SPARStwo, SBL, and STRIDE. > > Although you could use your sampler as a StateSampler, this would interfere with the Voronoi bias of the planner and may not work as well as the default sampler in some cases. > > Mark > > > >> On Sep 2, 2015, at 7:11 AM, Javier V <jav...@gm...> wrote: >> >> Hi Pascal, >> >> If you download and compile OMPL (which is not difficult at all) you have direct access to the examples code and you can just modify and recompile very easily. >> >> Regarding your problem, I didn't have the time to look deeply into it, >> but the problem can be as simple as RRT uses a StateSampler and not a >> ValidStateSampler: >> http://ompl.kavrakilab.org/classompl_1_1geometric_1_1RRTstar.html#a217 >> 157cf8281f4da5f68f62c9423235c >> >> This is of special interest (line 154 RRTstar.cpp): >> if (!sampler_) >> sampler_ = si_->allocStateSampler(); >> >> So that, you may want to use a StateSampler instead of a ValidStateSampler for testing. I hope this helps. >> >> Javier V. Gomez >> ---------------------------------------------------------------------- >> -------- Monitor Your Dynamic Infrastructure at Any Scale With >> Datadog! >> Get real-time metrics from all of your servers, apps and tools in one >> place. >> SourceForge users - Click here to start your Free Trial of Datadog now! >> http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140______ >> _________________________________________ >> ompl-users mailing list >> omp...@li... >> https://lists.sourceforge.net/lists/listinfo/ompl-users > > ------------------------------------------------------------------------------ > Monitor Your Dynamic Infrastructure at Any Scale With Datadog! > Get real-time metrics from all of your servers, apps and tools > in one place. > SourceForge users - Click here to start your Free Trial of Datadog now! > http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140 > _______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Becker, P. <Pas...@ku...> - 2015-09-03 16:00:58
|
Hey Mark, hey Javier! Thanks for your answers! They were correct and the problem was, that the sampler used a different sampler type. But why are the StateSamplers that separated? Is there a good reason for it? The methods of both are almost the same and it would be easy to have a generic base class for example called 'Sampler' for StateSampler and ValidStateSampler. Then the differentiation for each planner would be obsolete and the usage way more easy. Have you considered this generic base class so far? Cheers, Pascal -----Ursprüngliche Nachricht----- Von: Mark Moll [mailto:mar...@gm...] Im Auftrag von Mark Moll Gesendet: Mittwoch, 2. September 2015 15:39 An: Becker, Pascal Cc: omp...@li... Betreff: Re: [ompl-users] Adding own ValidStateSampler to a planner RRT* doesn’t use a valid state sampler. It samples a (possibly invalid) state and expands towards it. Here are some planners that do use a ValidStateSampler: EST, BKPIECE, PRM, SPARS, SPARStwo, SBL, and STRIDE. Although you could use your sampler as a StateSampler, this would interfere with the Voronoi bias of the planner and may not work as well as the default sampler in some cases. Mark > On Sep 2, 2015, at 7:11 AM, Javier V <jav...@gm...> wrote: > > Hi Pascal, > > If you download and compile OMPL (which is not difficult at all) you have direct access to the examples code and you can just modify and recompile very easily. > > Regarding your problem, I didn't have the time to look deeply into it, > but the problem can be as simple as RRT uses a StateSampler and not a > ValidStateSampler: > http://ompl.kavrakilab.org/classompl_1_1geometric_1_1RRTstar.html#a217 > 157cf8281f4da5f68f62c9423235c > > This is of special interest (line 154 RRTstar.cpp): > if (!sampler_) > sampler_ = si_->allocStateSampler(); > > So that, you may want to use a StateSampler instead of a ValidStateSampler for testing. I hope this helps. > > Javier V. Gomez > ---------------------------------------------------------------------- > -------- Monitor Your Dynamic Infrastructure at Any Scale With > Datadog! > Get real-time metrics from all of your servers, apps and tools in one > place. > SourceForge users - Click here to start your Free Trial of Datadog now! > http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140______ > _________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Mark M. <mm...@ri...> - 2015-09-02 13:38:42
|
RRT* doesn’t use a valid state sampler. It samples a (possibly invalid) state and expands towards it. Here are some planners that do use a ValidStateSampler: EST, BKPIECE, PRM, SPARS, SPARStwo, SBL, and STRIDE. Although you could use your sampler as a StateSampler, this would interfere with the Voronoi bias of the planner and may not work as well as the default sampler in some cases. Mark > On Sep 2, 2015, at 7:11 AM, Javier V <jav...@gm...> wrote: > > Hi Pascal, > > If you download and compile OMPL (which is not difficult at all) you have direct access to the examples code and you can just modify and recompile very easily. > > Regarding your problem, I didn't have the time to look deeply into it, but the problem can be as simple as RRT uses a StateSampler and not a ValidStateSampler: http://ompl.kavrakilab.org/classompl_1_1geometric_1_1RRTstar.html#a217157cf8281f4da5f68f62c9423235c > > This is of special interest (line 154 RRTstar.cpp): > if (!sampler_) > sampler_ = si_->allocStateSampler(); > > So that, you may want to use a StateSampler instead of a ValidStateSampler for testing. I hope this helps. > > Javier V. Gomez > ------------------------------------------------------------------------------ > Monitor Your Dynamic Infrastructure at Any Scale With Datadog! > Get real-time metrics from all of your servers, apps and tools > in one place. > SourceForge users - Click here to start your Free Trial of Datadog now! > http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140_______________________________________________ > ompl-users mailing list > omp...@li... > https://lists.sourceforge.net/lists/listinfo/ompl-users |
From: Javier V <jav...@gm...> - 2015-09-02 12:11:58
|
Hi Pascal, If you download and compile OMPL (which is not difficult at all) you have direct access to the examples code and you can just modify and recompile very easily. Regarding your problem, I didn't have the time to look deeply into it, but the problem can be as simple as RRT uses a StateSampler and not a ValidStateSampler: http://ompl.kavrakilab.org/classompl_1_1geometric_1_1RRTstar.html#a217157cf8281f4da5f68f62c9423235c This is of special interest (line 154 RRTstar.cpp): if (!sampler_) sampler_ = si_->allocStateSampler(); So that, you may want to use a StateSampler instead of a ValidStateSampler for testing. I hope this helps. Javier V. Gomez |