Come parte di un incarico dovrò scrivere un algoritmo di programmazione genetica che prevede la previsione dei livelli di inquinanti atmosferici. Dal momento che non ho esperienza, qualcuno può indicarmi suggerimenti su linguaggi di programmazione in cui verranno scritti programmi evoluti .
Chiarimento: non sto chiedendo quale sarà il linguaggio che scriverò l'algoritmo genetico stesso (dato che sarò in grado di prendere la decisione da solo), sto chiedendo in quale linguaggio di programmazione dovrebbero essere creati i programmi evoluti.
Il mio istruttore ha suggerito Lisp, ma questa idea non mi piace --- prima dovrei lavorare su una specie di albero di sintassi astratto, in secondo luogo fare crossover sulla struttura ad albero può essere un casino.
Preferisco utilizzare qualcosa che è dedicato per la programmazione genetica come slash / A . SlashA non richiede di lavorare su AST --- i programmi in bytecode sono solo una matrice di ints che possono essere cambiati in qualsiasi fasion necessaria poiché ogni matrice int rappresenta un programma slash / A.
Note aggiuntive:
- Vorrei evitare di manipolare le AST!
- Questo problema è difficile (forse non tanto quanto la previsione dei valori di borsa). Ciò è dovuto al fatto che (molto probabilmente) non abbiamo abbastanza informazioni di input (ci sono alcuni parametri nascosti). La creazione di un modello con prestazioni migliori rispetto a quella che restituisce media rappresenta una sfida (i modelli medi hanno MAPE del 35%), la maggior parte dei modelli ha MAPE di circa il 25%, la maggior parte di essi ha il 20%.
- Mi piacerebbe avere un linguaggio che gestisca i set di dati con molte funzionalità supponendo che non sono sicuro di quali siano importanti. (La barra / A ha uno svantaggio qui --- in questa lingua le funzioni di input vengono lette in sequenza --- quindi alcune funzionalità verranno utilizzate con maggiore probabilità).
- Mi piacerebbe essere in grado di programmare questo in Python, quindi le librerie python sarebbero fantastiche --- ma posso fare i collegamenti per C / C ++ (no Java, no Matlab, ecc.).
Sono consapevole che questa è una domanda del sondaggio, quindi se è troppo presto per tale domanda, per favore chiudila, ma ritengo che sia abbastanza specifica.