设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10719|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。% P" e+ s$ b# N7 ~0 t, _2 d: i
private boolean findPotentialPartner(){9 c: C$ o4 x2 ^$ `  A% ?: Z/ u, i
  boolean value = false;
- q% R* Q# U6 l; {- ?2 h  3 [8 M$ U  O. C) L) p2 }
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
" W$ g$ a. \, u  ]* I( I' N  Iterator iterator = grid.getIteratorAt(x, y);
& d0 r* t& Y- q$ m4 w+ O* S  SexAgent ag1 = null;  - h7 R" @4 p- a) q. c$ r$ e
  SexAgent [] potenAgent = new SexAgent[20];
4 T2 P& x. B1 Y( H0 C  int goodNumber = 0;
8 m. P. r0 p# h2 g1 ?' |  while(iterator.hasNext()){( T! w/ L3 r. F2 _* s+ W
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
' ~. w& Y* k. T" c   ag1 = (SexAgent)iterator.next();
$ s3 f, @9 z' w4 I   if((ag1.sex == FEMALE)
  Y  v$ o8 G, Z! i8 s     &&(!ag1.isCoupled())){+ ^+ @4 }9 {" u/ k; W# a% Y
    System.out.println("YYYYYYYYYYYYYYYYYYYY");
& R" E. u8 v: i9 a9 r1 ^    potenAgent[goodNumber] = ag1;/ `, a* N6 o$ @+ @+ u# ?3 P
    goodNumber ++;( H: [) f- Y: w9 L. c! f
   }
% j. p# F' `' A: w8 W" @* k% x; G7 D- y  }
2 k" c2 C2 f- ^    B. k+ C9 u; p% n8 s
  if(goodNumber >0){6 W+ K$ N9 q5 K6 o" x; o/ W
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ");   ^9 I- ^# o1 I. _7 r
     Random rd1 = new Random();
7 E) S$ [9 ]" V5 f9 |     int select = rd1.nextInt(goodNumber);% A5 h8 B4 U7 \. c7 u
     potentialParterner = potenAgent[select];
* ]1 P5 K" U5 K8 I# Z! Q0 z     value = true;/ o3 J1 d& ?# Q7 x* h5 U- L1 J
  }& _! Y# l: s' A  x7 z4 T  _3 A3 O0 p
    return value;5 W3 s) v. \, G. l- l. H  B( |% d
}
  W+ \, D# T5 |4 [始终只能打印出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-7 02:57 , Processed in 0.014643 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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