设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9292|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
+ R8 v; j! N5 ^5 X4 {/ S) I private boolean findPotentialPartner(){- d' ]0 O" ^8 Z
  boolean value = false;$ j4 F1 c8 k* ^2 B# M: S
  
# T" e1 i! X/ H. R* m% P  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
  I% b& N: ]% E! ~! U# y5 W. k. _  Iterator iterator = grid.getIteratorAt(x, y);
# N+ n( L1 K# T7 B  SexAgent ag1 = null;  
+ v3 z, H9 G) b# S  SexAgent [] potenAgent = new SexAgent[20];" S0 E6 M' C3 Y
  int goodNumber = 0;$ K0 t) O- ~! z9 u' W% @% F& ?
  while(iterator.hasNext()){* N9 p* g1 D( R6 [
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
# p$ L. d6 M; [9 X) `   ag1 = (SexAgent)iterator.next();
4 {+ r  b; W; d- b  k   if((ag1.sex == FEMALE) 6 L, l" z6 d+ l' d
     &&(!ag1.isCoupled())){! y* o" I: B5 @
    System.out.println("YYYYYYYYYYYYYYYYYYYY");3 }. _3 n: \+ y1 \; N! ]) Z
    potenAgent[goodNumber] = ag1;
. W7 V( \$ d. n5 y# E: {    goodNumber ++;
, x; l, v, l0 U- e   }
! ]& J) R3 C5 Q: |1 `9 a1 o# |1 F( d/ d  }0 A( X. @6 Q- h% H( u
  / z7 h1 P- L9 P7 |6 a  I& I9 U
  if(goodNumber >0){2 N" J3 p6 k4 B6 g
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); ( L1 L% r% K9 T
     Random rd1 = new Random();
* \8 \2 h0 x; b     int select = rd1.nextInt(goodNumber);
8 M$ `, Z& o  P7 o; B6 @% M     potentialParterner = potenAgent[select];1 v7 D- |2 C! L
     value = true;
9 o! d% a- v6 o* c  }3 J  y$ }% P, Z
    return value;
9 A( C2 {1 ^; @, m7 _ }4 d9 W5 \" F: X# i* I
始终只能打印出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-2-4 17:07 , Processed in 0.023241 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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