设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7865|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。6 g# T0 m7 H8 j9 J' B
private boolean findPotentialPartner(){
) K  i% Y4 B& C' c8 @  boolean value = false;
, D; V) _( ~4 M$ y  6 e* |2 _) a. _5 r( w# p
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
1 `/ l. |, j+ s  Iterator iterator = grid.getIteratorAt(x, y);
, {9 K& g$ b* o  SexAgent ag1 = null;  7 B0 \# [$ Y. W' B
  SexAgent [] potenAgent = new SexAgent[20];% R' y2 S% ^3 T( F& }8 q4 w$ @, }1 i
  int goodNumber = 0;2 ^3 {- e) R8 ^
  while(iterator.hasNext()){  b8 h/ X  e& }7 U
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");2 ?" K! ]$ q9 X4 s( T
   ag1 = (SexAgent)iterator.next();
3 q1 l* p: H0 {   if((ag1.sex == FEMALE)
+ ~$ V, B7 R* r( b  B# W     &&(!ag1.isCoupled())){
# B7 h* w3 O; ?; M    System.out.println("YYYYYYYYYYYYYYYYYYYY");. u) J. ]7 R- L
    potenAgent[goodNumber] = ag1;+ j1 U2 K7 l/ p. y6 O8 i3 N  ^
    goodNumber ++;( m- ]$ q9 Z7 c3 s. @: y' d- r8 Q
   }
  f" q3 V; \; E2 Q- E  }5 Y& b: D3 _5 ~/ ]7 {8 a# h
  * r0 d/ `; }4 y9 }8 b, b* d
  if(goodNumber >0){
# @& t' U+ g$ ]( K     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
) l9 b3 f0 @: ?, U4 m" w1 M4 k8 a     Random rd1 = new Random();5 v5 n6 O, d5 l& [
     int select = rd1.nextInt(goodNumber);
) }8 g9 U4 q) i% X; \4 S) H     potentialParterner = potenAgent[select];  c3 b! d3 T: P) S1 `* t, b5 v
     value = true;2 q, c7 a/ |8 \9 f; ]6 H
  }
6 f8 \6 m" H  B    return value;+ k+ B1 k, v- W" O
}
( `2 I' n( M+ ]/ A. ^1 l# E! _始终只能打印出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, 2025-7-4 09:51 , Processed in 0.015329 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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