分析していたら条件を分岐して考えるようになった話|スマホ×AIで進めるPython独学

前回は、コースごとの条件や関係性について整理しました。

(→ 分析していたらコースごとの条件を考えるようになった話

その中で見えてきたのは、勝敗は単体ではなく、複数の条件の組み合わせで決まるという構造です。

ただ、この時点ではまだ、「条件を理解しただけ」という状態でした。

実際に使うためには、これをロジックとして動かす必要があると感じました。

条件をそのままでは使えない

例えば、これまでに見えてきた条件は、

・2コース → 1より速く、かつ差がある

・3コース → 他コースとの関係に依存

・4コース → 内崩れ+スタート

といった形です。

ただ、これをそのまま使おうとすると、判断が曖昧になるという問題がありました。

・どの条件を優先するのか

・複数条件が重なった場合はどうするのか

→ 明確なルールが必要でした。

分岐という考え方

そこで考えたのが、条件ごとに分岐するという方法です。

つまり、if文を使ってロジックを組み立てるという形です。

例えば、

・もし2コースが1より明確に速いなら → 2を評価

・そうでなければ → 別条件を見る

といった形で、状況ごとに判断を変えるようにしました。

実際に組んでみる

実際にロジックを組んでみると、今まで曖昧だった部分が明確になるという感覚がありました。

・条件の優先順位

・どこで判断しているのか

がはっきりしてきます。

また、再現性も上がったと感じました。

同じ条件であれば同じ結果になるため、検証もしやすくなります。

ただし問題も出てきた

一方で、ロジックを組んでいく中で、別の問題も出てきました。

条件が増えるほど複雑になるという点です。

・分岐が増える

・コードが長くなる

・全体が見えにくくなる

最初はシンプルだったものが、徐々に扱いづらくなっていきました。

精度は上がったのか

実際にこの分岐ロジックを使って検証してみると、一定の再現性は出てきたと感じました。

・1コースは安定

・2〜4コースも条件次第で機能

ただ、完璧とは言えないという状態でした。

・まだブレる

・改善の余地がある

そんな印象です。

見えてきた限界

この段階で感じたのは、分岐は表現力が高いが、調整が難しいということでした。

条件を増やせば対応できる範囲は広がりますが、その分、全体のバランスが崩れやすくなるという問題がありました。

次にやること

ここまでで、ロジックとして形にはなった状態です。

ただ、もっとシンプルに、安定させたいと感じるようになりました。

そこで次に考えたのが、重み付け(スコア化)です。

条件ごとに分岐するのではなく、全体をまとめて評価する方法です。

次回は、この分岐ロジックを調整していく中で見えてきた限界と、そこから発想を変えた過程についてまとめていきます。

タイトルとURLをコピーしました