跳到主要内容

参数探索实验

功能

调用模型运行单次模拟的最简单实验。

提示
  • 顾名思义,参数探索实验主要用于让使用者能以更友好的方式手动调节模型的各种参数的取值,从而得到令其满意的模拟结果、获得更佳的输出数据可视化效果的场合。
  • 这得益于HoloMind实验支持无代码、拖拉拽的方式制作功能强大、交互友好的仪表盘。
  • HoloMind的仪表盘不仅可以制作放置图表卡片,也可以放置控制面板。
  • 当然,如何使用参数探索实验完全取决于你,不必拘泥于上述建议方式,一个极端的例子是你甚至可以不做任何配置直接运行参数探索实验。
  • 你可以理解参数探索是其他高级实验的“基础能力模版”。

构造参数探索实验的主要工作包括:构建面板(通常用于模型参数初值控制)和构建图表(通常用于输出结果呈现)。在成功创建实验情景后,可按以下各节的步骤进行构造。

创建和管理仪表盘

仪表盘用于放置面板卡片图表卡片富文本卡片

  • 如上图,在左侧边导航栏选择仪表盘。
  • 系统默认有1个空仪表盘,你可以根据需要在主工作域顶部的标题栏点击“+”按钮创建更多,并通过标题栏菜单进行管理,如上图。
  • 可以通过拖动卡片或拖拽卡片轮廓调整仪表盘布局,系统将向上、向左优先布局自动适配,如下图。

  • 所有仪表盘都属于当前实验,即实验结果不会因为卡片放置在不同的仪表盘而不同。

数据准备

工作界面

对实验运行输出数据或外部加载数据进行探索和预处理(表联合和行过滤),从而为后续构建图表卡片做好准备,数据表工作界面如下图。

  1. 左侧边栏数据表管理导航
  2. 数据视图标题栏
  3. 过滤条件展示标签
  4. 数据表预览区
  5. 数据字段值过滤按钮

管理数据表

  • 在左侧边栏数据表选项下管理,如上图1。
  • 选择任意数据表选项时,主工作域将显示相关内容。
  • 名为Output的数据表是固有存在的,实验运行的输出结果会默认存储在其中。
  • 添加数据表
    • 加载外部数据
    • 联合现有数据表

添加和管理数据视图

数据视图是指对数据表的数据行进行过滤处理的方案,可以作为后续构建图表的数据基础。

  • 关于数据视图
    • 基于一个数据表可以创建多个互不影响的视图,以方便后续制作图表时使用。
    • 准备带有过滤条件的数据视图不是必须的,因为构建图表也可以直接基于未过滤的数据表。
  • 点击标题栏的“+”按钮即可创建一个新的数据视图,或基于现有视图另存,如下图。

  • 为数据视图添加过滤条件。

  • 如上图,在数据预览区鼠标悬浮在目标字段后点击出现的漏斗符号,都会弹出过滤选择窗口如下,根据过滤目标字段格式不同操作内容也不同,如数字格式如下左图,或文本格式如下右图,根据提示进行相应的设置即可。
  • 添加过滤后会显示相应过滤条件的状态标签,点击右侧的“X”将取消该过滤条件。

输出数据说明

  • 每种实验的输出数据表Data的字段不同。
  • 参数探索实验的字段说明如下。
字段名默认类型含义
Tickquantitative模拟时间步
Namenominal数据对象名称
IDnominal数据对象在模型中的编号
Agent Namenominal数据对象所属Agent的名称
Agent IDnominal数据对象所属Agent在模型中的编号
Indexquantitative数据对象所属Agent个体的索引
Valuequantitative数据对象值
提示
  • 参数探索实验的输出数据本质上是向模型订阅的数据对象在模拟的每个Tick的状态值。

构建图表卡片

创建和管理图表卡片

  • 选中目标仪表盘,在右上角鼠标悬浮创建卡片按钮,在浮现的菜单中选择图表,将弹出图表卡片配置界面。

  • 通过已有卡片右上角的菜单进行卡片管理,当选择编辑时,也同样会弹出图表卡片配置界面。

图表卡片编辑界面和使用说明

进入图表卡片的编辑模式后如下图。

  1. 卡片名称输入框
  2. 选择绘图数据表下拉菜单
  3. 选择数据视图下拉菜单
  4. 数据预览标题栏:点击后下方显示数据预览区,同数据准备相关内容。
  5. 数据可视化标题栏:点击后下方显示图表配置区。
  6. 功能按钮栏,从左至右依次为
    • 6.1 数据聚合开关:打开后,“9-维度度量架”上的字段将出现选择聚合方法的下拉菜单。
    • 6.2 图表类型选择下拉菜单:包括曲线图、柱图、堆积曲线图、散点图等6.3堆积模式选择菜单。
    • 6.4 转置(维度和度量)按钮
    • 6.5 升序排列按钮
    • 6.6 降序排列按钮
    • 6.7 导出图片按钮
    • 6.8 导出为CSV按钮
  7. 字段列表:上部为系统推荐的维度字段区(蓝色图标字段),下方为系统推荐的度量字段区(紫色图标字段),可拖拽字段到中部的“8样式架”和右侧的“9维度度量架”;点击右侧“...”可弹出管理菜单,可在其中设置所在分区、转换数据格式、字段重命名等操作。
  8. 样式设置架:从左边的“7字段列表”中拖出字段可放在各种样式控制的“架子”上,包括过滤值、颜色、透明度、大小、细节、文本,表示按照所选字段设置相关样式,例如上图中以Name字段放在颜色“架子”上,表示以Name字段的值(包括两个)来区别颜色,因此形成两条不同颜色的曲线。
  9. 维度-度量架:从左边的“7字段列表”中拖出字段可放在相应“架子”上,表示将该字段值序列作为维度或度量绘图,例如上图中以模拟Tick的值序列作为X轴、以Value的值序列作为Y轴绘制曲线图。
  10. 图表预览区:按当前数据和设置实时呈现图表结果。
提示

HoloMind实验标准图表卡片由Graphic Walker驱动,更多使用方法和细节信息可以参考相关文档。

构建面板

包括全局面板和面板卡片,通常用于设定目标模型的初始参数值,面板中可以放置各种表单控件(开关、滑块、下拉菜单等)、函数图像布局组件、和文字等组件。

提示

面板的具体用途完全取决于你,比如一个面板卡片内只放了一个文字组件,输入介绍内容后,你可以将其作为当前仪表盘的使用说明卡片。

创建和管理面板

全局面板

  • 全局面板与所有仪表盘平级,无论切换哪个仪表盘,全局面板可以稳定显示在设定的位置(仪表盘的左侧或右侧)。
  • 全局面板展开按钮默认在右上角(如下左图),点击将会出现在仪表盘右侧(如下右图)。
  • 鼠标悬浮全局面板的右上角“...”将弹出管理菜单,你可以选择重命名、布局在仪表盘另一侧(本章最初的示意图布局在左侧)以及进入编辑模式。
  • 当你设置了全局面板处于左侧,展开按钮也将出现在左侧。
  • 全局面板是每个实验固有存在的。

面板卡片

  • 面板卡片与图表卡片平级,都属于某个仪表盘之内。
  • 创建面板卡片 类似于创建图表卡片,在右上角添加卡片按钮上悬浮鼠标,在菜单中选择面板,即可创建一个新的面板卡片,系统将进入编辑面板编辑模式。

  • 管理面板卡片 类似于图表卡片,在右上角“...”菜单中进行管理,选择编辑将进入编辑模式。

面板编辑界面和使用说明

无论是全局面板还是面板卡片,编辑模式使用方法完全相同,界面如下图。

  1. 面板名称输入栏
  2. 组件栏:从组件栏可拖拽任意组件到“3 面板画布” 2.1 表单控件:用于从使用界面收集用户设定数据从而设置模型参数的初始赋值 2.2 图表类组件:数学函数图像用于实时绘制输入 2.3 布局类组件:行、列、折叠布局用于容纳其它组件使其成为整体组从而实现内部自动布局
  3. 面板画布:用于放置并布局各类组件
  4. 组件属性设置栏:当点击“3 画板画布”中的任意组件时,这里显示该组件的设置项 4.1 组件标签输入框 4.2 选择模型绑定对象下拉菜单:仅表单组件有 4.3 交互事件设置栏:表单组件可以作为触发者,定义交互事件的对象和交互方式,详见下节组件间交互 4.4 初始状态选择

面板内组件

组件通用设置

  • 标签名称输入框

一方面在面板上将以标签标明该控件,另外在后续的交互事件设置中,也将以该名称显示目标组件;请注意,不设置标签其它组件将无法触发该组件的状态变化交互。

  • 初始状态选择

所有组件可选“显示/隐藏”状态,表单组件还有“禁用”状态如上图所示,每个组件可选初始状态如下表“被触发切换状态”列所示。

  • 每种组件详细信息和用法请参见相应章节。

组件间交互

所有组件间交互方式和工作机制如下表。

组件主动触发触发动作被触发被触发切换状态被触发值可绑定模型内数据对象
开关开/关时显示/隐藏/禁用
数字输入框输入值等于定义值时显示/隐藏/禁用
单行文本输入框输入值等于定义值时显示/隐藏/禁用
多行文本输入框输入值等于定义值时显示/隐藏/禁用
单选下拉框选择某个选项时显示/隐藏/禁用
单选按钮选择某个选项时显示/隐藏/禁用
滑块输入值满足自定义比较条件时显示/隐藏/禁用
按钮点击时显示/隐藏/禁用
函数图像显示/隐藏
文本显示/隐藏
行布局显示/隐藏
列布局显示/隐藏
折叠布局显示/隐藏, 展开/收缩
幻灯片显示/隐藏, 自定义状态切换
  • 组件间交互由交互事件定义。
  • 交互事件的具体设置方法参见表单控件节相关内容。

面板内自动布局

面板内的多个组件,系统优先向上自动布局。

  • 如果上方组件状态由非隐藏变为隐藏,则下方组件向上递补。
  • 如果上方组件状态由隐藏变为非隐藏,则将当前位置及下方组件向下“推开”。

构建富文本卡片

  • 选中目标仪表盘,在右上角鼠标悬浮创建卡片按钮,在浮现的菜单中选择富文本来创建卡片。

使用实验

实验运行

  • 参数探索实验在客户端计算。
  • 实验运行实验记录管理的通用操作参照实验章节说明。
  • 你可以基于以下设定输入运行实验,系统将在成功运行后自动记录设定数据和输出结果数据。

默认设定值的使用

修改默认设定

  • 直接修改 在面板编辑模式下修改状态即可。
  • 按当前设定覆盖默认 在运行记录栏的默认设定管理中选择“覆盖当前默认”。

恢复默认设定

  • 恢复指定面板默认设定

在面板管理菜单中选择“恢复默认”选项,则当前面板所有组件状态将恢复默认值,但这不会影响其他面板。

  • 恢复所有面板默认设定 在运行记录栏鼠标双击默认设定,或在其管理菜单中选择“加载”,则实验所有面板恢复默认设定。

案例

Web3 Bonding Curve

Bonding Curve 常在DeFi协议中用于约定Token价格关于供应量的函数关系,在这个参数实验中,你可以自由选择调整函数类型、函数参数取值、协议参数、市场风格、用户行为等参数,以观测Token市场价格与协议价格趋势、Token分布等实验输出,也许能更好的辅助你设计协议的代币经济学。查看实验