设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10762|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。% N. e# c0 Q+ D# J3 j' w# m
private boolean findPotentialPartner(){
- b  e6 Z' M8 f2 [/ D  boolean value = false;
! ?* |6 R0 K% \* z* `  
" z: m: d# x% x' \: v) E  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
) q; M3 h" z- v. u; [2 V  Iterator iterator = grid.getIteratorAt(x, y);* G5 x. d0 \, [* m2 l7 P
  SexAgent ag1 = null;  ' X  P9 A1 a: J0 K$ ^7 y: D" G: n# ~
  SexAgent [] potenAgent = new SexAgent[20];6 _$ c: a/ D) i/ B
  int goodNumber = 0;
3 R* k' Z; F) }8 d" f% A, ~  while(iterator.hasNext()){6 u- K3 ?9 `7 ~+ `" s: @! p
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
% b+ `5 T- K+ L$ X. O   ag1 = (SexAgent)iterator.next();+ h8 ~6 D& E- i8 Q# a
   if((ag1.sex == FEMALE)
) g! p  r2 N* d* s2 L% O% g/ c     &&(!ag1.isCoupled())){
2 ^+ S" u/ g! q3 {    System.out.println("YYYYYYYYYYYYYYYYYYYY");
& t' c# Y3 U( `; l8 W* S! y, I2 @    potenAgent[goodNumber] = ag1;
7 d- m) V( f# n! A    goodNumber ++;( [; Y: `2 K* ?' d7 U
   }
1 W7 h: D. F" o) A, U  }0 @2 p5 q3 c) T& g! x( I3 F1 ]. ?
  $ Y0 n! P$ W( A
  if(goodNumber >0){
* Z: R. p5 T/ j( `+ ?/ O' t: p     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
3 S8 e2 P' v% m6 k5 c     Random rd1 = new Random();
. A# x, y6 @2 z7 ^+ J" `     int select = rd1.nextInt(goodNumber);
( w" d2 k7 }, t     potentialParterner = potenAgent[select];" Y0 A9 j' n5 G  |+ P& u
     value = true;
% x/ y6 l6 i4 h- u- J  }
5 F# J/ b; w( T$ _* K. K( I( ~+ o    return value;+ |  P, l: C6 W, G# @: J% Y% {
}4 ~. ]9 m7 m, I! q0 {' V- [- L
始终只能打印出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-11 08:44 , Processed in 0.015113 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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