片道ANOVAアルゴリズムを使用したK-meansクラスタリングを使用した遺伝的アルゴリズムオプティマイザー
警告:これは1年生の学生プロジェクトであり、現在はサポートがありません。
パッケージマネージャーPIPを使用して、genetic_optimizerをインストールします。
pip3 install genetic-optimizerパッケージreques => python 3.6.5、python 2.xxプロジェクトでGenetic_optimizerを使用すると、正しく機能しない場合があります。 Pythonバージョンについてわからない場合は、次のことを試してください。
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' )これらはジェネレーターのデフォルトオプションです。パッケージディレクトリのdefaults.iniファイルで変更できます。
注:生成されたデータセットは、データセット/サブディレクトリにあります
some_object . optimize ( data = None , iterations = 12 , shuffle_scale = 0.6 , variety = 0.8 , chromosome_weight = 0.0000001 )これらはオプティマイザーのデフォルトオプションです。パッケージディレクトリの標準でそれらを変更できます。
Optimizerが最初に立ち往生した場合、それは通常、人口のデータフレームが小さいことを意味し、次の世代を作成するために適切な親を見つけることです。
詳細については、Project Wikiをご覧ください。
突然変異とクロスオーバーの確率はありません。プログラムは、グループの違いに応じて保護者と一致し、遺伝子の最も成功した遺伝子から構築された新しい子供を作成します。つまり、新しい世代はそれぞれに近く、すべての子供は遺伝的悪い親よりも悪くはありません。
より正確な結果を達成するためのオプションで遊ぶことができます。
プルリクエストは大歓迎です。大きな変更については、最初に問題を開いて、何を変えたいかを議論してください。
mit
コードは主にGoogle PEPスタイルガイドに従って書かれています