设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10817|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。* _" i4 p- `' G
private boolean findPotentialPartner(){
. {2 O8 m2 `% q9 Y0 I  boolean value = false;4 ]* R& }: @  l9 Y1 J
  
& e& a8 }1 P/ T1 @! {  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();9 {, B  F0 G: U0 t3 E6 f
  Iterator iterator = grid.getIteratorAt(x, y);
* W8 w$ |1 p* D- f  SexAgent ag1 = null;  : Y) o: S  v. a" v
  SexAgent [] potenAgent = new SexAgent[20];
) a" G: y- G( ?  int goodNumber = 0;3 V( f& x, x5 W9 ?2 F: Z+ r
  while(iterator.hasNext()){
$ [' i5 U( ]6 o  H8 I5 f& n, q   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
$ N9 u$ d; z7 p  X6 }   ag1 = (SexAgent)iterator.next();
. R2 d, G1 L$ r   if((ag1.sex == FEMALE)
0 x+ {& U  H" t' F0 O     &&(!ag1.isCoupled())){
9 q9 d, `- B- n: l    System.out.println("YYYYYYYYYYYYYYYYYYYY");
# k1 G/ H1 Z. \    potenAgent[goodNumber] = ag1;
* n) y/ @! |5 ?9 \" x    goodNumber ++;
! h: c! ~" c/ _" |7 x* D1 Z/ L4 d   }0 n9 Q( \8 O; I3 m' n' r/ p- Z
  }
+ H) R9 @, R! v3 c9 [' @  
9 J' k* O* L( x4 g7 m( \* d  if(goodNumber >0){- p& \  y- i1 ^6 H2 c
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
. C+ o! Y% a) ^' l     Random rd1 = new Random();5 {; w  y7 r8 U. Y6 w" l; z
     int select = rd1.nextInt(goodNumber);
% t' F- o5 e' M) d     potentialParterner = potenAgent[select];
0 \$ m7 g% ]6 M     value = true;+ O/ Z! P- Y3 p1 i. H
  }
0 j/ S7 G. I! \  j* I    return value;' r' H0 b, W4 r) H: L/ _( |0 H
}
  _- N7 G/ g( i( s5 Y# u' L始终只能打印出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-17 18:48 , Processed in 0.032385 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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