数学建模社区-数学中国

标题: 学了LINGO才2天别笑我写的东西,求助接口指针写法。 [打印本页]

作者: cqwj    时间: 2010-4-15 23:52
标题: 学了LINGO才2天别笑我写的东西,求助接口指针写法。
本帖最后由 cqwj 于 2010-4-18 13:47 编辑 * M, k- u2 I3 T

2 V  `2 ?3 K0 {8 ~/ Z指针处怎么写??7 U: _8 ]# [. l4 ^" [6 D$ O
我的意思就是说@pointer在模型里面怎么定义?如@pointer(1)=??或 ??=@pointer(1)$ T0 R, B* u* v# k3 V7 f
表示什么意思。我个人理解@pointer(1)=??表示把数模变量的值??装进@pointer(1)这个储存单元,外部程序程序可调用此储存单元数据。??=@pointer(1)表示外部数据值??通过DLL传来的数据放进数模变量,这样理解对吗?4 b9 s" G1 [+ P
:) sets:
# |. X) F8 P7 @! T8 Uxinxi:cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k,zys,x,y,z;
& ]( ?1 G% O9 T1 G) I  Y% T! wendsets
" E3 i0 {$ ]: [) zdata:2 v1 Q5 @7 Y0 \$ f
xinxi,cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k= @file("li_yong.txt")% a6 O+ w- M; p2 a1 I
@TEXT()=@status();) W* J; Z7 ^% _# ~
enddata
3 M/ w$ C5 E) z' o2 F$ @[bb] min=@sum(xinxi:sj190*x+sj160*y+sj270*z);/ @, f" U* f, u
@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)<=12);$ Z+ L5 m( [$ Y7 q3 a
@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)>=0);
7 u9 H" [% V! `3 e@sum(xinxi:x)=sr190;: s" \7 `5 S* \* d- e
@sum(xinxi:y)=sr160;: n2 ?: F0 }, k
@sum(xinxi:z)=sr270;
! U2 r* w7 ~. X3 U9 x@sum(xinxi:x)>=0;
( g6 x/ J4 J& ?# D) O* [+ j@sum(xinxi:y)>=0;; S0 R1 Z4 y) ?) [7 Y
@sum(xinxi:z)>=0;. F% A8 V5 D4 j& P+ H; a9 t3 F0 ?
@for(xinxi(i):x(i)<=cl190(i)*sl190(i));
" }0 b% F$ V& Z: x0 a@for(xinxi(i):x(i)>=0);2 u, P* F3 F0 Z
@for(xinxi(i):y(i)<=cl160(i)*sl160(i));7 X5 I2 a  w% e
@for(xinxi(i):y(i)>=0);! S2 U# v( ^( |( \5 ]) q* i+ K
@for(xinxi(i):z(i)<=cl270(i)*sl270(i));% ^  T4 h" t4 A3 x0 e
@for(xinxi(i):z(i)>=0);
/ z0 e- `: b( |; h0 m" r; @@for(xinxi(i):@gin(x(i)));9 @1 s5 a# c( U/ [# @6 C
@for(xinxi(i):@gin(y(i)));: i1 c9 @' X( V1 |
@for(xinxi(i):@gin(z(i)));* f3 E# L7 ~! x! w& W
mm=@sum(xinxi:k);
& M& N: K" B8 L1 ~& jxx=@sum(xinxi:sj190*x+sj160*y+sj270*z)/mm;) P, y( k4 F! i6 ~3 y8 [, H8 ^0 U! K

+ {) V: l- q8 S) F2 R$ \@for(xinxi(i):zys(i)=sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i));' n/ Y. a! }. _: m  Q* Y/ k! N" }& f# b
DATA:
5 D- W+ w$ g5 R) m8 z; f6 I    @POINTER1 ?. A! E7 I: v0 D5 N

3 V% v% m! S) ]# Z!此处结果想连接VB6.0,却不知道怎么写;
/ I) @# o* ]; u6 ]ENDDATA
$ s. k6 b; D9 b& J, o
& L4 b, c/ Z; t& x2 F3 Wend) k: K; ~' O4 c% z8 z) \
结果为 主要是想取 X,Y,Z的结果1 |( T3 ?  U& ^- X% @  }1 |2 D/ M- ^
Global optimal solution found.: N" G3 U9 g) s- g" b% s( k
   Objective value:                              0.000000" E' l- ~. r1 `7 t% C; I
   Extended solver steps:                               0- H* c! D( j& e7 u% N4 W
   Total solver iterations:                             0" \$ E: ]% U& X7 k2 V$ G3 \( F* V, w

5 M6 N! L/ C4 c# k6 J0 F5 \9 c, F* J' a# @
                0  Z3 O4 z* r8 D: p- X5 O) q9 j
- p- w! ^" C7 b8 q$ K* p) r$ y
                       Variable           Value        Reduced Cost
) j" I1 ]9 e0 G+ d) S                          SR190        0.000000            0.0000008 t( \- L" [7 C1 [3 m
                          SR160        0.000000            0.000000/ R  ~- d0 _" X" @  _, c: w8 Z
                          SR270        0.000000            0.000000, w4 m- b* m( t7 f' X, G/ W- d( Q
                             MM        2.000000            0.000000
9 v% B! V1 \7 i$ V2 s9 m                             XX        0.000000            0.000000" p  R% C3 ^+ @; x' A4 V: k, o8 S
                  CL190( ZHANG)        35.00000            0.000000
: J: `! l; }& V% o! s                     CL190( LI)        35.00000            0.0000004 z. O/ o* k' Y. n) c7 J. G
                  CL160( ZHANG)        30.00000            0.000000
  j# I" x$ W; h6 m1 c1 F0 O                     CL160( LI)        30.00000            0.000000
& j9 @( Z0 x- `                  CL270( ZHANG)        5.000000            0.000000
+ s. q* q* s. n2 h                     CL270( LI)        5.000000            0.000000: Q5 \3 Z; K2 l( U, v+ C6 R
                   GZSJ( ZHANG)        12.00000            0.000000" N; O. U' P6 F) M' X4 N
                      GZSJ( LI)        12.00000            0.000000
, o+ q9 b2 H* J6 V* a% ]                  SL190( ZHANG)       0.9000000            0.000000( y) B1 i5 e( J8 `- S# D
                     SL190( LI)       0.8000000            0.000000
# G1 ]" X4 k3 i! n' Q; W; K- u  {                  SL160( ZHANG)       0.9000000            0.000000" i+ u6 V' K6 ~' H4 v6 z; F
                     SL160( LI)       0.9000000            0.000000  Y4 X" @2 R7 R$ U
                  SL270( ZHANG)       0.8000000            0.0000000 u6 Z/ `" F' Q9 u6 B
                     SL270( LI)       0.6000000            0.000000; z. B4 w9 N) b1 h3 Z% ?1 Q
                  SJ190( ZHANG)       0.3770000            0.000000, z% x- f' F% p; \7 e0 |
                     SJ190( LI)       0.4120000            0.000000* C; F7 Y/ c+ f) O2 i% n
                  SJ160( ZHANG)       0.4400000            0.000000
8 w3 x: Z1 y1 p6 k" |( O8 w                     SJ160( LI)       0.4400000            0.0000006 {0 o$ x# Y6 E% T0 O" d
                  SJ270( ZHANG)        2.880000            0.000000
9 ~! [+ j9 N2 Z6 W) P: z                     SJ270( LI)        3.360000            0.000000
' B1 P3 H9 d- v% ]+ q  k                      K( ZHANG)        1.000000            0.000000  s) a+ O4 V0 j3 K$ o
                         K( LI)        1.000000            0.000000
5 H0 ~0 u+ v8 M, Y                    ZYS( ZHANG)        0.000000            0.0000005 k7 E( r. B5 `. f* T; `/ K
                       ZYS( LI)        0.000000            0.000000
7 ]  o3 a8 f% u$ Y                      X( ZHANG)        0.000000           0.3770000( s+ s( }/ l3 T
                         X( LI)        0.000000           0.4120000
3 j4 P4 Q& y+ j" c3 ]: j                      Y( ZHANG)        0.000000           0.44000008 r3 i) Q- D7 l) n3 m
                         Y( LI)        0.000000           0.4400000
2 z% u' E0 V0 R- e3 w                      Z( ZHANG)        0.000000            2.880000
+ m) e5 i2 a3 n' h3 R2 h1 C( o                         Z( LI)        0.000000            3.360000# O/ T3 R: j7 k+ m2 G' C

9 L* R/ u" F' v+ \# x                            Row    Slack or Surplus      Dual Price
, _8 T  m! `8 k1 U" E" P                             BB        0.000000           -1.0000006 Y: O# s% P2 b) J. T7 j. y( e
                              2        12.00000            0.0000001 u' N* J4 [  o0 L* R) z
                              3        12.00000            0.000000' m7 P" M8 F. |4 o0 a" P
                              4        0.000000            0.000000
0 I) K% O& J/ \0 G                              5        0.000000            0.000000  I5 J* R2 |; \( E$ A% P
                              6        0.000000            0.000000
0 q7 x( B# U$ |; k8 r% A' v                              7        0.000000            0.000000
! F' G8 u/ v& R& U: h                              8        0.000000            0.000000% m. A' s0 H& k/ x$ I
                              9        0.000000            0.000000
) U" @# v5 P6 R6 K6 y                             10        0.000000            0.000000' r. W6 ?# [3 Q
                             11        0.000000            0.000000
6 i* @/ S: `1 b+ T% b- a/ e4 `+ D                             12        31.50000            0.000000* ?& X. |; i$ r$ G, ?; N
                             13        28.00000            0.000000+ T5 c7 L1 r. Q: e
                             14        0.000000            0.000000( z! H+ j  B# x5 p: Y
                             15        0.000000            0.000000
! W$ g0 {( s, r( P$ Q! Z. X! e                             16        27.00000            0.000000/ S; a% B8 H' P* m
                             17        27.00000            0.000000+ v! c: G" I: p& u7 U0 x/ y6 d
                             18        0.000000            0.000000$ E0 g' x- B+ J2 z+ [! a& |
                             19        0.000000            0.000000" B* O1 N! a3 I0 m: v. ]
                             20        4.000000            0.000000
0 \' h% X: e2 f+ |- r                             21        3.000000            0.000000; b; W# m2 c9 _1 {3 T" x  R+ ~
                             22        0.000000            0.000000
1 n3 n# r( O0 j+ q7 s/ q                             23        0.000000            0.000000, p  S2 m$ Z, ?6 _6 M( S2 @
                             24        0.000000            0.000000
9 g6 @6 ?" g4 S+ H6 I  A# l7 w                             25        0.000000            0.000000, u* Q1 F2 k- w& x$ m. n7 U; T( X
                             26        0.000000            0.000000
3 R' P& d5 c; |* \                             27        0.000000            0.000000
作者: olh2008    时间: 2010-4-16 07:49
VB中调用Lingo使用DLL就行了
作者: olh2008    时间: 2010-4-16 07:50
这是一个例子,可以参考一下。
8 E6 o) Q- D% F: H  x5 j0 I Staff1.rar (8.2 KB, 下载次数: 6)
作者: cqwj    时间: 2010-4-16 11:56
回复 3# olh2008 . ^1 _# S% F2 z2 {% S* E6 I
/ X" @% E- g9 D( p( N+ \

9 w$ e* H2 H1 l% E5 k6 k% h    你发的附件不对,再说我也有这个例程,只是不清楚指针这么写到数模里才好调用。
作者: olh2008    时间: 2010-4-16 11:59
指针怎么写到数模里
" N) I2 H; G# e
这是什么意思?
作者: legan    时间: 2010-4-16 12:07
谁会LINGO与C++的混合编程啊,我想用C++的循环调用LINGO编的程序进行复杂的优化类问题计算
作者: funintears    时间: 2010-4-16 12:18
lingo可以和c++混合编程呀?!厉害,牛人指导下呀!!!
作者: haoshuang3394    时间: 2010-4-16 19:28
lingo怎么用啊,看着代码挺怪的?
作者: 风云雨哲    时间: 2010-4-16 20:04
请教高手Lingo的使用。请教高手Lingo的使用。
作者: cqwj    时间: 2010-4-16 22:16
LINGO的代码很简单,相当于命令格式,但是要灵活运用的话也不简单。
作者: cqwj    时间: 2010-4-16 22:17
年龄18岁以下的同学最好不用,会有依赖感
作者: madio    时间: 2010-4-16 22:53
要想用C++调用lingo需要了lingo的命令行使用方法,C++采用调用外部程序的方法也可以调用lingo。可以看lingo的帮助文档。例如:
) O3 N) M2 g/ K5 b: Y/ `Solution Commands in Brief
! {0 c7 X* B" B2 ^! K6 Z. Q' x Top  Previous  Next  
: \. ?: `+ b  Q9 z2 X% z, s% ~( fDEBUG
6 Z: f6 N. j9 P2 |  B* L8 L7 x2 D tracks down formulation errors in infeasible and unbounded models0 M# R- X/ _  u) T
! i; o. u4 i3 j. M$ q) g% R
GO
) @2 Z4 ^$ M% ^7 i solves the current model9 R2 j$ r0 }+ w- s  M3 U" ~

( A, P  \( h# M) g. mNONZ 5 T, g/ Z' ^. I8 `. w/ d
generates a nonzeros only solution report
2 A3 N! G( R3 y8 o6 H! N5 U1 A
7 L$ H# g" C, y/ Z4 }) F$ B, BRANGE 8 m) c; L, A  @1 r' {
generates a range analysis report
4 m" M7 i4 z- o3 r. r+ B # `1 d. I9 d# O0 o6 D  ~+ ^6 k
SOLU & ]+ {: k3 v) C7 @6 B7 N
generates a solution report
作者: fangxuanfxuan    时间: 2010-4-17 21:55
谢谢~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作者: cqwj    时间: 2010-4-18 13:50
这是命令行语句,@pointer怎么用还是不清楚。。。。期待中。




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5