さて、話を戻します。
最適化アルゴリズムには、最低3つの内容を加えなければなりません。「環境」「評価関数」そして「制約条件」です。
この話は面倒くさそうですが、これを、定期試験の「一夜漬けスケジュール問題」に当てはめて考えて記述してみれば、比較的簡単に理解できます
一夜漬けをしたからといって、評価関数の内容を達成できる訳ではありませんが、取りあえず、スケジュールの戦略を立てることはできます。
この問題では、いくつかの最適化戦略をとり得ますが、ある教科を優先的に取り扱えば、他の教科が不利になります。これを「パレート最適」といいます。
この問題では、(1)赤点を回避するためには、特定の教科の勉強を「捨ててかかる」ことはできない、(2)「英語」だけは、テストの全範囲の勉強が必要であり、(3)「数学」は、問題にヤマを張っていく、という戦略が立ちます。この戦略を元に、残り時間11時間の時間配分を行うことになります。
これは、最適化アルゴリズムにおける、線形計画といえるものです。
しかし、人間とは不思議なもので、こういう追い詰められた状況になると、なぜか、普段なら絶対にしないようなこと ―― 例えば、「太宰」とか「芥川」とかに手を出して、読みふけってしまい、気が付けば午前2時を指す時計に青冷める、ということがあります ―― 「ああ、本当に、私って『人間失格』…今すぐ『蜘蛛の糸』でも垂れてこないかな……」と呟きながら。
Copyright © ITmedia, Inc. All Rights Reserved.