Optimiseur d'algorithme génétique à l'aide de k-means clustering avec des algorithmes ANOVA uniques
AVERTISSEMENT: il s'agissait d'un projet étudiant de première année et est hors de soutien maintenant.
Utilisez le Package Manager PIP pour installer Genetic_Optimizer.
pip3 install genetic-optimizerPackage requis => Python 3.6.5, l'utilisation de Genetic_Optimizer dans les projets Python 2.xx peut ne pas fonctionner correctement. Si vous n'êtes pas sûr de votre version Python, essayez:
python3 --version import genetic_optimizer
some_object = genetic_optimizer . Optimizer ()
some_object . generate ( population_size = 46 , chromosome_size = 8 , equal_chromosomes = True , initialization_method = 'Random' , representation = 'Binary' , saving_method = 'csv' ) Ce sont des options par défaut pour le générateur, vous pouvez les modifier dans le fichier default.ini dans le répertoire des packages
Remarque: Les ensembles de données générés sont dans des ensembles de données / sous-répertoire
some_object . optimize ( data = None , iterations = 12 , shuffle_scale = 0.6 , variety = 0.8 , chromosome_weight = 0.0000001 )Ce sont des options par défaut pour Optimizer, vous pouvez les modifier dans le fichier standards.conf dans le répertoire des packages
Si Optimizer est resté coincé au début, cela signifie généralement que votre dataframe avec la population est trop petite pour trouver des parents appropriés afin de créer des générations suivantes.
Pour plus de description, veuillez consulter le projet Wiki.
Il n'y a pas de mutation et de probabilité de croisement. Le programme correspond aux parents selon les différences de groupe et créent un nouvel enfant, construit à partir des paires de gènes les plus réussies de leur part. Cela signifie que les nouvelles générations sont plus proches de chacun et que chaque enfant n'est pas pire que le parent génétique pire .
Vous pouvez jouer avec des options pour obtenir des résultats plus précis.
Les demandes de traction sont les bienvenues. Pour les changements majeurs, veuillez d'abord ouvrir un problème pour discuter de ce que vous souhaitez changer.
Mit
Le code est principalement écrit conformément au guide de style Google Pep