You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改NetLogo的to-report过程实现两类生产者的感知质量计算?

问题背景与需求

现有NetLogo模型包含生产者和选择者两类海龟:

  • 生产者生产带有客观质量的产品,选择者基于感知质量选择产品
  • 原感知质量计算公式:生产者产品质量 - 选择者beta值,所有海龟均拥有自适应变量beta,且每轮会切换角色
  • 选择者通过max-one-of选择感知质量最优的产品

现需新增两类生产者:

  • t-producers(可信生产者):感知质量直接等于自身产品质量(无需减去选择者的beta)
  • f-producers(非可信生产者):仍沿用原公式计算感知质量

当前实现需分别选择两类生产者中的最优产品再比较,但存在「必须两类生产者都在邻域才能正常运行」的问题,需修改to-report过程实现更简洁的逻辑,无需分开处理两类生产者。


现有代码

解决方案

1. 调整初始化逻辑(拆分生产者类型)

首先修改setup过程,将原有的producers拆分为t-producers和f-producers,并设置对应颜色区分:

2. 修改感知质量计算过程(核心优化)

直接在perceived-target-value报告过程中判断生产者类型,动态计算感知质量,这样max-one-of可以直接对所有生产者统一处理:

3. 调整选择逻辑的生产者范围

修改choose-best-moore过程中的生产者筛选条件,覆盖两类新生产者:


优化说明

  • 无需再分开筛选两类生产者并分别求最优,max-one-of会自动遍历所有邻域内的生产者,基于动态计算的感知质量选出最大值对应的个体
  • 无论邻域内只有可信生产者、只有非可信生产者,还是两者都有,逻辑都能正常运行,解决了原实现的局限性
  • 代码结构更简洁,后续扩展其他生产者类型时,只需在perceived-target-value中新增判断逻辑即可

内容的提问来源于stack exchange,提问作者garzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 18:35:41