アリさんのケーキ探し ―― 間違い見つけた

部品ごとに分けて書き直していたら、しょうもない間違いを見つけた。

NQ2 = CQ + Gaku1 * (NQ - CQ)

とあるべきところが、

NQ2 = CQ + Gaku1 * (Ho - CQ)

になってた。これではダメだ。
(いや、こうなっていると、どういう計算をしてしまうのか、ちゃんと見ていないが)

あと、Match関数で、最期の引数にゼロを入れていなかった。これでも結果が変わる。ゼロを入れておけば、完全一致でうまく行く。(ゼロを入れていないと、どうして一致するものがズレてくるのか、それもよくわかっていない。一定の範囲の中にある最大値を求めて、最大値の位置を返すようにしているだけなのに、どうしてズレる?よくわからん。ちなみに、Greedy比を、1から0.05ずつ20回引いたら、まともに考えるとゼロになるはずなのに、最期には、-3.19189119579733E-16とかいう、ごくわずかながらマイナスの数値になる。なんなんだ、これは。)

ともあれ、ある程度改善は進んでいる。まともそうな結果も出てきた。でも、もうちょっと。