カレンダー/計画アルゴリズム
問題に直面しているので、どのようにアプローチしたらよいかわかりません。従業員のカレンダーを作成する必要があります。各従業員には特定の仕事上の制約があります(個人的なもの、一般的なもの) 私が取り組んでいるもの: 医者がいます 各医師は週5日勤務する必要があります。 各医師は週に1晩働く必要があります 各医師は、他の医師と比較して(または可能な限り近く)夜同じ時間働く必要があります。 各医師は、他の医師と同等の(または可能な限り近い)木曜日の夜と日曜日の夜に同量の仕事をしなければなりません。 一部の医師は特定の日/夜に作業できない(ユーザーによる入力) 一部の医師は、特定の日/夜に作業したい(ユーザーによる入力) 一部の医師は、特定の日/夜に仕事をしたくない(ユーザーによる入力) 問題のユーザーはカレンダーを扱っている人です。すべての制約に従うカレンダーを自動的に生成するソリューションを構築しようとしています。解決策は、各医師に「医師を追加」と「制約を追加」を入力し、次に「カレンダーを生成」ボタンを入力するだけの大きな設定です。それはユーザーにとって本当に基本的なものです。 私の問題 : 実際の計画をどのように生成するかわからない。ニューラルネットワークや遺伝的アルゴリズムなどについて読んでいるが、それらはすべて正しい解決策のように思えるが、実際にはそうではない。 GAを見ると、与えられた母集団(私の問題)の解を見つけるように作られていますが、開始母集団は与えられた制約のセットに既に従わなければなりません。その場合、私の最初の人口はすでに解決策です。「最適化」する必要はありません。1人の人が月曜日の3晩連続して働くことは問題ではありません。実際に正しい場合、他の人が同じ量で働く場合は、他の人もある時点で月曜日の3日間働くことは問題ありません。私の問題はすでにGAの開始点で解決されているので、GAは私にとって「高度」であると思うようになります。 しかし、再び、GAは本当にこれのために作られたように見えるので、私はそれを正しく理解していないかもしれませんか? とにかく、GA(またはニューラルネットワークなど)を使用したことはないので、そのような学習曲線を作成する前に、正しいアプローチを選択してください。 私の質問 : 私のような問題に対する良いアプローチ/アルゴリズム/テクニックは何だと思いますか?ガス?ニューラルネットワーク?まったく違う何か? 私はすべての耳であり、必要に応じて詳細を開いていますが、私は自分自身をかなり明確にしたと思います:)