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.22-py3-none-any.whl (109.1 kB view hashes)

Uploaded Python 3

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