接上博客问题http://www.cnblogs.com/shizhenqiang/p/8274806.html

# coding=utf-8

from scipy import optimize
import numpy as np def get(): ar = [160, 130, 220, 170, 140, 130, 190, 150, 190, 200, 230]
fun = lambda x:(x[0]*ar[0]+x[1]*ar[1]+x[2]*ar[2]+x[3]*ar[3]+x[4]*ar[4]+ x[5]*ar[5]+x[6]*ar[6]+ x[7]*ar[7]+ x[8]*ar[8]+x[9]*ar[9]+x[10]*ar[10]) return fun def con():
# Equality constraint means that the constraint function result is to be zero whereas inequality means that it is to be non-negative
x1min, x2min, x3min, x4min,x5min ,x6min,x7min,x8min,x9min,x10min,x11min = [50, 60, 50, 30, 70, 10, 10, 80, 140,30,50]
cons = ({'type': 'eq', 'fun': lambda x: x[0] + x[1] + x[2] + x[3] - x1min},\
{'type': 'eq', 'fun': lambda x: x[4] + x[5] + x[6] + x[7] - x2min},\
{'type': 'eq', 'fun': lambda x: x[8] + x[9] + x[10] - x3min},\
{'type': 'ineq', 'fun': lambda x: x[0]+x[4]+x[8] - x4min},\
{'type': 'ineq', 'fun': lambda x: x[1] + x[5] + x[9] - x5min},\
{'type': 'ineq', 'fun': lambda x: x[2] + x[6] + x[10] - x6min}, \
{'type': 'ineq', 'fun': lambda x: x[3] + x[7] - x7min}, \
{'type': 'ineq', 'fun': lambda x: -(x[0] + x[4] + x[8] - x8min)}, \
{'type': 'ineq', 'fun': lambda x: -(x[1] + x[5] + x[9] - x9min)}, \
{'type': 'ineq', 'fun': lambda x: -(x[2] + x[6] + x[10] - x10min)}, \
{'type': 'ineq', 'fun': lambda x: -(x[3] + x[7] - x11min)}, \
)
return cons if __name__ == "__main__":
#args = (2, 3, 7, 8, 9, 10, 2, 2) #a, b, c, d, e, f,g,h #args = (0, 0,0, 0,0, 0, 0, 0) #a, b, c, d, e, f,g,h
#args1 = (-1000, 1000, -1000, 1000) #x1min, x1max, x2min, x2max
x0 = np.asarray((0, 0,0,0,0,0,0,0,0,0,0))
fun = get()
cons = con()
bnds = ((0, None), (0, None),(0, None), (0, None),(0, None), (0, None),(0, None), (0, None),(0, None), (0, None),(0, None))
res = optimize.minimize(fun, x0, method='CG', bounds=bnds,constraints=cons)
#print(res)
print(res.fun)
print(res.success)
print(res.x)

scipy.optimize.minimize 解决实际问题的更多相关文章

  1. 非线性规划带约束-scipy.optimize.minimize

    # coding=utf-8 from scipy import optimize import numpy as np def get(args): a, b, c, d, e, f, g, h = ...

  2. Scipy优化算法--scipy.optimize.fmin_tnc()/minimize()

    scipy中的optimize子包中提供了常用的最优化算法函数实现,我们可以直接调用这些函数完成我们的优化问题. scipy.optimize包提供了几种常用的优化算法. 该模块包含以下几个方面 使用 ...

  3. Scipy教程 - 优化和拟合库scipy.optimize

    http://blog.csdn.net/pipisorry/article/details/51106570 最优化函数库Optimization 优化是找到最小值或等式的数值解的问题.scipy. ...

  4. 探索Windows命令行系列(6):活用批处理解决实际问题

    1.批量修改文件名 2.批量重启服务 3.全盘搜索指定文件 3.1.全盘搜索名称为 mm.jpg 的文件,获取其全路径 3.2.查找系统中所有名称以 .docx 结尾的文件 4.调用可执行程序 4.1 ...

  5. 使用python scipy.optimize linprog和lingo线性规划求解最大值,最小值(运筹学学习笔记)

    1.线性规划模型: 2.使用python scipy.optimize linprog求解模型最优解: 在这里我们用到scipy中的linprog进行求解,linprog的用法见https://doc ...

  6. 运用《深入理解Java虚拟机》书中知识解决实际问题

    前言 以前看别人博客说看完<深入理解Java虚拟机>这本书并没有让自己的编程水平提高多少,不过却大大提高了自己的装逼水平.其实,我倒不这么认为,至少在我看完一遍这本书后,有一种醍醐灌顶的感 ...

  7. iOS正则表达式解决实际问题

    问题:上海市徐汇区桂林路158号1202室 字符串长度不固定,数字长度也不固定.截取第二组数字. 方法一:[正则表达式] NSString * str = @"上海市徐汇区桂林路158号12 ...

  8. Matlib’s lsqnonlin 和 scipy.optimize’s least_square

    matlib's lsqnonlin 和 scipy.optimize's least_square 问题 有三个点 $A,B,C$ , 经过一个线性变换 $T$ , 变为了 $A',B',C'$ 三 ...

  9. 安装Scipy出错的解决方法

    lapack_opt_info: lapack_mkl_info: libraries mkl_rt not found in ['c:\\python27\\lib', 'C:\\', 'c:\\p ...

随机推荐

  1. mysql创建远程登陆用户并授权

    在创建安装微擎的过程中,针对第四步 创建远程登陆用户并授权        > grant all PRIVILEGES on database.* to root@'127.0.0.1'  id ...

  2. .net随笔--不好归类的

    1..cs .Designer.cs .resx三种文件 cs是类文件,不介绍了.Designer.cs是visual studio对cs类文件的自动生成代码的一种补充,在编辑器里用视图的方式对win ...

  3. 记录一次APP的转让流程

    由于业务需要,需要将开发的App从一个账号(A账号)转移到另一个账号(B账号),这里简单介绍一下转让流程.主要包括两大步骤: 转让方(A账号)提出转让申请 接收方(B账号)接受转让App 如果不想看这 ...

  4. 【二分图】ZJOI2007小Q的游戏

    660. [ZJOI2007] 小Q的矩阵游戏 ★☆   输入文件:qmatrix.in   输出文件:qmatrix.out   简单对比 时间限制:1 s   内存限制:128 MB [问题描述] ...

  5. 驱动开发入门——NTModel

    上一篇博文中主要说明了驱动开发中基本的数据类型,认识这些数据类型算是驱动开发中的入门吧,这次主要说明驱动开发中最基本的模型--NTModel.介绍这个模型首先要了解R3层是如何通过应用层API进入到内 ...

  6. MySQL多Text字段报8126错误(解决过程)

    一.背景 我们的MySQL数据库有一张10个Text的字段的表,还包括几个char和varchar字段,由于业务需求,我在表中加多一个Text字段的时候,插入记录的出现了下面的错误: Row size ...

  7. HyperLedger Fabric基于zookeeper和kafka集群配置解析

    简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)--Fabric多节点集群 ...

  8. Memory Map

    计算机最重要的功能单元之一是Memory.Memory是众多存储单元的集合,为了使CPU准确地找到存储有某个信息的存储单元,必须为这些单元分配一个相互区别的“身份证号”,这个“身份证号”就是地址编码. ...

  9. 【转】Nginx SSL_PROTOCOL_ERROR 问题

    转自:https://maoxian.de/2017/12/1471.html 这两天在检查一台 Nginx 配置的时候,遇到了一个极端诡异的问题.一段很通用的配置,配在这个服务器上,就会 100% ...

  10. vue-cli完整地引入element-ui

    1因为该组件会依赖于jQuery,所以先安装jQuery所需依赖: 进入npm控制台,输入指令: cnpm install jquery --save-dev 然后在入口文件main.js中引入: i ...