设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10432|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
1 z; [! h: j  d' y$ R private boolean findPotentialPartner(){0 p! @( l* |; U1 w! s
  boolean value = false;
; \4 `( q# e! @$ W8 u* V  ; Q+ x5 h/ X6 ]7 U: B' i" @4 c: m
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();, E' Y) T) u  |  V- Q6 D; `- U
  Iterator iterator = grid.getIteratorAt(x, y);( y0 t( Z/ D$ E" u/ Q0 G' d1 d
  SexAgent ag1 = null;  : u! D; S' d0 v' c7 [
  SexAgent [] potenAgent = new SexAgent[20];& a4 Q$ M1 y& A
  int goodNumber = 0;, O4 M/ p- `6 X. z+ q, X
  while(iterator.hasNext()){
1 b7 |2 q: q; M   System.out.println("XXXXXXXXXXXXXXXXXXXXX");+ T" u( _7 N" M# k6 ~6 }3 u7 ~
   ag1 = (SexAgent)iterator.next();
+ C  v6 D9 n" B$ H3 G$ Q   if((ag1.sex == FEMALE) ; Z" D# u8 d# s4 C
     &&(!ag1.isCoupled())){* r7 X8 w7 q* C* l- \! Q( F
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
1 i/ v! t/ z& n6 L4 Z& Z" t) e    potenAgent[goodNumber] = ag1;6 \( |( q# g+ d4 q3 I& _2 Q2 G8 s5 [
    goodNumber ++;2 K2 T4 x8 n3 a6 d, [' X. [1 U3 v, z
   }
, C$ f- O& H" G' z. d, f- \  }. ?! L( S+ |; Y4 J
  
' Q6 [" X" I( p  if(goodNumber >0){
3 K0 x. o5 ?$ |" Q+ W4 S+ |     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); : g; |, I( p4 V4 d  }" k" R3 ^
     Random rd1 = new Random();" M6 j( v3 B" a* d/ I  Y6 C  r
     int select = rd1.nextInt(goodNumber);
6 `" f, Y0 u- Y4 `     potentialParterner = potenAgent[select];" k8 m# L7 h8 R6 F
     value = true;" L& G" X) h' \- O4 I! T
  }
5 B% c5 e1 a9 t6 K8 j. m1 W    return value;# K) [$ r5 n. h* }) S/ A
}
+ r* a0 d$ x+ Q5 s4 t- ]始终只能打印出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-7-19 17:10 , Processed in 0.011802 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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