alqithami/vchimera

GitHub: alqithami/vchimera

一个研究级仿真框架,将网络事件与公众信息传播耦合,评估免疫式治理在误信息环境下的影响。

Stars: 0 | Forks: 0

# V-CHIMERA [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![arXiv](https://img.shields.io/badge/Biomimetics-10.3390/biomimetics11050324-b31b1b.svg)](https://www.mdpi.com/2313-7673/11/5/324) coverImage **V-CHIMERA** 是一个可复现的研究工件,用于研究**错误信息下的组织网络危机应对**。该仓库将网络行动和公开通信建模为一个耦合的人-信息-机系统,然后评估经过验证的通信治理和受免疫启发的调节机制如何影响安全性和性能。 该项目伴随论文**“V-CHIMERA: An Immune-Inspired Verified Framework for Organizational Cyber Crisis Response under Misinformation”**,旨在支持透明的实验、图表重生成和手稿准备工作。 ## 图文摘要 Graphical_Abstract ## 为什么这个仓库很重要 传统的应急响应流水线通常将技术遏制和公开通信视为独立的活动。V-CHIMERA 将它们整合在一个单一的耦合框架中。它模拟了网络危机事件如何塑造谣言、信任和报告行为,以及这些社会反应如何反过来影响防御者的有效性。同时,它在 runtime 强制执行通信安全约束,以确保不安全的公开消息永远不会被执行。 ## 核心功能 | 组件 | 描述 | |---|---| | **CyberCrisisGym-J** | 一个耦合的网络-社会仿真环境,结合了危机事件演进与在线信念、信任、不确定性、内容审查以及报告动态。 | | **V-CHIMERA policies** | 用于在跨场景下进行受控比较的 baseline、耦合、shielded 和 ablation 策略。 | | **Runtime protocol shield** | 一个安全层,根据证据、不确定性、冷却时间和披露规则对拟定的通信动作进行过滤。 | | **Immune-gated coupling** | 一个受免疫机制启发的 controller,利用 danger、tolerance 和 memory 来调节社会反馈何时应影响操作响应。 | | **可复现的实验脚本** | 用于运行主要期刊实验、sensitivity 扫描以及手稿资产生成的实用工具。 | | **论文源文件** | 用于生成可直接用于论文的成果的手稿源文件、参考文献、图表和表格生成脚本。 | ## 仓库结构 | 路径 | 用途 | |---|---| | `vchimera/` | 核心包,包含环境、耦合逻辑、协议强制执行、指标、策略和可选的适配器。 | | `configs/` | 场景定义、校准文件和实验 YAML 配置。 | | `scripts/` | 实验运行器、sensitivity 研究、smoke test 和辅助工具。 | | `paper/` | 手稿源文件、参考文献、图表和已生成的论文资源。 | | `runs/` | 执行后创建的实验输出。 | ## 安装 推荐的环境是 **Python 3.11 或更新版本**。 ``` python -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip pip install -r requirements.txt ``` ## 快速开始 以下命令涵盖了从环境验证到实验执行和论文资产生成的标准工作流。 | 步骤 | 命令 | 结果 | |---|---|---| | Smoke test | `python scripts/smoke_test.py` | 确认基础环境和包的连接正常运行。 | | 主要实验套件 | `python scripts/run_experiments.py --config configs/experiments/journal_main.yaml` | 在 `runs/` 目录下生成一个带有时间戳的运行目录。 | | Sensitivity 研究 | `python scripts/run_sensitivity.py --config configs/experiments/sensitivity.yaml` | 生成用于鲁棒性和 sensitivity 图表的数据。 | | 论文资产 | `python scripts/make_paper_assets.py --run_dir "$RUN_DIR" --paper_dir paper` | 写入用于整合到手稿的表格和图表资产。 | | 重生成图表 | `python paper/scripts/regenerate_figures_bw_accent.py --episode_steps "$RUN_DIR/episode_steps.csv" --sensitivity runs/sensitivity_grid/sensitivity.csv --out_dir paper/figures` | 使用预期的运行输出重新生成出版级图表。 | 要自动检索最新的期刊运行目录,请使用: ``` RUN_DIR=$(ls -td runs/journal_main_* | head -n 1) echo "$RUN_DIR" ``` ## 运行主要实验 默认的启动包评估了三个具有代表性的危机场景:`ransomware_rumor`、`outage_rumor` 和 `exfiltration_scam`。这些场景旨在对网络中断、错误信息扩散、信任侵蚀和报告行为的不同组合进行压力测试。 ``` python scripts/run_experiments.py --config configs/experiments/journal_main.yaml ``` 一次典型的运行会创建如下格式的目录: ``` runs/journal_main_YYYYMMDD_HHMMSS/ ``` 在该目录中,关键输出通常是 `summary.csv`,以及(如果启用)`episode_steps.csv`。 ## 生成手稿输出 一旦运行完成,就可以直接生成用于手稿整合的论文资产。 ``` python scripts/make_paper_assets.py --run_dir "$RUN_DIR" --paper_dir paper ``` 此步骤会将表格和图表资产写入到论文工作区,以便无需手动复制粘贴步骤即可重新构建手稿。 ## 编译手稿 编译论文需要本地的 TeX 发行版,例如 **TeX Live** 或 **MacTeX**。 ``` python scripts/compile_paper.py --paper_dir paper --tex main.tex ``` 也支持手动的 LaTeX 工作流: ``` cd paper pdflatex -interaction=nonstopmode main.tex bibtex main pdflatex -interaction=nonstopmode main.tex pdflatex -interaction=nonstopmode main.tex ``` ## 可选的 CybORG 迁移实验 该仓库包含一个用于 **CybORG** 生态系统的适配器脚手架。此后端是可选的,如果需要进行迁移实验,必须单独安装。 ``` python scripts/run_experiments.py --config configs/experiments/cyborg_transfer.yaml ``` 如果 CybORG 配置依赖于额外的包,请在运行迁移实验之前将它们安装在同一环境中。 ## 可复现性 [`REPRODUCIBILITY.md`](REPRODUCIBILITY.md) 中提供了专门的可复现性指南。在从原始运行结果重创建表格、图表和论文输出时,应使用该指南。 ## 引用 可以包含一个 `CITATION.cff` 文件用于软件引用,并且当该仓库用于学术工作时,也应引用随附的手稿。 ## 安全性与范围 默认的网络后端是一个**抽象的事件模拟器**,旨在用于研究评估。该仓库旨在研究组织响应、感知错误信息的协调以及通信治理。它**不是**进攻性 payload 或操作利用指南的来源。
标签:Python, 人工免疫, 仿真环境, 库, 应急响应, 无后门, 社会计算, 网络安全, 虚假信息治理, 隐私保护