设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7908|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。3 Q# V( o/ x1 P
private boolean findPotentialPartner(){' x# c- C  `# P. b
  boolean value = false;% F0 b/ d# p& q* G6 ^5 S. e" v
  . R5 }& n7 r' I# v
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();% d' d2 y. Y/ x9 N4 ?  M
  Iterator iterator = grid.getIteratorAt(x, y);' G1 F( G8 @1 z5 w) x
  SexAgent ag1 = null;  
, Z, t8 v: X% I3 o6 v  SexAgent [] potenAgent = new SexAgent[20];& h' Q6 q) J9 k& r" u# ]5 W* G
  int goodNumber = 0;! t2 k! n+ s  C6 L3 E% P9 b/ N
  while(iterator.hasNext()){1 K) Q) l/ a) E5 [  r
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");, k8 b+ t) S0 g) \8 r
   ag1 = (SexAgent)iterator.next();
  E9 ~; b8 H) A/ S   if((ag1.sex == FEMALE)
$ g$ |1 A" _$ V     &&(!ag1.isCoupled())){
0 J' A5 I, M/ ^7 Q    System.out.println("YYYYYYYYYYYYYYYYYYYY");
- r2 b, l5 q7 E1 ~0 }    potenAgent[goodNumber] = ag1;
( P+ M& s$ B5 c4 H4 [& x2 j    goodNumber ++;
4 k% k' l" _2 q) b1 E1 n, M" n   }/ ^! v, e1 \! h* c
  }2 N) b7 P6 C# F! v7 u9 S
  - N2 i/ w! A7 @" `3 ?2 }3 ]
  if(goodNumber >0){
9 L" L' c* y3 T8 |; _4 s: y% b     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
# t' h; x; N# V6 q/ J) J4 p     Random rd1 = new Random();
+ s* q+ C4 G& p0 ]  U0 {7 J* P     int select = rd1.nextInt(goodNumber);' U6 |. {" L! _/ n
     potentialParterner = potenAgent[select];) D$ y6 l% V1 Z$ H
     value = true;, ]: _& J2 e' F) X3 g- Z2 I! I
  }. D8 S* X$ C0 e4 H0 T  f0 }
    return value;
1 n  \1 R3 [: O& \ }, {* y9 A6 X8 q6 b: N: n* J7 b
始终只能打印出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-7-8 16:13 , Processed in 0.021499 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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