设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10897|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
  h! o8 p6 |6 ?: {0 N3 _; O. V( U" A private boolean findPotentialPartner(){
1 s2 F( W' n" [$ H% C6 i! G  boolean value = false;
) ?8 J3 t" J0 Q  Z6 X6 G  ) E' N  |3 |/ D8 r" D4 ^
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();% j, r) C) b3 n7 k! t
  Iterator iterator = grid.getIteratorAt(x, y);
6 t& j2 C' R$ c+ }/ b7 P2 e' O) \  SexAgent ag1 = null;  
* E2 X$ [; q  \( P3 ]/ z6 N/ T4 d  SexAgent [] potenAgent = new SexAgent[20];# O9 m+ y9 V! ~9 k' h
  int goodNumber = 0;
9 C9 k% O% N3 x7 I9 o/ k9 A  while(iterator.hasNext()){* k8 w, ?8 S0 ^+ J
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");; d" s% ?5 q" R2 T; A% _
   ag1 = (SexAgent)iterator.next();
7 y1 s/ ?  X* B* u. L$ e   if((ag1.sex == FEMALE)
- ~8 [. B# |/ w/ J     &&(!ag1.isCoupled())){
& D3 p3 p, N+ Q$ k# s. i% M    System.out.println("YYYYYYYYYYYYYYYYYYYY");: N& U5 W9 b9 r7 a; n. ?
    potenAgent[goodNumber] = ag1;
' C$ W, l7 i* U+ N    goodNumber ++;! A0 B0 O1 i/ |. n) Q
   }% G: b1 {: ]6 [- D2 t1 K
  }& M% G' X8 {% H
  : s1 J' q: R/ @: b
  if(goodNumber >0){
7 Z3 v* B+ r2 P1 [! |     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 1 Q% W8 r9 q8 L! s. ?1 {- C- z5 U, H
     Random rd1 = new Random();( g# h+ r6 ]3 n3 w# o" J- l' I
     int select = rd1.nextInt(goodNumber);( m/ y( c  H9 _: L( W7 h3 _
     potentialParterner = potenAgent[select];
& u9 H) K: x! e, z4 w$ C; c6 h     value = true;
3 b4 ^4 ?/ a( _0 m* [7 u" R+ m! ]  }" \+ ?; K. a7 d8 H! w0 D% m* \( R1 r6 @
    return value;
& j: T0 w; M/ q) k8 W }
# F$ z. X: E8 D  G# I* S8 P/ 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-8-28 11:05 , Processed in 0.013966 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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