设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9318|回复: 2

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

[复制链接]
发表于 2008-6-3 17:42:03 | 显示全部楼层 |阅读模式
10仿真币
我想请问各位大大高手帮我解决我的问题
# ~: M; s/ t1 ~, y我先简述一下我所要做的模型,我的模型里,整体有两种人,政府与民众。 " e7 E  Y6 @' l
那政府里又分为四种策略的人faithfuls ,trigger-punishments ,trigger-punishments , mixeds
" L4 b6 f; {& P# i3 D那政府要与民众互动,选择合作与不合作,政府合作和民众合作可得分(energy) 9 r; W- z' P; E# N3 f" Y) Z) H
,相对的不合作也有得分但当我要开始写规则的时候,却发现程式无法照我的意思去跑,想请问各位高手能帮我看看是哪里出问题了吗?$ Y! p, C" ?9 i; W5 P& ~5 c
breed [peoples people]  O  Y% [7 n+ {2 K! L. T
breed [faithfuls faithful]4 l: r! I! u( o0 P) A) i& R8 C  g
breed [trigger-punishments trigger-punishment]/ ?! |3 @6 I$ f. e, S) U! [; z0 n
breed [tit-for-tats tit-for-tat]
  u0 g2 b2 k! |breed [mixeds mixed]   
0 ?: O5 j, m; r, ]( [( |turtles-own [cooperate?  energy]
. m+ _) p: g4 \6 g6 _6 l& n7 j; j9 E# @
to setup
; v6 F4 p+ D% V4 X. gset-default-shape turtles "person"
" Q( ?  m4 Q* h! ?  clear-all               
7 E6 f/ K2 S9 ^4 W6 }5 p5 A  setup-peoples  
. j6 _+ F3 Y0 w9 }$ V% q  setup-goverments$ Q7 g1 Z. w6 d1 U2 T) W
ask faithfuls  [ set energy 0 ]
7 Y2 v! K5 U1 P" Rask trigger-punishments  [set energy 0 ]
4 Y/ v/ \; p" }$ Y) s" p0 K& u7 `2 qask tit-for-tats  [set energy 0 ]& I4 E0 r' o8 I( d
ask mixeds  [set energy 0 ]* n  k) V- d& |7 u. F9 [) f- u
ask peoples  [set energy 0 ]
; n6 P6 O; k- E* p% }" n* Fend6 }3 u' k# ^& m7 K6 ?8 ~% f5 A
' K- o1 M% l; f, w2 ]; L. [0 B
to setup-peoples* C, @# k9 [2 Q! Y  _
) U9 t' G, }8 D, a: I2 d# L
ask patches with [-1 < pxcor and pxcor < 20 and pycor = 0]( t9 T1 V1 K1 P' ^$ q1 P
[sprout-peoples 1 [ set color blue set heading 0 ]
% W, _/ H% _% W$ E( Z
4 p6 ^8 X( o+ C; D6 ]4 G9 E]) E$ x& V3 ^- @! S
end6 i2 |9 @) K! m0 j: q
# I7 V; C/ q! }. u/ L6 S
to  setup-goverments
$ w/ v7 Q# x  S2 t# fcreate-faithfuls  5 [set color red set heading 180]
. ?( g2 J* B" R+ ?create-trigger-punishments  5 [set color green set heading 180]) h9 j! T+ t; Q! H% p/ O& _* e
create-tit-for-tats  5 [set color white set heading 180]: X. g6 r; I* x- }9 F
create-mixeds  5 [set color pink set heading 180]
. k) z8 l0 v" m4 }. p4 q/ v. K& sask turtles with [ color != blue ] [while [any? other turtles-here] [setxy random 20 1]7 t2 L+ n5 M! {1 Q
]$ F3 i3 f& V0 `" t" B1 v  e
end
; w! q0 w& b; J5 K4 M2 L, }6 ^; ]( @  w' i/ t
to go
+ F- c! M# E- k. I' A! z* @ask  peoples [ set cooperate? random 2]
% u- T' f9 b1 m+ Y  ask  faithfuls [  set cooperate? random 2]
; _4 e. Y! O  P6 x) a% F  ask  trigger-punishments [ set cooperate? random 2]: @7 n8 l8 L0 q1 j& R3 k/ U
  ask  tit-for-tats [ set cooperate? random 2]
0 D. b3 T2 C. Z  ask  mixeds [ set cooperate? random 2]
. x6 G8 w5 Z1 S6 D( z9 W9 G  
9 O: T0 n6 P& f9 h  ask faithfuls [
9 b% P. N. t! }) R4 y8 v  if ( cooperate? = [cooperate?] of peoples-on patch-ahead 1 ) 1 o( O8 j7 c& R% @3 N- F
   [  set energy  energy + 8 : t( l( Q1 E/ K& d' |  ^# i' Q
      ask peoples-on patch-ahead 1 [ set energy  energy + 2] ]
7 O% a) }( R% @! X6 M; Y      ]         就是这里出问题了无法照我的意思去跑
# Y& b9 m' z: r- G7 I  F/ F  ifelse (show-energy?)& E1 B9 \1 }7 T- ]% ~' \
    [ ask turtles [ set label (energy) ] ]
' M# U: ~, U6 X4 g    [ ask turtles [ set label "" ] ]* g0 t3 H% F  f# f8 R- s
  end* Z* ]& g, ~; i; E% z
希望大家能帮我解决一下不然我没办法继续写下去# ]6 y' G6 q. a( a/ a3 m
, E  ]( b% F0 L' C/ C# m) W
[ 本帖最后由 h64914110 于 2008-6-4 10:51 编辑 ]

最佳答案

查看完整内容

为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
发表于 2008-6-3 17:42:04 | 显示全部楼层
为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
 楼主| 发表于 2008-6-4 11:57:22 | 显示全部楼层
简单点说好了模型固定分为上下两排,上为政府下为民众% z; {) B" j( g) Y% w1 I- r
每一个政府类的人对应一个民众
2 L, L$ a5 u: C2 N+ h6 |; D  g上下两两对应  但我现在问题就是  我不知道turtles是否有互相对应到6 @& B* D, f) I" Q4 T
那如果没对应到    要让turtles互相对应的语法又该怎么写?
! i5 v6 F9 `# k" u0 @# Z/ v我是新手  麻烦大家帮帮忙  传短讯给我也可以  谢谢& ^& X7 X7 _* b; d6 a

: J% e& E, G6 N# W2 g- }[ 本帖最后由 h64914110 于 2008-6-4 11:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-26 23:55 , Processed in 0.015136 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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