设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9312|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
- y3 v! ?; M" ]! ] private boolean findPotentialPartner(){+ M* K3 R, L4 G' Y1 ~1 O
  boolean value = false;  s0 U; U! D2 k/ e+ J% x0 _+ Y
  * Y! B6 Z) @2 }1 t) D: W
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();0 I0 K# J% A" }
  Iterator iterator = grid.getIteratorAt(x, y);2 J0 ^+ I, a  o# k  T3 s
  SexAgent ag1 = null;  
: b( \- Q/ G2 B* X8 E9 z  SexAgent [] potenAgent = new SexAgent[20];6 B& Y, P$ _# w1 u
  int goodNumber = 0;* }( a2 W7 \' T; u9 O: X- ^( K
  while(iterator.hasNext()){
' C6 k6 L& @0 v5 D   System.out.println("XXXXXXXXXXXXXXXXXXXXX");5 c# x- s! e" n! W2 |
   ag1 = (SexAgent)iterator.next();1 r0 T; v6 y0 D( _  u
   if((ag1.sex == FEMALE)
9 ^: x4 ~4 a" C5 \* J2 K     &&(!ag1.isCoupled())){
; z3 b. ^5 g; M+ h. T$ Q    System.out.println("YYYYYYYYYYYYYYYYYYYY");% |$ M' [5 O' T
    potenAgent[goodNumber] = ag1;
( q  J( O4 _* ?8 Z6 Q5 \7 o    goodNumber ++;/ m- h9 d) D- T" F' ^; U
   }% q# [3 p2 m) r# W
  }4 u7 Q# q5 d% p+ K  g7 M  ~
  ( s2 o7 A6 y6 i, e/ K$ E
  if(goodNumber >0){: ?  }1 p7 V1 R: \
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
) e+ ?( f: c. I9 G! q     Random rd1 = new Random();; I' Q- \1 T8 h# y
     int select = rd1.nextInt(goodNumber);
- k: \* J( a4 \& H6 W: S     potentialParterner = potenAgent[select];" g8 C- W, H' w. o# ~
     value = true;
& y$ _  f$ V: q7 I- r  }
. L$ G# l) H8 H, ~- O    return value;0 F: Z( y2 ]% p( R
}/ i3 O3 A" d; |3 X+ s
始终只能打印出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-2-7 17:24 , Processed in 0.016157 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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