{ "info": { "author": "Sean Tully", "author_email": "sean.tully@ucdconnect.ie", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only" ], "description": "untilperfect\n====================================\n\n|license| |pyver| |codestyle| |docs|\n\nThe unt\\ **ilp**\\ erfect application solves the buffer preparation\nvessel sizing and assignment problem using mixed **i**\\ nteger\n**l**\\ inear **p**\\ rogramming.\n\nThe source repo is at https://github.com/multipitch/untilperfect.\n\nBuilds are hosted at https://pypi.org/project/untilperfect/.\n\nDocumentation is hosted at https://untilperfect.readthedocs.io/.\n\nThis project was forked from https://github.com/multipitch/dissertation.\nThe dissertation repo was created for my masters dissertation on the\nsubject towards an MSc in Business Analytics from University College\nDublin; further development has been forked here so that the\ndissertation repo remains frozen.\n\nInstall via pip:\n::\n\n $ pip install untilperfect\n\nProvides the `untilperfect` CLI command\n::\n\n $ untilperfect --help\n usage: model.py [-h] [-b BUFFERS] [-n] [-p PARAMETERS] [-f PATH] [-s SOLVER]\n [-t PROBLEM_TYPE] [-v VESSELS] [-w]\n\n Solves the buffer preparation assignment and selection problem.\n\n optional arguments:\n -h, --help show this help message and exit\n -b BUFFERS, --buffers BUFFERS\n buffers filename (default: 'buffers.csv')\n -n, --no-plot do not generate plot\n -p PARAMETERS, --parameters PARAMETERS\n parameters filename (default: 'parameters.ini')\n -f PATH, --path PATH file path (default: )\n -s SOLVER, --solver SOLVER\n solver to be used (default: 'COIN_CMD')\n -t PROBLEM_TYPE, --problem-type PROBLEM_TYPE\n specify model to solve (default: 'complete'), other\n model options are 'basic', 'minimized_hold_time',\n 'mimimized_used_volume'\n -v VESSELS, --vessels VESSELS\n vessel filename (default: vessels.csv)\n -w, --write write problem to file in .lp format\n\nDistributed under the MIT License.\n\n\u00a9 Sean Tully 2018-2019.\n\n.. |license| image:: https://img.shields.io/badge/License-MIT-yellow.svg\n :alt: License\n :scale: 100%\n :target: https://opensource.org/licenses/MIT\n\n.. |pyver| image:: https://img.shields.io/badge/python-3.7-blue.svg\n :alt: Python Version\n :scale: 100%\n :target: https://www.python.org/downloads/release/python-370/\n\n.. |codestyle| image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :alt: Code Style\n :scale: 100%\n :target: https://github.com/ambv/black\n\n.. |docs| image:: https://readthedocs.org/projects/untilperfect/badge/?version=latest\n :alt: Documentation Status\n :scale: 100%\n :target: https://untilperfect.readthedocs.io/en/latest/?badge=latest\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/multipitch/untilperfect", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "untilperfect", "package_url": "https://pypi.org/project/untilperfect/", "platform": "", "project_url": "https://pypi.org/project/untilperfect/", "project_urls": { "Homepage": "https://github.com/multipitch/untilperfect" }, "release_url": "https://pypi.org/project/untilperfect/0.0.2/", "requires_dist": [ "matplotlib (>=3.0.1)", "numpy (>=1.15.4)", "PuLP (>=1.6.9)", "pylatexenc (>=1.3)", "black ; extra == 'dev'", "pylint ; extra == 'dev'", "sphinx ; extra == 'dev'", "sphinxcontrib-svg2pdfconverter ; extra == 'dev'" ], "requires_python": "", "summary": "Solves the buffer preparation vessel sizing and assignment problem using mixed integer linear programming.", "version": "0.0.2" }, "last_serial": 4989970, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "3c1a339d5aa4acb2d52a44055081b1de", "sha256": "4ecf449237fc62bc1a22df74f6cad9bc6b7e343dea5da04f83cc01eec7ff7bc5" }, "downloads": -1, "filename": "untilperfect-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "3c1a339d5aa4acb2d52a44055081b1de", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13946, "upload_time": "2019-03-18T20:46:58", "url": "https://files.pythonhosted.org/packages/35/7f/d7c1ad58d6d15340f30ad2ba690a1e11f31f8df093a6d9d40c52c5fc72e3/untilperfect-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8b9bc2ce7d9ca5f91d52cd3851ba34ae", "sha256": "5735816bc89248662320e268b356ce28d9df8c38aec9e4ac7e4b79e7bb244fad" }, "downloads": -1, "filename": "untilperfect-0.0.1.tar.gz", "has_sig": false, "md5_digest": "8b9bc2ce7d9ca5f91d52cd3851ba34ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12286, "upload_time": "2019-03-18T20:47:01", "url": "https://files.pythonhosted.org/packages/e5/51/15438a54050d55436efaf0468a8d67aa59912528d98e3ed20ed3cd8b39ba/untilperfect-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "04a1489d2c6871d0b70caecb407f574a", "sha256": "7d439a429ad0d6cc5fb830a6e6d8c57f01ce79424697243a4f51f37743a44ce7" }, "downloads": -1, "filename": "untilperfect-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "04a1489d2c6871d0b70caecb407f574a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15071, "upload_time": "2019-03-26T22:53:45", "url": "https://files.pythonhosted.org/packages/fa/fc/4d00e73b707356a6ca626f2973ac269c667e2a4edb3db08c4b8f4bb669dc/untilperfect-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a5e994498e0e504cbde2761a93bb510", "sha256": "0d3e344af9600697d0139ce4b98dd887352ccfa24581c74642314fd61f9bfbb9" }, "downloads": -1, "filename": "untilperfect-0.0.2.tar.gz", "has_sig": false, "md5_digest": "1a5e994498e0e504cbde2761a93bb510", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 282424, "upload_time": "2019-03-26T22:53:50", "url": "https://files.pythonhosted.org/packages/40/5b/b206494c8594a1088c23c0813c6e0bb727a58b0bf079f2717b73e1a7a6d8/untilperfect-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "04a1489d2c6871d0b70caecb407f574a", "sha256": "7d439a429ad0d6cc5fb830a6e6d8c57f01ce79424697243a4f51f37743a44ce7" }, "downloads": -1, "filename": "untilperfect-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "04a1489d2c6871d0b70caecb407f574a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15071, "upload_time": "2019-03-26T22:53:45", "url": "https://files.pythonhosted.org/packages/fa/fc/4d00e73b707356a6ca626f2973ac269c667e2a4edb3db08c4b8f4bb669dc/untilperfect-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1a5e994498e0e504cbde2761a93bb510", "sha256": "0d3e344af9600697d0139ce4b98dd887352ccfa24581c74642314fd61f9bfbb9" }, "downloads": -1, "filename": "untilperfect-0.0.2.tar.gz", "has_sig": false, "md5_digest": "1a5e994498e0e504cbde2761a93bb510", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 282424, "upload_time": "2019-03-26T22:53:50", "url": "https://files.pythonhosted.org/packages/40/5b/b206494c8594a1088c23c0813c6e0bb727a58b0bf079f2717b73e1a7a6d8/untilperfect-0.0.2.tar.gz" } ] }