设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9394|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。1 u1 A. m) n1 p1 I. v
private boolean findPotentialPartner(){) e/ h8 [# O- e# D  T( ~: k
  boolean value = false;, F: x7 w$ H  o+ j" Q8 V
  6 y5 h& s6 b8 ^7 {% g& s3 J
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
- g# q3 q3 `3 k$ d, K( v  Iterator iterator = grid.getIteratorAt(x, y);' F! l1 G1 a( t) {
  SexAgent ag1 = null;  
3 z6 y5 Z$ P0 D$ |& q( _" m9 P- C  SexAgent [] potenAgent = new SexAgent[20];
$ z8 H9 v9 T* }8 r. k0 [: t6 n  int goodNumber = 0;6 A  K. X8 R6 H+ k# B) {
  while(iterator.hasNext()){8 K0 e" B& M% k7 n+ [3 q& n) c! |9 P
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");" E* w$ T6 @$ R; h
   ag1 = (SexAgent)iterator.next();
6 _5 g0 P" D6 R% t' ?% S/ m   if((ag1.sex == FEMALE) 6 D. k$ _4 Z* ]8 c1 n* J# u. c
     &&(!ag1.isCoupled())){
4 f' ^9 I$ c( O. l. A    System.out.println("YYYYYYYYYYYYYYYYYYYY");$ @2 ?- u( i+ I% F7 U, n
    potenAgent[goodNumber] = ag1;
5 k: V0 ]: Q5 @& o; S0 I( ^- y    goodNumber ++;
( C" R: E  c' ?9 X* C5 _   }& M# a# ^* V$ J. ~' S
  }
% M( t9 g, h( j0 H: O/ O  . k) I  b$ L  y- E# D4 w5 A9 W
  if(goodNumber >0){
$ ]4 R2 l! {7 o! F% S# C0 p# L     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
6 p" v0 e3 y, T' u- a5 b     Random rd1 = new Random();" w. S' A' a: d
     int select = rd1.nextInt(goodNumber);
% c3 `- f: _6 K1 K# s     potentialParterner = potenAgent[select];
% F$ Q% s9 ~( L- Y; L" q* x; |     value = true;
2 r! J' \) x& q" {, n  }, e" p/ `- b. i8 o( f
    return value;( p" t1 W6 {' D! g; X7 p
}, f; x. X: c" f' ], k
始终只能打印出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-2-19 18:00 , Processed in 0.013883 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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