数学建模社区-数学中国

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

作者: cqwj    时间: 2010-4-15 23:52
标题: 学了LINGO才2天别笑我写的东西,求助接口指针写法。
本帖最后由 cqwj 于 2010-4-18 13:47 编辑
' L0 F. D- J- |4 `
1 b7 c8 P& i$ ~指针处怎么写??
; f8 u& m5 D: @$ D我的意思就是说@pointer在模型里面怎么定义?如@pointer(1)=??或 ??=@pointer(1), G+ e. x/ g9 C: A  z9 f
表示什么意思。我个人理解@pointer(1)=??表示把数模变量的值??装进@pointer(1)这个储存单元,外部程序程序可调用此储存单元数据。??=@pointer(1)表示外部数据值??通过DLL传来的数据放进数模变量,这样理解对吗?/ h+ U6 S9 U% M4 v: o
:) sets:
3 \/ v6 J0 O( Q) I9 t) a% _- V8 D6 Nxinxi:cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k,zys,x,y,z;
# b4 `" f$ E! z. G3 o0 r  U6 Aendsets
) o) y* Z9 d& j, y5 @& ^$ ~" T1 sdata:
! |+ d; q0 Y7 b  D) e6 ?xinxi,cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k= @file("li_yong.txt")
- ^3 \; T0 C* X, T& Z' [@TEXT()=@status();
' L/ z1 ^' q0 o% Z: a6 venddata( x: v" N  i/ r+ @2 W- w9 J- G: V
[bb] min=@sum(xinxi:sj190*x+sj160*y+sj270*z);
7 P% [! d9 |$ d4 \3 y@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)<=12);
& t+ w! e/ Z- i5 p# _. U2 M@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)>=0);
8 |9 |' c$ E+ A9 t, K7 [+ u@sum(xinxi:x)=sr190;3 M1 `: J1 D0 s. V! M, k
@sum(xinxi:y)=sr160;+ J& C" `: P0 D# ^# N
@sum(xinxi:z)=sr270;# C% M5 F" J/ I: y
@sum(xinxi:x)>=0;
" v8 B* M7 l$ _  k) U: ?@sum(xinxi:y)>=0;
$ r+ J% Z( d9 F( U! v( n@sum(xinxi:z)>=0;/ z) M  A% f' d8 K. ^& \3 P1 [
@for(xinxi(i):x(i)<=cl190(i)*sl190(i));7 S0 S1 s$ ~. ]& g0 s" C
@for(xinxi(i):x(i)>=0);* Q' Y) f' Z% v6 g# K+ U: ~' b
@for(xinxi(i):y(i)<=cl160(i)*sl160(i));
- i1 d  M" O5 ~/ x. w. a) u" W@for(xinxi(i):y(i)>=0);/ Z; w, D7 p( \8 n+ Y3 {% ?
@for(xinxi(i):z(i)<=cl270(i)*sl270(i));
% N6 l1 i5 s& s( D% H* j+ S@for(xinxi(i):z(i)>=0);9 u; a! ?+ y# c/ W* q0 t
@for(xinxi(i):@gin(x(i)));7 ~; o0 K3 l$ f& c+ W# Z9 t
@for(xinxi(i):@gin(y(i)));; |6 i3 Q+ }. ^( X) j# U9 {
@for(xinxi(i):@gin(z(i)));) k$ I# e" f4 w2 @+ k6 E# x  j
mm=@sum(xinxi:k);
4 J/ Y. I( j( mxx=@sum(xinxi:sj190*x+sj160*y+sj270*z)/mm;8 Q* \: k1 m1 G

8 X; @2 E- t5 [" ~@for(xinxi(i):zys(i)=sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i));$ b# }3 |# g5 n& u) P+ I& B
DATA:8 s8 f% N' p8 Q! K( u! s# f
    @POINTER
( v  T1 Y4 N2 m1 S  \2 \5 R- v* Z
  c5 S' G8 M$ @5 @4 n6 p!此处结果想连接VB6.0,却不知道怎么写;  @( _- _* l! `8 r6 n' j7 d
ENDDATA+ [* o5 a( }. H0 n
7 v+ x. _. V# g- ?0 P$ w& \
end
; Q- I) E) K1 z; ?0 T; P. x% Q1 ]结果为 主要是想取 X,Y,Z的结果
9 k, H2 J( L9 H5 k/ d% v2 FGlobal optimal solution found.1 l5 ^1 k4 r. Q* ?% N) s; u
   Objective value:                              0.000000
+ n/ X- ~  a1 c   Extended solver steps:                               07 Q; f/ A* S8 z
   Total solver iterations:                             0
7 U1 Q/ @2 f" ?3 o- t& G# e8 J& e& Y3 `8 n. }9 `: I( L# [

! _- `/ c( S2 d) D2 q) s                0
  W+ ?: u# u4 x/ H" b. ?1 z  K( ^2 G+ s) H* ^( S$ s4 o. S; n
                       Variable           Value        Reduced Cost
' X# ~3 z1 p1 d; m                          SR190        0.000000            0.000000, f( V4 a  ]. f# W( C1 B1 T7 w
                          SR160        0.000000            0.000000
" f; u  w$ B. ^- c1 G                          SR270        0.000000            0.0000005 P$ e# q; j7 a
                             MM        2.000000            0.000000
( _: H- ^: m: T+ _5 }) _0 j6 q                             XX        0.000000            0.000000- C; ]# V/ l$ `8 q2 ]% z
                  CL190( ZHANG)        35.00000            0.000000& f- f3 p+ S3 ~1 K  T
                     CL190( LI)        35.00000            0.0000001 S' X$ y, n5 I$ y) `" V
                  CL160( ZHANG)        30.00000            0.000000
; g# r. v3 ~4 m7 N- h# a+ n                     CL160( LI)        30.00000            0.000000% s( g# Y/ a* L1 {3 d# I
                  CL270( ZHANG)        5.000000            0.000000
6 m) H! k8 l" k0 `  D5 F6 A                     CL270( LI)        5.000000            0.000000& Z$ B7 O2 l/ I2 L
                   GZSJ( ZHANG)        12.00000            0.000000" d/ ~" s# U$ a/ G; Q& C. o
                      GZSJ( LI)        12.00000            0.000000
1 v/ M! b& D$ ?6 J- P" E                  SL190( ZHANG)       0.9000000            0.000000
1 ^# Z( q" x# I* n$ R9 n                     SL190( LI)       0.8000000            0.0000001 ?& v+ C# S5 E8 _
                  SL160( ZHANG)       0.9000000            0.000000
% q" e1 m: P* ?) E0 H8 u  q+ Z# a! Y                     SL160( LI)       0.9000000            0.000000! P+ u: S4 ?1 h5 D7 y: k8 D, O8 X
                  SL270( ZHANG)       0.8000000            0.000000
8 l1 @+ s; v. t                     SL270( LI)       0.6000000            0.000000
1 @3 k9 T5 n  M  e2 S# b                  SJ190( ZHANG)       0.3770000            0.0000001 }  |4 `& B+ I0 G6 c: ^  o( d
                     SJ190( LI)       0.4120000            0.000000( W$ |2 L9 h" D; S! o* J0 Q- k: r
                  SJ160( ZHANG)       0.4400000            0.0000006 @7 I5 F* a) w( I* M
                     SJ160( LI)       0.4400000            0.000000- H, J& E* d' X0 t  }- u
                  SJ270( ZHANG)        2.880000            0.000000
% Q* N: O! `: {4 f2 l! u$ k3 Y                     SJ270( LI)        3.360000            0.000000
$ b/ o  K: ^' R, P                      K( ZHANG)        1.000000            0.000000/ I  y/ u3 h$ S- B: X
                         K( LI)        1.000000            0.000000
7 b5 B. O5 O8 B0 q# d3 x1 @# }                    ZYS( ZHANG)        0.000000            0.000000
. l6 ?% o( M4 ]) E5 ~. c/ p# G4 D, Y, M                       ZYS( LI)        0.000000            0.000000. R4 a) r  R! f( x. X( K
                      X( ZHANG)        0.000000           0.3770000
8 |. @) _% T( W" J# E' b, a                         X( LI)        0.000000           0.4120000
4 R* K5 w  e& E                      Y( ZHANG)        0.000000           0.4400000
  z- x: y( l6 e  ]# z                         Y( LI)        0.000000           0.4400000% T9 I6 o# \0 v0 V- Y+ c  Q7 ?
                      Z( ZHANG)        0.000000            2.880000
3 @5 X6 c- Y4 Y" [& ]                         Z( LI)        0.000000            3.360000
% O; X9 g* f" r2 ]: m: `, M
1 N* ^/ l* \8 T. X                            Row    Slack or Surplus      Dual Price& |0 d& p( ~% [
                             BB        0.000000           -1.000000
6 L$ C+ W7 j5 f8 b+ R" r: F( X7 M. l                              2        12.00000            0.000000
& h; z. z; t$ e' ?- J                              3        12.00000            0.000000. u  p. ]- J6 g0 A
                              4        0.000000            0.000000
; H/ s; k7 f+ P: t: D% x9 B0 Q                              5        0.000000            0.0000003 Q; H* ]6 e5 d, Y3 H! X
                              6        0.000000            0.000000
4 [* T% p' U3 E+ E# T! \7 m$ a                              7        0.000000            0.000000
9 y. K9 B; H8 k# `/ l; ]                              8        0.000000            0.000000+ M6 K. ]! \2 k8 ~, k2 D
                              9        0.000000            0.0000001 g6 {) t. W  n
                             10        0.000000            0.0000005 u: L6 [9 d" }$ f- M2 r
                             11        0.000000            0.000000
7 @" l. G! E; {: P+ I( F                             12        31.50000            0.000000) ]5 _/ n+ @1 B; b1 @! ~  i
                             13        28.00000            0.000000  h& {. ~4 ?6 I$ S+ _/ k" k
                             14        0.000000            0.000000
- T  l8 U) P& {                             15        0.000000            0.000000
& Y7 v4 D4 W" I/ D" W                             16        27.00000            0.0000000 g: w( l& q7 M& a- P8 r1 N  C
                             17        27.00000            0.000000; l" O2 d- w9 r! z: |; f8 N# {
                             18        0.000000            0.0000001 r# o4 d% ^4 w2 P4 y
                             19        0.000000            0.000000" C1 i0 W% s9 F
                             20        4.000000            0.000000
! u+ D! P- z; {& O4 d" a' W                             21        3.000000            0.000000
- E. |& ?: V% Y7 a. y                             22        0.000000            0.000000: u5 {1 W8 z  w- G2 v
                             23        0.000000            0.000000, [. Q  p3 q/ X# [
                             24        0.000000            0.000000* w, v* z4 n- O+ o5 c
                             25        0.000000            0.000000
" E6 B- `+ m/ X/ Y; @3 ~! D7 B4 n                             26        0.000000            0.0000004 R$ ]/ E3 \% d! T: {* q; w
                             27        0.000000            0.000000
作者: olh2008    时间: 2010-4-16 07:49
VB中调用Lingo使用DLL就行了
作者: olh2008    时间: 2010-4-16 07:50
这是一个例子,可以参考一下。) L( }9 `8 D" i& m$ d
Staff1.rar (8.2 KB, 下载次数: 6)
作者: cqwj    时间: 2010-4-16 11:56
回复 3# olh2008
6 T5 W' i/ {( i$ ^. C+ X$ k5 Y0 ^0 X2 j6 L( j
6 |* L1 y- N. \* I) L# ]( |
    你发的附件不对,再说我也有这个例程,只是不清楚指针这么写到数模里才好调用。
作者: olh2008    时间: 2010-4-16 11:59
指针怎么写到数模里
. h; ~* a3 P. B3 G# u7 t) }
这是什么意思?
作者: 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的帮助文档。例如:
% q$ q3 C5 U! N. `6 f& SSolution Commands in Brief6 F% U7 c# \  c* {
Top  Previous  Next  
$ l" R8 G9 h! q. uDEBUG . c5 w  v7 C3 \' h
tracks down formulation errors in infeasible and unbounded models% a5 u) P. I1 N" h$ `3 v  Y3 B

. I5 b  ?* V8 G; g+ Y4 o; \GO 1 c8 i# ]9 t8 G4 c! o
solves the current model1 [6 }' w& _: `+ M% u) i8 i" A; P8 Z
& q) ?1 [+ j, W" s" \+ i3 ^! |( r% M
NONZ 2 S) P3 Q( E9 {. M2 c4 P
generates a nonzeros only solution report/ `: B: w( y! s5 S% C* y! q2 m
' H" R1 b# @/ s- G5 F6 ~
RANGE
4 S% @, G) q& t% ? generates a range analysis report5 M: {  y. C& n, c- A! f$ F, }
  ]9 A( T2 \. p# k! P
SOLU
  Y' M  J! ]4 X+ k 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