设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10812|回复: 3

[求助] Repast建模时,怎么在一个网格里面放多个对象?

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
  @8 R5 @0 `3 M1 L( H: c$ F private boolean findPotentialPartner(){
5 i" ^7 k1 P2 e2 {( C# A0 n; }/ I  boolean value = false;" H+ E4 F6 U% e) F- n
  6 z- k: V6 n5 i" _/ A$ e
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();/ G3 t- B/ U. z, A$ a: m- U1 w8 p
  Iterator iterator = grid.getIteratorAt(x, y);
7 f! Q5 N  H* q  SexAgent ag1 = null;  
' g1 B( C  B; c3 V" j2 A  SexAgent [] potenAgent = new SexAgent[20];
! Y' w$ z( {5 V) f  int goodNumber = 0;
3 Q8 d; }" r, V2 J6 R  while(iterator.hasNext()){  y& z/ Z# Q: C0 |; r. `
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");+ P3 ~% G. m2 j7 Y; |
   ag1 = (SexAgent)iterator.next();& z4 Q0 f5 U0 ^
   if((ag1.sex == FEMALE) % m1 Q+ C! \  X! d
     &&(!ag1.isCoupled())){% X4 m3 }) x9 G1 }
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
5 p) \4 a9 O! |9 M2 X    potenAgent[goodNumber] = ag1;
) Z2 B3 a; I8 N/ H2 X    goodNumber ++;- L, C, Z- ]& V7 x2 v  ]
   }
- p- B. V' m- V, n, l1 A% ]$ A; v  }
$ B5 N# t+ a6 t' ?% @9 w2 e5 y  
: p+ X3 ^2 {6 M# z2 E0 N  if(goodNumber >0){' ]  v& Q( g$ R8 U
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); ; S6 x4 X, b: V
     Random rd1 = new Random();
3 z+ `* C* I% Q     int select = rd1.nextInt(goodNumber);$ ~" x3 |5 c' V! S1 u
     potentialParterner = potenAgent[select];7 P' g7 Q  Y% `
     value = true;
" }) ~4 e* p) @# ?. V9 V3 C  }: ~% N6 j3 [* k; }" |7 {% R2 j9 Y
    return value;
& H9 ]5 G2 W8 b2 S3 W! ]1 n! k }/ n) w4 C; y2 o- o
始终只能打印出XXXXXXXXXXXXXXXXXXXX,请各位帮帮忙。

发表于 2008-11-28 17:44:57 | 显示全部楼层
我想问下你这个打印的XXXXXX打印了几遍,还有你是否已经把agent添加进去了
发表于 2010-7-8 18:15:38 | 显示全部楼层
囧。。。这么久都没人回
发表于 2012-4-14 14:56:01 | 显示全部楼层
08年提出的问题到现在都没有人解决啊,真是够可以的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-8-17 05:34 , Processed in 0.018689 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表