Skip to main content

Framework for developing FractalAI based algorithms.

Project description

Fragile

Travis build status Code coverage PyPI package Latest docker image Code style: black license: AGPL v3 unstable

This repository is under active development.

Fragile is a framework for developing algorithms inspired by the Fractal AI theory and testing them at scale.

About FractalAI

FractalAI is based on the framework of non-equilibrium thermodynamics, and It allows 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 with Atari games section of the docs, or check out the examples folder.

Running in docker

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

   make docker build
   docker run -d -p 8080:8080 -v PATH_TO_REPO/fragile fragile 

You can also run the tests inside the docker container

    make docker-test

Installation

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

It can be install with pip install fragile.

Building from source

Please take a look at the Dockerfile to find out about all the dependencies, and the detailed installation process.

   git clone https://github.com/FragileTech/fragile.git
   cd fragile
   pip3 install -r requirements.txt
   pip3 install -r requirements-viz.txt
   pip3 install -e .

Documentation

You can access the documentation on GitHub Pages.

  • Building the documentation:
  cd fragile/docs
  make html
  • Accessing the documentation locally:
    • Launch an http server:
      cd build/html # assuming you are inside fragile/docs
      python3 -m http.server      
    

Roadmap

  • Document and test the ray module. Write example notebook
  • Document and refactor Montezuma solver
  • Improve tests coverage (currently 153 for the core and optimize modules)
  • Add new algorithms to sample different state spaces.
  • Add a module to generate data for training deep learning models
  • 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 currently licensed under AGPLv3.0.

However, if you are considering using it for applications that require a more permissive license, please let me know in this Issue

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

fragile-0.0.21-py3-none-any.whl (109.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fragile-0.0.21-py3-none-any.whl
  • Upload date:
  • Size: 109.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.10

File hashes

Hashes for fragile-0.0.21-py3-none-any.whl
Algorithm Hash digest
SHA256 f5fb04a94e199735578c767018c1fb26637546c16bd7230df60372280114f4bd
MD5 6b3c76d0d1353ddd14abbd7dcfd62e9c
BLAKE2b-256 b1521d43df9c83231c16bdacf2e2ab5dbfeabfb61fb81785c779f8ffa9c29b28

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