Skip to main content

Framework for developing FractalAI based algorithms.

Project description

Fragile

Documentation Status Code coverage PyPI package Latest docker image Code style: black license: MIT

Fragile is a framework for developing optimization algorithms inspired by Fractal AI and running them at scale.

Features

  • Provides classes and an API for easily developing planning algorithms
  • Provides an classes and an API for function optimization
  • Build in visualizations of the sampling process
  • Fully documented and tested (In progress)
  • Support for parallelization and distributed search processes (In progress)

About FractalAI

FractalAI is based on the framework of non-equilibrium thermodynamics, and can be used to derive new mathematical tools for efficiently exploring state spaces.

The principles of our work are accessible online:

  • Arxiv manuscript describing the fundamental principles of our work.
  • Blog that describes our early research process.
  • Youtube channel with videos showing how different prototypes work.
  • GitHub repository containing a prototype that solves most Atari games.

Getting started

Check out the getting started section of the docs, or the examples folder.

Running in docker

The fragile docker container will execute a Jupyter notebook accessible on port 8080 with password: fragile

You can pull a docker image from Docker Hub running:

    docker pull fragiletech/fragile:version-tag

Where version-tag corresponds to the fragile version that will be installed in the pulled image.

Installation

This framework has been tested in Ubuntu 18.04 and supports Python 3.8 and 3.9. If you find any problems running it in a different OS or Python version please open an issue.

It can be installed with pip install fragile["all"].

You can find the pinned versions of the minimum requirements to install the core module in requirements.txt, and the pinned versions of all the optional requirements in requirements-all.txt.

Detailed installation instructions can be found in the docs.

Documentation

You can access the documentation on Read The Docs.

Roadmap

Upcoming features: (not necessarily in order)

  • Fix documentation and add examples for the distributed module
  • Upload Montezuma solver
  • Add new algorithms to sample different state spaces.
  • Add a benchmarking module
  • Add deep learning API

Contributing

Contribution are welcome. Please take a look at contributining and respect the code of conduct.

Cite us

If you use this framework in your research please cite us as:

@misc{1803.05049,
    Author = {Sergio Hernández Cerezo and Guillem Duran Ballester},
    Title = {Fractal AI: A fragile theory of intelligence},
    Year = {2018},
    Eprint = {arXiv:1803.05049},
}

License

This project is MIT licensed. See LICENSE.md for the complete text.

Project details


Download files

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

Source Distribution

fragile-0.0.56.tar.gz (72.8 kB view details)

Uploaded Source

Built Distribution

fragile-0.0.56-py3-none-any.whl (84.2 kB view details)

Uploaded Python 3

File details

Details for the file fragile-0.0.56.tar.gz.

File metadata

  • Download URL: fragile-0.0.56.tar.gz
  • Upload date:
  • Size: 72.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for fragile-0.0.56.tar.gz
Algorithm Hash digest
SHA256 d04e04571b00bfb3e22804d879ae0f50a727d99583abdd03cb678ee97ab6e162
MD5 f80617a85386d4bed2ebff2ec15ca981
BLAKE2b-256 8591c98ff1a7e2b49d5c01c8c1354949a31db0524cc3cd56014677a12a6d8dc3

See more details on using hashes here.

File details

Details for the file fragile-0.0.56-py3-none-any.whl.

File metadata

  • Download URL: fragile-0.0.56-py3-none-any.whl
  • Upload date:
  • Size: 84.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for fragile-0.0.56-py3-none-any.whl
Algorithm Hash digest
SHA256 95d5f86b09ce0b09d3f3f0a60b89c7a5d5f924f731f2b1abe7fbbce0ce41b44d
MD5 e507c55537d2cbc729be0e3620aee3e0
BLAKE2b-256 362519a67849a80dfc2a292600b47f2c5ab683e9cf7639cc8c25cbea14e92ded

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page