设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8828|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
( s% y) O6 p0 S" x0 _ private boolean findPotentialPartner(){
" c' J8 l% x" ?  boolean value = false;5 G6 ^- }+ D& P1 G! {( f. w
  
' J  t2 }' {+ }  u6 i  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
, s+ J$ R8 |" B1 y! B  Iterator iterator = grid.getIteratorAt(x, y);
: W; C* d( V2 j! S) s  SexAgent ag1 = null;  
- n2 O& C7 m1 {6 Z; K9 r) ~0 @+ h  SexAgent [] potenAgent = new SexAgent[20];
' `# {5 U2 F( D4 \1 w  l! B8 c. o) S  int goodNumber = 0;5 b5 k+ s9 ?" f* r0 Q
  while(iterator.hasNext()){
! t, i" K! B) s# Y0 \   System.out.println("XXXXXXXXXXXXXXXXXXXXX");! A# G1 N" M) W6 c; X; [
   ag1 = (SexAgent)iterator.next();# Y+ F% c" L7 d" f& V
   if((ag1.sex == FEMALE) : B) @7 a/ m+ [8 l
     &&(!ag1.isCoupled())){5 I  Y9 ?5 [3 y6 I2 {6 {8 ]- O
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
- e* i) S; r6 Y: [( I    potenAgent[goodNumber] = ag1;
$ ?2 S8 c  w8 q3 v1 I" O' S2 }    goodNumber ++;4 a; ^4 n/ k1 ]3 n+ O8 k* c/ l5 }
   }- N% F! E( F/ l# e
  }
4 A% p# s, Y. f( {8 K  & C2 N5 Z* R  |* j
  if(goodNumber >0){5 g8 V* _1 ?, t& ]* P. Q
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
! H5 g9 e3 G& U* H# ^$ G+ R# I4 A     Random rd1 = new Random();
* G  d7 `9 O( D/ n; G9 O7 e     int select = rd1.nextInt(goodNumber);
7 m, N+ Z1 y/ j/ u- Z! i     potentialParterner = potenAgent[select];
3 n% U" |$ j7 F4 `- A; e     value = true;$ M5 y" i7 x+ ~4 u
  }
8 P3 E- s' F9 J( [' D- n7 b5 ^    return value;" l$ a# }, C5 E5 V0 _( \
}
2 O- n- H9 R2 e+ \- e7 h始终只能打印出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, 2025-11-15 18:55 , Processed in 0.012913 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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