设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9638|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。% m- ^* k4 O" n) b- b
private boolean findPotentialPartner(){1 o$ e# j8 `( Y/ ?- j) u
  boolean value = false;
7 r% J" j! o! y5 G: n: L  
! Q' V- O- V2 t% K1 B! m# m  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();
( A7 X$ }# x2 s; f0 V% S  Iterator iterator = grid.getIteratorAt(x, y);  t! P+ [, d7 j# Z& v1 f! Z
  SexAgent ag1 = null;  
2 B. R- ~, C( `9 E0 y  SexAgent [] potenAgent = new SexAgent[20];
# v5 M( p; K# @2 h* R  int goodNumber = 0;0 q% w2 E$ i. ?0 q- M3 }% q
  while(iterator.hasNext()){
/ @, ^! f* o" ?" u! I  O   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
) n, ^4 P3 C% R, D0 Q   ag1 = (SexAgent)iterator.next();5 q/ @: ~+ H% Z/ J' q1 ~
   if((ag1.sex == FEMALE) ' _# A. A4 I4 y. f( K- }! h
     &&(!ag1.isCoupled())){
. @# y+ z9 C$ t    System.out.println("YYYYYYYYYYYYYYYYYYYY");
/ r! c: A, O2 |( [0 H; f    potenAgent[goodNumber] = ag1;/ ?  B' Y5 e& C3 J$ j, ~* k; m4 B$ @6 b
    goodNumber ++;# o- R; m( J0 g) C
   }
) C/ I+ y- O2 Y9 f  }) s1 P* X0 \, U' a4 Z2 E
  
" \1 V6 m& F0 D  if(goodNumber >0){
# Y: _& s+ J* `. `     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); - q" ~+ w1 D( G& d
     Random rd1 = new Random();
6 s7 @) p0 G; _; }4 o     int select = rd1.nextInt(goodNumber);
5 M3 E/ H, O* u0 |     potentialParterner = potenAgent[select];) d  e& a& ]0 _6 h9 g
     value = true;8 l2 v9 X, r! V& q6 \" J! |
  }2 `% ?; f3 l5 d9 K9 U. g  O) `. u
    return value;
! j; h$ j6 I/ [* n6 O9 f }* s7 t, K. E* v) R
始终只能打印出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-3-31 11:55 , Processed in 0.014331 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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