设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9126|回复: 2

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

[复制链接]
发表于 2008-6-3 17:42:03 | 显示全部楼层 |阅读模式
10仿真币
我想请问各位大大高手帮我解决我的问题
" Z. b) C4 F) w+ v/ q  c' D# Z我先简述一下我所要做的模型,我的模型里,整体有两种人,政府与民众。 ' [6 @/ D# i* H7 }$ }! K7 t' Y7 S
那政府里又分为四种策略的人faithfuls ,trigger-punishments ,trigger-punishments , mixeds * h4 b) E; P, u4 G: O9 l( L
那政府要与民众互动,选择合作与不合作,政府合作和民众合作可得分(energy)
9 q* r" }9 I/ w( O1 u+ \,相对的不合作也有得分但当我要开始写规则的时候,却发现程式无法照我的意思去跑,想请问各位高手能帮我看看是哪里出问题了吗?
- F; M) Z) E  a2 R; gbreed [peoples people]
/ z5 _4 C. y% q" Ybreed [faithfuls faithful]5 ^/ X6 l" Z6 u% ^/ Z4 U6 g
breed [trigger-punishments trigger-punishment]7 P" N, d) M2 G8 n7 ?4 e. \: X/ R: f
breed [tit-for-tats tit-for-tat]  T# ?. ?! I7 V0 d
breed [mixeds mixed]   
; M. e& }3 ~, e& G/ G0 x# sturtles-own [cooperate?  energy]+ c4 S3 h& g/ h: o- W8 E, D, n

" ~" o: A- R6 b, S$ S- Vto setup' x8 z' ?4 L2 @$ A+ r" a% t9 n* W
set-default-shape turtles "person". k6 ^7 o8 Q5 o8 o& }( A1 j; u  a
  clear-all               
7 m& u# ^9 t( t: `* O# x: m; I  setup-peoples  
6 w/ U9 v; ]8 I8 P: Z' d  setup-goverments4 f# I, G; W: f9 Q. G. Q, X" `
ask faithfuls  [ set energy 0 ] ; g2 q3 T& G0 i/ h# }
ask trigger-punishments  [set energy 0 ]9 ]" c  B) U' J2 Z
ask tit-for-tats  [set energy 0 ], l' `7 N" l) \8 P/ j
ask mixeds  [set energy 0 ], T- Q2 k# u6 r0 E
ask peoples  [set energy 0 ]) c6 ?/ v2 ?% W9 B9 m
end6 b6 ~( T; l3 w1 b

4 P1 b- S& O: kto setup-peoples
8 m; n) j% m7 K; z6 C: A2 {6 H2 Q- @% l! l$ \3 t* u
ask patches with [-1 < pxcor and pxcor < 20 and pycor = 0]
% g* U8 s. x4 H# W# f[sprout-peoples 1 [ set color blue set heading 0 ]1 c5 e5 q3 N, ~# Q- `* v+ Z/ ?8 i

) Z, V& L8 V& b7 {]
0 I, ]6 Y* g; ~% x- Q9 Uend
; D2 i& m5 l+ D* }: w2 S0 R# J( r# ~) t
to  setup-goverments% R! T, t; ~2 |2 U( Y' h$ J+ Z
create-faithfuls  5 [set color red set heading 180]
/ |7 a% x) S' ?2 qcreate-trigger-punishments  5 [set color green set heading 180]
% b! v' h5 b8 |9 n: e( gcreate-tit-for-tats  5 [set color white set heading 180]# [3 y# I! r. Q) t) U8 c  v
create-mixeds  5 [set color pink set heading 180]- K6 r; Q0 W9 X2 ]
ask turtles with [ color != blue ] [while [any? other turtles-here] [setxy random 20 1]
  w' J! D5 l; ]- }/ ?2 W+ M* z]5 S5 E( C3 @: s  U4 f
end. P! N) [4 u# ]+ Y; p6 M3 }

# ^2 @5 m# ^# r1 ?% `* ]to go; y1 G% _" D7 H/ T
ask  peoples [ set cooperate? random 2] " U  v* s7 N. g$ g$ G
  ask  faithfuls [  set cooperate? random 2]
" y6 u% N0 D. }7 E6 ^  ask  trigger-punishments [ set cooperate? random 2]% c9 h$ c/ w6 e) b3 U
  ask  tit-for-tats [ set cooperate? random 2]
  [9 q0 B6 h$ S; _% l( J1 L  ask  mixeds [ set cooperate? random 2]
0 w9 d# ~9 M* L# N6 ~  
( B( O  {) u% q/ l* s  ask faithfuls [ 7 W  _% ~) Z3 F% H) C
  if ( cooperate? = [cooperate?] of peoples-on patch-ahead 1 ) 6 N1 P) s2 f6 _  F
   [  set energy  energy + 8 2 {: q% Z2 ]. b' f+ q
      ask peoples-on patch-ahead 1 [ set energy  energy + 2] ]6 z  u4 C9 \3 x7 t  `6 N  Z
      ]         就是这里出问题了无法照我的意思去跑8 R; `3 ?4 I- i
  ifelse (show-energy?)
' i5 @1 _" L1 u$ _7 i2 _    [ ask turtles [ set label (energy) ] ]
) j8 a) Y( L( }; x6 @    [ ask turtles [ set label "" ] ]; O2 G1 ?- u  |& h# `2 @. t
  end: {) ?8 D- `8 B
希望大家能帮我解决一下不然我没办法继续写下去
# w" [3 |8 z! t% E
1 V9 x* X! z: I9 t9 U4 B[ 本帖最后由 h64914110 于 2008-6-4 10:51 编辑 ]

最佳答案

查看完整内容

为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
发表于 2008-6-3 17:42:04 | 显示全部楼层
为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
 楼主| 发表于 2008-6-4 11:57:22 | 显示全部楼层
简单点说好了模型固定分为上下两排,上为政府下为民众
/ ]$ _: J9 Z: P+ h每一个政府类的人对应一个民众
- l( R( B# R2 |, B: f6 n上下两两对应  但我现在问题就是  我不知道turtles是否有互相对应到9 {' u$ c4 _, S* W: `
那如果没对应到    要让turtles互相对应的语法又该怎么写?
% k! S  Z3 J, T) [  h我是新手  麻烦大家帮帮忙  传短讯给我也可以  谢谢- e2 D3 O, X4 i# B0 h) [
# |, F! G( m! y: }9 P7 G
[ 本帖最后由 h64914110 于 2008-6-4 11:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-30 23:50 , Processed in 0.019902 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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