<p align="center">
<a href="https://pypi.org/project/pymape/"><img
src="https://img.shields.io/pypi/v/pymape?style=flat-square"
alt="PyPI Version"
/></a>
<a href="https://pypi.org/project/pymape/"><img
src="https://img.shields.io/pypi/pyversions/pymape?style=flat-square"
alt="Py Version"
/></a>
<a href="https://github.com/elbowz/pymape/issues"><img
src="https://img.shields.io/github/issues/elbowz/pymape.svg?style=flat-square"
alt="Issues"
/></a>
<a href="https://raw.githubusercontent.com/elbowz/PyMAPE/main/LICENSE"><img
src="https://img.shields.io/github/license/elbowz/pymape.svg?style=flat-square"
alt="GPL License"
/></a>
<a href="https://raw.githubusercontent.com/elbowz/PyMAPE/main/LICENSE"><img
src="https://img.shields.io/static/v1?label=Powered&message=RxPY&style=flat-square&color=informational"
alt="RxPY"
/></a>
</p>
<p align="center">
<img src="https://github.com/elbowz/PyMAPE/raw/main/docs/assets/img/logo.png" alt="PyMAPE" width="400">
<h4 align="center">Distributed and decentralized MonitorAnalyzePlanExecute-Knowledge loops framework</h3>
<p align="center">
Framework to support the development and deployment of Autonomous (Self-Adaptive) Systems
</p>
</p>
---
* __Source Code__: [https://github.com/elbowz/PyMAPE](https://github.com/elbowz/PyMAPE)
* __Documentation__: [https://elbowz.github.io/PyMAPE](https://elbowz.github.io/PyMAPE) - _WIP_
---
## Install
```bash
pip install pymape
```
## Examples
Implementation of the 5 decentralized (and distributed) MAPE patterns described in the paper:
["On Patterns for Decentralized Control in Self-Adaptive Systems", Danny Weyns](https://www.ics.uci.edu/~seal/publications/2012aSefSAS.pdf)
* **Ambulance-Car Emergency** (Information Sharing and Coordinated Control)
* **Average Speed Enforcement** (Master/Slave)
* **Dynamic Carriageway** (Regional Planning)
* **Cruise Control with Distance Hold** (Hierarchical Control)
If you want try some examples (path `examples/`), refer to section `# CLI EXAMPLES` inside the source code of each one.
[Slide - Introduction to PyMAPE](https://github.com/elbowz/PyMAPE/raw/main/docs/slides.pdf) with examples
The examples need furthers requirements, please see [pyproject.toml](https://github.com/elbowz/PyMAPE/raw/main/pyproject.toml) or use poetry to [install them](https://github.com/elbowz/PyMAPE#install-for-developers-and-contributors).
You also need a Redis and InfluxDB instance running, for example:
```bash
docker run --name mape-redis -p 6379:6379 \
-v $(pwd)/docker/redis:/usr/local/etc/redis \
--rm redis redis-server /usr/local/etc/redis/redis.conf
```
```bash
docker run --name mape-influxdb -p 8086:8086 \
-v $(pwd)/docker/influxdb/data:/var/lib/influxdb2 \
-v $(pwd)/docker/influxdb/conf:/etc/influxdb2 \
-e DOCKER_INFLUXDB_INIT_MODE=setup \
-e DOCKER_INFLUXDB_INIT_USERNAME=user \
-e DOCKER_INFLUXDB_INIT_PASSWORD=qwerty123456 \
-e DOCKER_INFLUXDB_INIT_ORG=univaq \
-e DOCKER_INFLUXDB_INIT_BUCKET=mape \
-e DOCKER_INFLUXDB_INIT_RETENTION=1w \
-e DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=<GENERATE_OR_TAKE_FROM_CONFIG_YAML> \
--rm influxdb:2.0
```
See source for more information.
Raw data
{
"_id": null,
"home_page": "https://elbowz.github.io/PyMAPE/",
"name": "pymape",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<4.0",
"maintainer_email": "",
"keywords": "mape,mapek,mape-k,self-adaptive,autonomus system",
"author": "Emanuele Palombo",
"author_email": "muttley.bd@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/ab/13/bd7664dc1dc892cd06c5c8445aabcefbe393efe84f8184f5fc0d800c61e0/pymape-0.1.0a5.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n <a href=\"https://pypi.org/project/pymape/\"><img\n src=\"https://img.shields.io/pypi/v/pymape?style=flat-square\"\n alt=\"PyPI Version\"\n /></a>\n <a href=\"https://pypi.org/project/pymape/\"><img\n src=\"https://img.shields.io/pypi/pyversions/pymape?style=flat-square\"\n alt=\"Py Version\"\n /></a>\n <a href=\"https://github.com/elbowz/pymape/issues\"><img\n src=\"https://img.shields.io/github/issues/elbowz/pymape.svg?style=flat-square\"\n alt=\"Issues\"\n /></a>\n <a href=\"https://raw.githubusercontent.com/elbowz/PyMAPE/main/LICENSE\"><img\n src=\"https://img.shields.io/github/license/elbowz/pymape.svg?style=flat-square\"\n alt=\"GPL License\"\n /></a>\n <a href=\"https://raw.githubusercontent.com/elbowz/PyMAPE/main/LICENSE\"><img\n src=\"https://img.shields.io/static/v1?label=Powered&message=RxPY&style=flat-square&color=informational\"\n alt=\"RxPY\"\n /></a>\n</p>\n\n<p align=\"center\">\n <img src=\"https://github.com/elbowz/PyMAPE/raw/main/docs/assets/img/logo.png\" alt=\"PyMAPE\" width=\"400\">\n <h4 align=\"center\">Distributed and decentralized MonitorAnalyzePlanExecute-Knowledge loops framework</h3>\n <p align=\"center\">\n Framework to support the development and deployment of Autonomous (Self-Adaptive) Systems\n </p>\n</p>\n\n---\n\n* __Source Code__: [https://github.com/elbowz/PyMAPE](https://github.com/elbowz/PyMAPE)\n* __Documentation__: [https://elbowz.github.io/PyMAPE](https://elbowz.github.io/PyMAPE) - _WIP_\n\n---\n\n## Install\n\n```bash\npip install pymape\n```\n\n## Examples\n\nImplementation of the 5 decentralized (and distributed) MAPE patterns described in the paper: \n[\"On Patterns for Decentralized Control in Self-Adaptive Systems\", Danny Weyns](https://www.ics.uci.edu/~seal/publications/2012aSefSAS.pdf)\n\n* **Ambulance-Car Emergency** (Information Sharing and Coordinated Control)\n* **Average Speed Enforcement** (Master/Slave)\n* **Dynamic Carriageway** (Regional Planning)\n* **Cruise Control with Distance Hold** (Hierarchical Control)\n\nIf you want try some examples (path `examples/`), refer to section `# CLI EXAMPLES` inside the source code of each one.\n\n[Slide - Introduction to PyMAPE](https://github.com/elbowz/PyMAPE/raw/main/docs/slides.pdf) with examples\n\nThe examples need furthers requirements, please see [pyproject.toml](https://github.com/elbowz/PyMAPE/raw/main/pyproject.toml) or use poetry to [install them](https://github.com/elbowz/PyMAPE#install-for-developers-and-contributors). \n\nYou also need a Redis and InfluxDB instance running, for example:\n\n```bash\ndocker run --name mape-redis -p 6379:6379 \\\n-v $(pwd)/docker/redis:/usr/local/etc/redis \\\n--rm redis redis-server /usr/local/etc/redis/redis.conf\n```\n\n```bash\ndocker run --name mape-influxdb -p 8086:8086 \\\n-v $(pwd)/docker/influxdb/data:/var/lib/influxdb2 \\\n-v $(pwd)/docker/influxdb/conf:/etc/influxdb2 \\\n-e DOCKER_INFLUXDB_INIT_MODE=setup \\\n-e DOCKER_INFLUXDB_INIT_USERNAME=user \\\n-e DOCKER_INFLUXDB_INIT_PASSWORD=qwerty123456 \\\n-e DOCKER_INFLUXDB_INIT_ORG=univaq \\\n-e DOCKER_INFLUXDB_INIT_BUCKET=mape \\\n-e DOCKER_INFLUXDB_INIT_RETENTION=1w \\\n-e DOCKER_INFLUXDB_INIT_ADMIN_TOKEN=<GENERATE_OR_TAKE_FROM_CONFIG_YAML> \\\n--rm influxdb:2.0\n```\n\nSee source for more information.",
"bugtrack_url": null,
"license": "GPL-3.0-only",
"summary": "Framework to develop Self-Adaptive system based on MAPE-K loop.",
"version": "0.1.0a5",
"split_keywords": [
"mape",
"mapek",
"mape-k",
"self-adaptive",
"autonomus system"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "f1067ce44a5b0201e64302db00c88c3d",
"sha256": "9b5e1a427808a6503a8124e9dbd97711b45c05d8370e0c3f80f8818d44aa55d2"
},
"downloads": -1,
"filename": "pymape-0.1.0a5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f1067ce44a5b0201e64302db00c88c3d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<4.0",
"size": 42912,
"upload_time": "2022-12-20T16:04:14",
"upload_time_iso_8601": "2022-12-20T16:04:14.969106Z",
"url": "https://files.pythonhosted.org/packages/5b/e6/425db19aff34205a45e59d055ae48a003e249c1ae8d7f92afbdd3222da15/pymape-0.1.0a5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "740877848473537d9d38b9998b453c1e",
"sha256": "e433d4e8f97565a05c99978d453505c078f8bd74adce62633efbd82f58715a9a"
},
"downloads": -1,
"filename": "pymape-0.1.0a5.tar.gz",
"has_sig": false,
"md5_digest": "740877848473537d9d38b9998b453c1e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<4.0",
"size": 37469,
"upload_time": "2022-12-20T16:04:16",
"upload_time_iso_8601": "2022-12-20T16:04:16.578292Z",
"url": "https://files.pythonhosted.org/packages/ab/13/bd7664dc1dc892cd06c5c8445aabcefbe393efe84f8184f5fc0d800c61e0/pymape-0.1.0a5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-20 16:04:16",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "pymape"
}