用Matlab与Lindo求解线性规划
用MATLAB优化工具箱解线性规划

用MATLAB优化工具箱解线性规划线性规划是运筹学中的一个研究对象,它通常是以线性方程组的形式来描述数学模型,极大(或极小)化线性函数,同时满足一定的线性限制条件。
而MATLAB是一种十分流行的数学计算软件,其优化工具箱提供了一些功能强大的优化算法,可以用来解决一些复杂的优化问题,包括线性规划问题。
一、线性规划问题的定义线性规划问题的一般形式可以描述为:$min/max$ $c^Tx$$subject$ $to$:$Ax \le b$$x \ge 0$其中,$c^Tx$是一个线性函数,称为线性目标函数,$A$是一个$m\times n$的系数矩阵,$b$是一个$m\times1$的列向量,$x$是一个$n\times1$的列向量,是待求解的变量,我们称之为决策变量。
$x_j$表示变量$x$的第$j$个分量,$m$和$n$分别是限制条件数目和变量数目。
$Ax \le b$是一个线性等式系统,约束了$x$的取值范围,$x \ge0$要求$x$的分量非负,这被称为非负约束条件。
二、使用MATLAB函数求解线性规划问题MATLAB中的优化工具箱提供了一些函数,可以用来求解线性规划问题,其中最常用的函数是“linprog”。
linprog函数是求解线性规划问题的标准函数,在使用之前需要做一些准备工作:(1)确定目标函数和约束条件:目标函数和约束条件应该以线性方程组的形式表达。
(2)将方程组转换为标准形式:标准形式是指将约束条件转换为$Ax \le b$的形式,且决策变量的非负约束被包含在这个矩阵中。
(3)定义参数:包括目标函数和约束条件中的系数矩阵和向量。
(4)运行函数:使用linprog函数求解。
下面是linprog函数的语法格式:[x,fval,exitflag,output,lambda]=linprog(f,A,b,Aeq,beq,lb,ub,x 0,options)linprog函数的参数解释如下:(1)f:目标函数的系数向量。
15.利用Matlab优化工具linprog求解线性规划问题

§15. 利用Matlab求解线性规划问题线性规划是一种优化方法,Matlab优化工具箱中有现成函数linprog对如下式描述的LP问题求解:% min f'x% s.t .(约束条件):Ax<=b% (等式约束条件):Aeqx=beq% lb<=x<=ublinprog函数的调用格式如下:x=linprog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,x0)x=linprog(f,A,b,Aeq,beq,lb,ub,x0,options)[x,fval]=linprog(…)[x, fval, exitflag]=linprog(…)[x, fval, exitflag, output]=linprog(…)[x, fval, exitflag, output, lambda]=linprog(…)其中:x=linprog(f,A,b)返回值x为最优解向量。
x=linprog(f,A,b,Aeq,beq) 作有等式约束的问题。
若没有不等式约束,则令111A=[ ]、b=[ ] 。
x=linprog(f,A,b,Aeq,beq,lb,ub,x0,options) 中lb ,ub为变量x的下界和上界,x0为初值点,options为指定优化参数进行最小化。
Options的参数描述:Display显示水平。
选择’off’ 不显示输出;选择’I ter’显示每一步迭代过程的输出;选择’final’ 显示最终结果。
MaxFunEvals 函数评价的最大允许次数Maxiter 最大允许迭代次数TolX x处的终止容限[x,fval]=linprog(…) 左端fval 返回解x处的目标函数值。
[x,fval,exitflag,output,lambda]=linprog(f,A,b, Aeq,beq,lb,ub,x0) 的输出部分:exitflag描述函数计算的退出条件:若为正值,表示目标函数收敛于解x 处;若为负值,表示目标函数不收敛;若为零值,表示已经达到函数评价或迭代的最大次数。
用MATLAB解线性规划

用MATLAB 优化工具箱解线性规划命令:x=linprog (c ,A ,b )2、模型:beqAeqX b AX ..min =≤=t s cX z命令:x=linprog (c ,A ,b ,Aeq,beq )注意:若没有不等式:b AX ≤存在,则令A=[ ],b=[ ]. 若没有等式约束, 则令Aeq=[ ], beq=[ ]. 3、模型:VUBX VLB beq AeqX b AX ..min ≤≤=≤=t s cX z命令:[1] x=linprog (c ,A ,b ,Aeq,beq, VLB ,VUB )[2] x=linprog (c ,A ,b ,Aeq,beq, VLB ,VUB, X0)注意:[1] 若没有等式约束, 则令Aeq=[ ], beq=[ ]. [2]其中X0表示初始点 4、命令:[x,fval]=linprog(…)返回最优解x及x处的目标函数值fval.例1 max 6543216.064.072.032.028.04.0x x x x x x z +++++= 85003.003.003.001.001.001.0..654321≤+++++x x x x x x t s70005.002.041≤+x x 10005.002.052≤+x x 90008.003.063≤+x x 6,2,10=≥j x j解 编写M 文件小xxgh1.m 如下: c=[-0.4 -0.28 -0.32 -0.72 -0.64 -0.6];A=[0.01 0.01 0.01 0.03 0.03 0.03;0.02 0 0 0.05 0 0;0 0.02 0 0 0.05 0;0 0 0.03 0 0 0.08]; b=[850;700;100;900]; Aeq=[]; beq=[];vlb=[0;0;0;0;0;0]; vub=[];[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub)min z=cXb AX t s≤..1、模型:例2 321436m in x x x z ++= 120..321=++x x x t s301≥x 5002≤≤x 203≥x解: 编写M 文件xxgh2.m 如下: c=[6 3 4]; A=[0 1 0]; b=[50];Aeq=[1 1 1]; beq=[120]; vlb=[30,0,20];vub=[];[x,fval]=linprog(c,A,b,Aeq,beq,vlb,vub例3 (任务分配问题)某车间有甲、乙两台机床,可用于加工三种工件。
Matlab求解线性规划和整数规划问题

Matlab求解线性规划和整数规划问题Matlab是一种强大的数值计算和科学计算软件,可以用于求解各种数学问题,包括线性规划和整数规划问题。
本文将详细介绍如何使用Matlab来求解线性规划和整数规划问题。
一、线性规划问题的求解线性规划是一种优化问题,旨在找到一组变量的最佳值,以使线性目标函数在一组线性约束条件下最大或者最小化。
下面以一个简单的线性规划问题为例来说明如何使用Matlab求解。
假设有以下线性规划问题:最大化目标函数:Z = 3x + 5y约束条件:2x + y ≤ 10x + 3y ≤ 15x, y ≥ 01. 创建线性规划模型在Matlab中,可以使用linprog函数来创建线性规划模型。
首先,定义目标函数的系数向量c和不等式约束条件的系数矩阵A以及不等式约束条件的右侧常数向量b。
c = [-3; -5];A = [2, 1; 1, 3];b = [10; 15];2. 求解线性规划问题然后,使用linprog函数求解线性规划问题。
该函数的输入参数为目标函数的系数向量c、不等式约束条件的系数矩阵A、不等式约束条件的右侧常数向量b以及变量的下界和上界。
lb = [0; 0];ub = [];[x, fval, exitflag] = linprog(c, A, b, [], [], lb, ub);其中,x是最优解向量,fval是最优解对应的目标函数值,exitflag是求解器的退出标志。
3. 结果分析最后,打印出最优解向量x和最优解对应的目标函数值fval。
disp('最优解向量x:');disp(x);disp('最优解对应的目标函数值fval:');disp(fval);二、整数规划问题的求解整数规划是一种优化问题,与线性规划类似,但是变量的取值限制为整数。
Matlab提供了intlinprog函数来求解整数规划问题。
下面以一个简单的整数规划问题为例来说明如何使用Matlab求解。
Matlab求解线性规划和整数规划问题

Matlab求解线性规划和整数规划问题Matlab是一种强大的数学计算工具,可以用于求解线性规划和整数规划问题。
本文将详细介绍如何使用Matlab来求解这两类问题。
一、线性规划问题的求解方法线性规划问题是一类常见的数学优化问题,其目标是在一组线性约束条件下,找到使目标函数取得最大(或者最小)值的变量取值。
以下是求解线性规划问题的普通步骤:1. 定义目标函数和约束条件首先,需要明确线性规划问题的目标函数和约束条件。
目标函数是需要最大化或者最小化的函数,通常是一个线性函数。
约束条件是对变量的一组线性不等式或者等式限制。
例如,假设我们要最大化目标函数 f(x) = 3x1 + 4x2,同时满足以下约束条件:2x1 + x2 ≤ 10x1 + 3x2 ≤ 12x1, x2 ≥ 02. 构建模型将目标函数和约束条件转化为Matlab中的矩阵和向量形式。
可以使用矩阵A 表示约束条件的系数矩阵,向量b表示约束条件的右侧常数向量,向量c表示目标函数的系数向量。
在上述例子中,可以定义矩阵A、向量b和向量c如下:A = [2, 1; 1, 3]b = [10; 12]c = [-3; -4]3. 求解线性规划问题使用Matlab的线性规划求解函数linprog来求解线性规划问题。
该函数的基本语法如下:[x, fval, exitflag] = linprog(c, A, b)其中,x是最优解向量,fval是最优解的目标函数值,exitflag是求解器的退出标志。
继续以上述例子为例,可以使用以下代码求解线性规划问题:[x, fval, exitflag] = linprog(c, A, b)4. 结果解读最优解向量x即为线性规划问题的最优解。
最优解的目标函数值fval表示在最优解下目标函数的取值。
退出标志exitflag用于判断求解器是否成功找到最优解。
二、整数规划问题的求解方法整数规划问题是线性规划问题的一种扩展,其变量需要取整数值。
数学建模讲座之三--用MATLAB求解线性规划linprog函数

n
(r p ) x
i i i 0
i i
n
i
MINmax{ q ix i} 约束条件
(1 p ) x =M
i0
xi≥0
2019/2/13
i=0,1,…n
数学建模
4. 模型简化:
a. 在实际投资中,投资者承受风险的程度不一样,若给定 风险一个界限 a,使最大的一个风险 qixi/M≤a,可找到相 应的投资方案。 这样把多目标规划变成一个目标的线性规 划。 模型 1 固定风险水平,优化收益 Q=MAX ( ri pi ) xi
2019/2/13
数学建模
0
2019/2/13
数学建模
三、模型的建立与分析 1.总体风险用所投资的Si中最大的一个风险来衡量,即max{ qixi|i=1,2,…n}
2.购买 Si 所付交易费是一个分段函数,即 pixi xi>ui 交易费 = piui xi≤ui 而题目所给定的定值 u i(单位 :元)相对总投资 M 很小, piu i 更小, 可以忽略不计,这样购买 Si 的净收益为(ri-p i)x i
计算结果:
a = 0.0030 a = 0.0060 a = 0.0080 a = 0.0100 a = 0.0200 a = 0.0400 x = 0.4949 0.1200 0.2000 x=0 0.2400 0.4000 x = 0.0000 0.3200 0.5333 x=0 0.4000 0.5843 x=0 0.8000 0.1882 x = 0.0000 0.9901 0.0000 0.0545 0.1154 0.1091 0.2212 0.1271 0.0000 0 0 0 0 0 0 Q = 0.1266 Q = 0.2019 Q = 0.2112 Q =0.2190 Q =0.2518 Q =0.2673
Matlab求解线性规划和整数规划问题

Matlab求解线性规划和整数规划问题线性规划和整数规划是数学规划中常见的两种优化问题。
Matlab作为一种强大的数值计算软件,提供了丰富的工具和函数来解决这些问题。
本文将介绍如何使用Matlab求解线性规划和整数规划问题,并提供详细的步骤和示例代码。
一、线性规划问题的求解线性规划问题可以表示为如下形式的数学模型:```minimize c'*xsubject to A*x <= blb <= x <= ub```其中,c是目标函数的系数向量,x是决策变量向量,A是不等式约束矩阵,b 是不等式约束向量,lb和ub分别是决策变量的下界和上界。
Matlab中求解线性规划问题可以使用`linprog`函数。
下面是一个示例:```matlabc = [1; 2; 3]; % 目标函数的系数向量A = [1, -1, 2; 3, 1, 0]; % 不等式约束矩阵b = [4; 5]; % 不等式约束向量lb = zeros(3, 1); % 决策变量的下界ub = [Inf; Inf; 10]; % 决策变量的上界[x, fval] = linprog(c, A, b, [], [], lb, ub);```在上面的示例中,我们定义了目标函数的系数向量c,不等式约束矩阵A,不等式约束向量b,以及决策变量的下界lb和上界ub。
然后使用`linprog`函数求解线性规划问题,得到最优解x和最优目标函数值fval。
二、整数规划问题的求解整数规划问题是线性规划问题的一个扩展,要求决策变量取整数值。
Matlab中求解整数规划问题可以使用`intlinprog`函数。
下面是一个示例:```matlabc = [1; 2; 3]; % 目标函数的系数向量A = [1, -1, 2; 3, 1, 0]; % 不等式约束矩阵b = [4; 5]; % 不等式约束向量lb = zeros(3, 1); % 决策变量的下界ub = [Inf; Inf; 10]; % 决策变量的上界intcon = [1; 2]; % 决策变量的整数约束[x, fval] = intlinprog(c, intcon, A, b, [], [], lb, ub);```在上面的示例中,我们除了定义了线性规划问题的参数外,还定义了决策变量的整数约束intcon。
matlab线性规划

matlab线性规划线性规划(Linear Programming)是运筹学中的一种优化问题,指的是在一定的约束条件下,寻找一个线性函数的最优值。
该方法被广泛运用于经济学、管理学、工程学等各个领域。
在MATLAB中,我们可以使用线性规划工具箱来进行线性规划问题的求解。
在MATLAB中,线性规划问题可以通过函数linprog来求解。
linprog函数的一般形式如下:x = linprog(f, A, b, Aeq, beq, lb, ub)其中f是目标函数的系数矩阵,A和b是约束条件Ax ≤ b的系数矩阵和右侧向量,Aeq和beq是等式约束条件Aeqx = beq的系数矩阵和右侧向量,lb和ub是变量的下界和上界向量。
解x是一个n维向量,即最优解。
下面举一个简单的例子来说明如何使用MATLAB求解线性规划问题:假设我们有如下线性规划问题:最大化目标函数 f = [3, 4] * x约束条件为:A = [1, 1; 2, 1; -1, 2]b = [5; 8; 2]lb = [0; 0]ub = []我们可以使用linprog函数来求解:f = [-3, -4]; % 目标函数系数矩阵A = [1, 1; 2, 1; -1, 2]; % 不等式约束条件系数矩阵b = [5; 8; 2]; % 不等式约束条件右侧向量lb = [0; 0]; % 变量的下界向量ub = []; % 变量的上界向量x = linprog(f, A, b, [], [], lb, ub)最终得到的解x为[2; 3],即最优解为x1 = 2,x2 = 3,最优值为f(x) = 17。
通过MATLAB的线性规划工具箱,我们可以方便地求解各种线性规划问题。
无论是简单的二维问题还是更加复杂的高维问题,都可以通过MATLAB轻松求解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用Matlab与Lindo求解线性规划3田 维(德宏师范高等专科学校数学系,云南 潞西,678400)【摘 要】线性规划在科学决策与经营管理中实效明显,但是对于规模较大的线性规划模型,其求解过程非常烦琐,不易得出结果。
本文简要回顾了线性规划及其求解方法的发展历程,并在现有求解方法的基础上,结合上机实践,归纳整理出运用Matlab软件与Lindo软件实现快速求解线性规划模型的方法及步骤。
【关键词】线性规划;模型求解;Matlab软件;Lindo软件1 线性规划及其求解概述自从1938年由年仅26岁的苏联列宁格勒大学数学教授康托洛维奇提出线性规划后,40年代又由丹捷格(G1B1Dantzig)教授独立地在美国发现,并找到了一种计算线性规划模型的有效方法,也就是我们今天所说的“单纯形法”(Sim pex method)。
之后,在经济学家库普曼斯(T1C1K oopmans)的呼吁下,许多年轻一代的经济学家,比如其中的阿罗、萨谬尔逊、西蒙、多夫曼和胡尔威茨等都对线性规划表现出了极大的兴趣,并在运筹学的某些领域中发挥过重要作用,他们都因此而获得了诺贝尔奖金[1]。
1975年,康托洛维奇和库普曼斯也因“最优质资源配置理论的贡献”而获诺贝尔经济学奖,遗憾的是丹捷格却榜上无名[2]。
现在,在运筹学的众多分支学科中,线性规划已成为研究最为深入,实用效果也最为明显的一个分支。
想到线性规划在数十年间的快速发展和其惊人的实用效果,而促使康托洛维奇最初提出线性规划模型的却是当地胶合板制造厂所面临的一个看来似乎是微不足道的问题:如何替8台具有不同生产能力的车床制订工作程序表,以使5种胶合板的总产量达到最大限度[2]?这种现象真让人有种神秘之感,就象一代数学大师陈省身教授所说,“有数学经验和远见的人,能在大海航行下,达到重要的新的领域。
”[3]有了单纯形法以后,对于简单的线性规划模型来说,用相应的方法凭着一支笔和一张纸就能进行求解,但是对于规模较大的模型来说,这种办法就行不通了,虽然手工列表进行计算从原理上讲并不困难,但是却非常烦琐,单调而且容易出错。
从生产和管理以及科学研究中提出来的大量实际问题,其决策变量和约束条件多到十几个、几十个、几百个,甚至成千上万个,这些问题就不是人力所能及的了。
但是随着电子计算机的发展和介入,以及计算技术的不断提高,线性规划的应用范围也就日益扩大,解决了大量人们以前可望而不可及的一些实际问题和模型,使人们获得了巨大的经济效益。
正如1982年已年近七旬的丹捷格教授在第11届数学规划大会上所说,“给70个人分配70项不同的任务,共有70!种方案,是天文数学,要从中找出最优方案,即使用每秒能运算10亿次的大型计算机处理,也要从150年前开始直到太阳熄灭才会有结果。
如 作者简介:田维(1978— ),男,云南宣威人,德宏师范高等专科学校数学系助教。
3本文为德宏教育学院2004~2005年二级科研课题成果之一。
课题批准号:德教院字2005[26]号。
果用单纯形法的软件,在电子计算机上计算,只需要几秒钟便可得出结果。
”[4]由此可见数学软件和计算机在求解大规模线性规划问题上的重要性。
在1951年,国际水平只能求解约束条件为10个方程的线性规划问题,到了1963年,就能求解1000~10000个方程的线性规划问题;1956年,解一个67个方程的线性规划问题要1小时,而到1963年只需要28秒。
之后,在1984年,美国贝尔实验室的数学家卡玛卡把射影几何原理用于大规模线性规划问题的求解,取得重大突破,成功地用于美国电话电报公司改建太平洋沿岸20个国家的庞大电话网计划,求出了涉及412万个因素设计的最小投资数,曾引起轰动。
[4]而且由于电子计算机的普及,求解线性规划以及许许多多运筹学问题的软件包也应运而生,并走向市场,成为大型科研机构、厂矿企业、学校和普通用户都不可缺少的一种工具,Matlab和Lindo就是其中比较常用的两个软件包。
Matlab是一个通用数学软件包,除了可以用其中的优化工具箱来求解线性规划外,还有许多其他的强大功能;而Lindo是一个求解运筹学问题的专用数学软件包,特别是为规划问题量身定做的一个软件包。
下面我们就分别讨论一下运用这两个数学软件包来求解线性规划问题的方法及步骤。
2 用Matlab求解线性规划211 Matlab简介Matlab是一个高性能的科技计算软件,它具有强大的数值计算、绘图、优化和编程等功能。
最初的Matlab软件包是1967年由穆勒(C1M oler)用F ortran语言编写的[5]。
它当时只是一个简单的矩阵分析软件,Matlab是英文Matrix Laboratory (矩阵实验室)的缩写。
后来,穆勒创立了Math2 w orks公司,对Matlab作了大量的、坚持不懈的改进,在这个过程中,许多优秀的工作者为它的完善作出了卓越的贡献,使它逐渐发展成为一个具有极高通用性、带有众多实用工具的运算操作平台。
自1984年推向市场以来,历经二十余年的发展和竞争,现已成为国际认可的最优化科技应用软件。
新版的Matlab是由Mathw orks公司用C 语言完成的,目前它的最高版本为Matlab710版本。
1997年,Mathw orks公司总裁兼首席科学家穆勒因其对Matlab的贡献而当选为美国工程科学院的院士。
Mathw orks公司的网址是w w w1mathw orks1com,我们可以上网浏览访问,跟踪了解Matlab的最新动态。
212 求解方法及步骤Matlab针对某些具体应用领域建立的程序库被称作“工具箱”,Matlab现有30多个工具箱,其中优化工具箱(Optimization T oolbox)是应用较为广泛,影响较大的一个工具箱。
应用Matlab优化工具箱求解线性规划时,不需要把线性规划化为标准形式,其相应的形式为:Min f T xs1t1Ax≤b它的特点是:①求目标函数的最小值,原问题是求最大值的,要转化为求最小值;②目标函数的系数作为列矩阵f;③约束条件全部为≤常数,若约束条件中有等式约束以及变量的非负约束也要全部改写或视为≤的约束;④把约束条件的系数作为矩阵A,把约束条件中的右端项作为列矩阵b。
具体求解时,首先是给矩阵f,A,b赋值。
Matlab给矩阵赋值是逐行进行的,行之间用分号“;”隔开,每行元素之间可以用“,”号也可用空格隔开,并且用符号“,”置于矩阵右上角表示作矩阵的转置运算。
赋值完毕,在命令窗口中调用优化程序lp(linprog),回车以后即可得到问题的最优解。
213 范例分析我们考虑如下的一个线性规划模型。
范例Ⅰ[6]:用Matlab求解模型min z=-2x1-x2+3x3-5x4s1t1x1+2x2+4x3-x4≤62x1+3x2-x3+x4≤12x1+x3+x4≤4x1,x2,x3,x4≥0其求解步骤如下:(1)给矩阵f,A,b赋值。
在此例中,f=[-2,-1,3,-5]’;A= [1,2,4,-1;2,3,-1,1;1,0,1,1;-1,0,0,0;0,-1,0,0;0,0,-1,0;0, 0,0,-1];b=[6,12,4,0,0,0,0]’。
(2)在命令窗口调用优化程序:x=lp(f, A,b)φ,其结果输出(最优解)为:x=0, 216667,0,410。
(3)在命令窗口中接着键入ans=f’3x,则可得到最优目标值为:ans=-221667。
3 用Lindo求解线性规划311 Lindo简介Lindo软件是用于求解运筹学模型(主要是规划模型)的专用数学软件。
Lindo是Linear In2 teractive and Discrete Optimizer的缩写,它由Linus Schrage首先开发,版权现在由美国Lindo系统公司所拥有。
Lindo软件包的特点是程序执行速度快,易于方便地输入、修改、求解和分析一个数学规划问题,因此Lindo受到了广泛的应用和普遍的欢迎。
有关该软件的最新信息可以从Lindo 系统公司的Internet网络站点http:// w w w1Lindo1com上获取,该站点还提供部分Lindo 软件的演示版本或测试版本。
Lindo学生版、演示版与发行版的主要区别在于对优化问题的规模(变量和约束条件个数)有不同的限制。
Lindo学生版最多可求解多达200个变量和100个约束条件的规划问题[7]。
Lindo软件包虽然有多种版本,但其软件内核和使用方法基本上是类似的。
312 求解方法及步骤Lindo求解线性规划的过程采用单纯形法,一般是首先寻求一个可行解,在有可行解的情况下再寻求最优解。
所以用Lindo求解一个线性规划问题会得到如下的几种结果:不可行(N o Fea2 sible S olution)或可行(Feasilbe);可行时又可分为有最优解(Optimal S olution)和解无界(Un2 bounded S olution)两种情况。
进入Lindo工作环境以后,使用者即可用具体的命令来输入并求解规划问题了,求解的一般步骤如下:(1)录入一个线性规划模型(有两种方法)。
方法1:我们可以在主菜单“File”下单击“New”打开一个新文件,此时屏幕上会出现一个窗口(标记为<untitled>),在此窗口中会闪现出光标提示符“ξ”,在其之后即可录入模型了,模型以Max或Min开始,按线性规划问题的自然形式录入,程序最后以“end”结束。
另外,由于Lindo中已假设所有的变量都是非负的,所以非负约束不必再录入到计算机中;Lindo也不区分变量中的大小写字符(实际上任何小写字符都将被转换为大写字符);约束条件中的“≤”及“≥”可用“<”及“>”代替,它们在Lindo系统中是等效的。
方法2:我们也可以在主菜单“Window”下单击“open C ommand window”,此时屏幕上会出现一个窗口(标记为C ommand window),在此窗口中会显示出Lindo提示符“:”,在其之后即可录入模型了,录入方法与上述方法1一样。
(2)求解所录入的线性规划问题方法1:在用上述方法1录入结束,检查无误后,需先将程序进行存储,然后才能进行求解。
具体方法是,在主菜单“File”下用“Save”命令将它以Lindo格式存入文件中(此时Lindo会提示输入一个文件名),日后如需用到该问题可用“File”菜单栏下的“open”命令提取。
存储完成后,在窗口的顶部即标记有该模型的文件名,此时在主菜单“S olve”下单击“S olve”选项并对提示“D o Range(Sensitivity)Analysis?”(是否作灵敏度分析?)回答“Y”或“N”,即可得到详细的结果输出,其结果在标记有“Reports Window”的窗口下输出。