设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9646|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
$ Y3 s8 l. ?" [4 H1 }/ s& |5 H private boolean findPotentialPartner(){% d# ]0 W+ _; F
  boolean value = false;, o8 c4 B- {5 ?3 ~6 u
  
! e. K1 T6 x2 e3 K* D: S5 X  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
3 K, y" ^' ?0 G  Iterator iterator = grid.getIteratorAt(x, y);, M- w8 O5 G+ x! `
  SexAgent ag1 = null;  
8 ~, s  T6 v: C: B0 P: q# b$ Y7 x  SexAgent [] potenAgent = new SexAgent[20];
. Z$ p# j, k$ ?0 ?# {. i3 ~6 ]  int goodNumber = 0;' a- p% {: T& [, n; p2 |- Z
  while(iterator.hasNext()){2 [* s6 @' F3 I2 H+ N# Y- M' b
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
; d) F- R' P) x9 Z) N8 K6 {) T   ag1 = (SexAgent)iterator.next();( o  p1 V- Q% w3 o
   if((ag1.sex == FEMALE) 3 x- A/ w" n( D3 I7 F8 ^% H3 @
     &&(!ag1.isCoupled())){
5 R9 x6 {5 M+ \1 r0 j7 [    System.out.println("YYYYYYYYYYYYYYYYYYYY");
+ O3 }5 y! i9 F% {; B6 F! u' [( x    potenAgent[goodNumber] = ag1;; u  n; \' @2 W! \" {
    goodNumber ++;$ U, S  k4 Q9 J3 U
   }3 W' a3 U1 m0 V) F
  }+ p! o' E$ {+ A. _+ z* b& S5 l
  
( j( b  T% M8 d( }+ r  if(goodNumber >0){
4 P) i% Z- r% |. t  S: ?9 v7 W4 L     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
' M( I7 K" V' O$ a     Random rd1 = new Random();
1 |/ x! ^" q$ V8 @  M% E- _' I     int select = rd1.nextInt(goodNumber);$ [1 b2 R) W) a2 Y- T
     potentialParterner = potenAgent[select];7 Y0 \1 _0 E. Q, B/ j" O
     value = true;
% d; j! B6 b$ h6 f/ r/ I$ l( k  }3 T- \/ v. u! ?* J3 x7 g5 c, i8 _4 D
    return value;" c8 v+ K7 U, d5 F& P1 B
}
: a8 c7 d* w, `, b& Y始终只能打印出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-4-1 19:18 , Processed in 0.015098 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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