设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11091|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
; {% g0 M9 [' o$ ~: z private boolean findPotentialPartner(){+ U  C* D2 E: ~+ M5 f5 a
  boolean value = false;) b% ]' t$ u5 i
  
9 L: }, i- D7 i" z/ _  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();  K) z7 R) _4 t; {: p
  Iterator iterator = grid.getIteratorAt(x, y);0 [+ c* m$ `8 A; ]
  SexAgent ag1 = null;  
& K; r0 _! N. B- C# u; C- K9 y  SexAgent [] potenAgent = new SexAgent[20];6 N0 l. L( ]8 r
  int goodNumber = 0;; z. S  B2 U# P! X- i
  while(iterator.hasNext()){4 T9 O1 q3 W1 c% x; f
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");* i( Q4 [* F5 ^7 v
   ag1 = (SexAgent)iterator.next();% [# O. e9 g& C! u% a
   if((ag1.sex == FEMALE) ) H: n+ F: |; B7 l( O6 Y- F
     &&(!ag1.isCoupled())){6 [1 W" i4 [# M& o8 S
    System.out.println("YYYYYYYYYYYYYYYYYYYY");/ C9 {' O1 d) r0 w3 ]
    potenAgent[goodNumber] = ag1;
0 ~9 ]4 D1 w  h. T8 T    goodNumber ++;' C$ q8 k  W4 N5 Q  ?. V5 G; @
   }  r9 J7 J! a1 `  j4 `$ r  n
  }# x7 K2 w8 ]0 t! f' r" J
  
; o# v7 _* c, [  if(goodNumber >0){
# }& X: Y/ o" f0 M1 L& y" Z     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); $ c/ m2 f) k7 X* T
     Random rd1 = new Random();
- G, Z2 }7 t, @! M/ \- x     int select = rd1.nextInt(goodNumber);
8 a: ^, z* y  q; a+ ^8 j  `     potentialParterner = potenAgent[select];) n9 L& N, n4 _7 o& J0 W
     value = true;
/ g4 C1 A. c3 M" v, t6 M  }
$ B4 _3 I7 F9 ]/ {3 G    return value;# ?8 ?6 C' T" U0 f" i1 C
}
) w% i, s' P: R/ [% x9 n始终只能打印出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-9-18 07:00 , Processed in 0.013206 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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