8
$\begingroup$

Now that Formulize / Eureqa started charging $2500 a year for using it and having crippled the trial version, does anyone know of any replacements that can do similar things like find an equation given data points?

It was free, but is now out of the price range of anyone that's not a company or school.

(it's a symbolic regression software)

Thanks

$\endgroup$
  • $\begingroup$ @Paul i use to input an array into formulize which would create periodic equations with 8000-44100 variables, then i would plug the equations back into octave and create several different periodic signals from the equations. $\endgroup$ – Rick T Oct 10 '14 at 1:24
  • $\begingroup$ migrate to stats.stackexchange.com ? see algorithms-for-automatic-model-selection there. $\endgroup$ – denis Feb 23 '15 at 17:08
  • $\begingroup$ I don't think that we need to migrate the question. It is on-topic here. $\endgroup$ – nicoguaro Feb 25 '15 at 5:41
5
$\begingroup$

I wrote a Python package called PyPGE.

PyPGE is a Symbolic Regression implementation based on Prioritized Grammar Enumeration (1), not Evolutionary or Genetic Programming. It produces a deterministic Symbolic Regression algorithm.

(1) Worm, Tony, and Kenneth Chiu. "Prioritized grammar enumeration: symbolic regression by dynamic programming." Proceedings of the 15th annual conference on Genetic and evolutionary computation. ACM, 2013. GitHub: http://github.com/verdverm/pypge

$\endgroup$
3
$\begingroup$

After a cursory google search on the subject, it appears that "symbolic regression" is a problem that lends itself greatly to stochastic optimization algorithms like genetic programming (GP). It is conceivable that you should look for an open source genetic programming library with modules specifically for symbolic regression, such as DEAP (Distributed Evolutionary Algorithms in Python).

$\endgroup$
3
$\begingroup$

I once started writing anopen source version of Eureqa in Java. The project has limited capabilities but it implements the fitness function described in [1] and couple optimizations mentioned by the authors in other publications (e.g., searching for solutions in Pareto front).

Link: https://github.com/pkoperek/hubert

[1] Schmidt, Michael, and Hod Lipson. "Distilling free-form natural laws from experimental data." Science 324.5923 (2009): 81-85. DOI:10.1126/science.1165893

$\endgroup$
2
$\begingroup$

I found the gramEvol R package flexible and easy to use. They have a small tutorial in which they rederive Kepler's third law from data.

Note that it relies on Genetic Programmic for its optimisation and thus might return different results if you run it twice.

$\endgroup$
1
$\begingroup$

There is also a package for R called rgp. Visit this link.

https://cran.r-project.org/web/packages/rgp/index.html

I have not used rgp as I have only begun to use R seriously but it seemed like a good lead. I have another one for you that looks really promising but I have a mac and cannot use it:

http://dev.heuristiclab.com/wiki/AdditionalMaterial/ECML-PKDD

$\endgroup$
  • 3
    $\begingroup$ Please elaborate on why you recommend the "rgp" package. $\endgroup$ – Paul Aug 11 '15 at 3:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.