学ぶ
会員の方
相談する
全5問。4問以上の正解で合格です。コースで学んだことを確かめましょう。
資源の上限など、守らなければならない条件を不等式や等式で表したものが制約条件です。最大化・最小化したい対象(この例では利益 Z = 40x + 30y)が目的関数で、制約条件を満たす解の中で目的関数がいちばん良くなる解が最適解です。
復習する:線形計画法とは?
図式解法では、制約条件を満たす範囲をグラフに描き、その頂点ごとに目的関数の値を計算して、いちばん良い点を最適解とします。レッスンの例では4つの頂点を調べ、(0, 90)で利益が2700と最大になりました。
復習する:線形計画法の解法
利益を最大化することは、利益にマイナスを付けた値を最小化することと同じです。そのためレッスンでは目的関数の係数を[-40, -30]とし、結果の値にもマイナスを付けて元に戻しました。
復習する:線形計画法をPythonで実装する方法
輸送問題は、複数の供給地(工場)から複数の需要地(市場)へ製品を運ぶとき、供給能力と需要の条件を満たしつつ、全体の輸送コストを最小化する問題です。各工場から各市場への輸送量が変数になります。
復習する:線形計画法応用:輸送問題について解いてみよう!
宝物は1個ずつしかないので、持ち帰るかどうかを1か0で表す二値の変数にします。PuLPではLpVariableのcatにBinaryを指定しました。生産量の問題で0以上の連続値を使ったのとの大きな違いです。
復習する:組み合わせ最適化問題をPuLPを使って解く方法
/ 5問 正解