设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10093|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
* E$ a" c) t9 Y5 K( c/ j private boolean findPotentialPartner(){2 P7 ]( a" M9 i( ?; t
  boolean value = false;, Z1 B. t5 x1 h
  
$ w2 ~2 L% U/ k3 A$ }. F  |  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
* J) K# R. W5 d, h! l. X  Iterator iterator = grid.getIteratorAt(x, y);
. D: ]0 e0 }( X  SexAgent ag1 = null;  * i6 ^- F( V0 L6 q
  SexAgent [] potenAgent = new SexAgent[20];
) {! G( f. E$ K) }, a+ i$ Y& }( X  int goodNumber = 0;$ Q! N0 o2 `  l, x/ E
  while(iterator.hasNext()){' `' a( k2 {; ~$ B* d; W
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
9 G  M( Z6 E2 ?5 }) X0 y   ag1 = (SexAgent)iterator.next();! J, U9 l3 h* F2 B
   if((ag1.sex == FEMALE)
. O# S+ D" g( k     &&(!ag1.isCoupled())){6 I4 F. b; q6 p6 ~; t* z
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
6 k2 {/ P1 ?: x5 v7 Z# S    potenAgent[goodNumber] = ag1;( I5 Q+ h7 I% b. b' T, ~) O" E2 N5 L
    goodNumber ++;
# [+ f: M0 \- s; @0 i) n   }. x7 `2 r" g4 w
  }
  V- ?& M- {# q% J6 Q% ^) v  [  4 A6 [- @4 L) {
  if(goodNumber >0){
6 V) X3 {9 I! y) W  s- n. S     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 5 D+ D6 d, K) D% a9 B1 J, c* ~
     Random rd1 = new Random();
/ V# @$ Y. B! P/ @" u% f5 Z     int select = rd1.nextInt(goodNumber);; s" A, c  @4 G2 b5 K: D
     potentialParterner = potenAgent[select];) n& \* E9 v' L# a$ H
     value = true;
4 P- y) E7 X% i) ^# s  }
$ d4 I; K% G* z1 w' ^0 E    return value;
) B9 n; R9 F8 E4 r }% e7 F/ @3 z$ c, _) 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-6-10 18:22 , Processed in 0.016773 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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