数学建模的常用知识python

一、规划问题

1、线性规划

  1. 定义:线性规划是研究线性约束条件下线性目标函数的极值问题的数学理论和方法。
  2. 步骤:
  • 根据影响所要达到目的的因素找到决策变量。
  • 由决策变量和所在达到目的之间的函数关系确定目标函数。
  • 由决策变量所受的限制条件确定决策变量所要满足的约束条件。
  1. 特点:目标函数是决策变量的线性函数。根据具体问题可以是最大化或最小化,二者统称为最优化。约束条件也是决策变量的线性函数。
from scipy import optimize
import numpy as np
'''
max z = 2x + 3y - 5z

x + y + z = 7
2x - 5y + z >= 10
x + 3y + z <= 12
x , y , z > 0
'''

c = np.array([2, 3, -5])
A = np.array([[-2, 5, -1], [1, 3, 1]])
B = np.array([-10, 12])
Aeq = np.array([[1, 1, 1]])
beq = np.array([7])

# 求最小要在c前面加一个负号
res = optimize.linprog(-c, A, B, Aeq, beq)
print(res)
'''
con: array([1.807134e-09])
fun: -14.571428565645057
message: 'Optimization terminated successfully.'
nit: 5
slack: array([-2.24586572e-10,  3.85714286e+00])
status: 0
return ufunc.reduce(obj, axis, dtype, out, **passkwargs)
success: True
x: array([6.42857143e+00, 5.71428571e-01, 2.35900788e-10])
'''

2、整数规划

  1. 定义:整数规划是指规划中的变量(全部或部分)限制为整数,若在线性模型中,变量限制为整数,则称为整数线性规划。目前所流行的求解整数规划的方法往往只适用于整数线性规划。
  2. 分类:在整数规划中,如果所有变量都限制为整数,则称为纯整数规划;如果仅一部分限制为整数,则称为混合整数规划。整数规划的一种特殊情形是0-1规划,它的变数仅限于0或1。
  3. 0-1规z划:问题中许多量具有不可分割的性质(最优调度的车辆数、设置的销售网点数…),或者问题的解必须满足一些特殊的约束条件(满足逻辑条件、顺序…),需引入逻辑变量(0-1变量)以表示“是”与“非”。这类问题的模型均为整数规划。
#导入numpy
import numpy as np
#导入numpy
import cvxpy as cp

#设置目标函数中变量个数
n=3

#输入目标函数的系数
c=np.array([3,1,3])

#输入约束条件的系数矩阵(3×3)
a=np.array([[-1,2,1],[0,4,-3],[1,-3,2]])

#输入b值(3×1)
b=np.array([4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值