Kennt Formulize / Eureqa, nachdem er damit begonnen hat, 2500 US-Dollar pro Jahr für die Verwendung zu berechnen und die Testversion verkrüppelt zu haben, irgendwelche Ersetzungen, die ähnliche Dinge tun können, wie eine Gleichung mit bestimmten Datenpunkten zu finden?
Es war kostenlos, liegt aber jetzt außerhalb der Preisspanne von Personen, die keine Firma oder Schule sind.
(Es ist eine symbolische Regressionssoftware )
Vielen Dank
Antworten:
Ich habe ein Python-Paket namens PyPGE geschrieben .
PyPGE ist eine Implementierung der symbolischen Regression, die auf einer priorisierten Grammatikaufzählung (1) basiert , nicht auf einer evolutionären oder genetischen Programmierung. Es erzeugt einen deterministischen symbolischen Regressionsalgorithmus.
(1) Wurm, Tony und Kenneth Chiu. "Priorisierte Grammatikaufzählung: Symbolische Regression durch dynamische Programmierung." Vorträge der 15. Jahreskonferenz über genetische und evolutionäre Berechnungen. ACM, 2013. GitHub: http://github.com/verdverm/pypge
quelle
Nach einer flüchtigen Google-Suche zu diesem Thema scheint "symbolische Regression" ein Problem zu sein, das sich stark für stochastische Optimierungsalgorithmen wie die genetische Programmierung (GP) eignet. Es ist denkbar, dass Sie nach einer Open-Source-Bibliothek für genetische Programmierung mit Modulen suchen, die speziell für die symbolische Regression entwickelt wurden, z. B. DEAP (Distributed Evolutionary Algorithms in Python) .
quelle
Ich habe einmal angefangen, eine Open-Source-Version von Eureqa in Java zu schreiben. Das Projekt verfügt nur über begrenzte Funktionen, implementiert jedoch die in [1] beschriebene Fitnessfunktion und die von den Autoren in anderen Veröffentlichungen erwähnten Paaroptimierungen (z. B. Suche nach Lösungen in Pareto-Front).
Link: https://github.com/pkoperek/hubert
[1] Schmidt, Michael und Hod Lipson. "Destillieren von Freiform-Naturgesetzen aus experimentellen Daten." Science 324,5923 (2009): 81 & ndash; 85. DOI: 10.1126 / science.1165893
quelle
Ich fand das gramEvol R-Paket flexibel und einfach zu bedienen. Sie haben ein kleines Tutorial, in dem sie Keplers drittes Gesetz aus Daten ableiten.
Beachten Sie, dass es für seine Optimierung auf Genetic Programmic basiert und daher möglicherweise unterschiedliche Ergebnisse zurückgibt, wenn Sie es zweimal ausführen.
quelle
Es gibt auch ein Paket für R namens rgp. Besuchen Sie diesen Link.
https://cran.r-project.org/web/packages/rgp/index.html
Ich habe rgp nicht verwendet, da ich erst begonnen habe, R ernsthaft zu verwenden, aber es schien ein guter Hinweis zu sein. Ich habe noch einen für dich, der wirklich vielversprechend aussieht, aber ich habe einen Mac und kann ihn nicht verwenden:
http://dev.heuristiclab.com/wiki/AdditionalMaterial/ECML-PKDD
quelle
Sie können TuringBot ausprobieren . Es ähnelt Eureqa, verwendet jedoch Simulated Annealing für die Optimierung anstelle eines genetischen Algorithmus.
Die kostenlose Version läuft sowohl unter Windows als auch unter Linux.
quelle