设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9202|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
0 p* ^  B2 W( i1 O. d- K2 A. \8 q private boolean findPotentialPartner(){
& D: Y8 V: i4 Y$ O7 w+ k7 L9 \0 U/ P  boolean value = false;! q' s$ K, a) P8 `; I1 A4 h
  
/ @% V, ]5 A) F' u/ v- P  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();5 p# T3 F0 b0 n. F" w$ l
  Iterator iterator = grid.getIteratorAt(x, y);
9 n9 m6 g$ ~) w  SexAgent ag1 = null;  9 H! v+ _: z1 s
  SexAgent [] potenAgent = new SexAgent[20];  f$ t; Q8 U, v! f
  int goodNumber = 0;
1 n$ _- T0 f% k2 f2 }1 L  while(iterator.hasNext()){
3 s  X% J) L  m& e' }5 N   System.out.println("XXXXXXXXXXXXXXXXXXXXX");6 u& D* B+ `2 Y0 |' K5 e2 G
   ag1 = (SexAgent)iterator.next();
5 I  @$ L3 R/ P5 b   if((ag1.sex == FEMALE) * p2 I, x( I2 [0 H) B
     &&(!ag1.isCoupled())){
* C5 k6 u. _+ ]( T    System.out.println("YYYYYYYYYYYYYYYYYYYY");: e9 U% R( s8 R/ h3 e
    potenAgent[goodNumber] = ag1;) M8 O: f! s. U/ i# g
    goodNumber ++;
/ z  N. y! W& J5 r; n  ?7 k   }5 J. B$ c7 K2 X" ]- U! y: a  v
  }8 @& S0 B  {2 G5 J
  / q) m6 m$ I& D
  if(goodNumber >0){
8 Q3 g$ I- P, s* a+ o; _     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 8 V% D& w$ N- j$ c$ e9 ?
     Random rd1 = new Random();9 |7 Z+ T, O, U0 e! h/ _: \
     int select = rd1.nextInt(goodNumber);) t+ w+ h* v+ _. b. G3 y
     potentialParterner = potenAgent[select];
- Q" m. u0 ~, W; y5 v1 x     value = true;/ ~+ H5 k9 _) A# j3 t
  }2 t( g( o4 y# M. F; A
    return value;/ Z' W( c7 V* n8 w7 ?
}
3 G- \7 X+ Z/ [+ d2 w始终只能打印出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 20:45 , Processed in 0.016899 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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