设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11217|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
# _$ A. y) N9 O& P  H8 @, n private boolean findPotentialPartner(){, Q; Z. x6 Z% O, b4 C+ F. k
  boolean value = false;  C$ x8 ?# J2 `& R
  
2 N6 B5 \* p1 ^5 ]/ P, S, i  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();" ^, T" O" l! f& b
  Iterator iterator = grid.getIteratorAt(x, y);
4 D% ~' L& X$ G8 p9 @4 t9 |0 w7 g9 N  SexAgent ag1 = null;  
+ D) t. v$ `8 w/ ^" j  SexAgent [] potenAgent = new SexAgent[20];
7 y$ z8 h6 [% g$ R  int goodNumber = 0;0 P4 e  _4 f& C1 Z6 x' O0 H( Z
  while(iterator.hasNext()){
2 }) K/ N* ], n& G% e* X1 g8 v   System.out.println("XXXXXXXXXXXXXXXXXXXXX");/ R6 }9 x5 ?3 u* c
   ag1 = (SexAgent)iterator.next();
3 n, Q* H6 z3 B8 o) H   if((ag1.sex == FEMALE) . R# j1 A; F/ R; z' N) A* f
     &&(!ag1.isCoupled())){
/ S1 n; I( T; ?8 x% p) c/ S# s" O    System.out.println("YYYYYYYYYYYYYYYYYYYY");
; x3 h, G1 F$ r' `, T) [    potenAgent[goodNumber] = ag1;! k4 _' _8 P' \) J
    goodNumber ++;
$ w" e4 A( |- F3 B7 g   }
3 T9 n1 {! [: p  }6 U" l& c5 h, |" C6 X% ?& u  [% O
  
& a  y' B! \8 \3 g0 C, \4 [  Z6 Q  if(goodNumber >0){
" C: O5 l7 p8 u8 ~+ @. F6 z     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
8 F6 m- d( I0 Z! \6 D4 x  W     Random rd1 = new Random();
2 }# n" g: B9 \' ^4 n  h/ o     int select = rd1.nextInt(goodNumber);  d, T- I: }1 I
     potentialParterner = potenAgent[select];
% j0 x5 B! {9 T' c( I     value = true;
4 `  {. W! [+ y" F. ^  }
" N7 h0 J4 f: d/ {* @6 W- k2 M3 B    return value;
# z6 l1 \  ^) W2 H( x }
" r( a/ k* j& ^始终只能打印出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-9-23 18:52 , Processed in 0.012952 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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