设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10777|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。  U5 I4 J) _' C. T- M! ?
private boolean findPotentialPartner(){
/ I) F1 `% {* C( Z: S, V  boolean value = false;3 V$ u7 O; y2 w
  + R" |  S6 T& W7 J5 S
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
# O/ \0 G. v4 w& z% L9 B  Iterator iterator = grid.getIteratorAt(x, y);; F. Q) Y2 e, W/ W
  SexAgent ag1 = null;  * \; C" H, ^% e" |
  SexAgent [] potenAgent = new SexAgent[20];
6 Q- R2 R6 }8 A  int goodNumber = 0;
: S9 {0 s* i, c8 F9 ?6 E  while(iterator.hasNext()){
, [- {( [% Y' u5 v+ i2 v8 ^   System.out.println("XXXXXXXXXXXXXXXXXXXXX");' G( W1 }$ W8 ~4 |
   ag1 = (SexAgent)iterator.next();
- l" I2 m2 I: X( }   if((ag1.sex == FEMALE) 0 A( ]* H5 a! M
     &&(!ag1.isCoupled())){( ]* j8 j& e# R
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
6 W& l3 {+ M( c2 v# Q    potenAgent[goodNumber] = ag1;
& [, E! k( ?! m    goodNumber ++;" l  [2 |( X- V& v6 q# n: L
   }2 {* f# P! N( R/ m3 \; Y1 n
  }
/ `7 c3 S% n5 f* B( s0 v' w8 j% d  
7 m: v- o: @/ ~2 Z( R8 M( P  if(goodNumber >0){' t. h1 y! Y# V4 j, _( E+ k2 A
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); * n6 }& J; _' F5 p
     Random rd1 = new Random();
2 S/ O& c% X: g- }# ]     int select = rd1.nextInt(goodNumber);4 V  ^- \5 k) t0 h; i6 X6 q4 l
     potentialParterner = potenAgent[select];! q4 H  [6 s1 d' R4 `' c
     value = true;2 w7 |% ^3 i/ Y6 t. k& O$ W3 Z
  }$ h, v* T# ?# q8 W5 M
    return value;7 A5 \# e: Y' Y- I( f; L
}# k0 a6 Q( G, f6 g. f/ 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-8-13 09:48 , Processed in 0.018471 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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