学了LINGO才2天别笑我写的东西,求助接口指针写法。
本帖最后由 cqwj 于 2010-4-18 13:47 编辑指针处怎么写??
我的意思就是说@pointer在模型里面怎么定义?如@pointer(1)=??或 ??=@pointer(1)
表示什么意思。我个人理解@pointer(1)=??表示把数模变量的值??装进@pointer(1)这个储存单元,外部程序程序可调用此储存单元数据。??=@pointer(1)表示外部数据值??通过DLL传来的数据放进数模变量,这样理解对吗?
:) sets:
xinxi:cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k,zys,x,y,z;
endsets
data:
xinxi,cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k= @file("li_yong.txt")
@TEXT()=@status();
enddata
min=@sum(xinxi:sj190*x+sj160*y+sj270*z);
@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)<=12);
@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)>=0);
@sum(xinxi:x)=sr190;
@sum(xinxi:y)=sr160;
@sum(xinxi:z)=sr270;
@sum(xinxi:x)>=0;
@sum(xinxi:y)>=0;
@sum(xinxi:z)>=0;
@for(xinxi(i):x(i)<=cl190(i)*sl190(i));
@for(xinxi(i):x(i)>=0);
@for(xinxi(i):y(i)<=cl160(i)*sl160(i));
@for(xinxi(i):y(i)>=0);
@for(xinxi(i):z(i)<=cl270(i)*sl270(i));
@for(xinxi(i):z(i)>=0);
@for(xinxi(i):@gin(x(i)));
@for(xinxi(i):@gin(y(i)));
@for(xinxi(i):@gin(z(i)));
mm=@sum(xinxi:k);
xx=@sum(xinxi:sj190*x+sj160*y+sj270*z)/mm;
@for(xinxi(i):zys(i)=sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i));
DATA:
@POINTER
!此处结果想连接VB6.0,却不知道怎么写;
ENDDATA
end
结果为 主要是想取 X,Y,Z的结果
Global optimal solution found.
Objective value: 0.000000
Extended solver steps: 0
Total solver iterations: 0
0
Variable Value Reduced Cost
SR190 0.000000 0.000000
SR160 0.000000 0.000000
SR270 0.000000 0.000000
MM 2.000000 0.000000
XX 0.000000 0.000000
CL190( ZHANG) 35.00000 0.000000
CL190( LI) 35.00000 0.000000
CL160( ZHANG) 30.00000 0.000000
CL160( LI) 30.00000 0.000000
CL270( ZHANG) 5.000000 0.000000
CL270( LI) 5.000000 0.000000
GZSJ( ZHANG) 12.00000 0.000000
GZSJ( LI) 12.00000 0.000000
SL190( ZHANG) 0.9000000 0.000000
SL190( LI) 0.8000000 0.000000
SL160( ZHANG) 0.9000000 0.000000
SL160( LI) 0.9000000 0.000000
SL270( ZHANG) 0.8000000 0.000000
SL270( LI) 0.6000000 0.000000
SJ190( ZHANG) 0.3770000 0.000000
SJ190( LI) 0.4120000 0.000000
SJ160( ZHANG) 0.4400000 0.000000
SJ160( LI) 0.4400000 0.000000
SJ270( ZHANG) 2.880000 0.000000
SJ270( LI) 3.360000 0.000000
K( ZHANG) 1.000000 0.000000
K( LI) 1.000000 0.000000
ZYS( ZHANG) 0.000000 0.000000
ZYS( LI) 0.000000 0.000000
X( ZHANG) 0.000000 0.3770000
X( LI) 0.000000 0.4120000
Y( ZHANG) 0.000000 0.4400000
Y( LI) 0.000000 0.4400000
Z( ZHANG) 0.000000 2.880000
Z( LI) 0.000000 3.360000
Row Slack or Surplus Dual Price
BB 0.000000 -1.000000
2 12.00000 0.000000
3 12.00000 0.000000
4 0.000000 0.000000
5 0.000000 0.000000
6 0.000000 0.000000
7 0.000000 0.000000
8 0.000000 0.000000
9 0.000000 0.000000
10 0.000000 0.000000
11 0.000000 0.000000
12 31.50000 0.000000
13 28.00000 0.000000
14 0.000000 0.000000
15 0.000000 0.000000
16 27.00000 0.000000
17 27.00000 0.000000
18 0.000000 0.000000
19 0.000000 0.000000
20 4.000000 0.000000
21 3.000000 0.000000
22 0.000000 0.000000
23 0.000000 0.000000
24 0.000000 0.000000
25 0.000000 0.000000
26 0.000000 0.000000
27 0.000000 0.000000 VB中调用Lingo使用DLL就行了 这是一个例子,可以参考一下。
回复 3# olh2008
你发的附件不对,再说我也有这个例程,只是不清楚指针这么写到数模里才好调用。 指针怎么写到数模里
这是什么意思? 谁会LINGO与C++的混合编程啊,我想用C++的循环调用LINGO编的程序进行复杂的优化类问题计算 lingo可以和c++混合编程呀?!厉害,牛人指导下呀!!! lingo怎么用啊,看着代码挺怪的? 请教高手Lingo的使用。请教高手Lingo的使用。 LINGO的代码很简单,相当于命令格式,但是要灵活运用的话也不简单。
页:
[1]
2