NetLogo中为compradores breed添加资金差异属性的技术求助
为NetLogo的compradores breed添加资金差异属性的实现方案
核心操作步骤
定义个体专属资金属性
使用compradores-own为该breed单独声明资金属性,这是NetLogo中为特定群体添加个体属性的标准做法,能避免与全局变量混淆。创建个体时分配差异化资金
在create-compradores代码块中,通过随机判断直接分配固定档位的高低资金,或生成随机范围资金后用阈值区分,两种方式均可实现需求。
修改后的完整代码示例
; 确保breed定义(若你的代码未包含此部分必须添加) breed [compradores comprador] compradores-own [ fondos ] ; 定义资金属性 ask patches [ set pcolor yellow ] set productos ["aceite" "bebidas" "cerveza" "detergente" "especias" "flores" "gasoil" "huevos" "infusiones" "jamon" "kafe" "levadura"] set-default-shape compradores "person" create-compradores 10 [ set color pink set heading 0 set size 2 setxy (random world-width) + min-pxcor (random world-height) + min-pycor set lista-de-compra n-values 10 [item (random (length productos)) productos] set memoria [] ; 方式1:固定比例分配高低资金(50%高资金,50%低资金) ifelse random 2 = 0 [ set fondos 1000 ] ; 自定义高资金额度 [ set fondos 200 ] ; 自定义低资金额度 ; 可选:可视化区分高低资金个体 if fondos >= 500 [ set color blue ] ]
另一种灵活分配方式(随机范围资金)
若需要更贴近现实的资金分布,可替换上述资金赋值部分为:
; 方式2:生成随机范围资金,后续通过阈值(如500)区分高低 set fondos random 1200 ; 同样可添加可视化区分 if fondos >= 500 [ set color blue ]
内容的提问来源于stack exchange,提问作者Arcoluiris A.
相关产品推荐
相关产品推荐

