D-Mem 双域耦合认知框架 v1.0
设计纲领
所有自主系统的效能由两个正交拓扑共同决定:执行拓扑 (谁做什么、任务如何流转)和记忆拓扑(知识如何组织、如何检索)。两个拓扑各自独立优化是当前架构的天花板------Fable 5 优化了执行拓扑,MemPalace 优化了记忆拓扑,但二者之间没有结构性耦合。
D-Mem 框架的核心命题:执行拓扑和记忆拓扑是同一个 C_ij 耦合矩阵在两个时间尺度上的投影。闭环反馈是双向的------记忆拓扑约束执行拓扑的搜索空间,执行拓扑生成记忆拓扑的新节点。
一、双域耦合作为系统级创新
1.1 现有架构的断层
| 维度 | Fable 5 (执行域) | MemPalace (记忆域) | D-Mem (融合) |
|---|---|---|---|
| 拓扑类型 | Agent 委派图 | Wing->Room->Drawer 层次 | 双域共享 C_ij |
| 耦合对象 | agent<->agent, agent<->task | memory<->memory, query<->memory | C_ij 矩阵跨域桥接 |
| 时间常数 | 毫秒~秒级(推理) | 秒~分级(检索) | 异步双向同步 |
| 观测指标 | 任务完成率, 延迟 | R@5, 召回率 | 跨域 ont_self 对齐度 |
| 自愈能力 | 无(安全闸门被动 fallback) | 无(固定层次) | 自主结构修正闭环 |
断层的本质:执行域不知道记忆域如何组织,记忆域不知道执行域如何决策。Agent 检索到的 96.6% 精确记忆,可能与其当前执行上下文完全不相关------两个拓扑各自独立演化,没有结构对齐。
1.2 核心创新:共享 C_ij 矩阵
D-Mem 的唯一结构性创新是:执行拓扑和记忆拓扑共享同一个 C_ij 耦合矩阵,但以不同的时间常数更新。
lua
+-------------------------+
| 共享 C_ij 矩阵 |
| (N_exec + N_mem) 维度 |
+--------+----+----------+
| |
+--------+ +--------+
v v
+------------------+ +------------------+
| 执行域拓扑 | | 记忆域拓扑 |
| (快时间尺度) | | (慢时间尺度) |
| T_exec = tick | | T_mem = tick*K |
| agent + task | | wing+room+draw |
+------------------+ +------------------+
共享的价值:
- 执行域的 agent 不在真空中------每个 agent 有"专业领域",在记忆域中对应一个 wing
- 当 agent A 被委派任务 T,记忆检索自动限定在 wing_A + T 相关 rooms
- 当记忆域中 wing_W 积累了新知识,W 对应的 agent 在执行域中获得更高优先级
- 两个域的耦合度等价于系统对自身结构的认知一致性
二、五层架构
Layer -1: 基质层 (Substrate)
与 MemPalace 的 pluggable backend 相同设计。向量存储、推理引擎、通信协议全部可替换。
python
interface Substrate:
def store(embedding, metadata) -> id
def search(query_embedding, scope) -> list[id]
def delete(id)
def estimate_latency() -> float
预置实现: ChromaDB(默认), SQLite exact(校验), Qdrant(REST), pgvector(SQL)。
Layer 0: 感知层 (Sense)
将外部输入转换为统一的 Palace 格式。每一条输入被分配:
- content: 原始文本(verbatim,无摘要)
- domain: PalaceEmbeddingRouter 自动路由
- confidence: 置信度(0~1)
rust
Input -> PalaceEmbeddingRouter -> content + domain + confidence -> Layer 1
Layer 1: 记忆域拓扑 (Memory Topology)
继承 MemPalace 的 wing->room->drawer 三层结构,新增两个机制:
1.1 拓扑自动修剪(Palace GC)
- room 活跃度低于阈值 -> 合并到父 wing
- wing 内部耦合度低于阈值 -> 拆分为更细粒度 wing
- 复用 V9 PalaceGCOptimizer 的 merge/split/delete 决策算法
1.2 时间分片(Verbatim x Temporal)
- 每条 drawer 有 temporal_tag(NORMAL/WEAKENED/DISABLED)
- 跨时间片检索受强度参数约束
- 实现既视感幻觉的拓扑控制
scss
Wing (域) -+- Room1 (主题) -+- Drawer1 (原始内容 + temporal_tag)
| +- Drawer2
| +- ...
+- Room2 ---------- ...
+- ...
Layer 2: 执行域拓扑 (Execution Topology)
继承 Fable 5 的 sub-agent 委派,但 agent 边界由记忆域定义:
2.1 Palace-Scoped Agent 每个 agent 绑定一个 wing(或一组 room):
yaml
Agent_A:
scope: wing_software_engineering
delegated_tasks: task1, task2 # 自动限定在 wing 内
C_ij_memory: wing_A 与所有已执行任务的耦合强度
2.2 任务->记忆双向路由
css
task_T 被分配给 Agent_A:
1. 检索 scope = wing_A + domain(T)
2. 返回 top-k drawers
3. Agent_A 执行任务
4. 输出自动存入 wing_A.new_room(task_T)
Layer 3: 耦合桥 (Coupling Bridge)
D-Mem 的核心创新------执行域和记忆域之间的双向 C_ij 同步协议。
3.1 同步规则
ini
每 tick:
for each agent in execution_domain:
agent.active_tasks -> 更新 agent.id 与 task.id 的 C_ij
agent.scope_wing -> 建立 agent.id <-> wing.id 的 C_ij 链接
每 K ticks (K=10~100 可配):
C_ij_matrix = sync(C_ij_exec, C_ij_mem)
if divergence(C_ij_exec, C_ij_mem) > threshold:
trigger_structural_repair()
3.2 对齐度指标 (Alignment Score)
ini
alignment = cosine_similarity(
flatten(C_ij_exec_scope_only),
flatten(C_ij_mem_scope_only)
)
# alignment in [-1, 1]
# > 0.9: 健康,双域拓扑一致
# 0.7~0.9: 轻度漂移,自动微调
# < 0.7: 结构性脱节,需要干预
3.3 寂静坍缩检测 对 cross_domain_alignment 时间序列计算急动度 (jerk = d^3(alignment)/dt^3):
- 负急动度增大 + alignment 中度但未下降 -> 寂静坍缩前兆
- 触发预防性拓扑修剪而非等待指标恶化
Layer 4: 自校正层 (Self-Correction)
三权分立架构,继承 SLOS x vinfty x AI Fusion 设计。
4.1 观测器
- 每 tick 计算双域 ont_self
- 输出 vinfty 兼容指标
4.2 诊断器
- 4 trigger types:
- alignment < 0.7 -> 双域脱节告警
- ont_self_exec 连续下降 > 5 tick -> 执行拓扑稀疏化
- ont_self_mem 连续下降 > 10 tick -> 记忆拓扑碎片化
- jerk < -0.05 -> 寂静坍缩前兆
- 每个触发生成 WorkOrder(兼容 AI jie ru jie kou.md 协议)
4.3 执行器
- builtin: Palace GC(合并/拆分/删除 wing/room)
- external: ai_execute() 委托外部 AI
- 快照 -> 修正 -> 验证 -> 关闭/回滚
三、与其他框架的对比
| 维度 | RAG | MemPalace | Fable 5 | D-Mem |
|---|---|---|---|---|
| 记忆拓扑 | flat | 三层层次 | 无 | 三层层次 + 拓扑修剪 |
| 执行拓扑 | 无 | 无 | 子 agent 委派 | Palace-scoped agent |
| 记忆<->执行耦合 | 无 | 无 | 无 | 双向 C_ij 同步 |
| 自愈 | 无 | 无 | 被动 fallback | ont_self 驱动闭环 |
| 寂静坍缩检测 | 无 | 无 | 无 | jerk 预判 |
| 检索精度 (LME) | ~68% | 96.6% | N/A | >96.6%(对齐增益) |
| 任务连续性 | 低 | 低 | 高 | 高(结构对齐保证) |
四、关键设计决策
4.1 为什么共享 C_ij 而不是两个独立矩阵
如果执行域和记忆域各自维护独立的耦合矩阵,需要在运行时频繁做跨域映射------每 tick agent 要查"我该读哪个 wing",成本 O(N_exec * N_mem)。共享 C_ij 使这个成本降为 O(1) 索引查找。
4.2 为什么记忆域更新更慢
记忆是系统对自身历史的稳定认知。每 tick 更新记忆拓扑会产生振荡------刚存入的 drawer 立即改变 wing 边界,导致下一 tick 的检索结果漂移。记忆域时间常数 K=10~100 确保拓扑稳定性,同时允许慢速结构自适应。
4.3 为什么不做 voting / lobbying
继承 V∞ 自主区模式。双域拓扑对齐度是纯结构指标,不需要多数决。当 alignment < 0.7 时,最优修正路径由结构分析唯一确定(最小 action + 最大 alignment 提升),没有投票余地。只有在多条修正路径的预期 alignment 增益相同时,才需要仲裁------这种情况在实践中极端罕见。
4.4 Vertex 的作用
对齐度是 D-Mem 对 V∞ 体系的核心贡献------它是第一个可计算的跨域结构一致性指标,填补了 ont_self 在单一域内有效的空白。
五、预期性能提升
5.1 检索精度的结构上限
MemPalace 的 96.6% R@5 是纯语义检索的 ceiling。D-Mem 的增益在语境相关精度(contextual relevance):
ini
# 传统 RAG / MemPalace:
query -> semantic_search(corpus) -> top-k drawers
# 语义最接近但可能来自无关领域
# D-Mem:
query + current_execution_context ->
scope = agent.wing + domain(query) ->
semantic_search(corpus, where=scope) -> top-k drawers
# 语义最接近 + 执行域相关的 k 条
估算检索精度提升:
- 跨域干扰消除: -30% 错误召回
- 语境限定: +15% 相关召回
- 结构对齐增益: +5% 无法通过语义检索获得的召回
5.2 任务连续性的结构保证
当前 agent 系统的最大问题是 session 独立性------每个 session 从零开始。D-Mem 的结构对齐保证:
- Agent_A 的所有执行输出自动存入 wing_A
- 下次 session 启动时,Agent_A 的检索自动覆盖 wing_A
- 无需显式的 memory dump 或 session summary
- 存储是结构性的而非手工的
估算:跨 session 知识迁移成本从 O(N_session) 降为 O(1)。
5.3 自主愈的边际收益
D-Mem 的自愈层在以下场景生效:
- 执行域新增 agent 但记忆域尚无对应 wing -> 自动创建 wing
- Wing 过度碎片化(>20 rooms 且活跃度分布均匀)-> 自动分裂为子 wing
- Agent 长期闲置 -> 对应的 wing 标记为 archive 候选
六、工程路线图
Phase 0: 理论验证(当前)
- 双域耦合的数学框架(本文档)
- 在 V9 引擎上模拟双域 ont_self 相关性
- alignment 阈值标定实验
Phase 1: 最小可行系统
- 实现 CouplingBridge 核心同步协议
- 在 MemPalace 的 wing+room 上叠加 Palace-Scoped Agent
- 验证 alignment 指标的有效性(与任务完成率的相关性)
Phase 2: 自愈闭环
- 实现 Layer 4 观测器+诊断器+执行器
- 接入 SLOS x vinfty x AI Fusion 的 WorkOrder 协议
- 验证自主修正的 ont_self 提升
Phase 3: 寂静坍缩预判
- 实现 jerk-based 检测
- 标定预判阈值
- 验证预防性修剪的有效性
七、开放问题
-
K 值自适应: 记忆域时间常数 K 应该是固定值还是运行时自适应?当前倾向自适应------记忆域 C_ij 变化率低时增大 K,高时减小 K。
-
Wing 边界漂移检测: 当 wing 积累的知识超出了初始定义范围,如何检测并自动重定义?可能需要一个独立的"wing 语义中心漂移"指标。
-
多级基质嵌套: 如果底层向量存储支持多租户,D-Mem 的 C_ij 矩阵应跨越租户边界吗?当前设计否------每个 D-Mem 实例独立的 C_ij 空间。
-
冷启动: 初始状态两个拓扑都为空,alignment 没有意义。何时开始计算 alignment?建议在双域各自达到最小结构规模(各 >10 节点)后激活。
-
Agent 跨域边界自适应 : §2.2 将每个 agent 绑定到一个 wing(
agent.scope = wing_A),建立了稳定的 1:1 映射。但 agent 在运行中可能积累跨 wing 经验------第 1 tick 时 scope 限定是结构对齐,第 100 tick 时若 agent_A 已积累了 40% 的跨 wing 经验,刚性 scope 就成了认知壁垒。当前设计未区分初始化绑定和运行时自适应:agent 的认知边界应该由初始化设置锁定(稳定优先),还是随运行时 C_ij 变化率自动扩展(灵活优先)?建议新增scope_elasticity参数控制 wing 边界的松紧度,并在 alignment 计算中引入弹性惩罚项防止 scope 过度漂移。
附录 A D-Mem 双域耦合认知框架 规范化数学公式集
符号约定(全局统一)
| 符号 | 定义 | 定义域/量纲 |
|---|---|---|
| Nexec | 执行域节点总数(Agent + Task) | 正整数 |
| Nmem | 记忆域节点总数(Wing + Room + Drawer) | 正整数 |
| N=Nexec+Nmem | 全局耦合矩阵总维度 | 正整数 |
| Cij | 全局共享耦合矩阵元素,节点 i 与节点 j 耦合强度 | Cij∈−1,1,实对称 Cij=Cji |
| C∈RN×N | 全局耦合矩阵 | 实方阵 |
| tick | 系统基础迭代时钟步长(执行域最小更新周期) | 时间单位 |
| K | 记忆域时间缩放系数(超参数, 10≤K≤100) | 正整数 |
| Texec | 执行域更新周期 | Texec=tick |
| Tmem | 记忆域更新周期 | Tmem=K⋅tick |
| Cexec | 耦合矩阵执行域子分块 | RNexec×N |
| Cmem | 耦合矩阵记忆域子分块 | RNmem×N |
| Alignment(t) | t 时刻双域拓扑对齐度 | ∈−1,1 |
| B(t) | 系统整体势垒高度(反身性动力学变量) | 实数 |
| j(t) | 对齐度急动度(三阶时间导数) | 实数 |
| Z | 系统全局总损耗 | 非负实数 |
A1 双域投影基本定义
A1.1 全局耦合矩阵分块形式
全局唯一耦合矩阵按执行域、记忆域分块:
C=CeeCmeCemCmm
- Cee∈RNexec×Nexec:Agent-Task 内部耦合
- Cmm∈RNmem×Nmem:Wing-Room-Drawer 内部耦合
- Cem=Cme⊤:跨域耦合(Agent ↔ Wing)
A1.2 双域投影算子
设投影算子 Pexec(⋅),Pmem(⋅):
{Cexec(t)=Pexec(C(t))Cmem(t)=Pmem(C(t))
物理含义:同一全局矩阵在快慢两个时间尺度上的拓扑投影,并非两个独立矩阵。
A1.3 分立架构跨域损耗对比
- 双独立矩阵原始跨域匹配复杂度
Oold=O(Nexec⋅Nmem)
- 共享矩阵索引寻址复杂度
Onew=O(1)
跨域冗余损耗:
ΔZcross∝Nexec⋅Nmem
A2 耦合矩阵时序更新规则
A2.1 执行域逐 tick 局部更新
对活跃 Agent、绑定 Task 实时修改对应矩阵元素:
Cij(t+tick)=Cij(t)+ΔCij,exec(t)
ΔCij,exec(t) 为单次迭代耦合增量,由任务委派、执行成败、上下文关联度计算得到。
A2.2 记忆域慢周期全局同步
每间隔 K 个基础步长执行一次跨域同步:
C(t+K⋅tick)=Sync(Cexec(t),Cmem(t))
同步后计算双域发散量:
D(t)= Cexec(t)−Cmem(t) F
∥⋅∥F 为 Frobenius 范数;若 D(t)>θD(发散阈值),触发结构修复流程。
A3 双域对齐度 Alignment 计算公式
A3.1 对齐度原始表达式
取作用域限定子矩阵扁平化向量做余弦相似度:
Alignment(t)= flatten(Cexec,scope(t)) ⋅ flatten(Cmem,scope(t)) ⟨flatten(Cexec,scope(t)),flatten(Cmem,scope(t))⟩
符号说明:
- ⟨u,v⟩:向量内积
- flatten(⋅):矩阵按行展开为一维向量
- Cexec,scope,Cmem,scope:仅保留当前 Agent-Wing 绑定作用域内子矩阵
A3.2 对齐度判定阈值体系
Alignment(t)⎩ ⎨ ⎧>0.90.7≤Alignment(t)≤0.9<0.7双域高度自洽,系统健康态轻度漂移,微修正模式结构性脱节,触发自校正工单
A4 寂静坍缩预判:对齐度急动度
A4.1 各阶时间导数定义
设离散时间序列 Alignment(tn),tn=n⋅tick
- 一阶导数(变化速度)
v(tn)=tickAlignment(tn+1)−Alignment(tn)
- 二阶导数(加速度)
a(tn)=tickv(tn+1)−v(tn)
- 三阶导数(急动度 Jerk,坍缩前兆核心指标)
j(tn)=ticka(tn+1)−a(tn)
A4.2 寂静坍缩判定条件
{j(t)<−θj,θj=0.05Alignment(t) 未快速断崖下跌,仅缓慢下行
满足则启动记忆拓扑预防性修剪(Palace GC)。
A5 V∞ 反身性动力学嵌入
A5.1 修正版反身性动力学方程(适配D-Mem双域耦合)
dtdB=α⋅∇Alignment(t)+β⋅dtdont_selftotal+kjerk⋅j(t)−γ⋅Ztotal
参数释义:
- α,β,kjerk,γ:动力学拟合系数
- ont_selftotal=ont_selfexec+ont_selfmem:全域自认知总和
- Ztotal=Zexec+Zmem+Zcross:全局总损耗
A5.2 单域自认知定义
ont_self=dim(C)Tr(C⋅C⊤)
Tr(⋅) 为矩阵迹,表征域内整体内聚一致性。
A6 Palace GC 拓扑修剪判据数学形式
A6.1 Room 活跃度阈值合并判定
设节点活跃度 Sr∈0,1,阈值 θS:
Sr<θS⟹Room 向上合并至父级 Wing
A6.2 Wing 内聚度分裂判定
Wing 内部子块平均耦合度:
Cwing=M21i,j∈wing∑Cij
M 为该Wing内部节点数量;若内部耦合方差过大且 Cwing 低于阈值,触发Wing二分拆分。
A7 时间常数自适应优化
A7.1 记忆域周期自适应更新
令 ΔCmem 为一个记忆周期内矩阵平均变化幅度:
K(t+Δt)=K0⋅ΔCmem(t)+εθC
- K0:初始基准系数
- ε:防止除零极小常数
- 矩阵波动大 → K 减小,记忆快速适配;矩阵趋于稳态 → K 增大,抑制震荡
A8 检索增益量化模型
A8.1 传统MemPalace召回基准
Recallbase=96.6%(纯语义R@5上限)
A8.2 D-Mem 有效语境召回
RecallD-Mem=Recallbase⋅(1−ηcross)⋅(1+ηrel+ηalign)
- ηcross:跨域无关召回剔除比例(≈30%)
- ηrel:上下文相关增量召回(≈15%)
- ηalign:双域结构对齐隐性增益(≈5%)
A8.3 跨会话知识迁移复杂度对比
- 传统会话式Agent: Told∼O(Nsession)
- D-Mem 绑定式迁移: Tnew∼O(1)
A9 文档排版说明
- 所有变量斜体,算子
flatten, Tr, Sync, P采用算子正体; - 下标统一使用
_{\text{文本内容}}格式,避免歧义; - 范数、内积、矩阵分块写法符合工程数学排版规范;
- 所有阈值 θ∗、系数 α,β,γ,kjerk 统一归类为系统超参数集,可在配置页单独列表定义。