设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10681|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。' n. _. X' j0 V
private boolean findPotentialPartner(){' F, W, E' K( Z$ m4 M
  boolean value = false;- \' c) P# `: j& J
  
/ t* q3 f, E8 A" H; z* M3 K  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();' P( K2 a, C' k; A% C
  Iterator iterator = grid.getIteratorAt(x, y);
1 ]+ O* L: g9 [2 G& J  SexAgent ag1 = null;  9 K6 i" l  A! P3 E8 L/ q
  SexAgent [] potenAgent = new SexAgent[20];# @" g: U" d% F( h
  int goodNumber = 0;! o. L' U$ y& p$ V
  while(iterator.hasNext()){
5 h7 y' g) o+ [: e" S7 D" g# @   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
$ C# x4 p: p/ }# G+ _& a   ag1 = (SexAgent)iterator.next();: v! r* x# |0 p$ \+ F9 z
   if((ag1.sex == FEMALE)
  z7 Z" V8 W) @3 I6 \+ u     &&(!ag1.isCoupled())){) I3 ?3 T+ h+ t$ k) H4 h
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
; T" y1 y! D; @: r0 c4 C. z3 v( F    potenAgent[goodNumber] = ag1;
# q( q; m' Z6 c0 i- R+ ?& m    goodNumber ++;. K4 p& }1 q+ a
   }
  Z5 V# U( _8 k  Y  }
* z  t; q7 Y; R1 O# D$ ]. ]  - O% B# t8 i) S$ g
  if(goodNumber >0){4 d/ ^2 e* b- ~# P: V
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 6 K# m, |+ S5 B7 n; X# y8 p
     Random rd1 = new Random();
1 s% V% [2 d+ D1 |. D' Q; Y     int select = rd1.nextInt(goodNumber);1 m' L' C& ~( q
     potentialParterner = potenAgent[select];3 q1 U8 S2 L( `8 c; h) S1 B. h4 P
     value = true;; [$ P5 n0 A+ v7 F; S2 Q+ ?8 Q& z
  }. h# ^8 C+ {& E, q* C8 E+ p+ ~
    return value;
" g6 X8 u9 ~9 w" J }
* H3 u( }0 D5 L6 S始终只能打印出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-8-3 12:20 , Processed in 0.020706 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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