设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9188|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
  `' {7 h( L! o' z* W1 S9 { private boolean findPotentialPartner(){
4 I5 F8 B6 \- p: l+ p5 R( u  boolean value = false;
8 Z, n& u, E! |" {  H7 d/ ^/ r( \  
; G+ c. E- }$ A+ L" ^! h  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();: |# F! C$ n4 z4 _
  Iterator iterator = grid.getIteratorAt(x, y);# u7 Q; q; J, {5 ]9 P* H
  SexAgent ag1 = null;  7 m* G$ p4 h3 s' E
  SexAgent [] potenAgent = new SexAgent[20];
5 z3 R4 V4 O" u4 e. b, R  int goodNumber = 0;
1 F" ~' o0 x/ y: |! b; d  while(iterator.hasNext()){! {# s8 \4 o; Y7 {
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");2 F5 |; Q0 c) `$ V3 g% h% a$ q
   ag1 = (SexAgent)iterator.next();0 A9 f, H' k+ s& |) {
   if((ag1.sex == FEMALE) ) J# ^' ^. [( ?3 Y- p
     &&(!ag1.isCoupled())){
0 e, M( [& c0 z: p+ m    System.out.println("YYYYYYYYYYYYYYYYYYYY");
* h; U4 p3 N2 J  O9 b) Q  g- s4 q    potenAgent[goodNumber] = ag1;
5 z0 v9 ~* X5 o/ `    goodNumber ++;
$ x9 H. h1 c; h6 @4 n2 ^   }' j" p; u6 H) s4 I' V
  }* I; x: C, x9 P& b
  0 h& `4 g7 C0 c2 t
  if(goodNumber >0){( _# D% Z" {; J* f6 c- d6 n: s; }
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
) A6 e0 W3 o/ e) j     Random rd1 = new Random();
& |- s8 |! S, |! O9 S' D# K( [" t     int select = rd1.nextInt(goodNumber);
) C# o* b, s/ g+ I/ Y     potentialParterner = potenAgent[select];. E1 g! Y9 F" I2 t5 n+ }0 I7 g
     value = true;. r' `; j) D1 X( Q" n7 T2 M" q- M
  }) X8 K3 |2 Y1 R! q0 h
    return value;$ E7 m* W3 F0 W! q& _; g
}6 l$ O' M+ S( I! U. W% K" K5 A
始终只能打印出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-1-19 09:39 , Processed in 0.015160 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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