基于Wassertein不确定集两阶段分布鲁棒优化: Column-and-Constraint Generation

### Wasserstein 距离的计算公式 Wasserstein距离,也被称作推土机距离(Earth Mover's Distance, EMD),其正式定义涉及到最优传输理论中的概念。对于个概率分布 \( P \) 和 \( Q \),在度量空间 \( (M,d) \) 上,\( p\text{-}Wasserstein \) 距离被定义为: \[ W_p(P,Q)=\left(\inf_{\gamma\in\Pi(P,Q)}\int_{M\times M}d(x,y)^p d\gamma(x,y)\right)^{1/p}, \] 其中 \( \Pi(P,Q) \) 表示所有以 \( P \) 和 \( Q \) 作为边际分布的概率测度合[^1]。 当考虑一维情况时,如果累积分布函数分别为 \( F_P \) 和 \( F_Q \),那么 \( p=1 \) 的情况下有更简单的表达形式: \[ W_1(F_P,F_Q)=\int |F_P^{-1}(u)-F_Q^{-1}(u)|du. \] 这种简化在一维情形下特别有用,因为它避免了求解复杂的优化问题[^2]。 对于实际应用而言,在高维度的情况下直接通过上述定义来精确计算Wasserstein距离通常是不可行的,因为这涉及到了一个非常困难的线性规划问题。因此实践中经常采用各种近似算法或替代方案来进行估计,比如Sinkhorn迭代等方法[^3]。 ```python import numpy as np from scipy.stats import wasserstein_distance # 假设有组样本数据分别来自不同分布 data_distribution_A = np.random.normal(0, 1, size=1000) data_distribution_B = np.random.normal(0.5, 1.5, size=1000) # 使用SciPy库中实现的一维Wasserstein距离计算 distance = wasserstein_distance(data_distribution_A, data_distribution_B) print(f"The estimated Wasserstein distance is {distance}") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值