# Evomatic

[](https://evomatic.readthedocs.io/en/latest/?badge=latest)
Evomatic is an genetic algorithm tool for the development of new alloys.
## Installation
The evomatic package can be installed from
[pypi](https://pypi.org/project/evomatic/) using pip:
``pip install evomatic``
Evomatic makes heavy use of the
[metallurgy](https://github.com/Robert-Forrest/metallurgy) package to manipulate
and approximate properties of alloys. The
[cerebral](https://github.com/Robert-Forrest/cerebral) package can be used by
evomatic to obtain predictions of alloy properties on-the-fly during evolution.
## Usage
Basic usage of evomatic involves setting some targets and running an evolution,
the following example shows evolution of a small population towards alloys with
high mass:
```python
>>> import evomatic as evo
>>> evolver = evo.Evolver(targets={"maximise": ["mass"]}, population_size=50)
>>> history = evolver.evolve()
>>> history["alloys"]
alloy mass generation rank fitness
Og100 295.000000 7 0 1.000000
Og92.4Fl7.6 294.544000 11 1 0.998433
Og91.4Lv7.4Cm1.2 294.276000 9 2 0.997512
Og78Mc14Lv6.2Hs1.8 293.726000 11 3 0.995622
Lv100 293.000000 2 4 0.993127
... ... ... ... ...
Ar38.8Li28.5B24.9Sc5.7I2.1 25.396895 10 587 0.073521
Si79H21 22.398830 10 588 0.063218
Li83.7Zr16.3 20.678292 6 589 0.057305
Li97.9Db2.1 12.464260 5 590 0.029078
He100 4.002602 4 591 0.000000
```
In this simple example, there is no better material for the objective of maximum
mass than pure Oganesson.
## Documentation
Documentation is available [here.](https://evomatic.readthedocs.io/en/latest/api.html)
Raw data
{
"_id": null,
"home_page": "https://github.com/Robert-Forrest/evomatic",
"name": "evomatic",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Robert Forrest",
"author_email": "robertforrest@live.com",
"download_url": "https://files.pythonhosted.org/packages/4b/be/d96bd9639604d6425903db5a9010dd5c9112929813a7bc447ae37b30ea66/evomatic-0.0.6.tar.gz",
"platform": "unix",
"description": "# Evomatic\n\n\n[](https://evomatic.readthedocs.io/en/latest/?badge=latest)\n\nEvomatic is an genetic algorithm tool for the development of new alloys.\n\n## Installation\n\nThe evomatic package can be installed from\n[pypi](https://pypi.org/project/evomatic/) using pip:\n\n``pip install evomatic``\n\nEvomatic makes heavy use of the\n[metallurgy](https://github.com/Robert-Forrest/metallurgy) package to manipulate\nand approximate properties of alloys. The\n[cerebral](https://github.com/Robert-Forrest/cerebral) package can be used by\nevomatic to obtain predictions of alloy properties on-the-fly during evolution.\n\n## Usage\n\nBasic usage of evomatic involves setting some targets and running an evolution,\nthe following example shows evolution of a small population towards alloys with\nhigh mass:\n\n```python\n>>> import evomatic as evo\n\n>>> evolver = evo.Evolver(targets={\"maximise\": [\"mass\"]}, population_size=50)\n\n>>> history = evolver.evolve()\n\n>>> history[\"alloys\"]\n alloy mass generation rank fitness\n Og100 295.000000 7 0 1.000000\n Og92.4Fl7.6 294.544000 11 1 0.998433\n Og91.4Lv7.4Cm1.2 294.276000 9 2 0.997512\n Og78Mc14Lv6.2Hs1.8 293.726000 11 3 0.995622\n Lv100 293.000000 2 4 0.993127\n ... ... ... ... ...\n Ar38.8Li28.5B24.9Sc5.7I2.1 25.396895 10 587 0.073521\n Si79H21 22.398830 10 588 0.063218\n Li83.7Zr16.3 20.678292 6 589 0.057305\n Li97.9Db2.1 12.464260 5 590 0.029078\n He100 4.002602 4 591 0.000000\n```\n\nIn this simple example, there is no better material for the objective of maximum\nmass than pure Oganesson. \n\n## Documentation\n\nDocumentation is available [here.](https://evomatic.readthedocs.io/en/latest/api.html)\n\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License",
"summary": "Evolutionary algorithm for development of alloy materials",
"version": "0.0.6",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "b3466bd44fb1d74e73dfd355b047d47a",
"sha256": "1223beab4d05123cb7c25eac463f288cfc09cddeed168a1f45f0f4c4cda2898b"
},
"downloads": -1,
"filename": "evomatic-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b3466bd44fb1d74e73dfd355b047d47a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 19169,
"upload_time": "2022-12-07T02:57:00",
"upload_time_iso_8601": "2022-12-07T02:57:00.573674Z",
"url": "https://files.pythonhosted.org/packages/0e/45/68cc79a1c35790380966dc9cc31710407dad82c1f9d82e4af2b6d64a7e75/evomatic-0.0.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "17e9a0e6194beb0e6d2b85eb2208cb01",
"sha256": "567819870c2bf586bea924a4687bc4b9b6b243c52026068bb597083da3d974cc"
},
"downloads": -1,
"filename": "evomatic-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "17e9a0e6194beb0e6d2b85eb2208cb01",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 24349,
"upload_time": "2022-12-07T02:57:02",
"upload_time_iso_8601": "2022-12-07T02:57:02.046413Z",
"url": "https://files.pythonhosted.org/packages/4b/be/d96bd9639604d6425903db5a9010dd5c9112929813a7bc447ae37b30ea66/evomatic-0.0.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-07 02:57:02",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "Robert-Forrest",
"github_project": "evomatic",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "evomatic"
}