设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10611|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。) R! E# v! b( t2 A" m4 t& x( Y
private boolean findPotentialPartner(){8 d" T) G# y6 @' g3 O
  boolean value = false;7 |% e* a4 K5 ^6 h: G( d1 O( B
  8 p( g4 H& R5 B4 r: o" }5 p
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
# Y% u) p( b5 x6 p5 f# \3 f  Iterator iterator = grid.getIteratorAt(x, y);' {8 U# ^! M* @$ R7 N5 z$ i
  SexAgent ag1 = null;  
0 `3 D( w* Q, E  SexAgent [] potenAgent = new SexAgent[20];
/ o" |: C7 ^- j- ?/ }: `: j  int goodNumber = 0;  B$ V; H' \( u2 R$ h( R( R& P
  while(iterator.hasNext()){
( i1 g5 J/ _4 V& m- i4 G4 z% I. @   System.out.println("XXXXXXXXXXXXXXXXXXXXX");  K$ m( Y8 c! A+ ?& G
   ag1 = (SexAgent)iterator.next();8 O/ j7 t* u. g6 M: E  `$ `* \
   if((ag1.sex == FEMALE) ( z0 \' k+ D/ ^/ S! z# w" Q4 B
     &&(!ag1.isCoupled())){3 J. w$ f( C, v9 v; @8 w+ e: R, V
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
/ b5 ]) f6 }7 e* m; j. g    potenAgent[goodNumber] = ag1;! A2 T7 I! e. J) W
    goodNumber ++;& o3 ^9 q0 Q) D4 o! e
   }
, y1 v. q0 p' R' t  }
- l$ ]2 \/ t7 i  $ A1 h+ H' o. C
  if(goodNumber >0){
; d* A0 v. [) g' S* ~     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); ' w& }, g' @8 E3 n2 [) U- T$ }( Q
     Random rd1 = new Random();# O4 Z6 A! G5 n& ^8 f
     int select = rd1.nextInt(goodNumber);
: u! p0 c# s$ Z0 A. X: `  W  c' {     potentialParterner = potenAgent[select];
5 v5 ]9 j& z3 }* ?$ M5 Z0 B& {1 [& ]     value = true;9 d7 z3 Z2 O  D/ d" H  a8 O
  }
1 D2 N. ^8 z- g; Y1 _    return value;2 _0 U; l4 e7 h. `& h1 B
}2 z+ U- v( Z+ U& H8 S& \
始终只能打印出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-7-30 08:38 , Processed in 0.014170 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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