GA Sequencer
Immesse delle coppie di dati di input, il programma utilizza un algoritmo genetico per cercare di trovare una funzione che leghi tali dati. Il cuore del codice è il namespace GeneticEngine, dove sono dichiarate tutte le classi più importanti: ExpressionTree rappresenta un'espressione matematica; Boid rappresenta un singolo esemplare della popolazione delle soluzioni possibili; GeneticEngine è l'engine stesso, che si occupa di far evolvere la popolazione, di attuare l'accoppiamento tra le soluzioni migliori e di generare mutazioni casuali attraverso le generazioni. Il tutto non è particolarmente ottimizzato, ed è in grado di trovare legami espressi solo dagli operatori +, -, *, / e ^ (gli unici che ho implementato).
N.B.: i sorgenti in "Sfoglia il sorgente" sono più recenti di quelli nel pacchetto zip in "Download".
Data: prima del 10/09/2009
A proposito dell'autore
C#, TypeScript, java, php, EcmaScript (JavaScript), Spring, Hibernate, React, SASS/LESS, jade, python, scikit, node.js, redux, postgres, keras, kubernetes, docker, hexo, etc...
|
Aggiungi un commento