NeuroEvolution in Python backed by C++ computations
Project description
Artificial Brains (ABrain) for Python
C++/Python implementation of fully evolvable Artificial Neural Networks. Uses the ES-HyperNEAT algorithms to indirectly encode ANNs with bio-mimetic patterns (repetitions, symmetry...), large number of neurons and relative robustness to input/output variations between generations. The API is served in Python and computations are performed in C++.
tested on latest
Development
Optional dependencies:
Graphviz (dot)
To generate directed graphs for the genomes. Can only be fetched by system installer (apt-get, yum, ...). See https://graphviz.org/download/ for instructions
Kaleido
To generate non-interactive images of ANN (through plotly).
Due to inconsistent support, left as an optional dependency.
Use pip install abrain[...,kaleido]
to get it
Todo list:
- Functionalities:
-
Order-independent ANN evaluation (with back buffer)?
-
Crossover / historical markings
- Actually needed?
-
MANN Integration
- Easy extraction
- built-in testing
- C++ wrapper
- Visu
-
Misc:
- Documentation
-
Advanced usage
-
move to scikit/poetry/... ?
-
- Documentation
-
CI/CD
- Recent install gives
no loadimage plugion for "svg:cairo"
for pdf output
- Recent install gives
-
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for abrain-1.0rc0.post3-pp39-pypy39_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49b9ad67e45e6d327a531a0e6d3f6be1998ec17f2308912013dd6a955319f963 |
|
MD5 | c8dd903d3c0cbd5cd0d1c7e432c1b9f1 |
|
BLAKE2b-256 | d9bbcb20d8ecb0f9d99274e4588fe825d31189d92cb072288dd70ef8ed053231 |
Hashes for abrain-1.0rc0.post3-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e88d5c3a38edc22b748e6acc400f2124d4ae4e180bdea3729f39a1915d8ccaf0 |
|
MD5 | 27363ecf0b53ecb1557e36baa3744442 |
|
BLAKE2b-256 | ad9cf3420178a67422e7515a235a7a2983b9b8f2c131cfefbacfe83bb36c00ba |
Hashes for abrain-1.0rc0.post3-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2dfba9bee626b7f76b2abaff265dcf2ec5653a26d6bbc9d13dfc867eb8be6bda |
|
MD5 | ed30b9ec84cb428c891470a021555498 |
|
BLAKE2b-256 | cc099d6356a96c9ac5e776b30aa4440ff5fa2213b03f06ed5f50fd6fa72dbe2e |
Hashes for abrain-1.0rc0.post3-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d60521f26f404fcf59f3d66d1d676a5a028bbae516ef96ba9770c06d82bc391c |
|
MD5 | a8aad178dfbf5dfc41896a21ce17cdbb |
|
BLAKE2b-256 | 6c6af8c3722e21c8793eee78f3c5146b17ae39aaeca5d66f20ae8577bb2ee893 |
Hashes for abrain-1.0rc0.post3-pp38-pypy38_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2379fc2fd57f09da8e1592ab5718d0b6d5bda67313466d0ccc5411b68cb411b2 |
|
MD5 | 0dcc05496f69547b4bec8e087629d1f4 |
|
BLAKE2b-256 | 4095813063fd86c75ec5c2be9a9146f660427f221999a454c9782a156f482bce |
Hashes for abrain-1.0rc0.post3-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90fb595964201e859434ac83d5b18a274b595d18101bfc781227e318cc72987c |
|
MD5 | 49cd19ceb24505e76867297c220bfb71 |
|
BLAKE2b-256 | 9444e9f4046026c602ec537c85694372222b80852034f1fa67081cbcdd539b91 |
Hashes for abrain-1.0rc0.post3-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca62cc3a25f94aefe8409c8b675079b59bd5b43646500b547b9ea7bc2ad00e65 |
|
MD5 | f34ff97653c5119ba9338addaf2652e5 |
|
BLAKE2b-256 | e9b87352394efcedaf928e741a90627be582a3f9f13879faa13f700cadf8e872 |
Hashes for abrain-1.0rc0.post3-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93830e34cb250a0bf01c4d687eaf7cdbad2ff89e5fc6924ad90915e4da604cc4 |
|
MD5 | 3c5cf36c5abd6ccd2622f0d5656a3124 |
|
BLAKE2b-256 | ec29cc92e99b21534a3e763ec4f9577e260fd6ec10329853e5dff581ad568020 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9af0a6da9f9da0c0fb87e6a0cf2a19e5721025672e59ae9745cb13c90b17dc4f |
|
MD5 | 2a2b3f122e838ca8bdfb7841badc8164 |
|
BLAKE2b-256 | 1175aa95f109478fc00affb26ee2065940b83e77ab677956248d3241778bd3b7 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b58c3e6306494c5bd87113a9e5667bc405b712d70e5b5f7bf3c8f70db3ad712 |
|
MD5 | faefb0434d2d44ba5c09a425db90c5d9 |
|
BLAKE2b-256 | 803a08c4338a7023ee1389f1916b7917cbe603cbdd826fedbb57d9e70227c408 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 492164d762c3c1ce8aacdc412fa2f420c4667d17e651c1cbce426a388ea77587 |
|
MD5 | e32e9c6b92a5188cf36a8f06206dc93c |
|
BLAKE2b-256 | 9bef92baba69b98285b1267e81585354b6703409c5e0e7db1c3b70df6ece2cf3 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6881edde2f40887af09565fdd4e7c9b9330159900b84de7c5020f4b11d2b5d8c |
|
MD5 | 0ed5edd01c4621a2ba90fcb5699ae0a4 |
|
BLAKE2b-256 | aa6b2e79bafe5ca187be1e763a36491b21c2b516319b0d3caedae1afa9d0d627 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1f3966769971cb5cd8be316122dd9a9ab5a017bfe983a0bc8e6c1bdf8a3e8b6 |
|
MD5 | 9f3cecddbbdd5996f84ad2020522a1a5 |
|
BLAKE2b-256 | fd03efca3c7e0b2b0e3805d92d1287b66c5943fd865dde1360a4cc1cc77c4213 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21c27fcc7448e3e431c8ee5345334f9a4ef4cd59877d63b3707887ba6f6239b2 |
|
MD5 | a2b72dbcd4c7fa616927c5988e18218c |
|
BLAKE2b-256 | 14c5762625ed6b20bd8d37c4ae7be91a2aa0fa2b5617a6290735edc024f9f2c3 |
Hashes for abrain-1.0rc0.post3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 88282c75585e9a94b891c41e03d3c442b46b07f44573eee0a5633e6812df2eda |
|
MD5 | b33fd9f41d4dc9cf14914861c4ddc585 |
|
BLAKE2b-256 | d90627fe6304639e2091b37dbab76a0825acf2649a8f3ed1543a18fccf43aef6 |
Hashes for abrain-1.0rc0.post3-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 84ee60fa7cba8778b85180e8bed42e0f0e5300a289343ee37deadbe673cfc05f |
|
MD5 | 972d820dcce5245d4ebed104e5d883ec |
|
BLAKE2b-256 | 72e131aa66d6abe0dc02875c9f0481d314283d891cb4146ed55097f9688a57b9 |
Hashes for abrain-1.0rc0.post3-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 556e94dfa556316b0ae68fa7ad488e2237c4243a6deb0b665cd5f52c684bd8c4 |
|
MD5 | f14216043ec88e3dec2913eca2f14ff2 |
|
BLAKE2b-256 | 4d8288423127c31e2e3e2fe6ccb42fafb852d9c14828dc3d20a13e7d1491a7fc |
Hashes for abrain-1.0rc0.post3-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 502acbd790337a376ff58682fd233eff2e7ca98fa98e2d66ce6878114a48eccb |
|
MD5 | 68f95fc7b911e4012a37fa6dca854f18 |
|
BLAKE2b-256 | 430be09b5d22798e2d6c9b765d5d0b257ed50552cc5e6e21698100e48c50de14 |
Hashes for abrain-1.0rc0.post3-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e6aa244a55025939c35ca7b9d33aa3b7b5b998ded46f8b08353e8fef839f9e94 |
|
MD5 | 048bf16b3b7d3371aa7e6b7d00ce8cb7 |
|
BLAKE2b-256 | 08417233a6353494ca6fffadabf09c77330b3478062188cdb074abce185ef907 |
Hashes for abrain-1.0rc0.post3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24384c2534cdbab6b682819765e924d0a24fb673a75fad74fd64256833ab2922 |
|
MD5 | d5d660be1dfd0e0ee8a4a8099d709c33 |
|
BLAKE2b-256 | 1e1f22de957ddb25f2ea30febfe6108fb7671bbe421b5a07d3ce3a59a21b7166 |
Hashes for abrain-1.0rc0.post3-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c195cb190bb99ee528b5d94295bfe2986dd409c6964234fb58061058d399427 |
|
MD5 | 63aa13e1dcb6c782228d07c6de2bee97 |
|
BLAKE2b-256 | 8245662e8243e4391364ba01dcdaf34effbf2394747a548508b41f56d3d823e5 |
Hashes for abrain-1.0rc0.post3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8a8684d6be2de30767290d7c12cb96f2f4f2fb1c98c5cb12764d3be800e81fa |
|
MD5 | bf0b1cedcf3167c26809c76525451d91 |
|
BLAKE2b-256 | 7269ea2079803609097a7f3635892d5ab266382e1b18abe5aafebcd120fdbbf9 |
Hashes for abrain-1.0rc0.post3-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 498f4279cbeb0679ca11fc4a2e94e9a0334b3fc5c23bc35886d605d70eb6d41a |
|
MD5 | b94fce50d14937be782bf0cf0b5521f4 |
|
BLAKE2b-256 | f4f3eba76b1cde4f06bc2c988ba285c9277b0b22f7cfda72204095463b53d5a7 |
Hashes for abrain-1.0rc0.post3-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b3a3d929afe74f99e093a1c516e6575c0ff3c97da3449c43b29112f65b8c316 |
|
MD5 | e7a73a45c8a96ab8aee82147d783d74a |
|
BLAKE2b-256 | 575d4ba71a8c80e6ffaf692b0a5f6c4c16733f1f2910251cdb2bba4f76c3f36b |
Hashes for abrain-1.0rc0.post3-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 598266e47057d167b913c30d22fa311c8da4ade34dd6f099960e5b9debf4a9c2 |
|
MD5 | ad392140a19796113dddc2d5d431403e |
|
BLAKE2b-256 | 369089307d6a9cce911ff70844a3b1b1712df88681e1cb8ed073607a16893707 |
Hashes for abrain-1.0rc0.post3-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8df6baf5fefccc01ee831e81f99eafee6f191bc3379abd43e1a4bd139583d2fe |
|
MD5 | f544810b5eff790a716ed2a34489ebe0 |
|
BLAKE2b-256 | c3c2e50b52612fe47c7af7af0b2da002c3891f41dc84d836aa634cbe799efe82 |
Hashes for abrain-1.0rc0.post3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3f695a9098dd58dc450ab47fcfda02e087ef9b0cfd49f9b378c01b05bebdcef |
|
MD5 | 2da83d9ef73d0bf75a4799cafe2ebf6b |
|
BLAKE2b-256 | 4e667f7af2492b47fd9775233b17196384aba7e94085a38c94ebc583c5630131 |
Hashes for abrain-1.0rc0.post3-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a61622b0a77b06a0eccbddb96a9d0276e355ef5c9f8f421765059692921ddbac |
|
MD5 | d4c99faa61765a7834ed0998d6e534ae |
|
BLAKE2b-256 | 26eee269b6b28d31d15d00f25ab518ed032a6cb8aeb0fccded7a8b958bdb4a91 |
Hashes for abrain-1.0rc0.post3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 836ef5dcf8a5d725d887194d3978db76175fd5aa72195de74878ca074c3a5721 |
|
MD5 | 16af78b012bdaf575cf2322fe0b00716 |
|
BLAKE2b-256 | 33b82e01655e852dc2782f036daec2763dc7c6251b340a4cfb4fd2dd21d98a83 |
Hashes for abrain-1.0rc0.post3-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9ef24127f2d8269e584ce08a0e04577611017e3423d62fcb4a1be37887687da |
|
MD5 | 487879bbed6b48ab95bb04f3115267f8 |
|
BLAKE2b-256 | 5505102038a6c1a2b1d6eddb8e9560aadbafee93084c6875d0abde2cf771a8c8 |
Hashes for abrain-1.0rc0.post3-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d31995d32a855bc98ef7207f85ce542a3c50183b3ed86a4c67761fe4be59e471 |
|
MD5 | b67875abf69051d553389a2eb2360419 |
|
BLAKE2b-256 | d298cd5f47a32bf5fb6fd3920bb2922a97690d0c3313e0a17c7b607448b2480c |
Hashes for abrain-1.0rc0.post3-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8bdda6e076b52a9394b3666d1b5caad152a0277862d055d497a87b2ebd5e3e36 |
|
MD5 | 78a8d67bf12f0dfb7d3c2a7b4c58f801 |
|
BLAKE2b-256 | d4b8194df8a4a17a360c5167e1c83c8b909555d1e22dfda77a8edb2d96341e86 |
Hashes for abrain-1.0rc0.post3-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36fead1044f86bcde0db533d73192354491301878884815f432f34661b7ca449 |
|
MD5 | a9317d6ebd7a722d0a57fc2d72cb7c7e |
|
BLAKE2b-256 | 3c32058622a7a6cdcb8c662abfda9acc093738acaf85ad020967929af818d6c1 |
Hashes for abrain-1.0rc0.post3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aca6c99f7b85e6da7eedcc721190623ef2353d81e9274e88ed6445f373096486 |
|
MD5 | 85fe0d7c7e1e4bccd94161f55b7edd35 |
|
BLAKE2b-256 | bdcf59f2747de0e5dd3615f2493e4aeb5c061eca7e8105dd1bb0d31ab0a8a0ed |
Hashes for abrain-1.0rc0.post3-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8eaacaec7a66e94006d698bd86212ce509c4a20835b0ec30012342cbd0d5838a |
|
MD5 | 3053ce0a25131f0319dc8c348af4e6c9 |
|
BLAKE2b-256 | b5676cb922e3a58817f2174d53e14903a74427783a4c0d126ba5c524d57f6dc1 |
Hashes for abrain-1.0rc0.post3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3df7bbdc82cee1d87a98512573fde2795a08e9202831739e0edd03aa0405546f |
|
MD5 | 6240de7003914e6f59d2c61da6c48712 |
|
BLAKE2b-256 | e856abe03b327d223b64aaac9f114618b544af0ac583b58b435da28cb22ab462 |