トップページ > プログラム > 2015年11月07日 > XiUv/MWJ

書き込み順位&時間帯一覧

32 位/192 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000001000010000000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
C++相談室 part120 [転載禁止]©2ch.net

書き込みレス一覧

C++相談室 part120 [転載禁止]©2ch.net
406 :デフォルトの名無しさん[sage]:2015/11/07(土) 09:17:42.53 ID:XiUv/MWJ
数学板から誘導されてきました

下記の組み合わせ最適化問題を解きたいのですが、計算量が膨大になるため、効率のよい解き方を探しています
C++で実装しているとはいえ、こちらで聞くのが正しいかわかりませんが、お力をお貸しいただけますと幸いです

【問題】

■前提
・テストを控えるP人の学生がおり、同じ塾に所属している
・テストはN科目ある
テストの集合をTと表記し、各テストをT_n (n=1,2,...,N)と表記する
・塾は各科目に対してM通りの強化学習授業を用意している
科目nに対する強化学習授業の集合をC_nと表記し、各強化学習授業をC_nm (m=1,2,...,M)と表記する
・C_nmの実施により、学生p (p=1,2,...,P)はテストT_nの点数がe_nm_p 点あがる

■問題
塾は各科目の強化学習授業を一回ずつ実施する。つまり、n個の強化学習授業の集合C_n (n=1,2,...,N)から一つずつ選んで、N回の強化学習授業を行う。
塾としては、N回の強化学習授業による点数上昇がE点を超える人数を最大化したい
この時、どのようなアルゴリズムで強化学習授業の組み合わせを選べばよいか


全探索をすると解けるのですが、NとMが大きくなると組み合わせが膨大になります
N=10,M=10くらいを想定しておりますので、これを全探索するとなると不可能です
何かヒューリスティックな解き方はありますでしょうか

よろしくお願いいたします
C++相談室 part120 [転載禁止]©2ch.net
409 :デフォルトの名無しさん[sage]:2015/11/07(土) 14:00:20.34 ID:XiUv/MWJ
>>408
ありがとうございます
分枝限定法で実装してみたいと思います

某所で質問した際には遺伝的アルゴリズムの利用が有効かもしれないと言う助言をいただいたのですが、この手の問題には有効なのでしょうか
詳しい方がおられましたらお教えいただけると嬉しいです


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。