设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10987|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
% z% ^: R' l! Q$ _& o, K private boolean findPotentialPartner(){& `/ D3 E! ?6 Y
  boolean value = false;
$ J7 ~( t: p. k. [  
8 ?; N7 i- e. p; y  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
" M  S2 b, w$ f; m  Iterator iterator = grid.getIteratorAt(x, y);7 P9 ?- n. U0 \0 b9 {% d  i9 t! |
  SexAgent ag1 = null;  : t  @* C. ]6 W4 l- Q
  SexAgent [] potenAgent = new SexAgent[20];& q. z3 B6 l4 P: D
  int goodNumber = 0;* [( u! [& C( t1 e* i
  while(iterator.hasNext()){
8 ?0 O& P4 ~6 o/ T" V9 x3 o   System.out.println("XXXXXXXXXXXXXXXXXXXXX");' t! F! j" [: T' U; z2 S4 A6 X8 E
   ag1 = (SexAgent)iterator.next();
; F  r9 V2 g& {  ?6 w3 \+ Q8 f( \   if((ag1.sex == FEMALE)
! |+ ?& w1 c/ W4 P3 Q     &&(!ag1.isCoupled())){6 `8 d7 Z# T" t1 x3 {0 \9 I8 I" p4 x4 f4 D
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
+ Z# u+ Q: {+ C% ], `0 J- p7 \    potenAgent[goodNumber] = ag1;+ B3 w) k% {: m4 Y, j
    goodNumber ++;% t# ~7 p0 {6 ~; {" ^* T4 Z
   }: o5 d1 q3 S" M& I) w5 @; i
  }( H- J" v7 I. G. J
  + \. N) [% Y! c. n/ ~, p3 y
  if(goodNumber >0){1 \' _5 ^" F2 i6 D0 ~' @. D
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); & E7 a% \6 s9 R8 a
     Random rd1 = new Random();
! I; N! ~6 ?% L. ~     int select = rd1.nextInt(goodNumber);
, P, b8 x/ w( w  {7 X     potentialParterner = potenAgent[select];) i  @( X9 c. M5 o
     value = true;4 a  c8 L- v' Z% v
  }' X! |: T6 ^- w+ C; |
    return value;1 @2 F% K7 P% x# M2 p" e3 {& j% r
}
% |* l) @0 s) a% p( y8 K3 @& Z4 ]! o1 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-9-7 21:35 , Processed in 0.031975 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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