设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10265|回复: 3

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

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。
! ~* L/ \* _' Z9 f* e private boolean findPotentialPartner(){% v% n; `) y4 ~
  boolean value = false;+ D+ u& L3 k$ F: U
  
/ v; C% G! H9 `9 }! W5 K. y  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();6 ~+ f! q& {4 D- y; P$ z/ Z. ?3 [
  Iterator iterator = grid.getIteratorAt(x, y);
1 b& ?0 H3 M9 t0 J; z  SexAgent ag1 = null;  
+ [6 Y5 d: Z$ u/ \' D1 Z  SexAgent [] potenAgent = new SexAgent[20];( B+ ~1 m* t+ j! s9 r) b
  int goodNumber = 0;& _4 n. b+ d' H# W
  while(iterator.hasNext()){
5 p8 `- N9 q* C7 s& l   System.out.println("XXXXXXXXXXXXXXXXXXXXX");
4 k* ^: Q6 ]4 E1 ^; l   ag1 = (SexAgent)iterator.next();
+ h! g" F* U! {- C( O  i   if((ag1.sex == FEMALE) . T3 w: ^! S9 Q5 x2 f( }6 P
     &&(!ag1.isCoupled())){
1 _  M4 d; F/ R    System.out.println("YYYYYYYYYYYYYYYYYYYY");
* U( L7 x  [' P: C    potenAgent[goodNumber] = ag1;  f3 b# g3 C3 W0 n
    goodNumber ++;
0 j8 l0 v; Z1 [   }
) l- A/ Y9 |3 q  }
! e  E- b4 P1 T. A; {; T6 c) F# H# V  
' n, ?, ~! K6 e7 y3 o  if(goodNumber >0){/ s1 s% s" ~4 e' O# i2 ?
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); 0 m. Q/ _6 a3 O" ]. R
     Random rd1 = new Random();) O# ], f% i4 j- L; E2 O, {
     int select = rd1.nextInt(goodNumber);
1 F9 T) i+ N6 d     potentialParterner = potenAgent[select];7 l/ l- F3 D' @4 e7 |' r
     value = true;
8 U% f8 B4 G2 k( @3 l1 }  }( c+ l# T% L5 Q* }- ]" O% N
    return value;4 ]0 F% ~* q0 x7 H" I+ R- @: ^' N
}7 T9 p) U, I' R. X5 H( q8 m
始终只能打印出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-7-9 16:32 , Processed in 0.012731 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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