设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10188|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
6 s! {& R* O  D. W2 G! D private boolean findPotentialPartner(){
; Z+ G5 i# X6 i- F  boolean value = false;* D' K  m) R; W& R& A
  
9 u; l0 ~# g8 ]. _: u0 a+ S6 m  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
8 Q8 f  o# L! c# Q  H) g  Iterator iterator = grid.getIteratorAt(x, y);
; L8 \. L5 z/ C1 f0 k9 i1 ~2 S$ d  SexAgent ag1 = null;  % a) e% J- m/ `& ~0 ~
  SexAgent [] potenAgent = new SexAgent[20];( M( i8 a' z; b2 {8 h; ^
  int goodNumber = 0;: ^  C, m% S# z2 R0 W% s
  while(iterator.hasNext()){
2 O) o. |+ X5 M0 L7 m5 T- D   System.out.println("XXXXXXXXXXXXXXXXXXXXX");3 ]+ Y$ Z% d, e3 g' M
   ag1 = (SexAgent)iterator.next();- l7 ?  ~5 z7 `* X6 A8 R. s
   if((ag1.sex == FEMALE)
* J% S2 v8 ~: b6 k# V$ U( i. X     &&(!ag1.isCoupled())){6 }: }) U3 f% p1 \( Y& o
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
( |3 b4 s  ^) x) {( U: _: W! X    potenAgent[goodNumber] = ag1;# K6 [6 _5 q  E# z4 x
    goodNumber ++;* \$ t; Z, W8 H/ ~8 R
   }
1 H! X- p: _% |3 e" f" W: p: W( Z: F  }
& @: _& o8 G% q# [  
  D, O$ ^: A# f- T$ x3 n$ K. a8 Y/ s  if(goodNumber >0){
! s' x. w& y# p. V% s     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
* _! r' F9 k4 B) Y" T2 [9 w. H" c# t+ N     Random rd1 = new Random();
9 b( X3 @6 M4 O     int select = rd1.nextInt(goodNumber);
  i; `9 }* @* F  ]& H! G     potentialParterner = potenAgent[select];2 n1 \) _' {: {- q( @1 s% Z! r
     value = true;" Y4 \/ Q9 Q0 I+ v5 O% J$ @( ~& U. V0 p
  }, q' O  y$ W& w1 c7 d" g
    return value;/ y( t5 ]- a/ k4 K8 A
}
+ g" \! ]5 G3 p! J! G始终只能打印出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-26 07:45 , Processed in 0.013397 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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