设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10863|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
- ]8 W9 u( x5 `  ^1 ]- k private boolean findPotentialPartner(){
8 Y" U; \# S$ r/ r0 X. \  boolean value = false;. [& s; Y. U+ j$ K) R% [
  2 s# C- T) b2 \0 K; I
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
% f+ B. F1 n" N  Iterator iterator = grid.getIteratorAt(x, y);
, W6 [. Y9 k  {) A& l  SexAgent ag1 = null;  0 X# }4 `( Y' D5 Y
  SexAgent [] potenAgent = new SexAgent[20];; a/ I* N1 S' o) C0 g7 T, U' Z
  int goodNumber = 0;4 f/ K) o9 c, I6 i2 _
  while(iterator.hasNext()){
+ R/ p' a, y  u7 y& r, h   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
# y8 q0 Y% e- t; q5 q9 h   ag1 = (SexAgent)iterator.next();
6 K& ^8 n4 O5 }/ k: h   if((ag1.sex == FEMALE) + L& N) V/ ]! ]% a
     &&(!ag1.isCoupled())){
, [! c) q. O" }( j( d    System.out.println("YYYYYYYYYYYYYYYYYYYY");5 F2 m4 V: e5 C# r2 N. y, G+ \
    potenAgent[goodNumber] = ag1;
! c# E  k8 A9 ^3 Y    goodNumber ++;2 R( `' t0 _& }" W7 Y
   }
8 t' L- O- o% ?, c  q2 Y' T  }* c# O7 o7 D* M5 f2 o
  
5 A! |1 x3 Y9 ~# E9 W3 b7 C. i  if(goodNumber >0){: H3 A0 K8 Z; C$ ?  I( O6 i
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); ; Z6 k& H% Q/ _0 f7 y- {) q
     Random rd1 = new Random();
( p( t0 l) ^: Z/ U     int select = rd1.nextInt(goodNumber);  C9 k9 R, y8 o( p8 r. g
     potentialParterner = potenAgent[select];. o. L9 i) K% }3 C1 A
     value = true;
+ x& B$ V2 }* Z; t6 u  }
  x1 p# R9 P+ k- }    return value;
" N: M2 J5 k4 E  F, p8 i }+ p. x1 h1 l/ Z# S7 ]$ 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, 2026-8-24 17:13 , Processed in 0.019315 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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