JonyEpsilon / algebolic

Evolving mathematical expressions in Clojure

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

algebolic

Algebolic is a library for evolving mathematical expressions. You can use it to perform what's known as symbolic regression, where a symbolic mathematical expression is found that fits a given dataset. More generally, you can use it to evolve mathematical expressions that optimise any score function. The expressions are implemented so they can be very quickly evaluated, as can their derivatives which is useful in more advanced applications. We use it in our research lab, for example, to evolve laws of physics directly from data.

Algebolic is built on the darwin genetic algorithm framework.

Usage

Add it to your project.clj file:

[algebolic "1.0.0"]

Examples can be found in the ws/demo directory. The intro.clj worksheet is quite readable. With the others you might have to put in some thought/experimentation! You can view them on the web:

License

Copyright © 2015 Imperial College London

Distributed under the MIT licence.

About

Evolving mathematical expressions in Clojure

License:MIT License


Languages

Language:Clojure 98.0%Language:Java 2.0%