Skip to main content

hoca: an Higher-Order Cellular Automata Python Library

Overview

Installation

The latest version of hoca is installed via a standard pip command:

pip install hoca

Advertising hoca

It would be greatly appreciated by the authors if the images and other productions made with the hoca library were accompanied by a citation naming it; something like:
"This was produced with the hoca library (https://pypi.org/project/hoca/)".

Data Structures

Population classes

hoca.core.automata_framework.Population

The Population class is abstract. It's the root of the population classes hierarchy.

hoca.core.BasicPopulation

BasicPopulation class inherits of the Population class and implements the base functionalities of a population:

  • It instanciates the automata,
  • it controls if the died automata are respawned for the next generation,
  • it may stop the execution of the automata population after a predefined number of generations,
  • it allows to shuffle the automata's order of execution.

hoca.monitor.CallbackPopulation

CallbackPopulation class inherits of the BasicPopulation class. It provides a way to monitor the automata population throughout the successive generations.

CallbackPopulation module contains both the CallbackPopulation population class and the Callback class hierachy.

Fields

Fields are data structures which hold the source data process by an automata population and the result data produced by them. Fields can also be both source and result at the same time. This way the automata can modify the field in place.
Field data structure features are defined in the hoca.core.automata_framework.Field class (which is abstract). The implementation is in hoca.core.ImageField.
In order to do their work, one must provide appropriate fields to the automata population. The best and simplest way to prepare the fields, is to call the build_field_dict() class method of the automata class.

The build_field_dict() returns a dictionary with one entry per field.

Fields have an IOMode which defines if they are:
- readable: Field.IOMode.IN - writable: Field.IOMode.OUT - readable and writable: Field.IOMode.INOUT

Contribute !

hoca is an open-source library written at Villa Arson and I3S and released on GitHub under the LGPLv3 license. The library is copyrighted by its contributors (see source file headers).

There is a lot of room for improvements, everyone is welcome to contribute if you find any bug or have idea for new features!

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hoca-2021.6.3.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hoca-2021.6.3-py3-none-any.whl (27.2 kB view details)

Uploaded Python 3

File details

Details for the file hoca-2021.6.3.tar.gz.

File metadata

  • Download URL: hoca-2021.6.3.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.5

File hashes

Hashes for hoca-2021.6.3.tar.gz
Algorithm Hash digest
SHA256 8627bbb5ccf35ac51f18f252d43801d2d9649f457d4777eed6b03123912881ca
MD5 cc740ac7f160f8f2688c1eec55707842
BLAKE2b-256 e0605b18924f6b8a90604874988ae952b5e665166e1e178c306a737336a6e622

See more details on using hashes here.

File details

Details for the file hoca-2021.6.3-py3-none-any.whl.

File metadata

  • Download URL: hoca-2021.6.3-py3-none-any.whl
  • Upload date:
  • Size: 27.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.5

File hashes

Hashes for hoca-2021.6.3-py3-none-any.whl
Algorithm Hash digest
SHA256 3f655e5e4629cbf31a99cd36d70f75e27ac1c1ae5591b8c59ef5f7f1f5019d83
MD5 3bb4f53458523dc122b4143d2d4ad5df
BLAKE2b-256 be8a252441391696610c86e313896e3f7dc7602622e2fcfa1b79e6e50f74a0d7

See more details on using hashes here.

Release history Release notifications | RSS feed

2021.9.0

2 files

2021.8.2

2 files

2021.8.1

2 files

2021.8.0

2 files

2021.7.0

2 files

This release

2021.6.3 This release

2 files

2021.6.2

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page