设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10112|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
7 P5 U- [2 J- x) J private boolean findPotentialPartner(){
: x7 @% u" i4 \  boolean value = false;8 \8 Y) t& k; c
  
3 U; ]8 A5 e1 D* P4 U  d- V  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();: C. m2 Z4 j8 m" v$ U3 ]# ?
  Iterator iterator = grid.getIteratorAt(x, y);1 Z: }# B: Z; n6 S* k9 U; y& P
  SexAgent ag1 = null;  
- g* A( h: I9 x6 h( @! e3 O/ X9 P  SexAgent [] potenAgent = new SexAgent[20];$ i5 Q4 f5 b* J4 l; G  B6 S( C
  int goodNumber = 0;5 R2 p$ y# b' j$ K$ u0 N
  while(iterator.hasNext()){
  C. E8 s, `% Q2 N* O   System.out.println("XXXXXXXXXXXXXXXXXXXXX");2 S( e; N' @1 Z9 b% @# f
   ag1 = (SexAgent)iterator.next();( p2 ~7 f1 Z& {8 B
   if((ag1.sex == FEMALE)
* _8 w$ B% A( c' z* r, Z' E0 H: F     &&(!ag1.isCoupled())){
5 g4 r* S* c$ x- t3 j    System.out.println("YYYYYYYYYYYYYYYYYYYY");
7 V; f" ^& ?) G, g9 Y3 s! ^    potenAgent[goodNumber] = ag1;
2 e2 J8 `3 ^& e) f: Q    goodNumber ++;6 Q& j1 U; a5 j( {4 i# x/ d
   }' E5 L1 U. W7 |, @( a* [' X" o
  }- B" y. o) h& O4 J4 x: {
  4 @, H4 ]7 G8 _) N3 ^/ G" ~
  if(goodNumber >0){
% \3 G; q6 c, j% W( g% t     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 4 M; v, M5 _" d) w; t3 S1 s
     Random rd1 = new Random();
, L5 K8 x! u# B( {% ]4 Y% f     int select = rd1.nextInt(goodNumber);" m+ l, S& y3 L9 |9 z
     potentialParterner = potenAgent[select];
" I5 s& H) O' i     value = true;! l8 d6 G5 g& R! }4 X
  }
& H/ i6 F, O6 I1 B( b  g$ A1 K    return value;# C' y4 z7 E+ ]9 E
}
/ N+ Y3 m, ~/ ^: O0 V始终只能打印出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-13 17:00 , Processed in 0.013210 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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