设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9374|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
1 z( ?2 V: ]5 W private boolean findPotentialPartner(){7 U% T% s- G" t; r: x8 \: |5 `
  boolean value = false;
' V0 z8 j0 T- A# ^) c7 d: Y- q  
! v# r! n  F7 w& z- Q: d3 M  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();5 k6 Q' M: \) B1 H* N$ Y: B* f
  Iterator iterator = grid.getIteratorAt(x, y);  M* |/ Q" s. Q! P  {7 C
  SexAgent ag1 = null;  
: q" i& R; M" P; J9 u  SexAgent [] potenAgent = new SexAgent[20];. S9 _' [  l" P* v
  int goodNumber = 0;
6 a: p! b, g+ j  while(iterator.hasNext()){
! S+ u1 m+ |' o% |- ]- V0 @7 L  q1 X   System.out.println("XXXXXXXXXXXXXXXXXXXXX");! C! ?3 K' b5 _/ R  c7 X% M
   ag1 = (SexAgent)iterator.next();
1 Z1 W: ~0 r4 W: p6 a   if((ag1.sex == FEMALE) - v- T! F- s. Q: |
     &&(!ag1.isCoupled())){
, ]4 b& y  L' J+ v    System.out.println("YYYYYYYYYYYYYYYYYYYY");0 ?% K5 L0 B3 ?$ T
    potenAgent[goodNumber] = ag1;. @( w9 s) s) R1 X! D- Q- q% `1 x
    goodNumber ++;* {7 O* m$ V# w
   }
% w  S$ ^* d# Q7 t  }
$ F9 X* S  Y" M8 ^! _( @  , m3 P* x3 F& Z7 W- o
  if(goodNumber >0){7 Z8 H2 v# F+ n# a) E) t5 ?- ?" N
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 6 s5 o2 D6 g& B* @! O3 h4 i
     Random rd1 = new Random();" g; ?2 A7 p2 v# u1 P# n8 V
     int select = rd1.nextInt(goodNumber);
0 j2 S: }" J8 u$ N0 Y! s     potentialParterner = potenAgent[select];% ^1 I# Y2 Y$ l- ]! i
     value = true;7 T) X* c' o4 L* Q3 D, R
  }- v: g) o9 [8 h$ O! O, i8 Y8 {
    return value;
$ ~7 {! Y  F0 H' c: a4 `6 y }
" G+ c4 ]# t1 ]# I1 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-2-17 02:42 , Processed in 0.024500 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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