一个实例来见证LINGO的强大

代码如下

1、解决问题一的目标1:

!钢管下料,原料19m;
!客户需求:4m的50根、6m的20根、8m的15根;
!Question 1:如何下料最省? Question 2:客户增加需求5m的10根;

! 4 6 8 余料
Plan 1: 4 0 0
Plan 2: 3 1 0 余1
Plan 3: 2 0 1 余3
Plan 4: 1 2 0 余3
Plan 5: 1 1 1 余1
Plan 6: 0 2 0 余1
plan 7: 0 0 2 余3;

!目标一:(总余量)MIN Z1=3*x1+x2+3*x3+3*x4+x5+x6+3*x7
目标二:(总根数)MIN Z2=x1+x2+x3+x4+x5+x6+x7
约束:4*x1+3*x2+2*x3+x4+x5>=50
x2+2*x4+x5+3*x6>=20
x3+x5+2*x7>=15
整数约束:xi为整数;

MODEL:

sets:
demand/1..3/:a;!j=1,2,3;
plan/1..7/:b,x;!i=1,2,3,4,5,6,7;
link(plan,demand):c;
endsets

data:
a=50,20,15;
b=3,1,3,3,1,1,3;
c=4 0 0 3 1 0 2 0 1 1 2 0 1 1 1 0 3 0 0 0 2;
enddata

[email protected](plan(i):x(i)*b(i));
@for(demand(j):@sum(plan(i):x(i)*c(i,j))>a(j););!3行约束,@for(demand(j):),按照j循环3次,即j=1,2,3;
@for(plan(i):@gin(x(i)););

END

2、解决问题一的目标2:

MODEL:

sets:
demand/1..3/:a;!j=1,2,3;
plan/1..7/:b,x;!i=1,2,3,4,5,6,7;
link(plan,demand):c;
endsets

data:
a=50,20,15;
b=3,1,3,3,1,1,3;
c=4 0 0 3 1 0 2 0 1 1 2 0 1 1 1 0 3 0 0 0 2;
enddata

[email protected](plan(i):x(i));
@for(demand(j):@sum(plan(i):x(i)*c(i,j))>a(j););!3行约束,@for(demand(j):),按照j循环3次,即j=1,2,3;
@for(plan(i):@gin(x(i)););

END

3、解决再加额外10根5m的需求:

MODEL:
sets:
type/1..4/:a,b;!i=1, 2,3,4;
plan/1..3/:x;!j=1,2,3;
link(type,plan):r;
endsets
data:
a=4 5 6 8;
b=50 10 20 15;
enddata
[email protected](plan(j):x(j));
@sum(plan(j):x(j))>26;
@for(type(i):@sum(plan(j):r(i,j)*x(j))>b(i););
@for(plan(j):@sum(type(i):r(i,j)*a(i))>=16;);
@for(plan(j):@sum(type(i):r(i,j)*a(i))<=19;);
@for(plan(j):@gin(x(j)););
@for(link(i,j):@gin(r(i,j)););
END

这期就到这里啦,小编未来将在自己的blog里发表一些有关MATLAB、C语言、Python、LINGO、R、SPSS、EVIEWS and Multisim,and so on,还有一些单片机、电子设计等有关知识。

不要问小编为什么会这么多,因为小编学的是电子信息工程!一个难到爆炸的专业,上到天文电磁波,下到量子微机电路板,外加各种编程,2333.

时间: 2024-12-15 09:49:58

一个实例来见证LINGO的强大的相关文章

ArcGIS API for JavaScript开发环境搭建及第一个实例demo

原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3.9,它提供了更为丰富而又强大的功能.     一.安装前准备 1.ArcGIS Server for JavaScript API各版本下载地址:http://support.esrichina-bj.cn/2011/0223/960.html,我们选择下载最新的"ArcGIS API for Ja

逆向学习XXclient怎样仅仅执行一个实例

个人觉得学习分两种, 一种是当面请教和直接从书本网络中的资料学习. 其二就是看着令你惊叹的作品-顿悟. 什么?顿悟不了?那我们就一起来逆向学习吧!差点忘了,我并不打算提供Demo,这并不重要,难道你打算遇到一个同样的情景? 重在方法. 注意: 本文为了照应新手人群,对于某些内容可能会非常具体的推演. 名词解释: 一个实例:一个对象,这里指一个程序被创建后在内存中的数量.大白话就是:成功执行了几次. 事由: 今天闲来无事(忙里偷闲)执行了两次Dr_COM的宽带认证client.如咱所料, 如图:

逆向学习XX客户端如何只运行一个实例

个人认为学习分两种, 一种是当面请教和直接从书本网络中的资料学习. 其二就是看着令你惊叹的作品-顿悟. 什么?顿悟不了?那我们就一起来逆向学习吧!差点忘了,我并不打算提供Demo,这并不重要,难道你打算遇到一个相同的情景?重在方法. 注意: 本文为了照顾新手人群,对于某些内容可能会非常详细的推演. 名词解释: 一个实例:一个对象,这里指一个程序被创建后在内存中的数量.大白话就是:成功运行了几次. 事由: 今天闲来无事(忙里偷闲)运行了两次Dr_COM的宽带认证客户端.如咱所料, 如图: 我们知道

PHP 2:从一个实例介绍学习方法

原文:PHP 2:从一个实例介绍学习方法 在前面我已经描述了PHP,Apache以及MySQL的安装与配置.下面将介绍一下我如何学习PHP.首先我自己已经有了一些编程经验,就拿我自己而言,已经熟悉C/C++,C#,Java,VB等语言.所以我会以我自己的方式来学习PHP.我会以一个项目来学习.根据这个项目,我应该达到以下的目的: PHP语法. PHP编程 PHP如何架构项目 PHP如何实现项目 我不会拿起一本书从头到尾来学习,而是根据这个项目的源代码以及结构,与我熟悉的语言相比较,对于自己不熟悉

【原创】案例分享(3)用户行为分析--见证scala的强大

场景分析 用户行为分析应用的场景很多,像线上网站访问统计,线下客流分析(比如图像人脸识别.wifi探针等),比较核心的指标有几个: PV | UV | SD | SC 指标说明: PV(Page View):网站浏览量或者商场门店的访问量UV(Unique Visitor):独立访客数,即去重后的人数SD(Session Duration):单次会话停留时间SC(Session Count):会话次数 用户行为分析的原始数据通常是一系列时间离散数据,比如网站访问记录:用户在一个时间点访问了一个网

只运行一个实例以及内存泄漏检测

unit 使应用程序只运行一个实例; interface uses Windows; const  // - 互斥体唯一的名字  _Mutex_Name = '{19631971-1976-1981-1989-199319941995}'; var  _Mutex_Handle: THandle; implementation initialization // - 载入时调用的代码 // - 创建互斥体对象_Mutex_Handle := CreateMutex(nil, False, LPC

C# WinForm 判断程序是否已经在运行,且只允许运行一个实例

static class Program {   /// <summary>   /// 应用程序的主入口点.   /// </summary>   [STAThread]   static void Main()   {     Application.EnableVisualStyles();     Application.SetCompatibleTextRenderingDefault(false);     //1.这里判定是否已经有实例在运行     //只运行一个实

转 C# 只允许运行一个实例

来源:http://blog.csdn.net/jin20000/article/details/3136791 互斥进程(程序), 简单点说,就是在系统中只能有该程序的一个实例运行. 现在很多软件都有这功能,如Maxthon 可以设置为"只允 许打开一个窗体",还有Bitcomet等. 我也是看到这些软件的这个功能才来研究这个问题的.  要实现程序的互斥,通常有三中方式,下面 用 C#  语言来实现: 实现方式一: 使用线程互斥变量. 通过定义互斥变量来判断是否已运行实例.C#实现如

C++静态变量本身可否是一个实例对象

一般书上总是用int来举例,那个太简单.如果静态变量本身可否是一个实例对象呢?应该是可以,但是这样涉及到它的构造函数以及它内部的静态变量如何初始化两个问题,换而言之,这个静态变量本身应该如何初始化?这个问题和单例模式有些关系,回头查查. 以下是一个不成熟的例子,但是能编译运行通过. #include "stdafx.h" #include <iostream> using namespace std; class AAA { public: static int sss;