Skip to content

maverick-long/trajopt

Repository files navigation

trajopt is an optimization-based motion planning library written by John Schulman. The original document can be found in here: http://rll.berkeley.edu/trajopt/doc/sphinx_build/html/#

Changes we made in this repo

  • it can be compiled as a catkin package through catkin_make
  • add more cost and constraint functions
  • add grabed objects into self collision ignore list

Installation tips

trajopt requires OPENRAVE 0.9 and Gurobi. There is an install instruction in the above trajopt document. http://rll.berkeley.edu/trajopt/doc/sphinx_build/html/install.html Here, I list the installation steps which I followed.

  • install OPENRAVE 0.9

    • ubuntu 12.04
      sudo apt-get -y install libopenscenegraph-dev cmake libboost-all-dev libeigen3-dev python-numpy python3.2-dev
      sudo add-apt-repository -y ppa:openrave/testing
      sudo apt-get -y update
      sudo apt-get -y install openrave
      echo export LD_LIBRARY_PATH='${LD_LIBRARY_PATH}':/usr/lib >> ~/.bashrc
    • ubuntu 14.04
      Since there isn't a ppa for ubuntu 14.04, we have to build it from source. I used the following instruction: https://scaron.info/teaching/installing-openrave-on-ubuntu-14.04.html
  • install Gurobi

    • Download current version gurobi 6.5.0 into your ~/Downloads folder.
      cd ~/Downloads
      tar xvfz gurobi6.5.0_linux64.tar.gz
      sudo mv gurobi650 /opt/
    • Getting a license
      go to http://www.gurobi.com/downloads/licenses/license-center and requrest an university lisence. Once you have a free university lisence,
      cd /opt/gurobi605/linux64/bin
      ./grbgetkey <LICENSE NUMBER GOES HERE>
    • Set GUROBI_HOME environment variable.
      echo export GUROBI_HOME="/opt/gurobi605/linux64" >> ~/.bashrc
  • install trajopt

    • clone this repo to your catkin workspace
    • add openrave model folders into environment variable OPENRAVE_DATA.
      for example, in my computer, echo export OPENRAVE_DATA='${OPENRAVE_DATA}':~/traj_ws/src/trajopt/ >> ~/.bashrc
    • catkin_make