运筹优化2-线性规划算法及应用(python之pymprog)

这货很强大, 必须掌握。

1.线性规划算法简介(非常简洁)

线性规划(Linear programming,简称LP),大致的定义我总结为在线性的目标和约束中,找出一个最优解

线性规划是运筹学中研究较早、发展较快、应用广泛、方法较成熟的一个重要分支,它是辅助人们进行科学管理的一种数学方法。研究线性约束条件下线性目标函数的极值问题的数学理论和方法。在企业的各项管理活动中,例如计划、生产、运输、技术等问题,线性规划是指从各种限制条件的组合中,选择出最为合理的计算方法,建立线性规划模型从而求得最佳结果。

线性规划步骤:

(1)列出约束条件及目标函数

(2)画出约束条件所表示的可行域

(3)在可行域内求目标函数的最优解及最优值

常用求解方法:

单纯形法(细节略)。

2.python实现(引用)

废话少说,上代码。

例题:已知约束:

x <= 3

y <= 4

x + y <= 5

x >=0, y >=0

求最大化:maximize 15 x + 10 y

python代码:

from pymprog import *

begin(‘selfDefine’)

x, y = var(‘x, y’) # variables

maximize(15 * x + 10 * y, ‘maxValue’)

x <= 3

y <= 4

x + y <= 5

solve()

print(‘最大值:’,vobj())

print(‘x=’,x.primal,’y=’,y.primal)

3.python其他线性规划包

gurobipy、cplex、pulp、scipy.optimize. linprog等,这里就不介绍了,下篇上线性规划算法在工程应用的实例。

感兴趣的朋友,关注做个交流。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月5日
下一篇 2022年1月5日

相关推荐