设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7935|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
; a& t. i' m+ @  S" M2 d6 t6 Z* L private boolean findPotentialPartner(){
* l5 ~, _2 Z. Z  boolean value = false;5 s* J4 I5 |4 |( [* ]
  
4 k* {2 y! [# i" W0 [2 }  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
) p# r" w% L$ z2 A* _- E  Iterator iterator = grid.getIteratorAt(x, y);
! _5 u3 S1 [0 O; D* c  SexAgent ag1 = null;  
8 k" Q5 Y4 Y, e" O  SexAgent [] potenAgent = new SexAgent[20];( k" V0 @: i. i3 Y
  int goodNumber = 0;
$ o& T6 J& e  W6 {8 c9 ?/ L  while(iterator.hasNext()){9 d7 Z7 I* l4 ]6 H$ {# ?' J5 O
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
) n! s0 l" v3 c) W3 \6 m   ag1 = (SexAgent)iterator.next();, h# s. x, {7 l* t; B5 h
   if((ag1.sex == FEMALE) 8 o4 N; b0 d# B' p
     &&(!ag1.isCoupled())){6 \7 P& f/ u% ?' N
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
' N3 @% m& B7 e( K$ B7 a7 m    potenAgent[goodNumber] = ag1;& B! Q5 ], H1 B) ]1 |2 Z
    goodNumber ++;9 c$ v1 f' [5 \+ k
   }* \0 M) p, R# F% O6 U( T: I3 I
  }
7 C2 h% J" [* \4 @, G* I  [/ k  7 ?3 ~/ p) f3 W. k
  if(goodNumber >0){
$ P0 u" t  e9 J1 n     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
/ w1 |9 q4 s8 d/ s% l     Random rd1 = new Random();
" B; |% g- B% C7 E; f8 D  t; y     int select = rd1.nextInt(goodNumber);7 X# x. A0 M7 `- k4 x8 y) k# j
     potentialParterner = potenAgent[select];
, O% h# h2 f; Y& O/ a     value = true;
2 |: j" Y% f0 D/ e  }
0 p- z5 j3 M( T, p    return value;/ _2 N' T5 A* K  G
}/ C! \/ y& L+ T. U/ v
始终只能打印出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-12 09:07 , Processed in 0.012464 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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