Skip to content

拟阵贪心算法

Matroid greedy algorithm

按权重依次加入仍保持独立的元素以求最大权拟阵基的算法。

条目类型
算法

形式陈述

在有限拟阵 M=(E,I) 上给元素任意实权重,按权重非增扫描;若把元素 e 加入当前集合仍独立,就接受它。扫描结束所得极大独立集是一组基,拟阵贪心定理保证它是最大权基。若目标改为最大权独立集而不要求成为基,则应跳过负权元素;在非负权情形下两种目标兼容。证明使用交换公理:把贪心基按次序与任一最优基对齐,每步用权重不低于被替换元素的贪心元素完成交换。反过来,一个有限独立系统对所有非负权重都被该算法正确求出最大权独立集,当且仅当它是拟阵。

直觉

拟阵把“任何局部可行独立集都能通过交换逐步扩展到基”抽象成公理。按权重从大到小扫描元素并保持独立时,交换性质保证“当前最好的可行元素”不会把未来堵死:可把任一最优基中的元素逐个交换成贪心元素而不降权。它给出了简单贪心对所有权重都正确的一类精确结构。

拟阵贪心的权序与独立性检验
例子与边界

图拟阵中独立集是森林;按边权非增扫描得到最大权生成森林,原图连通时才是最大权生成树。通常所称的 Kruskal 最小生成树算法采用最小权版本,按边权非减扫描,或等价地在固定基大小下对权重取负。线性拟阵中独立性是向量线性无关,可贪心选最大权基。普通背包可行集不是拟阵;高价值重量比贪心会失败。定理依赖同一个拟阵上的加性元素权重,不自动覆盖次模目标、交两个拟阵或带容量的复杂约束。

图拟阵的元素是边,独立集是森林;按边权从大到小取且不成环得到最大权生成森林,正是 Kruskal 的拟阵版本。均匀拟阵中所有大小至多 k 的集合独立,算法退化为取权重最大的 k 个元素。

背包可行集满足向下封闭,却不满足拟阵交换公理,所以按价值或价值密度的简单贪心可失败。若目标不是元素权重可加和,拟阵结构本身也不保证该算法最优。

推论与应用

该算法统一解释最小生成树、向量基选择和调度中的贪心正确性,并提供检验某类可行系统能否被简单权重排序完全解决的结构标准。

拟阵 定义独立系统,拟阵贪心定理 给出充要性质,贪心算法 提供扫描框架。图拟阵、线性拟阵和分割拟阵把生成树、向量独立与配额选择统一到同一证明中。

单拟阵最大权独立集因交换公理可由排序贪心精确求解;拟阵交要求集合同时独立于两个拟阵,普通贪心即使每步可行也可能卡在非最优基,需交换图增广。单调子模最大化在拟阵/基数约束下利用边际递减,通常只获近似。三者都出现“独立/边际选择”,但精确性分别来自单拟阵交换、增广结构和近似势分析。

参考资料
  • Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein, Introduction to Algorithms, 4th ed., MIT Press, 2022,Parts I–VI。
  • Jon Kleinberg and Éva Tardos, Algorithm Design, Pearson, 2005,Chs. 1–13。
关系图谱6 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系