设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7944|回复: 2

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

[复制链接]
发表于 2008-6-3 17:42:03 | 显示全部楼层 |阅读模式
10仿真币
我想请问各位大大高手帮我解决我的问题/ u7 [1 A, A& ?5 V+ N+ s; o6 {7 C/ A
我先简述一下我所要做的模型,我的模型里,整体有两种人,政府与民众。 4 T( R: r0 K4 S6 F0 g4 ~7 G
那政府里又分为四种策略的人faithfuls ,trigger-punishments ,trigger-punishments , mixeds / T& @# g2 u3 e9 n" e" n  J1 r# E
那政府要与民众互动,选择合作与不合作,政府合作和民众合作可得分(energy)
# w+ w( \+ ^2 ?5 v- b,相对的不合作也有得分但当我要开始写规则的时候,却发现程式无法照我的意思去跑,想请问各位高手能帮我看看是哪里出问题了吗?
* B& V+ z+ N* g! ]* gbreed [peoples people]
/ e# y4 [/ y, t4 H$ {breed [faithfuls faithful]( u& }* v4 T- Y1 N
breed [trigger-punishments trigger-punishment]
7 w+ u  w2 K9 j! V8 p* d4 }8 jbreed [tit-for-tats tit-for-tat]6 t' N( C$ t5 @! R1 j$ e% Y- ]$ ?' C
breed [mixeds mixed]   
+ j; t% j* P  A, |, P6 r% \turtles-own [cooperate?  energy]  p! h" K* Q2 G8 u' z
. x0 w7 E/ l3 i! y( \
to setup- {9 T' M! q0 ^5 ~0 U
set-default-shape turtles "person"5 O1 I( p0 p2 d, x/ Q" B1 \
  clear-all               % q! M; A1 Q+ H0 `( T5 \
  setup-peoples  
3 I" _  f" ^3 g, A  setup-goverments+ Z, Y3 z7 C* }( g3 `% f/ {
ask faithfuls  [ set energy 0 ] & s% Z, x/ A* [& }. Q. ]
ask trigger-punishments  [set energy 0 ]
/ X/ s6 O1 Y! N* n2 {  v- Qask tit-for-tats  [set energy 0 ]
) l) L( H+ t( `  Uask mixeds  [set energy 0 ]
" ~1 j4 R! k* r, P" [/ |' ?ask peoples  [set energy 0 ]
7 \* c! T$ j( d* n0 Uend4 x! i  r- v) [- R9 W
; j2 G6 H/ p8 O+ r0 }  L" _
to setup-peoples
) S( J/ [2 ?7 r! K( O$ \9 g
: {  n. F  @5 l( ]7 S$ _' O6 N$ eask patches with [-1 < pxcor and pxcor < 20 and pycor = 0]1 U( a+ g* b- m/ `+ _9 r4 s2 |
[sprout-peoples 1 [ set color blue set heading 0 ], G; n: {' t4 Y" u

8 Q' `3 y1 [/ M; O' {]
/ l& A& P5 {& Cend& P0 M  d3 P( y& B8 K: v4 E* V3 O

- w+ s: U: o$ S( A% x' Xto  setup-goverments" d/ }( D( X9 C4 [1 J3 \
create-faithfuls  5 [set color red set heading 180] 7 `. Q5 F5 g; F5 Q$ `
create-trigger-punishments  5 [set color green set heading 180]
9 {4 V2 U% u3 X1 g+ ^  a; f1 q9 h5 Gcreate-tit-for-tats  5 [set color white set heading 180]
% p8 M, L5 _' Q1 Lcreate-mixeds  5 [set color pink set heading 180]2 G/ V: l9 J9 f  |
ask turtles with [ color != blue ] [while [any? other turtles-here] [setxy random 20 1]. Y- c0 Z/ r5 J; @8 H7 [* Z
]
: p" v3 A) O- Send
8 G  H7 z5 C$ p& T! L
4 V+ _) ?5 y, ]1 tto go0 D+ C6 [+ b' k) n6 j" p
ask  peoples [ set cooperate? random 2] ( e  x- k, s8 z& l8 n- ?
  ask  faithfuls [  set cooperate? random 2] $ l; \) S) P: U
  ask  trigger-punishments [ set cooperate? random 2]8 `9 V2 o! x1 h
  ask  tit-for-tats [ set cooperate? random 2], x! C; G% @7 z0 N9 ]& g
  ask  mixeds [ set cooperate? random 2]
+ ]5 I5 L/ H- \9 R  
: L  G2 W' n) {7 E1 k& w# W  ask faithfuls [ 9 f7 ]% Z+ i$ B3 s  k" q5 R
  if ( cooperate? = [cooperate?] of peoples-on patch-ahead 1 ) + C9 d6 d" V/ r( B6 R4 i9 j, _
   [  set energy  energy + 8 , ?3 y8 @: z. r- f# Y9 x1 G, T; f
      ask peoples-on patch-ahead 1 [ set energy  energy + 2] ]
  `* N  @$ W2 Q' ~0 x8 y      ]         就是这里出问题了无法照我的意思去跑4 a1 H) R% B( k$ T4 y6 a) G7 f
  ifelse (show-energy?)! {  [  Q1 S5 z+ O
    [ ask turtles [ set label (energy) ] ]
- b. N3 f9 ^4 r    [ ask turtles [ set label "" ] ]
+ k+ v- A. G( D/ U  end
5 k5 @7 i; p/ A8 G, G2 P希望大家能帮我解决一下不然我没办法继续写下去
/ }1 y9 ?! t& _' [4 R* p+ i7 C# {; z3 y) [! ]2 F& W0 F( t: c) |( a
[ 本帖最后由 h64914110 于 2008-6-4 10:51 编辑 ]

最佳答案

查看完整内容

为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
发表于 2008-6-3 17:42:04 | 显示全部楼层
为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
 楼主| 发表于 2008-6-4 11:57:22 | 显示全部楼层
简单点说好了模型固定分为上下两排,上为政府下为民众1 [+ d2 \; A. h" J- {0 }' X8 v/ w
每一个政府类的人对应一个民众& M3 d# `& @2 T% @
上下两两对应  但我现在问题就是  我不知道turtles是否有互相对应到! u, R5 G, l2 s! ^7 _) Q/ ?
那如果没对应到    要让turtles互相对应的语法又该怎么写?
) H/ G' d. a1 }; t1 v5 D" R我是新手  麻烦大家帮帮忙  传短讯给我也可以  谢谢- [. Y, K" V! l: p
& q. v5 \* r$ x/ V
[ 本帖最后由 h64914110 于 2008-6-4 11:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-9-14 10:26 , Processed in 0.014935 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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