设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10105|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
& }! U* f& {" T" ^ private boolean findPotentialPartner(){
" C7 O  J5 c9 L' `; J$ u" ~  v) O  boolean value = false;! S! l2 Q# @# |: m3 H% j
  3 g& B0 g, }0 Z+ R
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();9 @/ A! i0 u' t
  Iterator iterator = grid.getIteratorAt(x, y);( }3 J/ h* ?/ n8 N5 L
  SexAgent ag1 = null;  - j: [& _, g! m& j
  SexAgent [] potenAgent = new SexAgent[20];" M. l4 |  K1 T9 h
  int goodNumber = 0;0 K5 @0 W' y0 K+ Z  N
  while(iterator.hasNext()){2 i4 Q1 }, X/ J  E) a, G( r( J7 q
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");$ p2 B' j- I# J
   ag1 = (SexAgent)iterator.next();8 K5 I  F7 C; q7 Z8 a% k7 ~9 \
   if((ag1.sex == FEMALE)
+ ~6 r; ^/ Z  B! R" q     &&(!ag1.isCoupled())){
8 `' I( I6 C, z2 K% I; }    System.out.println("YYYYYYYYYYYYYYYYYYYY");3 M( {- `  r( Y0 v- c
    potenAgent[goodNumber] = ag1;; |5 m. h4 X8 Q4 |, `
    goodNumber ++;
8 ~' H5 R! R3 q0 c, R7 X   }3 k9 ]$ L, ?2 _- f! l
  }
+ V, w0 s' Z2 i. G9 b2 n  
, K$ C5 y" j" N- \4 h: H6 Y, K  if(goodNumber >0){" G9 g8 H9 n5 u; n; P
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");
- ?4 w  E, o: Q$ L9 t     Random rd1 = new Random();
5 ^# R3 z8 m) ]: e     int select = rd1.nextInt(goodNumber);, Q! M! M% q- q+ G* V
     potentialParterner = potenAgent[select];
# Q" {1 j1 S) F" ?" v( ~4 z     value = true;
/ F/ }9 ]) I9 p  }4 r( _$ A2 q& n$ r) W; v; ^
    return value;
0 u. A. V8 l* E% Q& F; D }- K7 W0 F0 @4 X8 r- d7 D, P
始终只能打印出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-13 00:32 , Processed in 0.013328 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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