设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10101|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。% v7 X& x9 A1 o8 n5 K2 N- W1 J( [
private boolean findPotentialPartner(){
) W2 w* N9 ?7 o; k6 Q' u, V$ A+ \2 _' q- d  boolean value = false;
1 ?- Y0 N' L. ?" r9 Z# y  
3 ^3 e8 b  W$ v: q* o: x  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
* g+ H* N. e, l5 a6 _/ Z  Iterator iterator = grid.getIteratorAt(x, y);
$ X9 a1 w  d  r! Z; [5 |! Y7 C  SexAgent ag1 = null;  7 }& H( d$ {$ i9 M3 M- J
  SexAgent [] potenAgent = new SexAgent[20];  Y7 h9 e3 u0 E; A
  int goodNumber = 0;! N1 a7 o2 b" h8 t) }' U9 T4 I; U+ E
  while(iterator.hasNext()){
7 T" r& W0 M3 L8 ?0 }! Y: h   System.out.println("XXXXXXXXXXXXXXXXXXXXX");( M! G* s; y$ s7 O1 D
   ag1 = (SexAgent)iterator.next();
. O+ y; n4 O, J" |  n# ^   if((ag1.sex == FEMALE) & F( Z1 `1 q2 \3 j( d9 ?* @3 @8 j) }8 c
     &&(!ag1.isCoupled())){, ?, ^) q' i0 g% y- h
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
) {' F7 z, H2 U0 ^! A5 \    potenAgent[goodNumber] = ag1;
: Q) W: X  t# V    goodNumber ++;8 T* N5 G' Y4 O; B: p9 F' i
   }
1 ?$ }  Y. d: E, Z  }& k3 }2 _% H% @& g
  
5 u5 U* R9 a0 g' S2 l0 p  if(goodNumber >0){9 P8 K8 w5 o* L/ }1 M
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 5 |6 L" ~9 C* r+ y; t* Z& o" d
     Random rd1 = new Random();
2 x- s" k8 D9 x) Z     int select = rd1.nextInt(goodNumber);: g4 a+ X) x0 }% O, @
     potentialParterner = potenAgent[select];
8 V; s+ ?! h5 v* ]; p     value = true;) z2 T+ a7 G4 P& h( L
  }$ d( n* P# F' |" V' B+ y9 W$ _0 Z3 q
    return value;
. d  h  l% {/ \0 J }& ]  F' t& _: J7 O3 n) d
始终只能打印出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-6-12 08:41 , Processed in 0.012183 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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