更新履歴
アルゴリズムの改善記録
パターン行列・エントロピー計算を numba JIT に移行して大幅に高速化し、常に全単語計算するように ( 前バージョンと同じしきい値の場合の精度は 60.594 )
スコア計算において純粋なエントロピーだけでなく、候補単語にはボーナススコアを算出して加算する処理を実装 ( 常に全単語を計算した場合の精度は 61.877 )
本来なら対象外となる同一文字の miss が 2 個以上含まれる単語を除外できていなかった不具合を修正 ( 常に全単語を計算した場合の精度は 61.835 )
スコア計算をエントロピーベースのアルゴリズムに刷新し、全単語の評価を numpy でベクトル化して高速化
特殊処理 ( 全単語計算 ) の条件を hit 数ベースから残り候補数が 50 以下の時に変更 ( 常に全単語を計算した場合の精度は 61.832 )
デワードルの精度を計測するワードルにおいて対象の文字が正解に一か所存在し、入力した単語に場所違いで 2 箇所ある場合二つとも blow になってしまう不具合を修正 ( 08 のアルゴリズムでは精度 56.025 )
最適単語に同率 1 位が複数現れた場合再帰で次にその単語を使用した状況を予想し、再評価する処理を追加 条件 (1 < max_s <= 10 and len(ws_dict) > 1) ( 処理負荷が高いためデフォルトでは無効 )
特殊処理の条件を若干簡易化 (len(self.word_score_dict) >= 4 and self.count_not_none(self.get_hit_word()) >= self.WORD_LEN - 2) or (len(self.word_score_dict) >= 3 and self.count_not_none(self.get_hit_word()) >= self.WORD_LEN - 1)
特殊処理のスコア比較で文字列を使用していた不具合を修正
同じ文字で黄色と緑が同時に存在した場合に、お互いを考慮しない不具合を修正
鼠色二つに対応していない不具合修正
02 + 日本語も最初の単語をエントロピーが最大になる単語に変更
02 + 選択肢削減最優先 default < special
最初の単語 ( master ) をエントロピーが最大になる単語に変更
3 つ以上緑になったときに、他の文字を消すことを優先するアルゴリズムを追加
初代