Quantcast

Slow speed of 0.9 ikfast.py

classic Classic list List threaded Threaded
17 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users



------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick

On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users




------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick

On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users






------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users







------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?


On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users








------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
patrick,

can you check your sympy version? openrave only works with sympy v0.7.1, which i usually get from pip. i think ubuntu 14.04 sympy version is different, that's why it isn't finishing.
i can't think of any other reason why it would be 5 hours if you are using the same libraries....

if you really think it is the ikfast.py version, you can try using ikfast.py from 0.8.2 with openrave master branch.

best,

2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]>:
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?



On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users









------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py completes in just 23 minutes on my slow Core Duo desktop running Ubuntu 14.04 and using a maxcasedepth of 1.

Next, I tried to generate a MoveIt! ikfast plugin from the resulting .cpp file and I get the following error:

$ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
> `pwd`/output_ikfast61.cpp
Warning: The default search has changed from OPTIMIZE_FREE_JOINT to now OPTIMIZE_MAX_JOINT!

IKFast Plugin Generator
Loading robot from 'pi_robot_moveit_config' package ...
Creating plugin in 'pi_robot_ikfast_right_arm_plugin' package ...
  found 2 planning groups: right_arm, right_gripper
  found group 'right_arm'
Traceback (most recent call last):
  File "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py", line 178, in <module>
    solver_version = int(line_search.group(1))
ValueError: invalid literal for int() with base 10: '0x10000048'

I'm not sure if this is something you can address or if it is a problem for the ROS/MoveIt folks?

--patrick


On 05/07/2015 05:45 AM, Rosen Diankov wrote:
patrick,

can you check your sympy version? openrave only works with sympy v0.7.1, which i usually get from pip. i think ubuntu 14.04 sympy version is different, that's why it isn't finishing.
i can't think of any other reason why it would be 5 hours if you are using the same libraries....

if you really think it is the ikfast.py version, you can try using ikfast.py from 0.8.2 with openrave master branch.

best,

2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]>:
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?



On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users










------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
glad to see it's working ;0)
right now most of my development has moved to debian, so i apologize if there is hiccups with the greatest and latest ubuntu.

the invalid literal problem looks like a parsing error on their end.

best,


2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py completes in just 23 minutes on my slow Core Duo desktop running Ubuntu 14.04 and using a maxcasedepth of 1.

Next, I tried to generate a MoveIt! ikfast plugin from the resulting .cpp file and I get the following error:

$ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
> `pwd`/output_ikfast61.cpp
Warning: The default search has changed from OPTIMIZE_FREE_JOINT to now OPTIMIZE_MAX_JOINT!

IKFast Plugin Generator
Loading robot from 'pi_robot_moveit_config' package ...
Creating plugin in 'pi_robot_ikfast_right_arm_plugin' package ...
  found 2 planning groups: right_arm, right_gripper
  found group 'right_arm'
Traceback (most recent call last):
  File "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py", line 178, in <module>
    solver_version = int(line_search.group(1))
ValueError: invalid literal for int() with base 10: '0x10000048'

I'm not sure if this is something you can address or if it is a problem for the ROS/MoveIt folks?

--patrick



On 05/07/2015 05:45 AM, Rosen Diankov wrote:
patrick,

can you check your sympy version? openrave only works with sympy v0.7.1, which i usually get from pip. i think ubuntu 14.04 sympy version is different, that's why it isn't finishing.
i can't think of any other reason why it would be 5 hours if you are using the same libraries....

if you really think it is the ikfast.py version, you can try using ikfast.py from 0.8.2 with openrave master branch.

best,

2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]>:
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?



On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users











------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

Yup, the problem was with moveit-ikfast.  I was using the Debian package for ROS Indigo but the issue has been fixed in the source distribution so once I switch to that, the plugin built fine.

Thanks again!
patrick

On 05/07/2015 07:21 PM, Rosen Diankov wrote:
glad to see it's working ;0)
right now most of my development has moved to debian, so i apologize if there is hiccups with the greatest and latest ubuntu.

the invalid literal problem looks like a parsing error on their end.

best,


2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py completes in just 23 minutes on my slow Core Duo desktop running Ubuntu 14.04 and using a maxcasedepth of 1.

Next, I tried to generate a MoveIt! ikfast plugin from the resulting .cpp file and I get the following error:

$ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
> `pwd`/output_ikfast61.cpp
Warning: The default search has changed from OPTIMIZE_FREE_JOINT to now OPTIMIZE_MAX_JOINT!

IKFast Plugin Generator
Loading robot from 'pi_robot_moveit_config' package ...
Creating plugin in 'pi_robot_ikfast_right_arm_plugin' package ...
  found 2 planning groups: right_arm, right_gripper
  found group 'right_arm'
Traceback (most recent call last):
  File "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py", line 178, in <module>
    solver_version = int(line_search.group(1))
ValueError: invalid literal for int() with base 10: '0x10000048'

I'm not sure if this is something you can address or if it is a problem for the ROS/MoveIt folks?

--patrick



On 05/07/2015 05:45 AM, Rosen Diankov wrote:
patrick,

can you check your sympy version? openrave only works with sympy v0.7.1, which i usually get from pip. i think ubuntu 14.04 sympy version is different, that's why it isn't finishing.
i can't think of any other reason why it would be 5 hours if you are using the same libraries....

if you really think it is the ikfast.py version, you can try using ikfast.py from 0.8.2 with openrave master branch.

best,

2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]>:
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?



On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users












------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

So I have run into another snag.  Everything was working fine as long as I used --maxcasedepth=1 except that the resulting solver could not actually solve any IK problems I threw at it using MoveIt.  So I tried rebuilding with --maxcasedepth=2 and while the .cpp file is created OK, during the final catkin_make to build the moveit_ikfast plugin, I get a string of errors of the form:

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159600:15: error: ‘x35099’ was not declared in this scope
 IkReal x35112=x35099;
               ^
In file included from /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159747:15: error: ‘x35099’ was not declared in this scope
 IkReal x35158=x35099;
               ^
In file included from /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159883:15: error: ‘x35099’ was not declared in this scope
 IkReal x35200=x35099;
               ^
make[2]: *** [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp.o] Error 1
make[1]: *** [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/all] Error 2
make: *** [all] Error 2
Invoking "make -j4 -l4" failed

Are there some variable declarations missing when maxcasedepth > 1 or is this another problem with moveit_ikfast?

Also, I thought you might find it interesting to know that if I simply copy my .cpp file that I created using 0.8.2 under Ubuntu 12.04 and ROS Hydro and then use it to build the moveit_ikfast plugin under Ubuntu 14.04 and ROS Indigo, it builds and works great.  However, 0.8.2 does not compile under Ubuntu 14.04 so this probably won't be an option for most people.

P.S. The only reason I am working so hard to get IKFast working under Ubuntu 14.04 and ROS Indigo is because it is the last unfinished chapter in the Indigo revision of my ROS By Example book (Volume 2).  On my own robots I still use Ubuntu 12.04 and ROS Hydro and the OpenRAVE Debian binaries worked great in that environment.


On 05/08/2015 04:35 PM, Patrick Goebel wrote:
Hi Rosen,

Yup, the problem was with moveit-ikfast.  I was using the Debian package for ROS Indigo but the issue has been fixed in the source distribution so once I switch to that, the plugin built fine.

Thanks again!
patrick

On 05/07/2015 07:21 PM, Rosen Diankov wrote:
glad to see it's working ;0)
right now most of my development has moved to debian, so i apologize if there is hiccups with the greatest and latest ubuntu.

the invalid literal problem looks like a parsing error on their end.

best,


2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py completes in just 23 minutes on my slow Core Duo desktop running Ubuntu 14.04 and using a maxcasedepth of 1.

Next, I tried to generate a MoveIt! ikfast plugin from the resulting .cpp file and I get the following error:

$ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
> `pwd`/output_ikfast61.cpp
Warning: The default search has changed from OPTIMIZE_FREE_JOINT to now OPTIMIZE_MAX_JOINT!

IKFast Plugin Generator
Loading robot from 'pi_robot_moveit_config' package ...
Creating plugin in 'pi_robot_ikfast_right_arm_plugin' package ...
  found 2 planning groups: right_arm, right_gripper
  found group 'right_arm'
Traceback (most recent call last):
  File "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py", line 178, in <module>
    solver_version = int(line_search.group(1))
ValueError: invalid literal for int() with base 10: '0x10000048'

I'm not sure if this is something you can address or if it is a problem for the ROS/MoveIt folks?

--patrick



On 05/07/2015 05:45 AM, Rosen Diankov wrote:
patrick,

can you check your sympy version? openrave only works with sympy v0.7.1, which i usually get from pip. i think ubuntu 14.04 sympy version is different, that's why it isn't finishing.
i can't think of any other reason why it would be 5 hours if you are using the same libraries....

if you really think it is the ikfast.py version, you can try using ikfast.py from 0.8.2 with openrave master branch.

best,

2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]>:
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?



On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users













------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y


_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
dear patrick,

that is weird indeed.
i have no idea why your robot would be some complex to be hitting such issues. perhaps there's small epsilons in the joints causing it to misdetect the intersecting axes?
please send your collada robot and i'll take a look at it asap.

thanks


2015-05-11 11:31 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

So I have run into another snag.  Everything was working fine as long as I used --maxcasedepth=1 except that the resulting solver could not actually solve any IK problems I threw at it using MoveIt.  So I tried rebuilding with --maxcasedepth=2 and while the .cpp file is created OK, during the final catkin_make to build the moveit_ikfast plugin, I get a string of errors of the form:

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159600:15: error: ‘x35099’ was not declared in this scope
 IkReal x35112=x35099;
               ^
In file included from /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159747:15: error: ‘x35099’ was not declared in this scope
 IkReal x35158=x35099;
               ^
In file included from /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159883:15: error: ‘x35099’ was not declared in this scope
 IkReal x35200=x35099;
               ^
make[2]: *** [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp.o] Error 1
make[1]: *** [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/all] Error 2
make: *** [all] Error 2
Invoking "make -j4 -l4" failed

Are there some variable declarations missing when maxcasedepth > 1 or is this another problem with moveit_ikfast?

Also, I thought you might find it interesting to know that if I simply copy my .cpp file that I created using 0.8.2 under Ubuntu 12.04 and ROS Hydro and then use it to build the moveit_ikfast plugin under Ubuntu 14.04 and ROS Indigo, it builds and works great.  However, 0.8.2 does not compile under Ubuntu 14.04 so this probably won't be an option for most people.

P.S. The only reason I am working so hard to get IKFast working under Ubuntu 14.04 and ROS Indigo is because it is the last unfinished chapter in the Indigo revision of my ROS By Example book (Volume 2).  On my own robots I still use Ubuntu 12.04 and ROS Hydro and the OpenRAVE Debian binaries worked great in that environment.



On 05/08/2015 04:35 PM, Patrick Goebel wrote:
Hi Rosen,

Yup, the problem was with moveit-ikfast.  I was using the Debian package for ROS Indigo but the issue has been fixed in the source distribution so once I switch to that, the plugin built fine.

Thanks again!
patrick

On 05/07/2015 07:21 PM, Rosen Diankov wrote:
glad to see it's working ;0)
right now most of my development has moved to debian, so i apologize if there is hiccups with the greatest and latest ubuntu.

the invalid literal problem looks like a parsing error on their end.

best,


2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py completes in just 23 minutes on my slow Core Duo desktop running Ubuntu 14.04 and using a maxcasedepth of 1.

Next, I tried to generate a MoveIt! ikfast plugin from the resulting .cpp file and I get the following error:

$ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
> `pwd`/output_ikfast61.cpp
Warning: The default search has changed from OPTIMIZE_FREE_JOINT to now OPTIMIZE_MAX_JOINT!

IKFast Plugin Generator
Loading robot from 'pi_robot_moveit_config' package ...
Creating plugin in 'pi_robot_ikfast_right_arm_plugin' package ...
  found 2 planning groups: right_arm, right_gripper
  found group 'right_arm'
Traceback (most recent call last):
  File "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py", line 178, in <module>
    solver_version = int(line_search.group(1))
ValueError: invalid literal for int() with base 10: '0x10000048'

I'm not sure if this is something you can address or if it is a problem for the ROS/MoveIt folks?

--patrick



On 05/07/2015 05:45 AM, Rosen Diankov wrote:
patrick,

can you check your sympy version? openrave only works with sympy v0.7.1, which i usually get from pip. i think ubuntu 14.04 sympy version is different, that's why it isn't finishing.
i can't think of any other reason why it would be 5 hours if you are using the same libraries....

if you really think it is the ikfast.py version, you can try using ikfast.py from 0.8.2 with openrave master branch.

best,

2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]>:
Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can build the 6-dof IKFast solver in 23 minutes on an i5 running Ubuntu 12.04 and ROS Hydro.  However, when I try the same build on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is still chugging along after 5 hours and eventually I have to hard boot my machine since it does not respond to keyboard or mouse input.

Would it be possible to build an earlier version of OpenRave under Ubuntu 14.04 and ROS Indigo that doesn't require so much CPU and/or memory when running ikfast.py?  I tried v0.8.2 but it fails to compile on Ubuntu 14.04 terminating with the following error:

Linking CXX executable openrave0.8
CMakeFiles/openrave.dir/openrave.cpp.o: In function `boost::array<std::string, 1ul>::operator[](unsigned long)':
openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a): undefined reference to `boost::assertion_failed_msg(char const*, char const*, char const*, char const*, long)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/openrave0.8] Error 1
make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
make: *** [all] Error 2

Thanks,
patrick

P.S. Will you be making Debian binaries available for Ubuntu 14.04?



On 05/01/2015 05:49 PM, Rosen Diankov wrote:
i see, i originally made the option available for inversekinematics.py

openrave.py --database inversekinematics --maxcasedepth=2 ...


i just added it to ikfast.py in master branch

best,


2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Yes, that was initially the problem.  With the correct -- (double-dashes) I get an error as follows:

$ python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 –eelink=37 --maxcasedepth=1  --savefile=output_ikfast61.cpp

ikfast.py: error: no such option: --maxcasedepth

I made sure I did a pull to get the latest commit from the master branch then redid the "make" and "make install" commands but I still get the same error.

The robot has 6 joints--a 6-dof arm.

--patrick


On 04/27/2015 05:17 PM, Rosen Diankov wrote:
patrick,

maybe it's a mail conversion thing, but in the command line you pasted "–maxcasedepth" had only one dash...

how many joints is this robot? can you try --maxcasedepth=1?



2015-04-28 3:24 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

OK, I gave that a try but the speed actually got marginally *slower* this time. 96 minutes instead of 92 minutes.  Here is the command I am running:

$ time python `openrave0.9-config \
--python-dir`/openravepy/_openravepy_0_9/ikfast.py  --robot=pi_robot_rounded.dae --iktype=transform6d  --baselink=15 --eelink=37 –maxcasedepth=2  --savefile=output_ikfast61.cpp

--patrick


On 04/27/2015 08:36 AM, Rosen Diankov wrote:
later versions are finding more degenerate cases to solve, so it's a good thing in a sense ;0)
i need to figure out a way to compress the ikfast size though since a lot of code is repeated.

i just added a parameter that control this called maxcasedepth. pull from master and in the inversekinematics database call, pass in "--maxcasedepth=2"

best,


2015-04-28 0:03 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Now that I have the master branch of v0.9 built and running, I discovered that generating an ikfast solution for a 6-dof arm is extremely slow compared to v0.8.  This is true whether I use Ubuntu 12.04 or 14.04.  In particular, when building a transform6d solver on a i5 machine, it takes 9 minutes using v0.8 but when using 0.9 it takes 92 minutes which is 10x slower.  Also, the size of the output cpp file increases from 574k for 0.8 to nearly 15Mb for 0.9.

Is this expected behavior?  Or I am missing a key config parameter when building 0.9?

Thanks!
patrick





------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users













------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y


_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users



------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Hi Rosen,

Here is a link to my collada file.  And here is the original URDF file.  Note however that I just discovered issues with the ROS Indigo urdf_to_collada utility.  First, the Indigo debian version of the utility is broken so I had to install from source.  And even with the source version, I get the following error when converting my URDF file to Collada:

$ rosrun collada_urdf urdf_to_collada pi_robot.urdf pi_robot.dae

Document successfully written to pi_robot.dae
*** Error in `/home/patrick/catkin_ws/devel/lib/collada_urdf/urdf_to_collada': double free or corruption (fasttop): 0x0000000002287d20 ***
Aborted (core dumped)

Nonetheless, the .dae file is created and I can then do the rounding step:

$ rosrun moveit_ikfast round_collada_numbers.py pi_robot.dae pi_robot_rounded.dae 5

So I'm not sure if the above error is causing all the trouble.

--patrick


On 05/10/2015 10:26 PM, Rosen Diankov wrote:
> dear patrick,
>
> that is weird indeed. i have no idea why your robot would be some
> complex to be hitting such issues. perhaps there's small epsilons in
> the joints causing it to misdetect the intersecting axes? please send
> your collada robot and i'll take a look at it asap.
>
> thanks
>
>
> 2015-05-11 11:31 GMT+09:00 Patrick Goebel <[hidden email]
> [hidden email]>:
>
> Hi Rosen,
>
> So I have run into another snag.  Everything was working fine as long
> as I used --maxcasedepth=1 except that the resulting solver could not
> actually solve any IK problems I threw at it using MoveIt.  So I
> tried rebuilding with --maxcasedepth=2 and while the .cpp file is
> created OK, during the final catkin_make to build the moveit_ikfast
> plugin, I get a string of errors of the form:
>
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159600:15:
> error: ‘x35099’ was not declared in this scope IkReal x35112=x35099;
> ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159747:15: error: ‘x35099’ was not declared in this scope
> IkReal x35158=x35099; ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159883:15: error: ‘x35099’ was not declared in this scope
> IkReal x35200=x35099; ^ make[2]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp.o]
> Error 1 make[1]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/all]
> Error 2 make: *** [all] Error 2 Invoking "make -j4 -l4" failed
>
> Are there some variable declarations missing when maxcasedepth > 1 or
> is this another problem with moveit_ikfast?
>
> Also, I thought you might find it interesting to know that if I
> simply copy my .cpp file that I created using 0.8.2 under Ubuntu
> 12.04 and ROS Hydro and then use it to build the moveit_ikfast plugin
> under Ubuntu 14.04 and ROS Indigo, it builds and works great.
> However, 0.8.2 does not compile under Ubuntu 14.04 so this probably
> won't be an option for most people.
>
> P.S. The only reason I am working so hard to get IKFast working under
> Ubuntu 14.04 and ROS Indigo is because it is the last unfinished
> chapter in the Indigo revision of my /ROS By Example/
> <http://www.lulu.com/spotlight/pirobot> book (Volume 2).  On my own
> robots I still use Ubuntu 12.04 and ROS Hydro and the OpenRAVE Debian
> binaries worked great in that environment.
>
>
>
> On 05/08/2015 04:35 PM, Patrick Goebel wrote:
>> Hi Rosen,
>>
>> Yup, the problem was with moveit-ikfast.  I was using the Debian
>> package for ROS Indigo but the issue has been fixed
>> <https://github.com/ros-planning/moveit_ikfast/issues/49> in the
>> source distribution so once I switch to that, the plugin built
>> fine.
>>
>> Thanks again! patrick
>>
>> On 05/07/2015 07:21 PM, Rosen Diankov wrote:
>>> glad to see it's working ;0) right now most of my development has
>>> moved to debian, so i apologize if there is hiccups with the
>>> greatest and latest ubuntu.
>>>
>>> the invalid literal problem looks like a parsing error on their
>>> end.
>>>
>>> best,
>>>
>>>
>>> 2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]
>>> [hidden email]>:
>>>
>>> Hi Rosen,
>>>
>>> Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py
>>> completes in just 23 minutes on my slow Core Duo desktop running
>>> Ubuntu 14.04 and using a maxcasedepth of 1.
>>>
>>> Next, I tried to generate a MoveIt! ikfast plugin from the
>>> resulting .cpp file and I get the following error:
>>>
>>> $ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
>>>> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
>>>> `pwd`/output_ikfast61.cpp
>>> Warning: The default search has changed from OPTIMIZE_FREE_JOINT
>>> to now OPTIMIZE_MAX_JOINT!
>>>
>>> IKFast Plugin Generator Loading robot from
>>> 'pi_robot_moveit_config' package ... Creating plugin in
>>> 'pi_robot_ikfast_right_arm_plugin' package ... found 2 planning
>>> groups: right_arm, right_gripper found group 'right_arm'
>>> Traceback (most recent call last): File
>>> "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py",
>>> line 178, in <module> solver_version = int(line_search.group(1))
>>> ValueError: invalid literal for int() with base 10:
>>> '0x10000048'*
>>>
>>> *I'm not sure if this is something you can address or if it is a
>>> problem for the ROS/MoveIt folks?
>>>
>>> --patrick
>>>
>>>
>>>
>>> On 05/07/2015 05:45 AM, Rosen Diankov wrote:
>>>> patrick,
>>>>
>>>> can you check your sympy version? openrave only works with
>>>> sympy v0.7.1, which i usually get from pip. i think ubuntu
>>>> 14.04 sympy version is different, that's why it isn't
>>>> finishing. i can't think of any other reason why it would be 5
>>>> hours if you are using the same libraries....
>>>>
>>>> if you really think it is the ikfast.py version, you can try
>>>> using ikfast.py from 0.8.2 with openrave master branch.
>>>>
>>>> best,
>>>>
>>>> 2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]
>>>> [hidden email]>:
>>>>
>>>> Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can
>>>> build the 6-dof IKFast solver in 23 minutes on an i5 running
>>>> Ubuntu 12.04 and ROS Hydro.  However, when I try the same build
>>>> on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is
>>>> still chugging along after 5 hours and eventually I have to
>>>> hard boot my machine since it does not respond to keyboard or
>>>> mouse input.
>>>>
>>>> Would it be possible to build an earlier version of OpenRave
>>>> under Ubuntu 14.04 and ROS Indigo that doesn't require so much
>>>> CPU and/or memory when running ikfast.py?  I tried v0.8.2 but
>>>> it fails to compile on Ubuntu 14.04 terminating with the
>>>> following error:
>>>>
>>>> Linking CXX executable openrave0.8
>>>> CMakeFiles/openrave.dir/openrave.cpp.o: In function
>>>> `boost::array<std::string, 1ul>::operator[](unsigned long)':
>>>> openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a):
>>>> undefined reference to `boost::assertion_failed_msg(char
>>>> const*, char const*, char const*, char const*, long)' collect2:
>>>> error: ld returned 1 exit status make[2]: *** [src/openrave0.8]
>>>> Error 1 make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
>>>> make: *** [all] Error 2
>>>>
>>>> Thanks, patrick
>>>>
>>>> P.S. Will you be making Debian binaries available for Ubuntu
>>>> 14.04?
>>>>
>>>>
>>>>
>>>> On 05/01/2015 05:49 PM, Rosen Diankov wrote:
>>>>> i see, i originally made the option available for
>>>>> inversekinematics.py
>>>>>
>>>>> openrave.py --database inversekinematics --maxcasedepth=2
>>>>> ...
>>>>>
>>>>>
>>>>> i just added it to ikfast.py in master branch
>>>>>
>>>>> best,
>>>>>
>>>>>
>>>>> 2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]
>>>>> [hidden email]>:
>>>>>
>>>>> Hi Rosen,
>>>>>
>>>>> Yes, that was initially the problem.  With the correct --
>>>>> (double-dashes) I get an error as follows:
>>>>>
>>>>> $ python `openrave0.9-config \
>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>> --baselink=15 –eelink=37 --maxcasedepth=1
>>>>> --savefile=output_ikfast61.cpp
>>>>>
>>>>> ikfast.py: error: no such option: --maxcasedepth
>>>>>
>>>>> I made sure I did a pull to get the latest commit from the
>>>>> master branch then redid the "make" and "make install"
>>>>> commands but I still get the same error.
>>>>>
>>>>> The robot has 6 joints--a 6-dof arm.
>>>>>
>>>>> --patrick
>>>>>
>>>>>
>>>>> On 04/27/2015 05:17 PM, Rosen Diankov wrote:
>>>>>> patrick,
>>>>>>
>>>>>> maybe it's a mail conversion thing, but in the command line
>>>>>> you pasted "–maxcasedepth" had only one dash...
>>>>>>
>>>>>> how many joints is this robot? can you try
>>>>>> --maxcasedepth=1?
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-04-28 3:24 GMT+09:00 Patrick Goebel
>>>>>> <[hidden email] [hidden email]>:
>>>>>>
>>>>>> Hi Rosen,
>>>>>>
>>>>>> OK, I gave that a try but the speed actually got marginally
>>>>>> *slower* this time. 96 minutes instead of 92 minutes.  Here
>>>>>> is the command I am running:
>>>>>>
>>>>>> $ time python `openrave0.9-config \
>>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>>> --baselink=15 --eelink=37 –maxcasedepth=2
>>>>>> --savefile=output_ikfast61.cpp
>>>>>>
>>>>>> --patrick
>>>>>>
>>>>>>
>>>>>> On 04/27/2015 08:36 AM, Rosen Diankov wrote:
>>>>>>> later versions are finding more degenerate cases to
>>>>>>> solve, so it's a good thing in a sense ;0) i need to
>>>>>>> figure out a way to compress the ikfast size though since
>>>>>>> a lot of code is repeated.
>>>>>>>
>>>>>>> i just added a parameter that control this called
>>>>>>> maxcasedepth. pull from master and in the
>>>>>>> inversekinematics database call, pass in
>>>>>>> "--maxcasedepth=2"
>>>>>>>
>>>>>>> best,
>>>>>>>
>>>>>>>
>>>>>>> 2015-04-28 0:03 GMT+09:00 Patrick Goebel
>>>>>>> <[hidden email] [hidden email]>:
>>>>>>>
>>>>>>> Hi Rosen,
>>>>>>>
>>>>>>> Now that I have the master branch of v0.9 built and
>>>>>>> running, I discovered that generating an ikfast solution
>>>>>>> for a 6-dof arm is extremely slow compared to v0.8.  This
>>>>>>> is true whether I use Ubuntu 12.04 or 14.04.  In
>>>>>>> particular, when building a transform6d solver on a i5
>>>>>>> machine, it takes 9 minutes using v0.8 but when using 0.9
>>>>>>> it takes 92 minutes which is 10x slower.  Also, the size
>>>>>>> of the output cpp file increases from 574k for 0.8 to
>>>>>>> nearly 15Mb for 0.9.
>>>>>>>
>>>>>>> Is this expected behavior?  Or I am missing a key config
>>>>>>> parameter when building 0.9?
>>>>>>>
>>>>>>> Thanks! patrick
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>>
>>>>>>>

One dashboard for servers and applications across Physical-Virtual-Cloud
>>>>>>> Widest out-of-the-box monitoring support with 50+
>>>>>>> applications Performance metrics, stats and reports that
>>>>>>> give you Actionable Insights Deep dive visibility with
>>>>>>> transaction tracing using APM Insight.
>>>>>>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>>>>>> _______________________________________________
>>>>>>> Openrave-users mailing list
>>>>>>> [hidden email]
>>>>>>> [hidden email]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>>
>>
>>>>>>>

------------------------------------------------------------------------------
>> One dashboard for servers and applications across
>> Physical-Virtual-Cloud Widest out-of-the-box monitoring support
>> with 50+ applications Performance metrics, stats and reports that
>> give you Actionable Insights Deep dive visibility with transaction
>> tracing using APM Insight.
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>
>>
>> _______________________________________________ Openrave-users
>> mailing list [hidden email]
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>
> ------------------------------------------------------------------------------
>
>

One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable
> Insights Deep dive visibility with transaction tracing using APM
> Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________ Openrave-users
> mailing list [hidden email]
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>


round

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Rosen Diankov
Administrator
thanks!
i was able to reproduce your problem, and i think i know why it is happening. i'll get back to you within a week if i have fixed it ;0)

cheers,


2015-05-11 23:59 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Here is a link to my collada file.  And here is the original URDF file.  Note however that I just discovered issues with the ROS Indigo urdf_to_collada utility.  First, the Indigo debian version of the utility is broken so I had to install from source.  And even with the source version, I get the following error when converting my URDF file to Collada:

$ rosrun collada_urdf urdf_to_collada pi_robot.urdf pi_robot.dae

Document successfully written to pi_robot.dae
*** Error in `/home/patrick/catkin_ws/devel/lib/collada_urdf/urdf_to_collada': double free or corruption (fasttop): 0x0000000002287d20 ***
Aborted (core dumped)

Nonetheless, the .dae file is created and I can then do the rounding step:

$ rosrun moveit_ikfast round_collada_numbers.py pi_robot.dae pi_robot_rounded.dae 5

So I'm not sure if the above error is causing all the trouble.

--patrick


On 05/10/2015 10:26 PM, Rosen Diankov wrote:
> dear patrick,
>
> that is weird indeed. i have no idea why your robot would be some
> complex to be hitting such issues. perhaps there's small epsilons in
> the joints causing it to misdetect the intersecting axes? please send
> your collada robot and i'll take a look at it asap.
>
> thanks
>
>
> 2015-05-11 11:31 GMT+09:00 Patrick Goebel <[hidden email]
> [hidden email]>:

>
> Hi Rosen,
>
> So I have run into another snag.  Everything was working fine as long
> as I used --maxcasedepth=1 except that the resulting solver could not
> actually solve any IK problems I threw at it using MoveIt.  So I
> tried rebuilding with --maxcasedepth=2 and while the .cpp file is
> created OK, during the final catkin_make to build the moveit_ikfast
> plugin, I get a string of errors of the form:
>
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159600:15:
> error: ‘x35099’ was not declared in this scope IkReal x35112=x35099;
> ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159747:15: error: ‘x35099’ was not declared in this scope
> IkReal x35158=x35099; ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159883:15: error: ‘x35099’ was not declared in this scope
> IkReal x35200=x35099; ^ make[2]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp.o]
> Error 1 make[1]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/all]
> Error 2 make: *** [all] Error 2 Invoking "make -j4 -l4" failed
>
> Are there some variable declarations missing when maxcasedepth > 1 or
> is this another problem with moveit_ikfast?
>
> Also, I thought you might find it interesting to know that if I
> simply copy my .cpp file that I created using 0.8.2 under Ubuntu
> 12.04 and ROS Hydro and then use it to build the moveit_ikfast plugin
> under Ubuntu 14.04 and ROS Indigo, it builds and works great.
> However, 0.8.2 does not compile under Ubuntu 14.04 so this probably
> won't be an option for most people.
>
> P.S. The only reason I am working so hard to get IKFast working under
> Ubuntu 14.04 and ROS Indigo is because it is the last unfinished
> chapter in the Indigo revision of my /ROS By Example/
> <http://www.lulu.com/spotlight/pirobot> book (Volume 2).  On my own
> robots I still use Ubuntu 12.04 and ROS Hydro and the OpenRAVE Debian
> binaries worked great in that environment.
>
>
>
> On 05/08/2015 04:35 PM, Patrick Goebel wrote:
>> Hi Rosen,
>>
>> Yup, the problem was with moveit-ikfast.  I was using the Debian
>> package for ROS Indigo but the issue has been fixed
>> <https://github.com/ros-planning/moveit_ikfast/issues/49> in the
>> source distribution so once I switch to that, the plugin built
>> fine.
>>
>> Thanks again! patrick
>>
>> On 05/07/2015 07:21 PM, Rosen Diankov wrote:
>>> glad to see it's working ;0) right now most of my development has
>>> moved to debian, so i apologize if there is hiccups with the
>>> greatest and latest ubuntu.
>>>
>>> the invalid literal problem looks like a parsing error on their
>>> end.
>>>
>>> best,
>>>
>>>
>>> 2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]
>>> [hidden email]>:
>>>
>>> Hi Rosen,
>>>
>>> Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py
>>> completes in just 23 minutes on my slow Core Duo desktop running
>>> Ubuntu 14.04 and using a maxcasedepth of 1.
>>>
>>> Next, I tried to generate a MoveIt! ikfast plugin from the
>>> resulting .cpp file and I get the following error:
>>>
>>> $ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
>>>> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
>>>> `pwd`/output_ikfast61.cpp
>>> Warning: The default search has changed from OPTIMIZE_FREE_JOINT
>>> to now OPTIMIZE_MAX_JOINT!
>>>
>>> IKFast Plugin Generator Loading robot from
>>> 'pi_robot_moveit_config' package ... Creating plugin in
>>> 'pi_robot_ikfast_right_arm_plugin' package ... found 2 planning
>>> groups: right_arm, right_gripper found group 'right_arm'
>>> Traceback (most recent call last): File
>>> "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py",
>>> line 178, in <module> solver_version = int(line_search.group(1))
>>> ValueError: invalid literal for int() with base 10:
>>> '0x10000048'*
>>>
>>> *I'm not sure if this is something you can address or if it is a
>>> problem for the ROS/MoveIt folks?
>>>
>>> --patrick
>>>
>>>
>>>
>>> On 05/07/2015 05:45 AM, Rosen Diankov wrote:
>>>> patrick,
>>>>
>>>> can you check your sympy version? openrave only works with
>>>> sympy v0.7.1, which i usually get from pip. i think ubuntu
>>>> 14.04 sympy version is different, that's why it isn't
>>>> finishing. i can't think of any other reason why it would be 5
>>>> hours if you are using the same libraries....
>>>>
>>>> if you really think it is the ikfast.py version, you can try
>>>> using ikfast.py from 0.8.2 with openrave master branch.
>>>>
>>>> best,
>>>>
>>>> 2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]
>>>> [hidden email]>:

>>>>
>>>> Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can
>>>> build the 6-dof IKFast solver in 23 minutes on an i5 running
>>>> Ubuntu 12.04 and ROS Hydro.  However, when I try the same build
>>>> on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is
>>>> still chugging along after 5 hours and eventually I have to
>>>> hard boot my machine since it does not respond to keyboard or
>>>> mouse input.
>>>>
>>>> Would it be possible to build an earlier version of OpenRave
>>>> under Ubuntu 14.04 and ROS Indigo that doesn't require so much
>>>> CPU and/or memory when running ikfast.py?  I tried v0.8.2 but
>>>> it fails to compile on Ubuntu 14.04 terminating with the
>>>> following error:
>>>>
>>>> Linking CXX executable openrave0.8
>>>> CMakeFiles/openrave.dir/openrave.cpp.o: In function
>>>> `boost::array<std::string, 1ul>::operator[](unsigned long)':
>>>> openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a):
>>>> undefined reference to `boost::assertion_failed_msg(char
>>>> const*, char const*, char const*, char const*, long)' collect2:
>>>> error: ld returned 1 exit status make[2]: *** [src/openrave0.8]
>>>> Error 1 make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
>>>> make: *** [all] Error 2
>>>>
>>>> Thanks, patrick
>>>>
>>>> P.S. Will you be making Debian binaries available for Ubuntu
>>>> 14.04?
>>>>
>>>>
>>>>
>>>> On 05/01/2015 05:49 PM, Rosen Diankov wrote:
>>>>> i see, i originally made the option available for
>>>>> inversekinematics.py
>>>>>
>>>>> openrave.py --database inversekinematics --maxcasedepth=2
>>>>> ...
>>>>>
>>>>>
>>>>> i just added it to ikfast.py in master branch
>>>>>
>>>>> best,
>>>>>
>>>>>
>>>>> 2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]
>>>>> [hidden email]>:
>>>>>
>>>>> Hi Rosen,
>>>>>
>>>>> Yes, that was initially the problem.  With the correct --
>>>>> (double-dashes) I get an error as follows:
>>>>>
>>>>> $ python `openrave0.9-config \
>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>> --baselink=15 –eelink=37 --maxcasedepth=1
>>>>> --savefile=output_ikfast61.cpp
>>>>>
>>>>> ikfast.py: error: no such option: --maxcasedepth
>>>>>
>>>>> I made sure I did a pull to get the latest commit from the
>>>>> master branch then redid the "make" and "make install"
>>>>> commands but I still get the same error.
>>>>>
>>>>> The robot has 6 joints--a 6-dof arm.
>>>>>
>>>>> --patrick
>>>>>
>>>>>
>>>>> On 04/27/2015 05:17 PM, Rosen Diankov wrote:
>>>>>> patrick,
>>>>>>
>>>>>> maybe it's a mail conversion thing, but in the command line
>>>>>> you pasted "–maxcasedepth" had only one dash...
>>>>>>
>>>>>> how many joints is this robot? can you try
>>>>>> --maxcasedepth=1?
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-04-28 3:24 GMT+09:00 Patrick Goebel
>>>>>> <[hidden email] [hidden email]>:
>>>>>>
>>>>>> Hi Rosen,
>>>>>>
>>>>>> OK, I gave that a try but the speed actually got marginally
>>>>>> *slower* this time. 96 minutes instead of 92 minutes.  Here
>>>>>> is the command I am running:
>>>>>>
>>>>>> $ time python `openrave0.9-config \
>>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>>> --baselink=15 --eelink=37 –maxcasedepth=2
>>>>>> --savefile=output_ikfast61.cpp
>>>>>>
>>>>>> --patrick
>>>>>>
>>>>>>
>>>>>> On 04/27/2015 08:36 AM, Rosen Diankov wrote:
>>>>>>> later versions are finding more degenerate cases to
>>>>>>> solve, so it's a good thing in a sense ;0) i need to
>>>>>>> figure out a way to compress the ikfast size though since
>>>>>>> a lot of code is repeated.
>>>>>>>
>>>>>>> i just added a parameter that control this called
>>>>>>> maxcasedepth. pull from master and in the
>>>>>>> inversekinematics database call, pass in
>>>>>>> "--maxcasedepth=2"
>>>>>>>
>>>>>>> best,
>>>>>>>
>>>>>>>
>>>>>>> 2015-04-28 0:03 GMT+09:00 Patrick Goebel
>>>>>>> <[hidden email] [hidden email]>:
>>>>>>>
>>>>>>> Hi Rosen,
>>>>>>>
>>>>>>> Now that I have the master branch of v0.9 built and
>>>>>>> running, I discovered that generating an ikfast solution
>>>>>>> for a 6-dof arm is extremely slow compared to v0.8.  This
>>>>>>> is true whether I use Ubuntu 12.04 or 14.04.  In
>>>>>>> particular, when building a transform6d solver on a i5
>>>>>>> machine, it takes 9 minutes using v0.8 but when using 0.9
>>>>>>> it takes 92 minutes which is 10x slower.  Also, the size
>>>>>>> of the output cpp file increases from 574k for 0.8 to
>>>>>>> nearly 15Mb for 0.9.
>>>>>>>
>>>>>>> Is this expected behavior?  Or I am missing a key config
>>>>>>> parameter when building 0.9?
>>>>>>>
>>>>>>> Thanks! patrick
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>>
>>>>>>>

One dashboard for servers and applications across Physical-Virtual-Cloud
>>>>>>> Widest out-of-the-box monitoring support with 50+
>>>>>>> applications Performance metrics, stats and reports that
>>>>>>> give you Actionable Insights Deep dive visibility with
>>>>>>> transaction tracing using APM Insight.
>>>>>>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>>>>>> _______________________________________________
>>>>>>> Openrave-users mailing list
>>>>>>> [hidden email]
>>>>>>> [hidden email]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>>
>>
>>>>>>>

------------------------------------------------------------------------------
>> One dashboard for servers and applications across
>> Physical-Virtual-Cloud Widest out-of-the-box monitoring support
>> with 50+ applications Performance metrics, stats and reports that
>> give you Actionable Insights Deep dive visibility with transaction
>> tracing using APM Insight.
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>
>>
>> _______________________________________________ Openrave-users
>> mailing list [hidden email]
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>
> ------------------------------------------------------------------------------
>
>

One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable
> Insights Deep dive visibility with transaction tracing using APM
> Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________ Openrave-users
> mailing list [hidden email]
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>


round


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
Thanks Rosen--that would be great!

--patrick

On 05/11/2015 09:31 AM, Rosen Diankov wrote:
thanks!
i was able to reproduce your problem, and i think i know why it is happening. i'll get back to you within a week if i have fixed it ;0)

cheers,


2015-05-11 23:59 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Here is a link to my collada file.  And here is the original URDF file.  Note however that I just discovered issues with the ROS Indigo urdf_to_collada utility.  First, the Indigo debian version of the utility is broken so I had to install from source.  And even with the source version, I get the following error when converting my URDF file to Collada:

$ rosrun collada_urdf urdf_to_collada pi_robot.urdf pi_robot.dae

Document successfully written to pi_robot.dae
*** Error in `/home/patrick/catkin_ws/devel/lib/collada_urdf/urdf_to_collada': double free or corruption (fasttop): 0x0000000002287d20 ***
Aborted (core dumped)

Nonetheless, the .dae file is created and I can then do the rounding step:

$ rosrun moveit_ikfast round_collada_numbers.py pi_robot.dae pi_robot_rounded.dae 5

So I'm not sure if the above error is causing all the trouble.

--patrick


On 05/10/2015 10:26 PM, Rosen Diankov wrote:
> dear patrick,
>
> that is weird indeed. i have no idea why your robot would be some
> complex to be hitting such issues. perhaps there's small epsilons in
> the joints causing it to misdetect the intersecting axes? please send
> your collada robot and i'll take a look at it asap.
>
> thanks
>
>
> 2015-05-11 11:31 GMT+09:00 Patrick Goebel <[hidden email]
> [hidden email]>:

>
> Hi Rosen,
>
> So I have run into another snag.  Everything was working fine as long
> as I used --maxcasedepth=1 except that the resulting solver could not
> actually solve any IK problems I threw at it using MoveIt.  So I
> tried rebuilding with --maxcasedepth=2 and while the .cpp file is
> created OK, during the final catkin_make to build the moveit_ikfast
> plugin, I get a string of errors of the form:
>
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159600:15:
> error: ‘x35099’ was not declared in this scope IkReal x35112=x35099;
> ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159747:15: error: ‘x35099’ was not declared in this scope
> IkReal x35158=x35099; ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159883:15: error: ‘x35099’ was not declared in this scope
> IkReal x35200=x35099; ^ make[2]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp.o]
> Error 1 make[1]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/all]
> Error 2 make: *** [all] Error 2 Invoking "make -j4 -l4" failed
>
> Are there some variable declarations missing when maxcasedepth > 1 or
> is this another problem with moveit_ikfast?
>
> Also, I thought you might find it interesting to know that if I
> simply copy my .cpp file that I created using 0.8.2 under Ubuntu
> 12.04 and ROS Hydro and then use it to build the moveit_ikfast plugin
> under Ubuntu 14.04 and ROS Indigo, it builds and works great.
> However, 0.8.2 does not compile under Ubuntu 14.04 so this probably
> won't be an option for most people.
>
> P.S. The only reason I am working so hard to get IKFast working under
> Ubuntu 14.04 and ROS Indigo is because it is the last unfinished
> chapter in the Indigo revision of my /ROS By Example/
> <http://www.lulu.com/spotlight/pirobot> book (Volume 2).  On my own
> robots I still use Ubuntu 12.04 and ROS Hydro and the OpenRAVE Debian
> binaries worked great in that environment.
>
>
>
> On 05/08/2015 04:35 PM, Patrick Goebel wrote:
>> Hi Rosen,
>>
>> Yup, the problem was with moveit-ikfast.  I was using the Debian
>> package for ROS Indigo but the issue has been fixed
>> <https://github.com/ros-planning/moveit_ikfast/issues/49> in the
>> source distribution so once I switch to that, the plugin built
>> fine.
>>
>> Thanks again! patrick
>>
>> On 05/07/2015 07:21 PM, Rosen Diankov wrote:
>>> glad to see it's working ;0) right now most of my development has
>>> moved to debian, so i apologize if there is hiccups with the
>>> greatest and latest ubuntu.
>>>
>>> the invalid literal problem looks like a parsing error on their
>>> end.
>>>
>>> best,
>>>
>>>
>>> 2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]
>>> [hidden email]>:
>>>
>>> Hi Rosen,
>>>
>>> Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py
>>> completes in just 23 minutes on my slow Core Duo desktop running
>>> Ubuntu 14.04 and using a maxcasedepth of 1.
>>>
>>> Next, I tried to generate a MoveIt! ikfast plugin from the
>>> resulting .cpp file and I get the following error:
>>>
>>> $ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
>>>> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
>>>> `pwd`/output_ikfast61.cpp
>>> Warning: The default search has changed from OPTIMIZE_FREE_JOINT
>>> to now OPTIMIZE_MAX_JOINT!
>>>
>>> IKFast Plugin Generator Loading robot from
>>> 'pi_robot_moveit_config' package ... Creating plugin in
>>> 'pi_robot_ikfast_right_arm_plugin' package ... found 2 planning
>>> groups: right_arm, right_gripper found group 'right_arm'
>>> Traceback (most recent call last): File
>>> "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py",
>>> line 178, in <module> solver_version = int(line_search.group(1))
>>> ValueError: invalid literal for int() with base 10:
>>> '0x10000048'*
>>>
>>> *I'm not sure if this is something you can address or if it is a
>>> problem for the ROS/MoveIt folks?
>>>
>>> --patrick
>>>
>>>
>>>
>>> On 05/07/2015 05:45 AM, Rosen Diankov wrote:
>>>> patrick,
>>>>
>>>> can you check your sympy version? openrave only works with
>>>> sympy v0.7.1, which i usually get from pip. i think ubuntu
>>>> 14.04 sympy version is different, that's why it isn't
>>>> finishing. i can't think of any other reason why it would be 5
>>>> hours if you are using the same libraries....
>>>>
>>>> if you really think it is the ikfast.py version, you can try
>>>> using ikfast.py from 0.8.2 with openrave master branch.
>>>>
>>>> best,
>>>>
>>>> 2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]
>>>> [hidden email]>:

>>>>
>>>> Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can
>>>> build the 6-dof IKFast solver in 23 minutes on an i5 running
>>>> Ubuntu 12.04 and ROS Hydro.  However, when I try the same build
>>>> on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is
>>>> still chugging along after 5 hours and eventually I have to
>>>> hard boot my machine since it does not respond to keyboard or
>>>> mouse input.
>>>>
>>>> Would it be possible to build an earlier version of OpenRave
>>>> under Ubuntu 14.04 and ROS Indigo that doesn't require so much
>>>> CPU and/or memory when running ikfast.py?  I tried v0.8.2 but
>>>> it fails to compile on Ubuntu 14.04 terminating with the
>>>> following error:
>>>>
>>>> Linking CXX executable openrave0.8
>>>> CMakeFiles/openrave.dir/openrave.cpp.o: In function
>>>> `boost::array<std::string, 1ul>::operator[](unsigned long)':
>>>> openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a):
>>>> undefined reference to `boost::assertion_failed_msg(char
>>>> const*, char const*, char const*, char const*, long)' collect2:
>>>> error: ld returned 1 exit status make[2]: *** [src/openrave0.8]
>>>> Error 1 make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
>>>> make: *** [all] Error 2
>>>>
>>>> Thanks, patrick
>>>>
>>>> P.S. Will you be making Debian binaries available for Ubuntu
>>>> 14.04?
>>>>
>>>>
>>>>
>>>> On 05/01/2015 05:49 PM, Rosen Diankov wrote:
>>>>> i see, i originally made the option available for
>>>>> inversekinematics.py
>>>>>
>>>>> openrave.py --database inversekinematics --maxcasedepth=2
>>>>> ...
>>>>>
>>>>>
>>>>> i just added it to ikfast.py in master branch
>>>>>
>>>>> best,
>>>>>
>>>>>
>>>>> 2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]
>>>>> [hidden email]>:
>>>>>
>>>>> Hi Rosen,
>>>>>
>>>>> Yes, that was initially the problem.  With the correct --
>>>>> (double-dashes) I get an error as follows:
>>>>>
>>>>> $ python `openrave0.9-config \
>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>> --baselink=15 –eelink=37 --maxcasedepth=1
>>>>> --savefile=output_ikfast61.cpp
>>>>>
>>>>> ikfast.py: error: no such option: --maxcasedepth
>>>>>
>>>>> I made sure I did a pull to get the latest commit from the
>>>>> master branch then redid the "make" and "make install"
>>>>> commands but I still get the same error.
>>>>>
>>>>> The robot has 6 joints--a 6-dof arm.
>>>>>
>>>>> --patrick
>>>>>
>>>>>
>>>>> On 04/27/2015 05:17 PM, Rosen Diankov wrote:
>>>>>> patrick,
>>>>>>
>>>>>> maybe it's a mail conversion thing, but in the command line
>>>>>> you pasted "–maxcasedepth" had only one dash...
>>>>>>
>>>>>> how many joints is this robot? can you try
>>>>>> --maxcasedepth=1?
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-04-28 3:24 GMT+09:00 Patrick Goebel
>>>>>> <[hidden email] [hidden email]>:
>>>>>>
>>>>>> Hi Rosen,
>>>>>>
>>>>>> OK, I gave that a try but the speed actually got marginally
>>>>>> *slower* this time. 96 minutes instead of 92 minutes.  Here
>>>>>> is the command I am running:
>>>>>>
>>>>>> $ time python `openrave0.9-config \
>>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>>> --baselink=15 --eelink=37 –maxcasedepth=2
>>>>>> --savefile=output_ikfast61.cpp
>>>>>>
>>>>>> --patrick
>>>>>>
>>>>>>
>>>>>> On 04/27/2015 08:36 AM, Rosen Diankov wrote:
>>>>>>> later versions are finding more degenerate cases to
>>>>>>> solve, so it's a good thing in a sense ;0) i need to
>>>>>>> figure out a way to compress the ikfast size though since
>>>>>>> a lot of code is repeated.
>>>>>>>
>>>>>>> i just added a parameter that control this called
>>>>>>> maxcasedepth. pull from master and in the
>>>>>>> inversekinematics database call, pass in
>>>>>>> "--maxcasedepth=2"
>>>>>>>
>>>>>>> best,
>>>>>>>
>>>>>>>
>>>>>>> 2015-04-28 0:03 GMT+09:00 Patrick Goebel
>>>>>>> <[hidden email] [hidden email]>:
>>>>>>>
>>>>>>> Hi Rosen,
>>>>>>>
>>>>>>> Now that I have the master branch of v0.9 built and
>>>>>>> running, I discovered that generating an ikfast solution
>>>>>>> for a 6-dof arm is extremely slow compared to v0.8.  This
>>>>>>> is true whether I use Ubuntu 12.04 or 14.04.  In
>>>>>>> particular, when building a transform6d solver on a i5
>>>>>>> machine, it takes 9 minutes using v0.8 but when using 0.9
>>>>>>> it takes 92 minutes which is 10x slower.  Also, the size
>>>>>>> of the output cpp file increases from 574k for 0.8 to
>>>>>>> nearly 15Mb for 0.9.
>>>>>>>
>>>>>>> Is this expected behavior?  Or I am missing a key config
>>>>>>> parameter when building 0.9?
>>>>>>>
>>>>>>> Thanks! patrick
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>>
>>>>>>>

One dashboard for servers and applications across Physical-Virtual-Cloud
>>>>>>> Widest out-of-the-box monitoring support with 50+
>>>>>>> applications Performance metrics, stats and reports that
>>>>>>> give you Actionable Insights Deep dive visibility with
>>>>>>> transaction tracing using APM Insight.
>>>>>>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>>>>>> _______________________________________________
>>>>>>> Openrave-users mailing list
>>>>>>> [hidden email]
>>>>>>> [hidden email]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>>
>>
>>>>>>>

------------------------------------------------------------------------------
>> One dashboard for servers and applications across
>> Physical-Virtual-Cloud Widest out-of-the-box monitoring support
>> with 50+ applications Performance metrics, stats and reports that
>> give you Actionable Insights Deep dive visibility with transaction
>> tracing using APM Insight.
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>
>>
>> _______________________________________________ Openrave-users
>> mailing list [hidden email]
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>
> ------------------------------------------------------------------------------
>
>

One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable
> Insights Deep dive visibility with transaction tracing using APM
> Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________ Openrave-users
> mailing list [hidden email]
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>


round



------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Slow speed of 0.9 ikfast.py

Pi Robot
In reply to this post by Rosen Diankov
Hi Rosen,

Any luck getting this fixed? :-)

Thanks!
patrick

On 05/11/2015 09:31 AM, Rosen Diankov wrote:
thanks!
i was able to reproduce your problem, and i think i know why it is happening. i'll get back to you within a week if i have fixed it ;0)

cheers,


2015-05-11 23:59 GMT+09:00 Patrick Goebel <[hidden email]>:
Hi Rosen,

Here is a link to my collada file.  And here is the original URDF file.  Note however that I just discovered issues with the ROS Indigo urdf_to_collada utility.  First, the Indigo debian version of the utility is broken so I had to install from source.  And even with the source version, I get the following error when converting my URDF file to Collada:

$ rosrun collada_urdf urdf_to_collada pi_robot.urdf pi_robot.dae

Document successfully written to pi_robot.dae
*** Error in `/home/patrick/catkin_ws/devel/lib/collada_urdf/urdf_to_collada': double free or corruption (fasttop): 0x0000000002287d20 ***
Aborted (core dumped)

Nonetheless, the .dae file is created and I can then do the rounding step:

$ rosrun moveit_ikfast round_collada_numbers.py pi_robot.dae pi_robot_rounded.dae 5

So I'm not sure if the above error is causing all the trouble.

--patrick


On 05/10/2015 10:26 PM, Rosen Diankov wrote:
> dear patrick,
>
> that is weird indeed. i have no idea why your robot would be some
> complex to be hitting such issues. perhaps there's small epsilons in
> the joints causing it to misdetect the intersecting axes? please send
> your collada robot and i'll take a look at it asap.
>
> thanks
>
>
> 2015-05-11 11:31 GMT+09:00 Patrick Goebel <[hidden email]
> [hidden email]>:

>
> Hi Rosen,
>
> So I have run into another snag.  Everything was working fine as long
> as I used --maxcasedepth=1 except that the resulting solver could not
> actually solve any IK problems I threw at it using MoveIt.  So I
> tried rebuilding with --maxcasedepth=2 and while the .cpp file is
> created OK, during the final catkin_make to build the moveit_ikfast
> plugin, I get a string of errors of the form:
>
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159600:15:
> error: ‘x35099’ was not declared in this scope IkReal x35112=x35099;
> ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159747:15: error: ‘x35099’ was not declared in this scope
> IkReal x35158=x35099; ^ In file included from
> /home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp:114:0:
>
>

/home/patrick/catkin_ws/src/pi_robot_ikfast_right_arm_plugin/src/pi_robot_right_arm_ikfast_solver.cpp:159883:15: error: ‘x35099’ was not declared in this scope
> IkReal x35200=x35099; ^ make[2]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/src/pi_robot_right_arm_ikfast_moveit_plugin.cpp.o]
> Error 1 make[1]: ***
> [pi_robot_ikfast_right_arm_plugin/CMakeFiles/pi_robot_right_arm_moveit_ikfast_plugin.dir/all]
> Error 2 make: *** [all] Error 2 Invoking "make -j4 -l4" failed
>
> Are there some variable declarations missing when maxcasedepth > 1 or
> is this another problem with moveit_ikfast?
>
> Also, I thought you might find it interesting to know that if I
> simply copy my .cpp file that I created using 0.8.2 under Ubuntu
> 12.04 and ROS Hydro and then use it to build the moveit_ikfast plugin
> under Ubuntu 14.04 and ROS Indigo, it builds and works great.
> However, 0.8.2 does not compile under Ubuntu 14.04 so this probably
> won't be an option for most people.
>
> P.S. The only reason I am working so hard to get IKFast working under
> Ubuntu 14.04 and ROS Indigo is because it is the last unfinished
> chapter in the Indigo revision of my /ROS By Example/
> <http://www.lulu.com/spotlight/pirobot> book (Volume 2).  On my own
> robots I still use Ubuntu 12.04 and ROS Hydro and the OpenRAVE Debian
> binaries worked great in that environment.
>
>
>
> On 05/08/2015 04:35 PM, Patrick Goebel wrote:
>> Hi Rosen,
>>
>> Yup, the problem was with moveit-ikfast.  I was using the Debian
>> package for ROS Indigo but the issue has been fixed
>> <https://github.com/ros-planning/moveit_ikfast/issues/49> in the
>> source distribution so once I switch to that, the plugin built
>> fine.
>>
>> Thanks again! patrick
>>
>> On 05/07/2015 07:21 PM, Rosen Diankov wrote:
>>> glad to see it's working ;0) right now most of my development has
>>> moved to debian, so i apologize if there is hiccups with the
>>> greatest and latest ubuntu.
>>>
>>> the invalid literal problem looks like a parsing error on their
>>> end.
>>>
>>> best,
>>>
>>>
>>> 2015-05-07 23:24 GMT+09:00 Patrick Goebel <[hidden email]
>>> [hidden email]>:
>>>
>>> Hi Rosen,
>>>
>>> Many thanks--that did the trick.  Now I can use 0.9 and ikfast.py
>>> completes in just 23 minutes on my slow Core Duo desktop running
>>> Ubuntu 14.04 and using a maxcasedepth of 1.
>>>
>>> Next, I tried to generate a MoveIt! ikfast plugin from the
>>> resulting .cpp file and I get the following error:
>>>
>>> $ rosrun moveit_ikfast create_ikfast_moveit_plugin.py \
>>>> pi_robot right_arm pi_robot_ikfast_right_arm_plugin \
>>>> `pwd`/output_ikfast61.cpp
>>> Warning: The default search has changed from OPTIMIZE_FREE_JOINT
>>> to now OPTIMIZE_MAX_JOINT!
>>>
>>> IKFast Plugin Generator Loading robot from
>>> 'pi_robot_moveit_config' package ... Creating plugin in
>>> 'pi_robot_ikfast_right_arm_plugin' package ... found 2 planning
>>> groups: right_arm, right_gripper found group 'right_arm'
>>> Traceback (most recent call last): File
>>> "/opt/ros/indigo/lib/moveit_ikfast/create_ikfast_moveit_plugin.py",
>>> line 178, in <module> solver_version = int(line_search.group(1))
>>> ValueError: invalid literal for int() with base 10:
>>> '0x10000048'*
>>>
>>> *I'm not sure if this is something you can address or if it is a
>>> problem for the ROS/MoveIt folks?
>>>
>>> --patrick
>>>
>>>
>>>
>>> On 05/07/2015 05:45 AM, Rosen Diankov wrote:
>>>> patrick,
>>>>
>>>> can you check your sympy version? openrave only works with
>>>> sympy v0.7.1, which i usually get from pip. i think ubuntu
>>>> 14.04 sympy version is different, that's why it isn't
>>>> finishing. i can't think of any other reason why it would be 5
>>>> hours if you are using the same libraries....
>>>>
>>>> if you really think it is the ikfast.py version, you can try
>>>> using ikfast.py from 0.8.2 with openrave master branch.
>>>>
>>>> best,
>>>>
>>>> 2015-05-06 10:37 GMT+09:00 Patrick Goebel <[hidden email]
>>>> [hidden email]>:

>>>>
>>>> Thanks Rosen.  So the --maxcasedepth=1 flag now works and I can
>>>> build the 6-dof IKFast solver in 23 minutes on an i5 running
>>>> Ubuntu 12.04 and ROS Hydro.  However, when I try the same build
>>>> on a Core Duo running Ubuntu 14.04 and ROS Indigo, ikfast.py is
>>>> still chugging along after 5 hours and eventually I have to
>>>> hard boot my machine since it does not respond to keyboard or
>>>> mouse input.
>>>>
>>>> Would it be possible to build an earlier version of OpenRave
>>>> under Ubuntu 14.04 and ROS Indigo that doesn't require so much
>>>> CPU and/or memory when running ikfast.py?  I tried v0.8.2 but
>>>> it fails to compile on Ubuntu 14.04 terminating with the
>>>> following error:
>>>>
>>>> Linking CXX executable openrave0.8
>>>> CMakeFiles/openrave.dir/openrave.cpp.o: In function
>>>> `boost::array<std::string, 1ul>::operator[](unsigned long)':
>>>> openrave.cpp:(.text._ZN5boost5arrayISsLm1EEixEm[_ZN5boost5arrayISsLm1EEixEm]+0x3a):
>>>> undefined reference to `boost::assertion_failed_msg(char
>>>> const*, char const*, char const*, char const*, long)' collect2:
>>>> error: ld returned 1 exit status make[2]: *** [src/openrave0.8]
>>>> Error 1 make[1]: *** [src/CMakeFiles/openrave.dir/all] Error 2
>>>> make: *** [all] Error 2
>>>>
>>>> Thanks, patrick
>>>>
>>>> P.S. Will you be making Debian binaries available for Ubuntu
>>>> 14.04?
>>>>
>>>>
>>>>
>>>> On 05/01/2015 05:49 PM, Rosen Diankov wrote:
>>>>> i see, i originally made the option available for
>>>>> inversekinematics.py
>>>>>
>>>>> openrave.py --database inversekinematics --maxcasedepth=2
>>>>> ...
>>>>>
>>>>>
>>>>> i just added it to ikfast.py in master branch
>>>>>
>>>>> best,
>>>>>
>>>>>
>>>>> 2015-05-02 0:06 GMT+09:00 Patrick Goebel <[hidden email]
>>>>> [hidden email]>:
>>>>>
>>>>> Hi Rosen,
>>>>>
>>>>> Yes, that was initially the problem.  With the correct --
>>>>> (double-dashes) I get an error as follows:
>>>>>
>>>>> $ python `openrave0.9-config \
>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>> --baselink=15 –eelink=37 --maxcasedepth=1
>>>>> --savefile=output_ikfast61.cpp
>>>>>
>>>>> ikfast.py: error: no such option: --maxcasedepth
>>>>>
>>>>> I made sure I did a pull to get the latest commit from the
>>>>> master branch then redid the "make" and "make install"
>>>>> commands but I still get the same error.
>>>>>
>>>>> The robot has 6 joints--a 6-dof arm.
>>>>>
>>>>> --patrick
>>>>>
>>>>>
>>>>> On 04/27/2015 05:17 PM, Rosen Diankov wrote:
>>>>>> patrick,
>>>>>>
>>>>>> maybe it's a mail conversion thing, but in the command line
>>>>>> you pasted "–maxcasedepth" had only one dash...
>>>>>>
>>>>>> how many joints is this robot? can you try
>>>>>> --maxcasedepth=1?
>>>>>>
>>>>>>
>>>>>>
>>>>>> 2015-04-28 3:24 GMT+09:00 Patrick Goebel
>>>>>> <[hidden email] [hidden email]>:
>>>>>>
>>>>>> Hi Rosen,
>>>>>>
>>>>>> OK, I gave that a try but the speed actually got marginally
>>>>>> *slower* this time. 96 minutes instead of 92 minutes.  Here
>>>>>> is the command I am running:
>>>>>>
>>>>>> $ time python `openrave0.9-config \
>>>>>> --python-dir`/openravepy/_openravepy_0_9/ikfast.py
>>>>>> --robot=pi_robot_rounded.dae --iktype=transform6d
>>>>>> --baselink=15 --eelink=37 –maxcasedepth=2
>>>>>> --savefile=output_ikfast61.cpp
>>>>>>
>>>>>> --patrick
>>>>>>
>>>>>>
>>>>>> On 04/27/2015 08:36 AM, Rosen Diankov wrote:
>>>>>>> later versions are finding more degenerate cases to
>>>>>>> solve, so it's a good thing in a sense ;0) i need to
>>>>>>> figure out a way to compress the ikfast size though since
>>>>>>> a lot of code is repeated.
>>>>>>>
>>>>>>> i just added a parameter that control this called
>>>>>>> maxcasedepth. pull from master and in the
>>>>>>> inversekinematics database call, pass in
>>>>>>> "--maxcasedepth=2"
>>>>>>>
>>>>>>> best,
>>>>>>>
>>>>>>>
>>>>>>> 2015-04-28 0:03 GMT+09:00 Patrick Goebel
>>>>>>> <[hidden email] [hidden email]>:
>>>>>>>
>>>>>>> Hi Rosen,
>>>>>>>
>>>>>>> Now that I have the master branch of v0.9 built and
>>>>>>> running, I discovered that generating an ikfast solution
>>>>>>> for a 6-dof arm is extremely slow compared to v0.8.  This
>>>>>>> is true whether I use Ubuntu 12.04 or 14.04.  In
>>>>>>> particular, when building a transform6d solver on a i5
>>>>>>> machine, it takes 9 minutes using v0.8 but when using 0.9
>>>>>>> it takes 92 minutes which is 10x slower.  Also, the size
>>>>>>> of the output cpp file increases from 574k for 0.8 to
>>>>>>> nearly 15Mb for 0.9.
>>>>>>>
>>>>>>> Is this expected behavior?  Or I am missing a key config
>>>>>>> parameter when building 0.9?
>>>>>>>
>>>>>>> Thanks! patrick
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>>
>>>>>>>

One dashboard for servers and applications across Physical-Virtual-Cloud
>>>>>>> Widest out-of-the-box monitoring support with 50+
>>>>>>> applications Performance metrics, stats and reports that
>>>>>>> give you Actionable Insights Deep dive visibility with
>>>>>>> transaction tracing using APM Insight.
>>>>>>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>>>>>> _______________________________________________
>>>>>>> Openrave-users mailing list
>>>>>>> [hidden email]
>>>>>>> [hidden email]
>>>>>>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>>
>>
>>>>>>>

------------------------------------------------------------------------------
>> One dashboard for servers and applications across
>> Physical-Virtual-Cloud Widest out-of-the-box monitoring support
>> with 50+ applications Performance metrics, stats and reports that
>> give you Actionable Insights Deep dive visibility with transaction
>> tracing using APM Insight.
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>
>>
>> _______________________________________________ Openrave-users
>> mailing list [hidden email]
>> [hidden email]
>> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>
> ------------------------------------------------------------------------------
>
>

One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable
> Insights Deep dive visibility with transaction tracing using APM
> Insight. http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________ Openrave-users
> mailing list [hidden email]
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/openrave-users
>
>


round



------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Openrave-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/openrave-users
Loading...