数学建模社区-数学中国

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

作者: cqwj    时间: 2010-4-15 23:52
标题: 学了LINGO才2天别笑我写的东西,求助接口指针写法。
本帖最后由 cqwj 于 2010-4-18 13:47 编辑
5 z$ c9 ?, k* O" C# a: y% M% H. h( y. ?' D
指针处怎么写??
' M. \4 B, S4 B' ^# D我的意思就是说@pointer在模型里面怎么定义?如@pointer(1)=??或 ??=@pointer(1): X) e) S6 e! L% }- [0 z, o& J
表示什么意思。我个人理解@pointer(1)=??表示把数模变量的值??装进@pointer(1)这个储存单元,外部程序程序可调用此储存单元数据。??=@pointer(1)表示外部数据值??通过DLL传来的数据放进数模变量,这样理解对吗?0 B& r: ?2 l% k. ?7 N9 K
:) sets:
! i) o, ~- o1 C9 cxinxi:cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k,zys,x,y,z;4 q! i1 C( R  Q" g' |6 u  }
endsets8 q! n! q- S9 O" \3 M' C
data:
& [' @" e8 G# N  J- ?  ixinxi,cl190,cl160,cl270,gzsj,sl190,sl160,sl270,sj190,sj160,sj270,k= @file("li_yong.txt")& f7 t1 {: Q" `3 C) ]
@TEXT()=@status();( }( h0 b" w& R% D
enddata% A% y+ C% O. K; n) M
[bb] min=@sum(xinxi:sj190*x+sj160*y+sj270*z);
, n( d; ?, E2 O@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)<=12);
. P6 f1 Z6 d: \0 w5 _- x@for(xinxi(i):sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i)>=0);! ^7 p0 X  e6 T! q6 ~
@sum(xinxi:x)=sr190;* z3 |8 [" G0 v3 p. P" _
@sum(xinxi:y)=sr160;
, `# |2 j0 S! }! o" x. p@sum(xinxi:z)=sr270;" J7 D, {  \8 b7 \8 `
@sum(xinxi:x)>=0;
; f& g8 Q$ Y) `4 v' F" ?$ E: R7 j@sum(xinxi:y)>=0;* u3 F' [6 g* G
@sum(xinxi:z)>=0;# z& V5 W7 `$ J0 N) ]9 x5 {$ L# `
@for(xinxi(i):x(i)<=cl190(i)*sl190(i));5 t' L& n% M$ _( C3 Y; v7 O
@for(xinxi(i):x(i)>=0);
6 R. R- P9 Q3 L8 Q: n$ x9 B  V$ }2 a@for(xinxi(i):y(i)<=cl160(i)*sl160(i));$ S" @1 w) R8 ?& G
@for(xinxi(i):y(i)>=0);
& j* Y$ f, d5 Z( u@for(xinxi(i):z(i)<=cl270(i)*sl270(i));
5 \1 v6 o' }/ O: r# j@for(xinxi(i):z(i)>=0);
# b  l% v" g/ s+ f1 w7 x@for(xinxi(i):@gin(x(i)));3 p5 v  o. R+ r; J" X# V. F
@for(xinxi(i):@gin(y(i)));6 u: ~$ _) j/ R  @
@for(xinxi(i):@gin(z(i)));" F0 {+ w4 A8 w+ r6 M- b; F
mm=@sum(xinxi:k);
' o7 I* J/ T9 v7 E( J  H: {xx=@sum(xinxi:sj190*x+sj160*y+sj270*z)/mm;
( I  g% r4 b$ K- K# m6 k; J9 n* Y
' A0 F% G. ~$ |, n" ~# Y@for(xinxi(i):zys(i)=sj190(i)*x(i)+sj160(i)*y(i)+sj270(i)*z(i));- ^& s2 r' E* j, s
DATA:" v; J3 F/ W6 E- B# a: h- V
    @POINTER
5 _6 ?5 q' e6 F8 W3 Z1 C. [: @, d* n& x8 ^3 o; \9 ~
!此处结果想连接VB6.0,却不知道怎么写;- R! f8 C8 y4 l) g+ y5 ^( f
ENDDATA% w7 W( D4 T" C3 O1 n4 Q
+ q& r/ W/ [3 _) a8 k2 a$ a
end4 P" P& Q( ^6 O( K. a
结果为 主要是想取 X,Y,Z的结果% m' ?, X& M3 h1 W
Global optimal solution found.
& W0 F. F! P8 c- ^* A   Objective value:                              0.000000- C* ~+ X; ~0 e9 D5 w- ^& X$ [
   Extended solver steps:                               0
8 ^) Q3 ^: g6 P: p+ l* M% C   Total solver iterations:                             0
! ~1 o+ ~# d8 e; S0 [8 n
7 b7 b" y3 \+ m# I* p$ q4 _8 j8 L6 s+ C4 H
                0
& z, V: m3 u& Q0 b4 `) i8 y) z8 }  Z; m4 P7 W$ U1 ?
                       Variable           Value        Reduced Cost( E; |; J0 Z: F9 c
                          SR190        0.000000            0.000000$ h: M7 a3 J- S0 m" o: `9 i
                          SR160        0.000000            0.000000- ~& h- \: f, ^" Z$ b0 G7 Q6 v6 s
                          SR270        0.000000            0.000000
  x$ D) r% b0 j                             MM        2.000000            0.000000
; o  b+ }. u! C$ T                             XX        0.000000            0.000000
, \9 |# U) S2 ~7 b                  CL190( ZHANG)        35.00000            0.000000
2 u$ v1 x8 A- n7 `# U: M                     CL190( LI)        35.00000            0.0000009 _2 m9 P, v, O+ P) K1 E* Q# C
                  CL160( ZHANG)        30.00000            0.000000
! f5 K7 ]+ Y6 U8 y7 A3 j                     CL160( LI)        30.00000            0.000000
$ h3 S5 ?% N1 M                  CL270( ZHANG)        5.000000            0.000000
& B) a, ~  x( a9 r                     CL270( LI)        5.000000            0.000000: Y( W4 X3 l9 X
                   GZSJ( ZHANG)        12.00000            0.0000001 D% B& x6 y) S7 ?' x
                      GZSJ( LI)        12.00000            0.000000! `7 t  P, G' Q1 b: {
                  SL190( ZHANG)       0.9000000            0.000000# T# `: p+ d( Y" G# Z
                     SL190( LI)       0.8000000            0.000000! k) }6 a7 F% A4 ]5 k
                  SL160( ZHANG)       0.9000000            0.000000' O( T# y, I8 ?& R- @
                     SL160( LI)       0.9000000            0.000000
. s; m% {! J- s# z& H/ |) G                  SL270( ZHANG)       0.8000000            0.000000
$ z5 k) o$ e& |  d- f9 q3 `                     SL270( LI)       0.6000000            0.0000007 Y# w  J/ Y, F/ {4 |6 d3 D, p
                  SJ190( ZHANG)       0.3770000            0.0000001 u# P" V. W3 g0 n9 p4 _( {" I6 p7 w
                     SJ190( LI)       0.4120000            0.000000* D; x" V2 C/ Y% N6 _# U
                  SJ160( ZHANG)       0.4400000            0.0000006 j8 g  V( I, D) X7 k
                     SJ160( LI)       0.4400000            0.000000
, i4 |" H/ v) w; h- I                  SJ270( ZHANG)        2.880000            0.000000
3 Z' a0 o) ~' L# g7 U                     SJ270( LI)        3.360000            0.000000
8 \4 K' U" B4 G$ x# i; {                      K( ZHANG)        1.000000            0.000000" |  f  Q" P7 G# M- F) M6 W- P+ S
                         K( LI)        1.000000            0.000000
; R  H9 |4 M$ ]. C5 b1 E0 U                    ZYS( ZHANG)        0.000000            0.000000
: N3 V1 k$ l. q. \9 C+ R                       ZYS( LI)        0.000000            0.000000
( [) [0 w* ]( w! Q2 P# p  r                      X( ZHANG)        0.000000           0.3770000
6 |2 z9 [3 Y% \& r0 i                         X( LI)        0.000000           0.4120000* T" v! K; ?7 K5 o( L, M
                      Y( ZHANG)        0.000000           0.4400000
6 ^; `0 S2 F- t5 N                         Y( LI)        0.000000           0.44000004 ?$ y: P7 M9 U& t" N* C, C, G9 d
                      Z( ZHANG)        0.000000            2.8800008 s- _4 T( s! W0 [
                         Z( LI)        0.000000            3.360000
  Q( p. t/ M0 e, K  x' |
; V; S  g% |* t) A                            Row    Slack or Surplus      Dual Price
2 n7 s; j' U( _1 z. J+ a                             BB        0.000000           -1.000000
# J% j, @* N1 L7 `. X3 W) C. j" Z                              2        12.00000            0.000000* h+ b. P  ]. l5 w9 G+ U" g
                              3        12.00000            0.000000' j* O6 T( G8 N# ?
                              4        0.000000            0.000000
8 `# a: j7 Y0 S; q                              5        0.000000            0.000000
/ p" z2 C' i. P# ^  p) j                              6        0.000000            0.000000: d' D, ^  h/ V& C+ X$ @
                              7        0.000000            0.000000
1 z  ~$ M; x! |  Y                              8        0.000000            0.000000- L' E; M0 F8 v9 m# |' U3 Y
                              9        0.000000            0.0000004 [& s0 p' |0 {9 a" E" _6 e
                             10        0.000000            0.000000
# V+ S& m' z0 ]: [8 {( s                             11        0.000000            0.000000
1 @. w3 o) O% Q8 b: ^9 ^7 q) g% f                             12        31.50000            0.000000& H% o1 x: f2 r; h; R
                             13        28.00000            0.0000006 n" M! K5 ^8 c/ j2 |' t+ V2 z
                             14        0.000000            0.0000007 {- F& ~* e7 t' K; i. t$ C
                             15        0.000000            0.000000
7 u) s; S4 p: `, J                             16        27.00000            0.000000( k4 d  k6 Z4 Y6 i# J
                             17        27.00000            0.000000
% k8 }4 h+ V- [/ \8 t/ ?                             18        0.000000            0.000000
) a; \; Q1 D  s# a$ `+ s1 k0 H                             19        0.000000            0.000000
8 Y  c' b. D3 ^0 ^6 ^                             20        4.000000            0.000000
1 |8 Y: d* w) R3 o                             21        3.000000            0.000000
9 ^2 t' [1 T0 E7 |. I                             22        0.000000            0.000000
* `+ t8 e! L; P2 }, F/ N                             23        0.000000            0.000000: P9 g* W! _( I% u" ?
                             24        0.000000            0.000000
4 H' z* K( z* Q3 V7 v# ~                             25        0.000000            0.000000
8 F1 Q* {% ]2 S                             26        0.000000            0.000000
. v4 H( b+ g% n( ^                             27        0.000000            0.000000
作者: olh2008    时间: 2010-4-16 07:49
VB中调用Lingo使用DLL就行了
作者: olh2008    时间: 2010-4-16 07:50
这是一个例子,可以参考一下。8 F9 ~9 w0 a% ?: h! H- A' D
Staff1.rar (8.2 KB, 下载次数: 6)
作者: cqwj    时间: 2010-4-16 11:56
回复 3# olh2008
- p7 _4 Z9 l) M' R( C7 x( m; W% e$ _# a3 M2 v) C
4 O" t7 f! e% {# C# q7 _
    你发的附件不对,再说我也有这个例程,只是不清楚指针这么写到数模里才好调用。
作者: olh2008    时间: 2010-4-16 11:59
指针怎么写到数模里

, M2 d( D7 y- z# B9 R/ i这是什么意思?
作者: 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的帮助文档。例如:
6 E3 e+ d5 ]1 ~5 p5 h) ]Solution Commands in Brief5 y, Q) N% M$ l' x& C1 }
Top  Previous  Next  . E) F2 ~  V9 n$ e2 b0 k7 D; }
DEBUG " ]4 O, C9 I+ f; ~2 `
tracks down formulation errors in infeasible and unbounded models' T) r8 J2 E- r' {

: \9 [8 c0 Q5 k# W& R* y" X# ~GO 7 r  O  m. M4 N, i* {0 R. x
solves the current model
! h4 p6 H) V! f& r9 j
. F9 C/ y% D( G$ v# [/ D2 rNONZ
0 q" W8 c( X5 N( }* ?7 [+ ] generates a nonzeros only solution report
' s+ L* ^* O9 Y. d, U8 z1 ]
! a$ x- W2 z% {! W2 HRANGE 4 `+ s6 k  L& q4 @0 g
generates a range analysis report
& F; o0 X! K3 G8 A 0 U6 A  Q0 W& R3 X6 I/ f
SOLU
. C5 {! M0 W7 M. g5 z) [7 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