[论文解读]An Efficient Evolutionary Algorithm for Subset Selection with General Cost Constraints

本文介绍了南京大学提出的高效演化算法EAMC,用于解决带有通用成本约束的子集选择问题。EAMC通过优化整合了目标函数和成本的代理函数,在多项式时间内找到最佳近似解,适用于最大覆盖、影响力最大化和传感器放置等问题。

An Efficient Evolutionary Algorithm for Subset Selection with General Cost Constraints

简介

论文标题:

  • An Efficient Evolutionary Algorithm for Subset Selection with General Cost Constraints
  • 具有通用成本约束的子集选择的高效进化算法

简介:

  • 提出了一个高效的演化算法 EAMC,来解决一般约束下的子集选择问题

论文地址

背景知识

子模

子模(submodular)函数/次模函数
定 义 : 对 于 一 个 集 合 函 数 f : 2 v → R 如 果 ∀ X ⊆ Y 时 f ( X ) ≤ f ( Y ) , 则 称 集 合 函 数 f 是 单 调 的 对 于 所 有 的 A ⊆ B ⊆ V 和 s ∈ V − B , 如 果 存 在 f ( A ∪ s ) − f ( A ) ≥ f ( B ∪ s ) − f ( B ) , 为 子 模 性 函 数 。 定义: 对于一个集合函数f:2^v→R\\ 如果 ∀X ⊆ Y 时 f(X) ≤ f(Y),则称集合函数 f 是单调的\\ 对于所有的A⊆B⊆V和s∈V - B,\\ 如果存在f(A∪{s})−f(A)≥f(B∪{s})−f(B),为子模性函数。 \\ f:2vRXYf(X)f(Y)fABVsVBf(As)f(A)f(Bs)f(B)
在S中增加一个元素所增加的收益要小于等于在S的子集中增加一个元素所增加的收益。


V = 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 A = 1 , 2 , 3 B = 1 , 2 , 3 , 5 , 6 e = 3 , 4 , 5 f ( A ) = ∣ A ∣ ( 表 示 集 合 A 的 个 数 ) 所 以 : f ( A + e ) − f ( A ) > = f ( B + e ) − f ( B ) V={1,2,3,4,5,6,7,8}\\ A={1,2,3}\\ B={1,2,3,5,6}\\ e={3,4,5}\\ f(A)=|A| (表示集合A的个数)\\ 所以:f(A+e)-f(A)>=f(B+e)-f(B)\\ V=1,2,3,4,5,6,7,8A=1,2,3B=1,2,3,5,6e=3,4,5f(A)=AAf(A+e)f(A)>=f(B+e)f(B)
子模性质的三种表示方式

i.e., for any X ⊆ Y ⊆ V , v ∉ Y X \subseteq Y \subseteq V, v \notin Y XYV,v/Y
f ( X ∪ { v } ) − f ( X ) ≥ f ( Y ∪ { v } ) − f ( Y ) f(X \cup\{v\})-f(X) \geq f(Y \cup\{v\})-f(Y) f(X{ v})f(X)f(Y{ v})f(Y)
or equivalently, for any X ⊆ Y ⊆ V X \subseteq Y \subseteq V XYV
f ( Y ) − f ( X ) ≤ ∑ v ∈ Y \ X f ( X ∪ { v } ) − f ( X ) f(Y)-f(X) \leq \sum_{v \in Y \backslash X} f(X \cup\{v\})-f(X) f(Y)f(X)vY\Xf(X{ v})f(X)
or equivalently, for any X , Y ⊆ V X, Y \subseteq V X,YV
f ( X ) + f ( Y ) ≥ f ( X ∩ Y ) + f ( X ∪ Y ) f(X)+f(Y) \geq f(X \cap Y)+f(X \cup Y) f(X)+f(Y)f(XY)+f(XY)
子模比(submodularity)

α f = min ⁡ X ⊆ Y , v ∉ Y f ( X ∪ { v } ) − f ( X ) f ( Y ∪ { v } ) − f ( Y ) \alpha_{f}=\min _{X \subseteq Y, v \notin Y} \frac{f(X \cup\{v\})-f(X)}{f(Y \cup\{v\})-f(Y)} αf=XY,v

### 基于决策变量聚类的进化算法在大规模多目标优化中的应用 #### 背景介绍 随着实际工程问题复杂度的增加,大规模多目标优化问题(Large-Scale Multi-Objective Optimization Problems, LSMOPs)逐渐成为研究热点。这类问题的特点在于其具有高维决策变量以及多个相互冲突的目标函数。传统多目标进化算法(Multi-Objective Evolutionary Algorithms, MOEAs)通常难以有效处理此类问题,因为它们无法高效管理高维度带来的计算负担和解空间复杂性。 为了应对这一挑战,一种基于决策变量聚类的方法被提出并应用于大规模多目标优化中[^3]。这种策略的核心思想是对决策变量进行分组或聚类,从而降低问题的维度,并提高求解效率。 --- #### 决策变量聚类方法的工作原理 X. Zhang等人提出的基于决策变量聚类的进化算法(Decision Variable Clustering-Based Evolutionary Algorithm, DVEA),通过分析不同决策变量之间的关联性和贡献程度来实现降维的目的。具体而言: 1. **决策变量的相关性评估** 首先利用统计学工具(如偏导数矩阵或协方差矩阵)衡量各决策变量对目标函数的影响强度及其相关性。这些信息用于构建一个相似性度量矩阵,进而指导后续的聚类操作。 2. **聚类过程** 使用经典的聚类技术(例如K-means或其他启发式方法),将原始的高维决策变量划分为若干低维子集。每个子集中包含一组高度相关的决策变量,而不同子集间的耦合关系较弱。这样做的目的是使得每组子集能够独立优化而不显著影响其他部分的结果。 3. **分解与协同演化机制** 将整个优化问题拆解成多个较小规模的子问题,分别针对各个子集执行局部搜索。与此同时引入全局协作机制,在迭代过程中不断交换信息以保持整体一致性。这种方式不仅简化了单次运算所需资源消耗,还增强了探索能力,避免陷入局部最优陷阱[^1]。 4. **多样性维护策略** 结合拥挤距离计算方法筛选优质候选方案加入下一代种群之中。特别值得注意的是,当面对复杂的 Pareto前沿形状时,这种方法表现出更强适应力,因为它能够在维持良好分布特性的前提下兼顾收敛速度[^4]。 --- #### 实验验证与性能表现 实验结果显示,DVEA相比其他主流MOEA/D变体以及其他专门设计用来解决LSMOPs的技术展现出明显优势。尤其是在涉及数百甚至上千个决策变量的情况下,它依然能稳定获取高质量近似Pareto前端解决方案集合。 此外,文献提到另一种改进版本——CCLSM (Cooperative Co-evolutionary Algorithm),进一步强化了模块化设计理念并通过动态调整权重参数提升灵活性。同样地,“Competitive Swarm Optimizer”也提供了类似的竞争合作框架作为补充选项之一[^2]。 --- #### 总结 综上所述,基于决策变量聚类的大规模多目标优化进化算法是一种非常有效的手段,适合处理那些拥有众多不确定因素且结构较为松散的实际应用场景。凭借出色的鲁棒性和扩展潜力,未来有望继续推动该领域向前发展。 ```python import numpy as np from sklearn.cluster import KMeans def decision_variable_clustering(decision_variables, num_clusters): """ Perform clustering on the given set of decision variables. Parameters: decision_variables (numpy.ndarray): Array containing all decision variables. num_clusters (int): Number of clusters to form. Returns: labels (list): Cluster label assigned to each decision variable. """ kmeans = KMeans(n_clusters=num_clusters, random_state=0).fit(decision_variables) return kmeans.labels_ # Example usage variables = np.random.rand(100, 5) # Simulated dataset with 100 samples and 5 features clusters = decision_variable_clustering(variables, 5) print(clusters) ``` ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值