设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8484|回复: 2

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

[复制链接]
发表于 2008-6-3 17:42:03 | 显示全部楼层 |阅读模式
10仿真币
我想请问各位大大高手帮我解决我的问题
8 y, K; W$ d/ ^% J3 e  k6 \! c我先简述一下我所要做的模型,我的模型里,整体有两种人,政府与民众。 . n5 e) z0 [5 j, o2 J* ]
那政府里又分为四种策略的人faithfuls ,trigger-punishments ,trigger-punishments , mixeds # J5 y7 Q8 S# K. G: z
那政府要与民众互动,选择合作与不合作,政府合作和民众合作可得分(energy)
( G$ G3 }; e& L1 e,相对的不合作也有得分但当我要开始写规则的时候,却发现程式无法照我的意思去跑,想请问各位高手能帮我看看是哪里出问题了吗?* P, _, e: U, K) H$ F7 ?
breed [peoples people], r9 U; e( M4 s
breed [faithfuls faithful]0 p. t5 J" h# I. V# b# w
breed [trigger-punishments trigger-punishment]
% V7 f# I; O1 s9 Cbreed [tit-for-tats tit-for-tat]. E% E$ N/ p4 T* E3 z9 b9 b( I
breed [mixeds mixed]    + @  f# E. ?2 [. y" S8 Q
turtles-own [cooperate?  energy]# \8 {( i/ `9 D' O& c* q
0 k9 I6 `. f  Q* {+ ?7 N
to setup
. I5 B% j0 m! O5 Yset-default-shape turtles "person"
. ~! S' }$ |0 Q: r! C. S) `  clear-all               # z4 k+ A  w, ~$ Q. ]: d
  setup-peoples  8 ?6 J- b- F0 i  s6 j
  setup-goverments1 \, \2 j3 g/ d" e% j
ask faithfuls  [ set energy 0 ] ! }& x( T# x3 O
ask trigger-punishments  [set energy 0 ]  i* K2 i8 F* H$ j
ask tit-for-tats  [set energy 0 ]( O) W# |4 J5 l6 ~# k6 v
ask mixeds  [set energy 0 ]0 l* P! g6 [1 W
ask peoples  [set energy 0 ]
! S; m% v* `  |( w4 o. s4 Eend
/ t+ e* U9 N6 f1 }) h, d. i
/ ~" Z) @+ j' e0 o1 [4 \to setup-peoples7 F; c4 ~1 {  N: y
  B6 \8 |3 l7 Q, S. @
ask patches with [-1 < pxcor and pxcor < 20 and pycor = 0]
7 i: j* e3 ^3 T7 @[sprout-peoples 1 [ set color blue set heading 0 ]- y5 @0 y- I, Y, \
& `* G$ m& m1 D8 t# P) L
]9 a" j5 V( s$ o' T; W
end  `% m  d' R: }: P3 O" |5 k: `

/ l  [5 A( s4 o6 h3 \& uto  setup-goverments2 x8 e* [. g0 u: I7 C1 Q
create-faithfuls  5 [set color red set heading 180]
, W7 ]: Q% O7 T" f8 s. p% j: Ccreate-trigger-punishments  5 [set color green set heading 180]9 a% L3 I: y  Q1 p
create-tit-for-tats  5 [set color white set heading 180]# Z; j5 G5 d$ _: r) m
create-mixeds  5 [set color pink set heading 180]; x& s$ P% f$ k- C; |
ask turtles with [ color != blue ] [while [any? other turtles-here] [setxy random 20 1]' `  g. Z2 r/ J0 @9 I
]8 ]4 R% U$ Z0 I3 o/ d6 G" V
end7 v2 V! \' N1 s* J9 ~% ^: L

# n5 [6 ~2 r: {to go4 k+ G' j! ?- p# }: [
ask  peoples [ set cooperate? random 2] 6 b8 G( S8 D1 Y# U
  ask  faithfuls [  set cooperate? random 2] # b8 T1 l% y; u( g
  ask  trigger-punishments [ set cooperate? random 2]
# E4 J8 n% Y& a3 t, W$ H  ask  tit-for-tats [ set cooperate? random 2]
; O" U) a& Z/ C4 z) s" K  ask  mixeds [ set cooperate? random 2]
: m6 t8 A' `. o1 U1 J. q) u  
) l* ]  Q# j; m3 u  ask faithfuls [ 7 V) Z0 N+ h  F$ g! k- b4 n: X
  if ( cooperate? = [cooperate?] of peoples-on patch-ahead 1 ) & `2 ?7 j$ W2 t' N+ k
   [  set energy  energy + 8
: B% R0 G& K0 S' e5 {      ask peoples-on patch-ahead 1 [ set energy  energy + 2] ]
5 \& a$ G( w! h6 {8 U      ]         就是这里出问题了无法照我的意思去跑+ Z% {% ~$ n# |( b' y+ H! d# T
  ifelse (show-energy?)
  j4 u" I/ ~+ N$ D; c. f2 y. h    [ ask turtles [ set label (energy) ] ]% S& \9 y) Q) A. `4 m9 r
    [ ask turtles [ set label "" ] ]+ G$ _3 h6 T- m
  end) P' H7 {2 k4 y% ?5 D: F
希望大家能帮我解决一下不然我没办法继续写下去
; G- J+ U! L- l% Q8 {+ v" i7 _* N! G% Q0 H
[ 本帖最后由 h64914110 于 2008-6-4 10:51 编辑 ]

最佳答案

查看完整内容

为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
发表于 2008-6-3 17:42:04 | 显示全部楼层
为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
 楼主| 发表于 2008-6-4 11:57:22 | 显示全部楼层
简单点说好了模型固定分为上下两排,上为政府下为民众  N1 F- b& z/ y. E7 O
每一个政府类的人对应一个民众
6 F' ^" J% @, Y; v; d$ E上下两两对应  但我现在问题就是  我不知道turtles是否有互相对应到
% n% H  j8 N3 q7 k那如果没对应到    要让turtles互相对应的语法又该怎么写?
* M6 G; t2 \8 M我是新手  麻烦大家帮帮忙  传短讯给我也可以  谢谢% M+ R$ {% D8 ?; e

; h9 t' s: ^/ x3 y& i& J# P[ 本帖最后由 h64914110 于 2008-6-4 11:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-16 14:50 , Processed in 0.013027 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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