一个简单的线性规划问题,使用Matlab的linprog解决
假定有n种煤,各种煤的配比为x1,x2,x3,……
首先需要满足下列两个约束条件,
即 x1+x2+x3……+xn=1
x1≥0, x2≥0,x3≥0,……,xn≥0
煤种 全水分 空干基水分 收到基灰分 收到基低位发热值
1 33.6 15.43 19.07 2958
2 13.4 2.58 43.49 3860
3 17.5 2.84 23.35 4400
4 13.7 4.27 24.37 4486
5 11.2 2.72 36.05 3879
6 8.7 2.57 36.41 3939
约束条件:
全水分<=15
空干基水分<=4
收到基灰分<=30
3850<=低位热值<=4300
问:x1,x2,x3,……如何分配
%目标函数为x1+2*x2+3*x3+4*x4+5*x5+6*x6 ,求其最小值
%目标函数
f=[1 2 3 4 5 6]';
%不等式约束
A= [0.0336 0.0134 0.0175 0.0137 0.0112 0.0087 0.0154 0.0026 0.0028 0.0043 0.0027 0.0026 0.0191 0.0435 0.0234 0.0244 0.0360 0.0364 2.9580 3.8600 4.4000 4.4860 3.8790 3.9390 -2.9580 -3.8600 -4.4000 -4.4860 -3.8790 -3.9390]*1e3;
b=[15 4 30 4300 -3850]';
%边界
lb=zeros(6,1);
%等式约束
Aeq=[1 1 1 1 1 1];
beq=1;
%调用linprog函数
x=linprog(f,A,b,Aeq,beq,lb) 运行结果如下: Optimization terminated.
x =
0.0000 0.3124 0.3668 0.3208 0.0000 0.0000

Matlab的linprog解决简单线性规划问题的更多相关文章

  1. (C#)使用队列(Queue)解决简单的并发问题

    (C#)使用队列(Queue)解决简单的并发问题 2015-07-16 13:04 13265人阅读 评论(8) 收藏 举报  分类: Asp.Net(8)  版权声明:本文为博主原创文章,未经博主允 ...

  2. Ubuntu 16.04 LTS 下安装MATLAB2015b 以及Matlab system error解决办法

    下载MATLAB2015b破解版 操作系统:Ubuntu 16.o4 LTS 程序文件:Matlab2015b-glnxa64破解版 解压提取文件:在ubuntu系统下可以直接提取压缩文件,得到三个文 ...

  3. ROS与Matlab系列:一个简单的运动控制

    ROS与Matlab系列:一个简单的运动控制 转自:http://blog.exbot.net/archives/2594 Matlab拥有强大的数据处理.可视化绘图能力以及众多成熟的算法函数,非常适 ...

  4. matlab学习笔记之求解线性规划问题和二次型问题

    一.线性规划问题 已知目标函数和约束条件均为线性函数,求目标函数的最小值(最优值)问题. 1.求解方式:用linprog函数求解 2.linprog函数使用形式: x=linprog(f,A,b)  ...

  5. Linux下Matlab崩溃的解决方法

    猜想主要是因为图形显示用了OpenGL加速造成不稳定. 我的运行环境是: Ubuntu 10.04 LTS 64bit Matlab R2010b 解决方法是启动时用: $MATLAB_DIR/bin ...

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

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

  7. 小小知识点(四)——MATLAB如何画等高线图和线性规划约束方程

    MATLAB程序: figure contourf(x,y,data) % 画等高线 hold on plot(x,y(x)) %画线性规划约束方程1 hold on plot(y,x(y)) %画线 ...

  8. matlab cvx工具箱解决线性优化问题

    题目来源:数学建模算法与应用第二版(司守奎)第一章习题1.4 题目说明 作者在答案中已经说明,求解上述线性规划模型时,尽量用Lingo软件,如果使用Matlab软件求解,需要做变量替换,把二维决策变量 ...

  9. Matlab梯度下降解决评分矩阵分解

    for iter = 1:num_iters %梯度下降 用户向量 for i = 1:m %返回有0有1 是逻辑值 ratedIndex1 = R_training(i,:)~=0 ; %U(i,: ...

随机推荐

  1. MySQL学习笔记:新增一列

    1.在一个已建好的表中,最后一列位置添加一列,可使用: ALTER TABLE aa_numbers_small ADD COLUMN date_time DATE NOT NULL; 2.添加一列到 ...

  2. 15 链表中倒数第k个结点

    输入一个链表,输出该链表中倒数第k个结点. p1先走k-1步,p1 p2再一起走 C++: /* struct ListNode { int val; struct ListNode *next; L ...

  3. day1作业二:多级菜单操作

    作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入back返回上一层,输入quit退出整个程序 思路: (1)首先定义好三级菜单字典: (2)提 ...

  4. linux 101 hacks 4stat diff ac

    stat 命令 stat 命令那个可以用来查看文件或者文件系统的状态和属性.显示一个文件或目录的属性 $ stat /etc/my.cnf File: `/etc/my.cnf' Size: Bloc ...

  5. STL容器读书笔记

    vector vector维护的是一个连续线性空间 vector是动态空间,随着元素的加入会自动扩容,扩充至当前size的两倍,然后将原内容拷贝,开始在原内容之后构造新元素,并释放空间 vector提 ...

  6. 分享实用的JavaScript代码库

    1 var keyCodeMap = { 2 8: 'Backspace', 3 9: 'Tab', 4 13: 'Enter', 5 16: 'Shift', 6 17: 'Ctrl', 7 18: ...

  7. php实现微信分享朋友圈

    class JSSDK {  private $appId;  private $appSecret; public function __construct($appId, $appSecret) ...

  8. [CodeForces - 848B] Rooter's Song 思维 找规律

    大致题意: 有一个W*H的长方形,有n个人,分别站在X轴或Y轴,并沿直线向对面走,第i个人在ti的时刻出发,如果第i个人与第j个人相撞了 那么则交换两个人的运动方向,直到走到长方形边界停止,问最后每个 ...

  9. 洛谷P3265 [JLOI2015]装备购买 [线性基]

    题目传送门 装备购买 格式难调,题面就不放了. 分析: 一句话,有$n$件物品,每件物品有$m$个属性和一个花费值,如果一个装备的属性值可以由其他装备的属性值改变系数后组合得到那就不买,求购买最多装备 ...

  10. 【基础知识】JavaScript基础

    [学习日记]JavaScript基础 1,一般写在<head></head>中(其实可以放到任意位置); 2,弹出对话框 <scripttype="text/j ...