chsahit / homotopy_guided_footstep_planner

Humanoid Footstep Planner

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Homotopy Guided Footstep Planner

This repository contains a humanoid footstep planning framework that uses the Homotopy-Shortest Path Algorithm (HBSP) for automatically generating heuristic functions.

Table of Contents

  1. Installation
  2. Planner Usage
  3. Defining World Environments
  4. Defining Robot Parameters
  5. Test Scenario Generation
  6. License
  7. Authors/Acknowledgements

Installation

Install Protobuf

To install protobuf 3, run the following commands:

$ sudo add-apt-repository ppa:maarten-fonville/protobuf
$ sudo apt-get update
$ sudo apt-get install libprotobuf15 libprotobuf-dev protobuf-compiler python-protobuf

Install ROS

This code base works on ROS Indigo and Kinetic. Install the appropiate version of ROS by following the documentation at http://wiki.ros.org/kinetic/Installation or http://wiki.ros.org/indigo/Installation

Setting up the Footstep Planner and its Dependencies

Clone the repository into a directory called humanoid_ws.

$ git clone https://github.com/vinitha910/homotopy_guided_footstep_planner humanoid_ws

The root directory will be the root of your catkin workspace when developing on this project. The src directory contains a .rosinstall file with references to all necessary sub-projects.

If you do not have the wstool utility, install it by following the instructions at http://wiki.ros.org/wstool.

Initialize the Catkin Workspace

$ source /opt/ros/<ROS_VERSION>/setup.bash
$ cd humanoid_ws/src
$ catkin_init_workspace

Clone all Sub-projects via wstool

$ cd humanoid_ws
$ wstool update -t src

Build the Workspace

You should expect the build to fail because of missing dependencies

$ cd humanoid_ws
$ catkin build
$ source devel/setup.bash

Install System Dependencies

$ cd humanoid_ws/src
$ for d in $(find . -name package.xml); do PKG=$(basename $(dirname $d)); rosdep install -i $PKG; done

Install and Build SBPL

$ cd humanoid_ws/src
$ git clone https://github.com/sbpl/sbpl.git
$ cd sbpl
$ mkdir build && cd build && cmake .. && make
$ sudo make install

Rebuild and Source the Workspace

$ cd humanoid_ws
$ catkin build
$ source devel/setup.bash

Usage

Running the footstep planner is done by entering

$ roslaunch footstep_planner footstep_planner.launch debug:=<debug_boolean> scenario:=<scenario_file>

into the terminal. Set <debug_boolean> to true to launch the gdb debugger, otherwise set to false. <scenario_file> is the name of a scenario .yaml file in footstep_planner/scenarios/. Make sure to have sourced devel/setup.bash before running the launch file.

License

Homotopy Guided Footstep Planner is licensed under a BSD license. See LICENSE for more information.

Authors/Acknowledgements

This code base was developed by Vinitha Ranganeni (@vinitha910) and Sahit Chintalapudi(@chsahit) primarily at the Search-Based Planning Lab in the Robotics Institute at Carnegie Mellon University. The developement of this code base was continued at University of Washington. We'd like to thank the National Science Foundation for funding our work through grants IIS-1659774, IIS-1409549 and DGE-1762114.

About

Humanoid Footstep Planner

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:C++ 86.4%Language:Python 12.5%Language:CMake 1.1%