设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10164|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
5 b5 M) c8 O* ]4 ^+ n+ ?" N1 k4 v private boolean findPotentialPartner(){
6 u0 y/ I3 x: i! T0 v. B  boolean value = false;5 Z9 \# R8 ^; t% ?) X  C2 a: }
  / [' e0 p3 B; @0 o
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
; u: a  R, V! A  Iterator iterator = grid.getIteratorAt(x, y);2 ^& c/ R7 G% k  G7 r
  SexAgent ag1 = null;  
' Q& n$ x0 W3 h  SexAgent [] potenAgent = new SexAgent[20];. T, Q0 s  ~9 A+ l3 W! C8 u, j% j
  int goodNumber = 0;6 L+ U: E. V7 b& x/ z1 q' B
  while(iterator.hasNext()){: ~) O. _1 I$ J" {! d0 Q- F: W
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");0 a1 Y- m1 i$ y, c
   ag1 = (SexAgent)iterator.next();
( X) j. _( E1 N% x) R, ]' R   if((ag1.sex == FEMALE)   u3 C9 M3 X0 L$ b, D8 k
     &&(!ag1.isCoupled())){
8 F" ^: M, d) O" m    System.out.println("YYYYYYYYYYYYYYYYYYYY");, p1 Y6 f% `* G) B0 D5 w) g
    potenAgent[goodNumber] = ag1;
5 K1 V: g" v& ?7 k1 f  q, G    goodNumber ++;
1 Q; z9 f( ]3 v+ {; e( I   }. D0 p- m; P7 o' x6 u4 Z7 y
  }
6 o2 E/ Z$ V4 ?- C9 X  
9 S+ s. X# [. [5 H5 w/ j$ e7 U  if(goodNumber >0){7 A2 R& _' V6 \' }
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
2 c- W& H/ F; F7 ?     Random rd1 = new Random();! F! b7 X1 R( N. e
     int select = rd1.nextInt(goodNumber);
! j7 ?) b% ~! V0 ~) b9 c     potentialParterner = potenAgent[select];
# k4 B( F- a7 Q( Q/ [% S4 R     value = true;
( s( C0 c/ B0 L  _) v8 @  }8 \* X9 C+ p, {; {. k. F  u( `
    return value;
, U. v* d6 S8 p8 W9 P0 x }
- G+ V0 U* `+ O& E; T! g始终只能打印出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-6-23 00:26 , Processed in 0.013426 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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