2つの商品がある、発注予算は100万だ。最適化を具体例を挙げてみる

2024年6月17日

商品の発注予算が100万円で、2つの商品を最適化する場合を考えてみましょう。商品Aと商品Bの発注量を決定する際に、売上利益を最大化することが目標です。具体的な例として、以下の条件を考えます:

  • 商品Aの単価:10,000円
  • 商品Bの単価:20,000円
  • 商品Aの単位あたりの利益率:30%
  • 商品Bの単位あたりの利益率:25%
  • 商品Aの発注量を
    xx

    yy

この場合、以下の目的関数と制約条件を設定して、線形計画法を用いて最適な発注量を求めることができます。

目的関数:

  • 売上利益を最大化する
    Maximize0.3x×10000+0.25y×20000text{Maximize } 0.3x times 10000 + 0.25y times 20000

制約条件:

  • 発注予算を100万円以内にする
    10000x+20000y100000010000x + 20000y leq 1000000
  • 非負の発注量
    x,y0x, y geq 0

これらの目的関数と制約条件を用いて、最適な発注量

xx

yy

python
from pulp import *

# 問題の定義
prob = LpProblem("Optimization", LpMaximize)

# 変数の定義
x = LpVariable("x", lowBound=0)  # 商品Aの発注量
y = LpVariable("y", lowBound=0)  # 商品Bの発注量

# 目的関数の定義
prob += 0.3 * 10000 * x + 0.25 * 20000 * y

# 制約条件の定義
prob += 10000 * x + 20000 * y <= 1000000

# 問題の解決
prob.solve()

# 結果の出力
print("Optimal solution:")
print("x (商品Aの発注量):", value(x))
print("y (商品Bの発注量):", value(y))
print("Maximum profit:", value(prob.objective))

このコードを実行すると、最適な発注量

xx

yy

未分類

Posted by ぼっち