数理最适化笔记2

  • 2.1容量制约的设置配置问题

设施配置问题其实就是在一个空间内选择最合适点的问题。容量制约的设置配置问题是很多实际问题的基础模型。举个例子,比如上篇提到的工厂配送问题,5个顾客,3个仓库运输,设施的候补地点和年间产生的租房费用,仓库容量,顾客的配送费用,如表1所示。那么我们应该如何选择配送路径呢,年费的总花费怎么样最小。

|---------|----|-----|-----|-----|-----|--------|------|
| 顾客i | 1 | 2 | 3 | 4 | 5 | | |
| 年间需要量di | 80 | 270 | 250 | 160 | 180 | | |
| 设施j | 运输费用cij ||||| 开设费用fj | 容量Mj |
| 1 | 4 | 5 | 6 | 8 | 10 | 1000 | 500 |
| 2 | 6 | 4 | 3 | 5 | 8 | 1000 | 500 |
| 3 | 9 | 7 | 4 | 3 | 4 | 1000 | 500 |

有了上面的调查,我们可以开始进行模型建立。

顾客数量n,设施数量m,顾客i=1,2,。。。,n。设施j=1,2,。。。,m用编号表示。顾客的集合I={1,2,...,n},设施的集合J={1,2,...,m}。顾客i的需求量为di,顾客i和设施j之间,每1单位配送费用为cij,设施j的租房费用为fj,容量为Mj。

连续变数xij和0-1变量yj

xij = 顾客i的需求由设施j满足的量

yj = 1 设施j开设,0以外

目的函数 minimize Zj属于J fjyj + Zi属于I Zj属于J cijxij

s.t. Zj属于J xij = di Ai属于I

Zi属于I xij <= Mjyj Aj 属于J

xij<=diyj Ai属于I;J属于J

xij >=0 Ai属于I;j属于J

yj属于0,1 Aj属于J

目的函数表示 设施的开设费用和运送费用的和 最小化。制约1表示每个顾客的需要必须被满足,制约2表示设施的容量制约。制约3表示不从开设的设施出来是不能进行配送的,这个叫做强弱定式化。

为了解决上面模型,我们接下来进行编程。(1)输入参数和数据。(2)制作返回函数。(3)定义制约公式。(4)设置目的函数。

  • 2.2强定式化和弱定式化

Zi属于I xij <= Mjyj Aj 属于J

有制约条件1和制约条件2已经足够了,但是为什么要加3呢? 因为如果Mj非常大,会发生解不出来的问题,所以加了第3个制约条件。所以意思是3比2强,还有比3更强的。

Zj属于J xij <=(Zi属于I di)yj

它就比3还要强,因为范围更加窄。

  • k-median问题

也是设施配置问题,属于一个变种,求顾客到最近设施的(合计)总最小距离,来选择设施。

顾客i到设施j的距离为cij,可以定义以下变数

xij = 1 顾客i的需求被j满足时, 0是以外

yj = 1 设施j开设时 , 0是以外

顾客数量为n,顾客的集合为I,设施的配置点为J,通常的K问题,设施的候补地点在顾客上面假设,I = J = {1,2,...,n}.

整理成数学公式为

目的函数 minimize Zi属于I Zj属于J cij xij

s.t. Zj属于J xij = 1 Ai属于I

Zj属于J yj = k

xij <=yj Ai属于I;j属于J

xij属于0,1 Ai属于I;j属于J

yj属于0,1 Aj属于J

制约条件1表示顾客被分配给某一个设施,制约2表示限制规定开设的设施数量为K个。制约3表示顾客只能从被开设的设施接受服务,这个公式由nm公式构成。m可以转换为以下公式。

Zi属于I xij <=nyi Aj属于J

  • k-center问题

求顾客到设施点的最小距离。

顾客i到设施j到距离定义为cij,定义以下变数

xij = 1,0 顾客i的需求由设施j满足,以外

yj = 1,0 设施j开设 ,以外

另外z为最远距离的设施配送移动距离最小化。然后进行数学模型定义

目的函数 minimize z

s.t. Zj属于j xij = 1 ,Ai属于I

Zj属于J yj = k

xij<=yj Ai属于I;j属于J

Zj属于J cijxij <= z Ai属于I

xij 属于0,1 Ai属于I;j属于J

yj属于0,1 Aj属于J

目的函数表示最远设施配送顾客的最小移动距离,叫做最大值的最小化。制约条件1表示顾客由设施中的某一个进行配送,制约2表示开设的设施有K个。制约3表示必须由开设的工厂进行配送。

相关推荐
库玛西3 小时前
C++ 运行时多态 :核心总结与原理图解
c语言·c++·笔记
魔力女仆5 小时前
语言开发笔记3
笔记
x17388062735 小时前
文件包含漏洞介绍
笔记
一只小菜鸡..8 小时前
南京大学 操作系统 (JYY) 学习笔记:CPU 的局限、GPU 与 AI 时代的算力革命
人工智能·笔记·学习
所愿ღ9 小时前
SSM框架-Spring3
java·开发语言·笔记·spring
影视飓风TIM9 小时前
C++ STL 完整入门笔记[8]:deque 底层原理深度剖析
开发语言·c++·笔记
优化Henry10 小时前
5G站点软件错误告警与资源激活超时两类典型告警分析与处理
网络·笔记·学习·5g·信息与通信
凉、介10 小时前
ARMv8-A 指令学习
linux·笔记·学习·嵌入式·arm·指令
星恒随风10 小时前
Linux 基础指令(三):grep、压缩打包、系统信息与 Shell 运行原理
linux·笔记·学习
库玛西11 小时前
快速幂算法全景总结图:从“愚公移山”到“细胞分裂”
c语言·c++·笔记·算法