设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7430|回复: 2

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

[复制链接]
发表于 2008-6-3 17:42:03 | 显示全部楼层 |阅读模式
10仿真币
我想请问各位大大高手帮我解决我的问题1 L1 O# c% l0 W) e; h! k! T- l
我先简述一下我所要做的模型,我的模型里,整体有两种人,政府与民众。
# q6 [  o, r2 ?% ~  j那政府里又分为四种策略的人faithfuls ,trigger-punishments ,trigger-punishments , mixeds
1 O: x1 j/ C( u: J7 H# E那政府要与民众互动,选择合作与不合作,政府合作和民众合作可得分(energy) 3 j4 {2 C& ]6 M; @( x2 J
,相对的不合作也有得分但当我要开始写规则的时候,却发现程式无法照我的意思去跑,想请问各位高手能帮我看看是哪里出问题了吗?) D* X' r2 d9 a' w
breed [peoples people]
. Y( x, Y0 b0 y0 [6 @breed [faithfuls faithful]
& i. T" b& P& |# \breed [trigger-punishments trigger-punishment]; G. W  ^, M! h
breed [tit-for-tats tit-for-tat]
* T1 }9 c  E) {/ v, t+ E% v  ybreed [mixeds mixed]    & S1 P/ R, J5 J8 g5 y, |
turtles-own [cooperate?  energy]9 @' v0 ?( o! L7 H# o! f' x

8 m0 _1 z+ K5 r2 U  W6 [to setup
8 _+ B( f5 B+ k: Tset-default-shape turtles "person"
' P7 r1 j" s+ c' V( E  clear-all               
$ U  }7 Q- r, _5 I$ q  setup-peoples  - z# R  f1 y* W* D6 h1 i1 ^
  setup-goverments
7 v) k2 d4 F/ v$ M& m! Hask faithfuls  [ set energy 0 ] % J; ~1 k1 L/ q  ]% [
ask trigger-punishments  [set energy 0 ]4 a1 o8 q5 V! v. O/ V- m3 |' e
ask tit-for-tats  [set energy 0 ]
4 e* G( L) N% |ask mixeds  [set energy 0 ]. O* I) {8 k5 z0 V& y1 z. w
ask peoples  [set energy 0 ]
; @" A/ g/ v8 `4 A1 }( a$ V9 xend
  ~( N# |# S7 K+ d4 X$ _6 q# g% t+ Q4 \0 X- t
to setup-peoples) T" I: n+ c6 s8 g+ \( x
) m: E# F# \' P. s6 e
ask patches with [-1 < pxcor and pxcor < 20 and pycor = 0]
  L2 K# f! [9 H& J- M' U9 y& N[sprout-peoples 1 [ set color blue set heading 0 ]4 c) h! ^) M5 _& u) b( {8 t( K

1 o! f8 x4 ~) u3 j6 V]
; T$ X; h& e% h- lend
" {1 }% F* ]6 C- s+ n- I& F
% ~+ t+ g* Q. m2 J$ Yto  setup-goverments
7 J3 ?( Z* q% v) qcreate-faithfuls  5 [set color red set heading 180] 9 ?1 r3 s$ x% L* L
create-trigger-punishments  5 [set color green set heading 180]
# K* D: T; E" m* kcreate-tit-for-tats  5 [set color white set heading 180]! _6 z7 k2 D# m( i
create-mixeds  5 [set color pink set heading 180]
5 ]! c0 n" Q% C* J. G2 _3 w' i# Z' vask turtles with [ color != blue ] [while [any? other turtles-here] [setxy random 20 1]
, F, ^& N1 @/ R]* B# V0 z8 ^  M2 A2 W$ d
end
6 ~4 V( v0 Z8 R& m' n6 R  f& U8 P4 o9 |$ M: H  |; z- Z
to go
: C9 B8 B8 C+ q. c) y4 Rask  peoples [ set cooperate? random 2] : V7 \- l5 ?0 L1 N2 {- T8 ^! z
  ask  faithfuls [  set cooperate? random 2] 3 J' `- @. @$ ~
  ask  trigger-punishments [ set cooperate? random 2]
. W/ `) V  k9 d6 r  ask  tit-for-tats [ set cooperate? random 2]
$ h7 ^( k/ \6 d- |8 W  ask  mixeds [ set cooperate? random 2]7 Y, C5 F( g9 r( E7 ?* [" M
  , j' T# X( w& X0 B/ m* }
  ask faithfuls [
$ m, \' y! ?: o2 a/ {  if ( cooperate? = [cooperate?] of peoples-on patch-ahead 1 ) 8 w: Z- M" o$ f0 v' M
   [  set energy  energy + 8 0 X5 y: T1 \4 h1 z
      ask peoples-on patch-ahead 1 [ set energy  energy + 2] ]: q; _1 q( E' a# W- f
      ]         就是这里出问题了无法照我的意思去跑
; e5 H; u. [9 g  ifelse (show-energy?)
3 r7 D: @: O4 |! S6 l% B% R    [ ask turtles [ set label (energy) ] ]2 g- f( U' Q4 O. I( F( k
    [ ask turtles [ set label "" ] ]4 b! Q2 F! F0 ^* q+ u& _/ W
  end; z0 u+ q& s- u) t+ E0 ]$ p
希望大家能帮我解决一下不然我没办法继续写下去7 Q( o2 D6 [8 |# ?) e5 t
+ ?, k  M* B) t7 q( D) @+ i
[ 本帖最后由 h64914110 于 2008-6-4 10:51 编辑 ]

最佳答案

查看完整内容

为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
发表于 2008-6-3 17:42:04 | 显示全部楼层
为什么不考虑用patches设定政府,假设政府不能够移动,民众可以通过用脚投票选择政府。这样也许可以解决你说的问题。
 楼主| 发表于 2008-6-4 11:57:22 | 显示全部楼层
简单点说好了模型固定分为上下两排,上为政府下为民众2 Q( V) }- i  c$ o9 A
每一个政府类的人对应一个民众$ y  O* ~# R% u3 c# q
上下两两对应  但我现在问题就是  我不知道turtles是否有互相对应到# \5 b$ g- l7 ?# F; J% [8 q8 g5 c: m
那如果没对应到    要让turtles互相对应的语法又该怎么写? ' ?4 D; S7 F) F; Q' B
我是新手  麻烦大家帮帮忙  传短讯给我也可以  谢谢
4 ^& ^. w/ O( o
$ D( v" g7 W! y[ 本帖最后由 h64914110 于 2008-6-4 11:58 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-26 05:26 , Processed in 0.014330 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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