plannerbenchmark


Nameplannerbenchmark JSON
Version 1.1.1 PyPI version JSON
download
home_pagehttps://maxspahn.github.io/localPlannerBench/
SummaryBenchmark suite for local planner in dynamic environments. Multiple planners can be compared on different kinematic chains in different environment. The suite is highly extendable for new planners, robots and environments.
upload_time2023-03-20 09:44:27
maintainerMax Spahn
docs_urlNone
authorMax Spahn
requires_python>=3.8,<3.10
licenseGPL-3.0-or-later
keywords robotics motion-planning benchmark
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Local Motion Planning Benchmark Suite
=====================================

This repository is meant to allow quick comparison between different
local motion planning algorithms. Running and postprocessing is
available and we aim to offer a nice interface to implement a wrapper to
your own motion planner.

Screenshots
-----------

<table>
 <tr>
  <td> Trajectory planar arm</td>
  <td> Trajectory point robot</td>
  <td> Simulation panda arm</td>
 </tr>
 <tr>
  <td> <img src="docs/source/img/trajectory_planar_arm.png" width="250"/> </td>
  <td> <img src="docs/source/img/trajectory_point_robot.png" width="250"/> </td>  
  <td> <img src="docs/source/img/trajectory_panda.gif" width="250"/> </td>  
 </tr>
</table>
<table>
 <tr>
  <td> Evaluation of series</td>
 </tr>
 <tr>
  <td> <img src="docs/source/img/results_comparison.png" width="500"/> </td>
 </tr>
</table>

Getting started
===============

This is the guide to quickly get going with the local motion planning
benchmark suite.

Pre-requisites
--------------

-   Linux Ubuntu LTS &gt;= 18.04
-   Python &gt;3.6, &lt; 3.10
-   pip3
-   gnuplot (`sudo apt install gnuplot`)
-   \[Optional\] [poetry](https://python-poetry.org/docs/)
-   \[Optional\] [embotech forces
    pro](https://www.embotech.com/products/forcespro/overview/) for mpc
-   \[Optional\] [acados_template](https://github.com/acados/acados/tree/master/interfaces/acados_template) for mpc

Installation
------------

You first have to download the repository

``` {.sourceCode .bash}
git clone git@github.com:maxspahn/localPlannerBench.git
```

Then, you can install the package using pip as:

``` {.sourceCode .bash}
pip3 install .
```

Optional: Installation with poetry
----------------------------------

If you want to use [poetry](https://python-poetry.org/docs/), you have
to install it first. See their webpage for instructions
[docs](https://python-poetry.org/docs/). Once poetry is installed, you
can install the virtual environment with the following commands. Note
that during the first installation `poetry update` takes up to 300 secs.

``` {.sourceCode .bash}
poetry update
poetry install
```

The virtual environment is entered by

``` {.sourceCode .bash}
poetry shell
```

Tutorial
--------

### Simple

The following is a very simple example case containing a point mass robot and a PD planner.

Run an experiments:

Experiments should be added in separate folder in `examples`. One
very simple example can be found in this folder. Note that you need to
active your poetry shell if you have installed the package using poetry
by

``` {.sourceCode .bash}
poetry shell
```

> Or alternatively active your virtual python environment

Then you navigate there by

``` {.sourceCode .bash}
cd examples/point_robot
```

Then the experiment is run with the command line interface

``` {.sourceCode .bash}
runner -c setup/exp.yaml -p setup/pdplanner.yaml --render
```

Postprocessing:

The experiments can be postprocessed using the provide executable. Again make sure you are in the virtual environment, when
using poetry run: 
(`poetry shell`)

``` {.sourceCode .bash}
cd examples/point_robot
```

The you can run the post processor with arguments as

``` {.sourceCode .bash}
post_process --exp path/to/experiment -k time2Goal pathLength --plot
```

![Example trajectory](docs/source/img/trajectory_point_robot.png)

### Advanced

To showcase the power of localPlannerBench we would also like to show you a more complex example, containing the 7-DoF frankaemika panda robot arm and a custom opensource [acados](https://github.com/acados/acados) based MPC planner.

Again make sure you are in your virtual python environment.
``` {.sourceCode .bash}
poetry shell
```

Install [acados_template](https://github.com/acados/acados/tree/master/interfaces/acados_template) inside of the virtual environment if you haven't already.

Then you navigate to 

``` {.sourceCode .bash}
cd examples/panda_arm
```

Then the experiment is run with the command line interface

``` {.sourceCode .bash}
runner -c setup/exp.yaml -p setup/acados_mpc.yaml --render
```

<img src="docs/source/img/panda_arm_acados_mpc.gif" width="70%"/>

The you can run the post processor with arguments as

``` {.sourceCode .bash}
post_process --exp results --latest -k time2Goal pathLength --plot
```

![Example trajectory](docs/source/img/trajectory_panda_acados_mpc.png)



            

Raw data

            {
    "_id": null,
    "home_page": "https://maxspahn.github.io/localPlannerBench/",
    "name": "plannerbenchmark",
    "maintainer": "Max Spahn",
    "docs_url": null,
    "requires_python": ">=3.8,<3.10",
    "maintainer_email": "m.spahn@tudelft.nl",
    "keywords": "robotics,motion-planning,benchmark",
    "author": "Max Spahn",
    "author_email": "m.spahn@tudelft.nl",
    "download_url": "https://files.pythonhosted.org/packages/4e/2a/b458b9dbaea613ffb3b7ac12ec374498206bb1e01e9746d69b082851df82/plannerbenchmark-1.1.1.tar.gz",
    "platform": null,
    "description": "Local Motion Planning Benchmark Suite\n=====================================\n\nThis repository is meant to allow quick comparison between different\nlocal motion planning algorithms. Running and postprocessing is\navailable and we aim to offer a nice interface to implement a wrapper to\nyour own motion planner.\n\nScreenshots\n-----------\n\n<table>\n <tr>\n  <td> Trajectory planar arm</td>\n  <td> Trajectory point robot</td>\n  <td> Simulation panda arm</td>\n </tr>\n <tr>\n  <td> <img src=\"docs/source/img/trajectory_planar_arm.png\" width=\"250\"/> </td>\n  <td> <img src=\"docs/source/img/trajectory_point_robot.png\" width=\"250\"/> </td>  \n  <td> <img src=\"docs/source/img/trajectory_panda.gif\" width=\"250\"/> </td>  \n </tr>\n</table>\n<table>\n <tr>\n  <td> Evaluation of series</td>\n </tr>\n <tr>\n  <td> <img src=\"docs/source/img/results_comparison.png\" width=\"500\"/> </td>\n </tr>\n</table>\n\nGetting started\n===============\n\nThis is the guide to quickly get going with the local motion planning\nbenchmark suite.\n\nPre-requisites\n--------------\n\n-   Linux Ubuntu LTS &gt;= 18.04\n-   Python &gt;3.6, &lt; 3.10\n-   pip3\n-   gnuplot (`sudo apt install gnuplot`)\n-   \\[Optional\\] [poetry](https://python-poetry.org/docs/)\n-   \\[Optional\\] [embotech forces\n    pro](https://www.embotech.com/products/forcespro/overview/) for mpc\n-   \\[Optional\\] [acados_template](https://github.com/acados/acados/tree/master/interfaces/acados_template) for mpc\n\nInstallation\n------------\n\nYou first have to download the repository\n\n``` {.sourceCode .bash}\ngit clone git@github.com:maxspahn/localPlannerBench.git\n```\n\nThen, you can install the package using pip as:\n\n``` {.sourceCode .bash}\npip3 install .\n```\n\nOptional: Installation with poetry\n----------------------------------\n\nIf you want to use [poetry](https://python-poetry.org/docs/), you have\nto install it first. See their webpage for instructions\n[docs](https://python-poetry.org/docs/). Once poetry is installed, you\ncan install the virtual environment with the following commands. Note\nthat during the first installation `poetry update` takes up to 300 secs.\n\n``` {.sourceCode .bash}\npoetry update\npoetry install\n```\n\nThe virtual environment is entered by\n\n``` {.sourceCode .bash}\npoetry shell\n```\n\nTutorial\n--------\n\n### Simple\n\nThe following is a very simple example case containing a point mass robot and a PD planner.\n\nRun an experiments:\n\nExperiments should be added in separate folder in `examples`. One\nvery simple example can be found in this folder. Note that you need to\nactive your poetry shell if you have installed the package using poetry\nby\n\n``` {.sourceCode .bash}\npoetry shell\n```\n\n> Or alternatively active your virtual python environment\n\nThen you navigate there by\n\n``` {.sourceCode .bash}\ncd examples/point_robot\n```\n\nThen the experiment is run with the command line interface\n\n``` {.sourceCode .bash}\nrunner -c setup/exp.yaml -p setup/pdplanner.yaml --render\n```\n\nPostprocessing:\n\nThe experiments can be postprocessed using the provide executable. Again make sure you are in the virtual environment, when\nusing poetry run: \n(`poetry shell`)\n\n``` {.sourceCode .bash}\ncd examples/point_robot\n```\n\nThe you can run the post processor with arguments as\n\n``` {.sourceCode .bash}\npost_process --exp path/to/experiment -k time2Goal pathLength --plot\n```\n\n![Example trajectory](docs/source/img/trajectory_point_robot.png)\n\n### Advanced\n\nTo showcase the power of localPlannerBench we would also like to show you a more complex example, containing the 7-DoF frankaemika panda robot arm and a custom opensource [acados](https://github.com/acados/acados) based MPC planner.\n\nAgain make sure you are in your virtual python environment.\n``` {.sourceCode .bash}\npoetry shell\n```\n\nInstall [acados_template](https://github.com/acados/acados/tree/master/interfaces/acados_template) inside of the virtual environment if you haven't already.\n\nThen you navigate to \n\n``` {.sourceCode .bash}\ncd examples/panda_arm\n```\n\nThen the experiment is run with the command line interface\n\n``` {.sourceCode .bash}\nrunner -c setup/exp.yaml -p setup/acados_mpc.yaml --render\n```\n\n<img src=\"docs/source/img/panda_arm_acados_mpc.gif\" width=\"70%\"/>\n\nThe you can run the post processor with arguments as\n\n``` {.sourceCode .bash}\npost_process --exp results --latest -k time2Goal pathLength --plot\n```\n\n![Example trajectory](docs/source/img/trajectory_panda_acados_mpc.png)\n\n\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-or-later",
    "summary": "Benchmark suite for local planner in dynamic environments. Multiple planners can be compared on different kinematic chains in different environment. The suite is highly extendable for new planners, robots and environments.",
    "version": "1.1.1",
    "split_keywords": [
        "robotics",
        "motion-planning",
        "benchmark"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "abd54b21e7df8890760fd4febdc4095e92400f0109a55a5276259580c01a678c",
                "md5": "67df5c6aa098182b2dde281813ab5f5e",
                "sha256": "5670f2506360c2cc5df573cbf4f2b7d1bf74e9b525433c3855562fd90ce15bec"
            },
            "downloads": -1,
            "filename": "plannerbenchmark-1.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "67df5c6aa098182b2dde281813ab5f5e",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<3.10",
            "size": 8046229,
            "upload_time": "2023-03-20T09:44:23",
            "upload_time_iso_8601": "2023-03-20T09:44:23.174337Z",
            "url": "https://files.pythonhosted.org/packages/ab/d5/4b21e7df8890760fd4febdc4095e92400f0109a55a5276259580c01a678c/plannerbenchmark-1.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4e2ab458b9dbaea613ffb3b7ac12ec374498206bb1e01e9746d69b082851df82",
                "md5": "a04fd377719aede52d15e3bf1a3c8baa",
                "sha256": "4d9f8e5da466481eb1be8f1601eb711eecd1ba80c2d2915cde2446dde46d5d60"
            },
            "downloads": -1,
            "filename": "plannerbenchmark-1.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "a04fd377719aede52d15e3bf1a3c8baa",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<3.10",
            "size": 7943250,
            "upload_time": "2023-03-20T09:44:27",
            "upload_time_iso_8601": "2023-03-20T09:44:27.573483Z",
            "url": "https://files.pythonhosted.org/packages/4e/2a/b458b9dbaea613ffb3b7ac12ec374498206bb1e01e9746d69b082851df82/plannerbenchmark-1.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-03-20 09:44:27",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "plannerbenchmark"
}
        
Elapsed time: 0.05387s