hots


Namehots JSON
Version 0.1.8 PyPI version JSON
download
home_page
SummaryResource Allocation via Clustering
upload_time2023-11-07 08:53:22
maintainer
docs_urlNone
author
requires_python>=3.8
licenseMIT
keywords resource optimisation clustering planning
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <h1 align="center">
<img src="https://github.com/Smile-SA/hots/raw/main/doc/source/_static/hots_logo.png" width="250">
</h1><br>

> Hybrid Optimization for Time Series (HOTS)  
> HOTS solves problems presented as time series using machine learning and optimization methods.  
> The library supports multiple resource related problems (placement, allocation), presented as one or more metrics.

## Requirements for running HOTS

HOTS works on any platform with Python 3.8 and up.

The dev Python version must be used to install the package (for example install the package
python3.10-dev in order to use Python 3.10).

A solver needs to be installed for using HOTS. By default, GLPK is installed with HOTS, but the
user needs to install the following packages before using HOTS :
 * libglpk-dev
 * glpk-utils

## Installing HOTS

A Makefile is provided, which creates a virtual environment and install HOTS. You can do :

```bash
make
```

## Running HOTS

### Via Python

The application can be used simply by running :

```bash
hots /path/to/data/folder
```

Make sure to activate the virtual environment before running HOTS with :

```bash
source venv/bin/activate
```

Some parameters can be defined with the `hots` command, such as :
 * `k` : the number of clusters used in clustering ;
 * `tau` : the window size during the loop process ;
 * `param` : a specific parameter file to use.

All the CLI options are found running the `help` option :
```bash
hots --help
```

More parameters can be defined through a `.JSON` file, for which an example is provided in the `tests` folder. See the documentation, section `User manual`, for more details about all the parameters.  

Note that a test data is provided within the package, so you can easily test the installation with :
```bash
hots /tests/data/generated_7
```

### Via Docker

A Docker container can be easily built for running `hots`, using the `Dockerfile` provided in the package.
If you are not used to Docker, you can follow the installation guideline here : https://docs.docker.com/engine/install/, and the post-install process here (Linux) : https://docs.docker.com/engine/install/linux-postinstall/.

As soon as Docker is setup, you can run the following commands (being at the root of the directory, with the Dockerfile) :

```bash
docker build -t hots .
```

Once the container is created, you can run it, by running the following :

```bash
docker run -it hots /bin/bash
```

You will be prompted to a new shell, in which you can follow the same steps as for Python.

## Credits

Authors:

- Etienne Leclercq - Software design, lead developer
- Jonathan Rivalan - Product owner, Lead designer 
- Marco Mariani
- Gilles Lenfant
- Soobash Daiboo
- Kang Du
- Amaury Sauret
- SMILE R&D

As HOTS was created during a PhD, credits have to be given to academic supervisors, Céline Rouveirol and Frédéric Roupin, involved in the algorithm thinking.

## Links

- [Project home](https://github.com/Smile-SA/hots)
- [File issues (bugs, ...)](https://github.com/Smile-SA/hots/issues)
- [PyPi package](https://pypi.org/project/hots/)
- [Documentation](https://hots.readthedocs.io/en/latest/)
- [PhD document](https://theses.hal.science/tel-03997934)

## License

This software is provided under the terms of the MIT license you can read in the `LICENSE.txt` file of the repository or the package.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "hots",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "",
    "keywords": "Resource,Optimisation,Clustering,Planning",
    "author": "",
    "author_email": "Smile R&D team <rnd@smile.fr>",
    "download_url": "https://files.pythonhosted.org/packages/9a/7f/ffe0f491733334d37735d8683eaba2f45f80e2ca97a389a364e368129f0f/hots-0.1.8.tar.gz",
    "platform": "any",
    "description": "<h1 align=\"center\">\n<img src=\"https://github.com/Smile-SA/hots/raw/main/doc/source/_static/hots_logo.png\" width=\"250\">\n</h1><br>\n\n> Hybrid Optimization for Time Series (HOTS)  \n> HOTS solves problems presented as time series using machine learning and optimization methods.  \n> The library supports multiple resource related problems (placement, allocation), presented as one or more metrics.\n\n## Requirements for running HOTS\n\nHOTS works on any platform with Python 3.8 and up.\n\nThe dev Python version must be used to install the package (for example install the package\npython3.10-dev in order to use Python 3.10).\n\nA solver needs to be installed for using HOTS. By default, GLPK is installed with HOTS, but the\nuser needs to install the following packages before using HOTS :\n * libglpk-dev\n * glpk-utils\n\n## Installing HOTS\n\nA Makefile is provided, which creates a virtual environment and install HOTS. You can do :\n\n```bash\nmake\n```\n\n## Running HOTS\n\n### Via Python\n\nThe application can be used simply by running :\n\n```bash\nhots /path/to/data/folder\n```\n\nMake sure to activate the virtual environment before running HOTS with :\n\n```bash\nsource venv/bin/activate\n```\n\nSome parameters can be defined with the `hots` command, such as :\n * `k` : the number of clusters used in clustering ;\n * `tau` : the window size during the loop process ;\n * `param` : a specific parameter file to use.\n\nAll the CLI options are found running the `help` option :\n```bash\nhots --help\n```\n\nMore parameters can be defined through a `.JSON` file, for which an example is provided in the `tests` folder. See the documentation, section `User manual`, for more details about all the parameters.  \n\nNote that a test data is provided within the package, so you can easily test the installation with :\n```bash\nhots /tests/data/generated_7\n```\n\n### Via Docker\n\nA Docker container can be easily built for running `hots`, using the `Dockerfile` provided in the package.\nIf you are not used to Docker, you can follow the installation guideline here : https://docs.docker.com/engine/install/, and the post-install process here (Linux) : https://docs.docker.com/engine/install/linux-postinstall/.\n\nAs soon as Docker is setup, you can run the following commands (being at the root of the directory, with the Dockerfile) :\n\n```bash\ndocker build -t hots .\n```\n\nOnce the container is created, you can run it, by running the following :\n\n```bash\ndocker run -it hots /bin/bash\n```\n\nYou will be prompted to a new shell, in which you can follow the same steps as for Python.\n\n## Credits\n\nAuthors:\n\n- Etienne Leclercq - Software design, lead developer\n- Jonathan Rivalan - Product owner, Lead designer \n- Marco Mariani\n- Gilles Lenfant\n- Soobash Daiboo\n- Kang Du\n- Amaury Sauret\n- SMILE R&D\n\nAs HOTS was created during a PhD, credits have to be given to academic supervisors, C\u00e9line Rouveirol and Fr\u00e9d\u00e9ric Roupin, involved in the algorithm thinking.\n\n## Links\n\n- [Project home](https://github.com/Smile-SA/hots)\n- [File issues (bugs, ...)](https://github.com/Smile-SA/hots/issues)\n- [PyPi package](https://pypi.org/project/hots/)\n- [Documentation](https://hots.readthedocs.io/en/latest/)\n- [PhD document](https://theses.hal.science/tel-03997934)\n\n## License\n\nThis software is provided under the terms of the MIT license you can read in the `LICENSE.txt` file of the repository or the package.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Resource Allocation via Clustering",
    "version": "0.1.8",
    "project_urls": {
        "Documentation": "https://hots.readthedocs.io/en/latest/",
        "Homepage": "https://github.com/Smile-SA/hots"
    },
    "split_keywords": [
        "resource",
        "optimisation",
        "clustering",
        "planning"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "86a546354317827f74a1abe677ab231b5a5bc5be5fd7112ee62ee9a2b561819f",
                "md5": "2b79e9ee73e5fad95cce53369096197a",
                "sha256": "7ff0e28c900f99bb36984c35c5af73edd17e73397c22b1046fdc1e5b2f05e183"
            },
            "downloads": -1,
            "filename": "hots-0.1.8-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2b79e9ee73e5fad95cce53369096197a",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.8",
            "size": 53808,
            "upload_time": "2023-11-07T08:53:20",
            "upload_time_iso_8601": "2023-11-07T08:53:20.333278Z",
            "url": "https://files.pythonhosted.org/packages/86/a5/46354317827f74a1abe677ab231b5a5bc5be5fd7112ee62ee9a2b561819f/hots-0.1.8-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9a7fffe0f491733334d37735d8683eaba2f45f80e2ca97a389a364e368129f0f",
                "md5": "7ea6a2b8f347b51d64e8fef81c2fc565",
                "sha256": "73d2d3d2a3298ec7af0b25e91839e92cb6b11abb146cf122075a1f7e717e8ed7"
            },
            "downloads": -1,
            "filename": "hots-0.1.8.tar.gz",
            "has_sig": false,
            "md5_digest": "7ea6a2b8f347b51d64e8fef81c2fc565",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 51973,
            "upload_time": "2023-11-07T08:53:22",
            "upload_time_iso_8601": "2023-11-07T08:53:22.002933Z",
            "url": "https://files.pythonhosted.org/packages/9a/7f/ffe0f491733334d37735d8683eaba2f45f80e2ca97a389a364e368129f0f/hots-0.1.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-07 08:53:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Smile-SA",
    "github_project": "hots",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "hots"
}
        
Elapsed time: 0.14528s