优势:简单的模型表示。方便的数据输入和输出选择。强大的求解器。交互式升斗模型或创建Turn-key应用程序。其特色在于内置建模语言,提供十几个内部函数,可以允许决策变量是整数。
在各个领域本书都配有丰富的案例和求解程序,帮助读者深入理解LINGO软件。同时,本书专门配有一章介绍数学建模中的应用实例,以10个数学建模经典案例为基础,其中9个案例的全部模型都用LINGO编程实现,并在LINGO12版本调试通过。这些案例凝聚了作者多年来积累的编程经验和巧妙构思。
本书在深入浅出地介绍LINGO基本用法吵族磨和LINGO与外部文件接口的基础上,分两个层次介绍了LINGO软件及其应用:
第一个层次以数学规划、图论与网络优化、多目标规划等LINGO软件常用领域为背景,介绍LINGO软件求解优化模型的常规手段和技巧。
第二个层次以博弈论、存储论、排队论、决策分析、评价穗睁方法、最小二乘法等领域为背景,介绍LINGO软件在非优化领域的应用,充分展示LINGO软件的优势和应用扩展。
这个我做过,不简单也不容易,举例说明,你按下面的去做一遍就知道怎么解决你的问题禅信
了。
在VB里面“工程”菜单下面添加“添加模块”,打开对话框,找到路径:X:\Program
Files\lingo80\Dll(X为驱动盘)下的“Lingd80.bas”,添加到VB中。
在VB
界面
上设计Text1和Text2、Command1。
编贺悄轮写
语句
:
Private
Sub
Command1_Click()
'------------------------
Dim
nError
As
Long
Dim
pLINGO
As
Long
Dim
nPointersNow
As
Long
Dim
cScript
As
String
Dim
Apppath
As
String
Dim
dStatus
As
Double
Apppath
=
"take"
&
Space(1)
&
Right(App.Path,
Len(App.Path)
-
2)
'------------------------
On
Error
GoTo
ERROREXIT
pLINGO
=
LScreateEnvLng()
'------------------------
Dim
x
As
Double,
y
As
Double
x
=
Text1.Text
'------------------------
nError
=
LSsetPointerLng(pLINGO,
x,
nPointersNow)
nError
=
LSsetPointerLng(pLINGO,
y,
nPointersNow)
'------------------------
On
Error
GoTo
ERROREXIT
nError
=
LSexecuteScriptLng(pLINGO,
cScript)
'------------------------
dStatus
=
-1#
nError
=
LSsetPointerLng(pLINGO,
dStatus,
nPointersNow)
'------------------------
cScript
=
"SET
ECHOIN
1"
&
Chr(10)
cScript
=
cScript
&
Apppath
&
"\LINGO1.lng"
&
Chr(10)
cScript
=
cScript
&
"GO"
&
Chr(10)
cScript
=
cScript
&
"QUIT"
&
Chr(10)
cScript
=
cScript
&
Chr(0)
On
Error
GoTo
ERROREXIT
nError
=
LSexecuteScriptLng(pLINGO,
cScript)
'------------------------
LScloseLogFileLng
(pLINGO)
LSdeleteEnvLng
(pLINGO)
'------------------------
Text2.Text
=
y
ERROREXIT:
End
Sub
然后再用lingo8.0编写
代码
(命名为LINGO1.lng,注意要保存为.lng文件):
model:
data:
x=@pointer(1)
enddata
y=x*2
data:
@pointer(2)=y
enddata
end
将.lng文件和VB代码放同一
文件夹
,即可运行VB控制Lingo的输入(本程序是由VB的Text1输入x,由lingo完成y=2x计算,计运好算结果返回到VB中Text2)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)