问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

lingo问题,对专业的人来说很简单的。

发布网友 发布时间:2022-05-02 15:59

我来回答

2个回答

热心网友 时间:2022-06-20 18:51

语法上没有问题啊。
然后是 data1txt文件应该放在lingo的安装目录下面。例如你是安装在D盘,那么只需要将data1txt文件放在相应的文件夹里面就是了。对于程序是不需要修改的。
下面是我找的关于@FILE语句的用法:
@file函数
该函数用从外部文件中输入数据,可以放在模型中任何地方。该函数的语法格式为@file(’filename’)。这里filename是文件名,可以采用相对路径和绝对路径两种表示方式。@file函数对同一文件的两种表示方式的处理和对两个不同的文件处理是一样的,这一点必须注意。
例4.14 以例1.2来讲解@file函数的用法。
注意到在例1.2的编码中有两处涉及到数据。第一个地方是集部分的6个warehouses集成员和8个vendors集成员;第二个地方是数据部分的capacity,demand和cost数据。
为了使数据和我们的模型完全分开,我们把它们移到外部的文本文件中。修改模型代码以便于用@file函数把数据从文本文件中拖到模型中来。修改后(修改处代码黑体加粗)的模型代码如下:
model:
!6发点8收点运输问题;
sets:
warehouses/ @file('1_2.txt') /: capacity;
vendors/ @file('1_2.txt') /: demand;
links(warehouses,vendors): cost, volume;
endsets
!目标函数;
min=@sum(links: cost*volume);
!需求约束;
@for(vendors(J):
@sum(warehouses(I): volume(I,J))=demand(J));
!产量约束;
@for(warehouses(I):
@sum(vendors(J): volume(I,J))<=capacity(I));

!这里是数据;
data:
capacity = @file('1_2.txt') ;
demand = @file('1_2.txt') ;
cost = @file('1_2.txt') ;
enddata
end
模型的所有数据来自于1_2.txt文件。其内容如下:
!warehouses成员;
WH1 WH2 WH3 WH4 WH5 WH6 ~

!vendors成员;
V1 V2 V3 V4 V5 V6 V7 V8 ~

!产量;
60 55 51 43 41 52 ~

!销量;
35 37 22 32 41 32 43 38 ~

!单位运输费用矩阵;
6 2 6 7 4 2 5 9
4 9 5 3 8 5 8 2
5 2 1 9 7 4 3 3
7 6 7 3 9 2 7 1
2 3 9 5 7 2 6 5
5 5 2 2 8 1 4 3
把记录结束标记(~)之间的数据文件部分称为记录。如果数据文件中没有记录结束标记,那么整个文件被看作单个记录。注意到除了记录结束标记外,模型的文本和数据同它们直接放在模型里是一样的。
我们来看一下在数据文件中的记录结束标记连同模型中@file函数调用是如何工作的。当在模型中第一次调用@file函数时,LINGO打开数据文件,然后读取第一个记录;第二次调用@file函数时,LINGO读取第二个记录等等。文件的最后一条记录可以没有记录结束标记,当遇到文件结束标记时,LINGO会读取最后一条记录,然后关闭文件。如果最后一条记录也有记录结束标记,那么直到LINGO求解完当前模型后才关闭该文件。如果多个文件保持打开状态,可能就会导致一些问题,因为这会使同时打开的文件总数超过允许同时打开文件的上限16。
当使用@file函数时,可把记录的内容(除了一些记录结束标记外)看作是替代模型中@file(’filename’)位置的文本。这也就是说,一条记录可以是声明的一部分,整个声明,或一系列声明。在数据文件中注释被忽略。注意在LINGO中不允许嵌套调用@file函数。

热心网友 时间:2022-06-20 18:52

这是我改的:
MODEL :
SETS: ! 集合段;
XYI/ @FILE(′data1.txt′) / :
x ,y ,r ; ! 定义变量;
ENDSETS
MIN = R1 - R2 ; ! 目标函数;
! 下面是约束;
R1 = @MAX(XYI(J) :r (J)) ; ! 找出半径的最大值;
R2 = @MIN(XYI(J) :r (J)) ; !
找出半径的最小值;
@for(XYI:@BND(x0LOW ,x0 ,x0HIGH)); ! x0 的范围;
@FOR(XYI:@BND(y0LOW ,y0 ,Y0HIGH)); ! y0 的范围;
@FOR(XYI(I):r(I)=((x(I) - x0(I))*3(x (I)-x0(I)+(y(I)-y0(I))*3(y(I)-y0(I))^(1/2)); ! 计算第i 点处的半径ri ;
DATA : ! 数据段;
x = @FILE(′data1.txt′) ;
y = @FILE(′data1.txt′) ; ! 读入测量点的坐标值;
x0LOW = @FILE(′data1.txt′) ;
x0HIGH = @FILE(′data1.txt′) ; ! 读入x0 的上下界;
y0LOW = @FILE(′data1.txt′) ;
Y0HIGH = @FILE(′data1.txt′) ; ! 读入y0 的上下界;
ENDDATA
END
你的程序中少了很多的“;”,这个符号,记住是英文状态下输入的,你说的txt文档,你放在桌面就可以了!不过你要lingo读的几组数据之间要加入“~”符号,并且lingo读数据的顺序是跟你的语言顺序是一样的!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
老师侮辱学生是否犯法 开启河南航拍新篇章 河南省航拍协会第一次会员代表大会召开 我想问下poscer m-3032款型手表售价是多少??? wp6m是啥意思 看图软件哪个好哪个看图软件好 5款强大到离谱电脑软件,都是效率神器!从此远离加班 在武汉买一套房大概要多少钱 武汉华润翡翠城的优缺点 k12教育为什么会被整顿 国家为什么要叫停K12教育? lingo为什么注释外面的字体也显示绿色?已经添加分号了 lingo注释,注释一大段,不要一个一个的用!注释 lingo注释,如何快速注释一大段,不要一个一个的用!注释 聚字开头的成语接龙 聚开头并以表结尾的成语接龙。 成语接龙大全十万火集…… 集开头的成语 集成语接龙 集打头的成语接龙大全 集开头成语接龙 集字开头的成语接龙 集字头的成语接龙 为什么我的office2007的ppt没有图标 只是一个空白 office2010中PPT图标没有了怎么恢复?求大神解决! 华为p30pro的人像光效鱼鳞怎么没反应? 我的手机信息最近收到好多验证码,我这个号是副卡会不会有什么危害 联通主卡绑定银行接收验证码短信功能,持主卡人可以去银行变更修改为副卡接收银行短信验证码的功能吗 ? 联通手机副卡可以绑定主卡的银行账号短信接收通知么 ? 电信主卡去营业厅查副卡通话记录,副卡会收到验证码吗?都是主卡的名字 手机(移动)主卡可以收到或看到副卡登陆app所需要的短信验证码吗?急急急 lingo求大神,咋注释完了全绿了,不是加了分号的吗 Lingo 错误代码 12-(data missing right parenthesis) lingo里输入的数据可以是绿色的吗,为什么有些数据输入lingo里也会显示是绿色的呢,绿色不应该是注释吗 用lingo编程求DEA最优解 lingo软件程序问题,高手帮帮忙 Lingo符号问题 lingo软件在使用时为什么有些字体是蓝色,有些字体是绿色? lingo怎么用@max求一组变量的最大值,看完补充再说,复制粘贴的请走 lingo解决分配问题 认定工伤要提交哪些材料 委托书公证需要双方到场吗? 介绍一下现在电脑市场上的主流品牌主板的一些情况? “世风日下 人心不古”出自哪里,有什么典故? 人心不古世风日下,真的是如此吗,谢谢各位 世态炎凉,人心不古,这是一个物欲横流的时代,种种*让大多数的人丧失了最基本的良知和道德操守,不得 人心不古 利益永恒? 一直搞不懂的一个成语请问,人心不古怎样理解,我是百 物欲横流,人心不古,广厦千间,夜眠仅需六尺,家财万贯,一日不过三餐。本人厌倦长期两点一线的生活,为 世风日下,人心不古,谁还能忍住孤独,静下心来学习 怎么用u盘给苹果笔记本装双系统