设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10607|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
3 z' u/ U: d- j" B9 N$ N/ f0 S private boolean findPotentialPartner(){. F- E0 Z3 o' K( c( L; G2 ?' Q
  boolean value = false;7 x/ V8 i5 _, h+ s( I, C
  
0 b2 `7 L7 }. u$ m& J+ J  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();' H; ~/ B' s6 w% O8 |( e
  Iterator iterator = grid.getIteratorAt(x, y);& M# I0 R+ c: q  h7 b6 {9 M$ [
  SexAgent ag1 = null;  " J  V' d, i7 P4 s
  SexAgent [] potenAgent = new SexAgent[20];8 K4 l8 ~  J# E$ i+ Z5 b
  int goodNumber = 0;; s5 q) I  D) F" r& r, p/ C
  while(iterator.hasNext()){$ z' d1 }9 B. a% F' d3 z
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
' A! v5 [9 M2 s   ag1 = (SexAgent)iterator.next();
- I- `" l4 w0 S& f2 L" ?" T% \   if((ag1.sex == FEMALE) ' O! w3 l8 y6 I- r' ]
     &&(!ag1.isCoupled())){3 o2 f" o7 {- g6 L$ f: ~
    System.out.println("YYYYYYYYYYYYYYYYYYYY");* O: A( e. }+ ]2 j# F0 f
    potenAgent[goodNumber] = ag1;
8 ]8 Q! ~- m8 i# x* Z- Q; o) w) _: @$ g    goodNumber ++;
  Q# a* n5 V# _: Q   }0 I3 l0 V+ v4 d0 @
  }
# C8 ~: V' p3 b! h3 c  
  r) N2 p' s6 v0 `0 V- K  if(goodNumber >0){( j/ G" }- o$ U! \( U3 p
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
+ e, T, |+ O  M) ~2 y8 X1 ]/ @7 |     Random rd1 = new Random();
! t: c: K  j# w- I+ y$ ?, `     int select = rd1.nextInt(goodNumber);
: Y: Y2 Q. P1 X- O* A* E9 C9 i- G     potentialParterner = potenAgent[select];3 W* b$ ?1 V, H! Q8 l9 Q: X
     value = true;: c3 @( m: z& l3 u
  }
8 G. j- k1 B  I- T    return value;2 b0 V6 x! M# s2 l3 s1 K) t
}. v8 [3 D  l; Z# H
始终只能打印出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-7-29 22:40 , Processed in 0.018557 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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