Pi Hybrids问题

清华大学肖秀波梁湧老师翻译的Rardin教授的《运筹学》[1]已于今年年中出版,感谢机械工业出版社张有利老师的推荐和赠书,让我能看到如此完美的千页级宏篇译著。该书的翻译质量非常高,书中内容深入浅出,附有大量的应用案例(Application)和练习题库。尤其让人欣喜的是该著作能与计算实践密切结合,凡有计算机图案标记的练习都是与计算和软件应用相关的,彰显了运筹学的应用数学本质。有鉴于此,笔者计划对该书中的问题进行大量实践,争取达到双位数的规模。

Pi Hybrids问题

Pi Hybrids问题,见原书第二章,案例2-2(Pi Hybrids, Page 33,37,56-58)。

Pi Hybrids问题是一个叠加了生产问题的运输问题,是一个包含了三脚标标引变量的模型,该著作在一开始就介入如此有一定深度的模型展现了作者应用导向的理念。

+Leapms生成的模型摘录

对任何问题,+Leapms都建议直接用+Leapms建模语言直接写出模型,并进行模型调试。

当模型调试完毕,对模型的正确性有充分的信心后,+Leapms系统可生成模型摘录,包括数学概念模型(即使用标引符号表示的数学模型)和+Leapms源码供交流使用。

我们的经验是,模型调试能够发现模型的不足、促进建模的完美性,甚至可以促进对问题的更加深入的了解。

以下是问题的+Leapms模型摘录(pdf屏幕截图):

+Leapms模型求解结果

+Leapms>load
Current directory is "ROOT".
.........
RLX2-.leap
.........
please input the filename:RLX2-
================================================================
: //Rardin R. L 著,肖勇波、梁湧译. 运筹学. 北京:机械工业出版社,2018
: //Rardin-Liang&Xiao:案例2-2(Pi Hybrids, Page 33,37,56-58)
:
: min sum{f=,..,l;h=,..,m}p[f][h]x[f][h]+ -->
: sum{f=,..,l;h=,..,m;r=,..,n}s[f][h][r]y[f][h][r]
: s.t.
: sum{h=,..,m}a[h]x[f][h]<=u[f] | f=,..,l
: sum{f=,..,l}y[f][h][r]=d[h][r]| h=,..,m;r=,..,n
: sum{r=,..,n}y[f][h][r]=x[f][h]| f=,..,l;h=,..,m
: where
: l,m,n are integers
: a[h] is a number|h=,..,m
: u[f] is a number|f=,..,l
: p[f][h] is a number|f=,..,l;h=,..,m
: d[h][r] is a number|h=,...,m;r=,...,n
: s[f][h][r] is a number|f=,..,l;h=,..,m;r=,..,n
: x[f][h] is a variable of nonnegative number-->
: |f=,..,l;h=,..,m
: y[f][h][r] is a variable of nonnegative number-->
: |f=,..,l;h=,..,m;r=,..,n
: data
: l=
: m=
: n=
: u={ } // corn processing capacity of facility f
: a={ } // number of corn to obtain a hybrid h
: p={
: 1.10 0.89 2.05 1.45
: 1.55 1.13 2.15 1.56
: 0.95 0.83 1.80 1.22
: }
: d={ //number of hybrid h demanded in region r
:
:
:
:
: }
: s={ //cost of shipping hybrid h from facility f to region r
: 0.89 0.91 0.77
: 1.00 0.84 0.89
: 0.77 0.76 0.78
: 0.99 1.03 0.85
:
: 0.92 0.89 0.92
: 0.87 0.95 0.90
: 0.91 0.83 0.77
: 0.89 0.79 0.86
: }
:
================================================================
>>end of the file.
Parsing model:
1D
2R
3V
4O
5C
6S
7End.
..................................
number of variables=
number of constraints=
..................................
+Leapms>solve
The LP is solved to optimal.
找到线性规划最优解.非零变量值和最优目标值如下:
.........
x1_1*=
x1_2*=
x1_3*=
x1_4*=93.7222
x2_4*=736.278
y1_1_1*=
y1_1_2*=
y1_1_3*=
y1_2_1*=
y1_2_2*=
y1_2_3*=
y1_3_1*=
y1_3_2*=
y1_3_3*=
y1_4_3*=93.7222
y2_4_1*=
y2_4_2*=
y2_4_3*=346.278
.........
Objective*=7400.61
.........
+Leapms>

讨论

在原书中,Pi Hybrids问题是讲述标引模型(即对大规模模型中的变量和常量符号等实用脚标标引形式给出)的举例。+Leapms是一种以标引模型为主要表达方式的语言。

另外,在英文原版书中,参数数据可能有误,导致生产能力不足以满足市场需求,此处把生产能力参数 u 从英文原书中的{2200 2555}更改为{22000 25550}。

参考文献

[1] Rardin R. L 著,肖勇波、梁湧译. 运筹学. 北京:机械工业出版社,2018

Pi Hybrids问题的更多相关文章

  1. Raspberry Pi(树莓派)上安装Raspbian(无路由器,无显示器)

    一. 准备工作 1. 树莓派主板 型号:树莓派3 B型 处理器:四核64位ARM Cortex-A53 CPU 内核架构:ARMv8 2. 一张大于8G的TF卡(本人用的是32G的,也作为PiLFS用 ...

  2. 让Mono 4在Raspberry Pi上飞

    最近公司有项目想要在树莓派上做,代替原来的工控机(我们是把工控主机当作小的主机用,一台小的工控主机最少也要600左右,而树莓派只要200多).于是,公司买了一个Raspberry Pi B+和一个Ra ...

  3. Kali v2.1.2 for Raspberry Pi 3B

    最新的下载地址是: https://www.offensive-security.com/kali-linux-arm-images/ 按照官网的说法是找不到树莓派版本的SHA1SUM和SHA1SUM ...

  4. A new comer playing with Raspberry Pi 3B

    there are some things to do for raspberry pi 3b for the first time: 1, connect pi with monitor/KB/mo ...

  5. Windows Iot:让Raspberry Pi跑起来(1)

    首先请大家原谅我的"不务正业",放着RabbitHub不写,各种系列的文章不写搞什么Iot,哈哈,最近心血来潮想搞个速度极快的遥控车玩,望着在角落的Raspberry Pi恶狠狠的 ...

  6. 【转】【Raspberry Pi】Unix NetWork Programming:配置unp.h头文件环境

    一.初衷 近期正在做网络计算编程的作业.要求平台为unix/linux,想着Raspberry Pi装的Debian系统也是Linux改的,也应该能够勉强用着,所以就用它来做作业了! 二.说明 先把环 ...

  7. 【Raspberry Pi】新入手的Raspberry Pi3拼装日志

    一.概述 2016年暑假某宝入手Raspberry Pi 3,装机清单: 树莓派主板 亚克力外壳 小风扇 散热片 30G SD card 螺丝若干颗 因机型问题,可能与你的机器有微小差异 二.装机过程 ...

  8. orange pi pc 体验(一)

    最近在淘宝上看到一款和树莓派差不多的卡片机,定价才99元,而且是国产的,忍不住入手了一个,就是orange pi 感兴趣的可以百度搜索下,深圳一个公司出的,不过资料比树莓派少了很多,论坛中人也没多少, ...

  9. 【树莓派】【转】将树莓派Raspberry Pi设置为无线路由器(WiFi热点AP,RTL8188CUS芯片)

    下文为转载,文章转自:http://wangye.org/blog/archives/845/,仅供本次学习实践参考. 最近又开始折腾起Raspberry Pi来了,因为某处上网需要锐捷拨号,于是我就 ...

随机推荐

  1. 数字证书中读取PublicKey

    1. 读取https签发证书中的key 1) 在下面的代码中,是实现读取证书字符串来读取key的,CERTIFICATE 就是一个证书的字符串, 而方法cf.generateCertificate() ...

  2. 设计模式-策略模式(strategy pattern)

    来说说设计模式吧,最近开始看设计模式,觉得挺有意思的.设计模式网上的资料的挺多的,而且大部分是大家相互转来转去的.感觉也挺没有意思.我就自己写一点吧! 开始 学习设计模式,我会用自己的画的UML类图来 ...

  3. 微服务架构 - 搭建docker本地镜像仓库并提供权限校验及UI界面

    搭建docker本地镜像仓库并提供权限校验及UI界面 docker本地镜像仓库的作用跟maven私服差不多,特别是公司级或者是小组级开发好的docker仓库可以上传到本地镜像仓库中,需要用时,直接从本 ...

  4. c#Socket服务器与客户端的开发(1)

    上个项目中用到了Socket通讯,项目中直接借助SuperSocket实现,但是我觉得这毕竟是一个我没接触过的东西,所以也顺便学习了一下原生socket的使用,做了一个socket服务器与客户端的开发 ...

  5. 1. CMake 系列 - 从零构建动态库和静态库

    目录 1. 文件目录结构 2. 库文件源代码 3. 编译生成库文件 1. 文件目录结构 首先创建如下目录结构: └── lib ├── build # ├── CMakeLists.txt └── s ...

  6. 【HADOOP】| 环境搭建:从零开始搭建hadoop大数据平台(单机/伪分布式)-下

    因篇幅过长,故分为两节,上节主要说明hadoop运行环境和必须的基础软件,包括VMware虚拟机软件的说明安装.Xmanager5管理软件以及CentOS操作系统的安装和基本网络配置.具体请参看: [ ...

  7. 依赖注入容器-- Autofac

    目录: 一.简介 二.如何使用 2.1.基本使用 2.2.接口使用 2.3. 其他注入 2.4. 注入的生命周期 一.简介 在上一篇文章中讲到替换默认服务容器,我们选择了Autofac Autofac ...

  8. 分布式日志框架Exceptionless之生产环境部署步骤

    Exceptionless 是一个开源的实时的日志收集框架,它将日志收集变得简单易用并且不需要了解太多的相关技术细节及配置.本篇基于我的上一篇<基于Exceptionless实现分布式日志> ...

  9. [区块链] 密码学——Merkle 树

    在计算机领域,Merkle树大多用来进行完整性验证处理.在处理完整性验证的应用场景中,特别是在分布式环境下进行这样的验证时,Merkle树会大大减少数据的传输量以及计算的复杂度. Merkle哈希树是 ...

  10. 深入理解令牌认证机制(token)

    以前的开发模式是以MVC为主,但是随着互联网行业快速的发展逐渐的演变成了前后端分离,若项目中需要做登录的话,那么token成为前后端唯一的一个凭证. token即标志.记号的意思,在IT领域也叫作令牌 ...