invariants-py


Nameinvariants-py JSON
Version 0.3.9 PyPI version JSON
download
home_pageNone
SummaryCalculate invariant trajectory representations from trajectory data and generate new trajectories from invariant representations
upload_time2024-10-29 12:36:17
maintainerNone
docs_urlNone
authorMaxim Vochten, Riccardo Burlizzi, Arno Verduyn
requires_python>=3.8
licenseMIT License
keywords casadi coordinate-invariant differential geometry dynamics geometric optimal control invariant kinematics optimal control optimization python robotics screw theory trajectory analysis trajectory generation trajectory optimization trajectory planning trajectory representation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![install_and_test](https://github.com/trajectory-invariants/invariants_py/actions/workflows/install_and_test.yml/badge.svg)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)
![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/trajectory-invariants/invariants_py)
![GitHub issues](https://img.shields.io/github/issues/trajectory-invariants/invariants_py)

<p align="center">
  <img src="https://trajectory-invariants.github.io/images/logo-trajectory-invariants.png" alt="Logo Trajectory Invariants" title="Trajectory Invariants" width="750">
</p>

`invariants-py` is a Python library to robustly calculate coordinate-invariant trajectory representations using geometric optimal control. 
It also supports trajectory generation under user-specified trajectory constraints starting from invariant representations.

More information can be found on the documentation website: https://trajectory-invariants.github.io

## Features

<!-- TODO: Screenshots or gifs to show results. -->

The main features are:
- Calculation of invariant descriptors for trajectories.
- Fast trajectory adaptation starting from the invariant descriptors.

Invariant trajectory representations find their application in trajectory analysis, trajectory segmentation, recognition and generalization. 

## Installation

The package can be installed from PyPI or from source.

### Prerequisites

The package requires Python 3.8 or higher.

### 1. Installation from PyPI

This installation option is recommended if you only want to use the package and do not plan to modify the source code.

Upgrade your version of `pip`:
```shell
pip install --upgrade pip    
```

Install the package:
```shell
pip install invariants-py
```

### 2. Installation from source

This installation option is recommended if you plan to modify or experiment with the source code.

Clone (or download) the `invariants-py` repository:
```shell
git clone https://github.com/trajectory-invariants/invariants_py.git
```

Navigate to the cloned repository:
```shell
cd invariants_py
```

Upgrade your version of `pip`:
```shell
pip install --upgrade pip    
```

Install the package:
```shell
pip install -e .
```

## Getting started

<!-- Add a code snippet here with basic example in a few lines -->

Basic examples are provided to get you started in the [examples folder](./examples/).

More detailed examples and tutorials can be found on the [documentation website](https://trajectory-invariants.github.io/docs/python/).

## Speed up using Fatrop

To speed up the solution of the optimal control problems, you can optionally install the [fatrop solver](https://gitlab.kuleuven.be/robotgenskill/fatrop/fatrop). The instructions are available on [this page](https://trajectory-invariants.github.io/docs/python/installation/installation-fatrop/) of the documentation website.

## Roadmap

The following features are planned for future releases:
- Support for more types of invariant representations (e.g. screw invariants, global invariants, ...).
- Support for more types of constraints in the trajectory generation.
- Benchmarking between different invariant representations in terms of robustness, computational efficiency, and generalizability.

## Contributing

We welcome contributions to this repository, for example in the form of pull requests.

## Contributors

We wish to thank the following people for their contributions to an early version of the software: Victor van Wymeersch, Zeno Gillis, Toon Daemen, Glenn Maes, Ali Mousavi, Lander Vanroye

## Support

For questions, bugs, feature requests, etc., please open [an issue on this repository](https://github.com/trajectory-invariants/invariants_py/issues).

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Citing

If you use this package in your research, please cite the following paper:

```
@article{vochten2023invariant,
  title={Invariant Descriptors of Motion and Force Trajectories for Interpreting Object Manipulation Tasks in Contact},
  author={Vochten, Maxim and Mohammadi, Ali Mousavi and Verduyn, Arno and De Laet, Tinne and Aertbeli{\"e}n, Erwin and De Schutter, Joris},
  journal={IEEE Transactions on Robotics},
  year={2023},
  volume={39},
  number={6},
  pages={4892-4912},
  doi={10.1109/TRO.2023.3309230}}
```
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "invariants-py",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "casadi, coordinate-invariant, differential geometry, dynamics, geometric optimal control, invariant, kinematics, optimal control, optimization, python, robotics, screw theory, trajectory analysis, trajectory generation, trajectory optimization, trajectory planning, trajectory representation",
    "author": "Maxim Vochten, Riccardo Burlizzi, Arno Verduyn",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/c8/7b/e6c1f4344d3c8ca89933b91b344e6a9a3c35647f8722ab8b2d8fb2a95acd/invariants_py-0.3.9.tar.gz",
    "platform": null,
    "description": "![install_and_test](https://github.com/trajectory-invariants/invariants_py/actions/workflows/install_and_test.yml/badge.svg)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/trajectory-invariants/invariants_py)\n![GitHub issues](https://img.shields.io/github/issues/trajectory-invariants/invariants_py)\n\n<p align=\"center\">\n  <img src=\"https://trajectory-invariants.github.io/images/logo-trajectory-invariants.png\" alt=\"Logo Trajectory Invariants\" title=\"Trajectory Invariants\" width=\"750\">\n</p>\n\n`invariants-py` is a Python library to robustly calculate coordinate-invariant trajectory representations using geometric optimal control. \nIt also supports trajectory generation under user-specified trajectory constraints starting from invariant representations.\n\nMore information can be found on the documentation website: https://trajectory-invariants.github.io\n\n## Features\n\n<!-- TODO: Screenshots or gifs to show results. -->\n\nThe main features are:\n- Calculation of invariant descriptors for trajectories.\n- Fast trajectory adaptation starting from the invariant descriptors.\n\nInvariant trajectory representations find their application in trajectory analysis, trajectory segmentation, recognition and generalization. \n\n## Installation\n\nThe package can be installed from PyPI or from source.\n\n### Prerequisites\n\nThe package requires Python 3.8 or higher.\n\n### 1. Installation from PyPI\n\nThis installation option is recommended if you only want to use the package and do not plan to modify the source code.\n\nUpgrade your version of `pip`:\n```shell\npip install --upgrade pip    \n```\n\nInstall the package:\n```shell\npip install invariants-py\n```\n\n### 2. Installation from source\n\nThis installation option is recommended if you plan to modify or experiment with the source code.\n\nClone (or download) the `invariants-py` repository:\n```shell\ngit clone https://github.com/trajectory-invariants/invariants_py.git\n```\n\nNavigate to the cloned repository:\n```shell\ncd invariants_py\n```\n\nUpgrade your version of `pip`:\n```shell\npip install --upgrade pip    \n```\n\nInstall the package:\n```shell\npip install -e .\n```\n\n## Getting started\n\n<!-- Add a code snippet here with basic example in a few lines -->\n\nBasic examples are provided to get you started in the [examples folder](./examples/).\n\nMore detailed examples and tutorials can be found on the [documentation website](https://trajectory-invariants.github.io/docs/python/).\n\n## Speed up using Fatrop\n\nTo speed up the solution of the optimal control problems, you can optionally install the [fatrop solver](https://gitlab.kuleuven.be/robotgenskill/fatrop/fatrop). The instructions are available on [this page](https://trajectory-invariants.github.io/docs/python/installation/installation-fatrop/) of the documentation website.\n\n## Roadmap\n\nThe following features are planned for future releases:\n- Support for more types of invariant representations (e.g. screw invariants, global invariants, ...).\n- Support for more types of constraints in the trajectory generation.\n- Benchmarking between different invariant representations in terms of robustness, computational efficiency, and generalizability.\n\n## Contributing\n\nWe welcome contributions to this repository, for example in the form of pull requests.\n\n## Contributors\n\nWe wish to thank the following people for their contributions to an early version of the software: Victor van Wymeersch, Zeno Gillis, Toon Daemen, Glenn Maes, Ali Mousavi, Lander Vanroye\n\n## Support\n\nFor questions, bugs, feature requests, etc., please open [an issue on this repository](https://github.com/trajectory-invariants/invariants_py/issues).\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Citing\n\nIf you use this package in your research, please cite the following paper:\n\n```\n@article{vochten2023invariant,\n  title={Invariant Descriptors of Motion and Force Trajectories for Interpreting Object Manipulation Tasks in Contact},\n  author={Vochten, Maxim and Mohammadi, Ali Mousavi and Verduyn, Arno and De Laet, Tinne and Aertbeli{\\\"e}n, Erwin and De Schutter, Joris},\n  journal={IEEE Transactions on Robotics},\n  year={2023},\n  volume={39},\n  number={6},\n  pages={4892-4912},\n  doi={10.1109/TRO.2023.3309230}}\n```",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "Calculate invariant trajectory representations from trajectory data and generate new trajectories from invariant representations",
    "version": "0.3.9",
    "project_urls": {
        "Documentation": "https://trajectory-invariants.github.io/docs/python/",
        "Home-page": "https://trajectory-invariants.github.io/",
        "Issues": "https://github.com/trajectory-invariants/invariants_py/issues",
        "Repository": "https://github.com/trajectory-invariants/invariants_py"
    },
    "split_keywords": [
        "casadi",
        " coordinate-invariant",
        " differential geometry",
        " dynamics",
        " geometric optimal control",
        " invariant",
        " kinematics",
        " optimal control",
        " optimization",
        " python",
        " robotics",
        " screw theory",
        " trajectory analysis",
        " trajectory generation",
        " trajectory optimization",
        " trajectory planning",
        " trajectory representation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8bc8f22f3488c767a0980cd38334cdab7ff84580f416c260418950255f35b157",
                "md5": "4212170e6a9a0d472e758f7360e1a62a",
                "sha256": "2554996c87c520a255ae133ba76d64e85eb8217aceccebac8cc19c1be9e2dd9f"
            },
            "downloads": -1,
            "filename": "invariants_py-0.3.9-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4212170e6a9a0d472e758f7360e1a62a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 460301,
            "upload_time": "2024-10-29T12:36:15",
            "upload_time_iso_8601": "2024-10-29T12:36:15.240912Z",
            "url": "https://files.pythonhosted.org/packages/8b/c8/f22f3488c767a0980cd38334cdab7ff84580f416c260418950255f35b157/invariants_py-0.3.9-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c87be6c1f4344d3c8ca89933b91b344e6a9a3c35647f8722ab8b2d8fb2a95acd",
                "md5": "9086e489fe880e08c44e056287d90392",
                "sha256": "657638f000a25fd498c0e9fcca33c786435abb4fb8a538d4eed777786c2d0a6f"
            },
            "downloads": -1,
            "filename": "invariants_py-0.3.9.tar.gz",
            "has_sig": false,
            "md5_digest": "9086e489fe880e08c44e056287d90392",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 901258,
            "upload_time": "2024-10-29T12:36:17",
            "upload_time_iso_8601": "2024-10-29T12:36:17.520388Z",
            "url": "https://files.pythonhosted.org/packages/c8/7b/e6c1f4344d3c8ca89933b91b344e6a9a3c35647f8722ab8b2d8fb2a95acd/invariants_py-0.3.9.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-29 12:36:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "trajectory-invariants",
    "github_project": "invariants_py",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "invariants-py"
}
        
Elapsed time: 0.86381s