设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8224|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。$ A' ~6 l" x8 Y8 m- v8 [
private boolean findPotentialPartner(){
+ }& x* N& f! N* Y  {; N  boolean value = false;
, l% U  s3 ?+ F  b  
- [: t9 H3 g/ \7 [% v  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();2 A# t+ _, D& ?
  Iterator iterator = grid.getIteratorAt(x, y);) }" U" l8 T$ S2 M3 x! d6 M" F  a
  SexAgent ag1 = null;  
$ K( j. ?* {% A% L( E( p  q  SexAgent [] potenAgent = new SexAgent[20];' A; b0 ]+ a3 x* h
  int goodNumber = 0;
( Q3 P; J: P$ w( m  while(iterator.hasNext()){4 [) w" [+ j$ e- j) o( b
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
) E/ ]. g1 H( F& Y, \' w   ag1 = (SexAgent)iterator.next();6 P3 t4 m, h6 h, k8 X3 A  c
   if((ag1.sex == FEMALE) 8 z/ G0 N# v9 ~" x; ~2 a
     &&(!ag1.isCoupled())){
% Y: j) B3 s9 y) f, v/ x1 H7 M, l" o1 M    System.out.println("YYYYYYYYYYYYYYYYYYYY");
# h$ b& o1 i$ |    potenAgent[goodNumber] = ag1;
& }& n9 }' X$ G* ^7 q+ L    goodNumber ++;& m1 \- n! p% T7 A
   }2 s2 [) _' b4 U# C$ _
  }
+ N' ^% {8 \' |( n4 J% {- _    f% i  }% N  z$ V4 u( M9 y
  if(goodNumber >0){
5 w" L& I& p" i, w     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); ' V  K+ b9 h: G, y
     Random rd1 = new Random();2 @3 H4 t' \4 o
     int select = rd1.nextInt(goodNumber);) e) l- b; q/ M1 f4 t
     potentialParterner = potenAgent[select];
: O% a2 p1 |0 C. n* S1 E     value = true;' b/ t# e* z" m6 f
  }
* c( [* P' H& n/ y, q6 L+ \    return value;
+ u) Q1 }# @; p5 [' D* u* W- Y }+ o8 D. o+ o7 R7 n* i
始终只能打印出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-9-5 03:15 , Processed in 0.016690 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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