Pythonの数値計算ライブラリ SciPy には線形計画問題を解くための scipy.optimize.linprog という関数が存在します。 この関数を使って、線形計画問題を実際にといてみます。 例として次のような線形計画問題を考えましょう maximize subject to 目的関数の右辺に -1 をかけて、目的関数の最大化を目的関数の最小化に変えます。 minimize これを行列で表します。 あとは、行列をリストで表現し、SciPyプログラム(linear-prog.py)に落とします。 # vim: set fileencoding=utf-8 c = [-1, -2] # 目的関数 A = [[1, 3], [4, 4], [2, 1]] # 決定変数の係数 b = [24, 48, 22] # 決定変数の下限、上限 x0_bounds = (0, None) x1_b