设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9897|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。* Q/ O& S5 Q, |0 ^$ [
private boolean findPotentialPartner(){$ h* V) g% l( q; D7 ^
  boolean value = false;
* b" m; F5 L) f  1 W$ M" E: j2 x; v$ d8 h( J. @
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();0 l: T7 q* u  u+ \# U
  Iterator iterator = grid.getIteratorAt(x, y);
$ F7 Y; ^0 o& ]( m6 d4 Y- L  SexAgent ag1 = null;  - J+ g" x1 [* g' v: @
  SexAgent [] potenAgent = new SexAgent[20];
0 E4 `7 q& t, V( e) @  int goodNumber = 0;
5 h- m/ K3 c& N  while(iterator.hasNext()){+ r% r7 }- g1 F" r
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
8 }+ ~. B* `# R7 Y0 s   ag1 = (SexAgent)iterator.next();- w7 G  U" c6 C/ |" O- [4 I
   if((ag1.sex == FEMALE)
; \4 ]0 \) U4 k     &&(!ag1.isCoupled())){4 c/ w/ h& @3 a: v1 o; S/ S
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
# d5 w. I( v: l0 m0 [% r    potenAgent[goodNumber] = ag1;) R. ^1 B7 B( {
    goodNumber ++;
; R- S0 V; Y0 `6 C   }- g+ N! e$ D+ V: t4 z
  }
- n8 A8 {7 U0 x- X  
0 E4 X6 o- a7 F2 ]" O: R  if(goodNumber >0){
7 ^1 @8 X$ E9 p6 j2 [# l     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); " J/ q5 |/ |! g9 \- _9 K( I
     Random rd1 = new Random();$ G* X! J( e! Z# e- H
     int select = rd1.nextInt(goodNumber);
4 R. a( q: v- [* h$ p# d     potentialParterner = potenAgent[select];1 J$ U, F: I2 {, S3 {
     value = true;9 i+ x0 U+ B# }) v! T* g
  }
  U( ^0 ~2 M8 s! x    return value;
/ N0 W$ ^& f( I/ \' X* O- U }
. m! j$ g$ ?# `3 h2 I$ k始终只能打印出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-5-2 12:33 , Processed in 0.014918 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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