Skip to content

Latest commit

 

History

History
131 lines (80 loc) · 4.22 KB

例子集合.md

File metadata and controls

131 lines (80 loc) · 4.22 KB

Agricultural Pricing

  • 确定商品每日的价格与需求,使得从销售中获得的总收入最大化

  • 二次规划问题

  • 例子

    • 问题描述

      决定乳制品(milk, butter, and cheese)的价格; 这些乳制品由两个主要成分:Fat 和Dry matter;每年可用在乳制品上的脂肪有60万吨,干物质有75万吨。

      产品的百分比组成:

Composition Fat (%) Dry matter (%)
Milk 4 9
Butter 80 2
Cheese 1 35 30
Cheese 2 25 40

​ 去年的每日消费以及价格:

products Milk Butter Cheese 1 Cheese 2
Demand (1000 tons) 4.82 0.32 0.21 0.07
Price (dollars/ton) 297 720 1050 815

​ 弹性指标:

Milk Butter Cheese 1 Cheese 2 Cheese 1 to Cheese 2 Cheese 2 to Cheese 1
0.4 2.7 1.1 0.4 0.1 0.4

​ 价格有个上限(不得高于去年的价格指数水平1.939)

​ 优化问题: 确定价格与需求,使得利益最大化;

  • 数学模型

    • 定义集合

      • $\mathcal{D} $ 每日产品集合
      • $\mathcal{C}$ 产品的组成(component)集合
    • 参数

      1. 每年可用的component吨数 $S_{c} \in \mathbb{R}^+$

      2. 产品中component的百分比 $T_{c,d} \in [0,1]$

      3. 去年产品的消费 $Q_{d} \in \mathbb{R}^+$

      4. 去年产品的价格$P_{d} \in \mathbb{R}^+$

      5. 去年产品消费价格弹性指数 $E_{d} \in \mathbb{R}^+$ 以及交叉弹性指数$e_{d_1,d_2} \in \mathbb{R}^+$

      6. 反应去年总消费成本的物价指数 $PI \in \mathbb{R}^+$

    $$ \begin{alignat*}{2} \text{Maximize} & \quad \sum_{d \in \mathcal{D}}{q_d * p_d} \ \mbox{s.t.}\quad &\sum_{d \in \mathcal{D}}{T_{c,d}* q_{d} } \leq S_{c} \quad \forall c \in \mathcal{C}\tag{1} \ &\sum_{d \in \mathcal{D}}{Q_{d}* p_{d} } \leq PI \tag{2}\ &\frac{q_{d} - Q_{d}}{Q_{d}} = -E_{d}\frac{p_{d} - P_{d}}{P_{d}}+e_{d_i,d_j}∗\frac{p_{d_i}−P_{d_i}}{P_{d_i}} \quad \forall d \in \mathcal{D},d_i,d_j \in \mathcal{\bar{D}} \tag{3}\ \end{alignat} \ $$

  • 模型说明

    • 决策变量$q_d$ ----需求
    • 决策变量$p_d$ ----价格
    • 约束(1) ---- 供应量的限制
    • 约束(2) ---- 新价格必须确保不会增加去年消费的总费用
    • 约束(3) ---- 需求与价格的关系通过弹性指数来关联(假设有线性关系)
  • Agricultural Pricing代码示例

Customer Assignment Problem

  • 选址问题----如工厂、配送中心、仓库、零售店等设计问题

    • 考虑的主要因素之一:客户的覆盖面积
  • 客户分配问题------如果设施的容量没有限制,就近原则分配;如果客户数量多,可先对客户分组;

  • 数学模型

    • 定义集合

      • $\mathcal{I}$ 客户分组集合
      • $\mathcal{J}$ 潜在的设施位置集合
      • $P = {(i,j) \in \mathcal{I} \times \mathcal{J}: d_{i,j} \leq t}$ 可行的配对集合
    • 参数

      1. 从工厂到客户可达的距离阈值 $t \in \mathbb{R}^+$

      2. 工厂能开的最大数量 $M \in \mathbb{N}$

      3. 属于分组 $i$ 中的客户数量 $w_i \in \mathbb{N}$

      4. 从客户分组中心$i$ 到工厂$j$ 的距离 $d_{i,j} \in \mathbb{R}^+$

$$ \begin{alignat*}{2} \text{Minimize} & \quad \sum_{(i,j) \in P}{w_i \cdot d_{i,j} \cdot x_{i,j}} \\ \mbox{s.t.}\quad &\sum_{j} y_j \leq M \tag{1} \\ &\sum_{j:(i,j) \in P}x_{i,j} = 1 \quad \forall i \in \mathcal{I} \tag{2} \\ &x_{i,j} \leq y_{j} \quad \forall (i,j) \in P \tag{3} \\ \end{alignat*} \\ $$

  • 模型说明
    • 决策变量$x_{i,j}\in{0,1}$ ---- 客户分组$i$ 是否属于工厂$j$的配送范围内
    • 决策变量$y_{j}\in{0,1}$ ---- 工厂$j$ 是否被选中
    • 约束(1) ----- 工厂设施有数量上限
    • 约束(2) ----- 一个分组内的客户必须由一个工厂配送
    • 约束(3) ----- 如果确定要开工厂,则属于该工厂的客户分组必须由该工厂配送