Claude Codeのファジィ遺伝的アルゴリズムにて140字小説を進化2回目
2026-03-09 01:17:44
前回の Claude Codeの遺伝的アルゴリズムのフレームワークを使って140字小説を進化させた
からちょっと改造して、再度同じ初期遺伝子から140字小説を進化させてみた。
フレームワークは下記
ryotakato/ga_on_ai
前回からの変更点
前回の問題点は、5世代目にして、すでに遺伝子の多様性がなくなり、ほとんど似たような小説が生み出されてしまったこと。
多様性が失われていて、明らかに局所解に陥っていたので、それを防ぐ。
掛け合わせ方を、単純なエリート選択から、
エリート選択とランダム選択の半分にした。
なので、今までは、上位20個体から次世代の個体を全て生み出していたが、
今度は上位10個体+ランダム選択10個体で、遺伝子の多様化を図る。
この他にも、確率(上位個体ほど選ばれる確率が高いが、最下位個体も選ばれる確率が0じゃない)選択や、
一定の個数をランダムで選び、その中での最高ランクを選んでいく方式(トーナメント選択)などを追加した。
実際にやってみる
ということで、また第5世代まで進化させた。
第1世代はAI生成で、前回の遺伝子と一緒。
---
第1世代
百歳の女性に長寿の秘訣を聞いた。「嫌いな人とは食事をしないこと」。記者が追加で聞いた。「では好きな人は?」。女性はしばらく考えて言った。「もう、みんないない」。
---
第2世代
時間を止める能力を持つ老人が、毎朝公園で鳩に餌をやっていた。使うたびに自分の時間が一分縮む。「なぜ使うの?」と聞くと、「鳩が飛び立つ前の一分が好きだから」と言った。老人の残り時間はもう、ほとんどなかった。
---
第3世代
家族を守る能力があった。使うたびに記憶が一つ消える。一度だけ使った。妻が倒れた夜に。目が覚めると喪服のポケットに紙切れがあった。父の字で「忘れていい。ただ忘れるな」。冷蔵庫には妻の字で「私はここにいる」。
---
第4世代
「ありがとう」と言えなかった。父が生きている間、ずっと。父が死んだ後、実家の犬に翻訳機を向けた。「ありがとう、ずっと」と翻訳された。冷蔵庫に父の字でメモがあった。「いい加減、整理してよ」。笑いながら泣いた。犬がしっぽを振った。
---
第5世代
時間を止める能力を持つ老人がいた。使うたびに自分の時間が一分縮む。「ありがとう」と言えなかった。妻が生きている間、ずっと。声を失う手術の前夜、鳩が飛び立つ前の一分を止めた。最後の言葉を書いた。「やっと言えた」。鳩が飛んだ。
---
以前よりは自然な小説になっているとは思うが、それでもまだ要素が多い気がする。
やっぱり文章というのは、削る力が大事なんだなと思った。
家系図にしてみた
これで終わっても面白くないので、せっかくどの親から遺伝子を引き継いでいるかという情報があるので、家系図を作ってみた。
といっても、Claude Codeに壁打ちして作ってもらっただけだけど。
Cytoscape というネットワーク描画ライブラリを落としてきて、ローカルHTMLだけで動作するようにした。

ノードが多いせいで見づらいけど、ズームもできる。
1世代100個いるので、横に長いのが、5列。
つまり5世代分。
親子関係は繋いであるから、特定の個体を選択すると、

みたいな感じでその個体の家系図が表示される。
横にはノード詳細が出るのも分かりやすい。
次の構想
一旦140字小説はこれで終わり。
次は、
せっかくファジィ遺伝子アルゴリズムができるようになったので、
ドット絵をどうにか進化させられないものかと思っている。
モンスターちっくなものとか。

