设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10007|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。$ X6 e0 o2 @3 F  _- O! t6 r# w- S5 z7 \
private boolean findPotentialPartner(){4 `! S. x) O( h# @/ n/ J- i
  boolean value = false;; E/ y. g7 }! _8 [- X/ M
  
' e0 R: P0 W* w) M0 K$ H  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();/ Z% B* k8 C+ K" j3 f4 A
  Iterator iterator = grid.getIteratorAt(x, y);7 {& V) J# B! `2 X1 Z3 k: d, b3 h, |3 G
  SexAgent ag1 = null;  ' g6 k0 E9 A/ V8 C; P6 u! q
  SexAgent [] potenAgent = new SexAgent[20];; t$ q6 ^1 S4 a$ K) r- H/ P( }
  int goodNumber = 0;  N* u% w' C# x+ [% {+ m. I
  while(iterator.hasNext()){
% \- l3 [" F, |: [2 ?# i. V7 u   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
) a6 n5 s1 e  ^, T3 \# H$ G   ag1 = (SexAgent)iterator.next();/ I: T0 C9 L6 b  e
   if((ag1.sex == FEMALE)
: Y; L5 L, |0 A4 v5 d     &&(!ag1.isCoupled())){5 X( ?$ V) T7 J- `
    System.out.println("YYYYYYYYYYYYYYYYYYYY");/ q* j3 E. [2 T* e$ }. u8 `6 @- m" |
    potenAgent[goodNumber] = ag1;& J9 g3 ^1 @( K, s
    goodNumber ++;' n8 F6 B: _, }
   }
% B: X- |% ~! z) N, d: @' d& w  }
* i" k  m2 C7 I  7 T+ I0 q& Z, z" Z' D9 ~" {
  if(goodNumber >0){$ L: M3 j% Y$ p5 k  ]: P# V' J
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 9 D3 t4 F* i1 R0 q! }
     Random rd1 = new Random();0 N; h3 k+ n" g; T- T/ ]7 }8 o
     int select = rd1.nextInt(goodNumber);
& j+ E$ G- |* {; k7 m     potentialParterner = potenAgent[select];+ a: Q, E. N! X
     value = true;" `: |3 \4 D$ y
  }4 K1 G% j5 B. D- ?
    return value;
1 g. L* D/ i( P$ X  V7 z8 J0 S }+ ?9 N' `, U% Y7 j& M
始终只能打印出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-5-28 15:07 , Processed in 0.016576 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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