设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8481|回复: 2

[求助] 代碼的问题需要求助..

[复制链接]
发表于 2008-6-3 17:42:03 | 显示全部楼层 |阅读模式
10仿真币
我想请问各位大大高手帮我解决我的问题5 L/ S- p6 R/ g
我先简述一下我所要做的模型,我的模型里,整体有两种人,政府与民众。
4 V+ q, d  t$ [' n- i那政府里又分为四种策略的人faithfuls ,trigger-punishments ,trigger-punishments , mixeds 7 s! E/ l$ K& Q5 \- K( ~
那政府要与民众互动,选择合作与不合作,政府合作和民众合作可得分(energy) * ]. ~9 |( _" \$ b0 o/ o
,相对的不合作也有得分但当我要开始写规则的时候,却发现程式无法照我的意思去跑,想请问各位高手能帮我看看是哪里出问题了吗?. c/ M* x! L- M) V. k! N
breed [peoples people]
9 |( i" n; z0 o+ i& N" E) N) C- }: Nbreed [faithfuls faithful]" _# w, P* H1 s% e0 s/ J! ?
breed [trigger-punishments trigger-punishment]
* |+ N; y! _* F+ [8 I! Xbreed [tit-for-tats tit-for-tat]- Q! d/ G, Z+ \' o' Y
breed [mixeds mixed]    # ^$ w, v8 W1 i- u
turtles-own [cooperate?  energy]
1 i# \! V& Z' ^6 j- a* ]& q* X/ J$ R! o3 x
to setup0 K8 U$ y2 D3 j' N# d
set-default-shape turtles "person"
+ S% h1 X  c7 [6 k+ y3 E3 w  clear-all               2 N! {0 u7 d, r% J
  setup-peoples  * k. \  f) h: p* i8 b! r! z
  setup-goverments7 S* l. y8 Q- O/ B7 v2 m4 r1 V
ask faithfuls  [ set energy 0 ]
) H$ U1 x+ S9 K# Z: j9 zask trigger-punishments  [set energy 0 ]5 F$ ~! [0 p& k; _2 u
ask tit-for-tats  [set energy 0 ]
% B7 Y3 r8 Z( G2 R" r. w2 o5 ?+ Oask mixeds  [set energy 0 ]
9 `3 F8 p/ I/ k; mask peoples  [set energy 0 ]2 R' a) N' j, O( V2 D% R" i0 u
end* y; J) X5 s+ g* R9 A2 z5 F
9 q. e# o1 e. _2 @" v9 q0 X
to setup-peoples+ E; a+ H6 n& r. O' h6 f

2 m8 r9 Y3 b, X. {ask patches with [-1 < pxcor and pxcor < 20 and pycor = 0]
! l6 G3 H! b( ]- u' _[sprout-peoples 1 [ set color blue set heading 0 ]
! I+ l; s7 S; S; k
& J% s4 X# d# ~$ k; C& z]
! o. \/ n% c: v6 }end( g/ g& \- s; P  P/ T  [9 f
  O+ s& ~  I8 N
to  setup-goverments
, S9 V3 X1 u/ L3 ccreate-faithfuls  5 [set color red set heading 180] - j6 L' X+ X& n% \9 @
create-trigger-punishments  5 [set color green set heading 180]% G1 l  T$ T3 O8 N" j+ {
create-tit-for-tats  5 [set color white set heading 180]  H  M1 z, w3 `0 y2 ?7 @
create-mixeds  5 [set color pink set heading 180]
! g+ A* ?  F3 Y9 Rask turtles with [ color != blue ] [while [any? other turtles-here] [setxy random 20 1]& l; L; L# K4 x0 \- K8 O( r
]! _: |3 Y. d$ @4 R5 F( ^' L# m1 \
end/ d& ~' o! a6 }* T+ i

7 D. A% _* R) u& I8 X- vto go
& X7 e# |- Z5 t$ nask  peoples [ set cooperate? random 2] ; }: k: {9 {' `2 Q$ D& d( S6 F
  ask  faithfuls [  set cooperate? random 2] % }7 F% R' f  r. z/ }) P7 k
  ask  trigger-punishments [ set cooperate? random 2]
  Y! F0 J: M9 G0 [$ g# z1 p  ask  tit-for-tats [ set cooperate? random 2]
* p8 _% {5 a0 E0 m4 {1 [7 Q  ask  mixeds [ set cooperate? random 2]* w- j6 A$ k: c9 |& N
  2 O; Y1 P5 h: @4 h
  ask faithfuls [ 1 |' x0 j+ j  h
  if ( cooperate? = [cooperate?] of peoples-on patch-ahead 1 ) , _5 d% y  O+ G! n# a' j+ ?
   [  set energy  energy + 8 - h+ ^6 T: p5 K, h4 |, E# C% s
      ask peoples-on patch-ahead 1 [ set energy  energy + 2] ]
' x, w, n2 _) q& y, f8 e0 i      ]         就是这里出问题了无法照我的意思去跑; _1 B1 W, J5 X) T/ O
  ifelse (show-energy?)4 K* l# y% X) K7 F0 b( P6 g
    [ ask turtles [ set label (energy) ] ]
& G& \. y9 ~/ }6 `    [ ask turtles [ set label "" ] ], s; Q1 U7 O1 R) J
  end. c4 a5 `& x8 |1 `
希望大家能帮我解决一下不然我没办法继续写下去* T! \; P. X* x& T, K% ]* ^

5 Y: P6 j9 R" F" p1 V8 e$ l[ 本帖最后由 h64914110 于 2008-6-4 10:51 编辑 ]

最佳答案

查看完整内容

为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
发表于 2008-6-3 17:42:04 | 显示全部楼层
为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
 楼主| 发表于 2008-6-4 11:57:22 | 显示全部楼层
简单点说好了模型固定分为上下两排,上为政府下为民众
& S6 a5 `# [' i2 t每一个政府类的人对应一个民众
& C* k! e: T4 o. G* b上下两两对应  但我现在问题就是  我不知道turtles是否有互相对应到
* D' L6 w7 \% c+ n那如果没对应到    要让turtles互相对应的语法又该怎么写? 1 I2 a5 X* [( J5 q
我是新手  麻烦大家帮帮忙  传短讯给我也可以  谢谢
8 z+ Z& {8 G2 V- M+ T  I" f
( D2 I8 U0 h2 f- V[ 本帖最后由 h64914110 于 2008-6-4 11:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-12-16 04:34 , Processed in 0.014096 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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