You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Sage计算联合CDF及其导数耗时过长的优化求助

Sage计算联合CDF及其导数耗时过长的优化求助

各位好,我最近在用Sage计算联合累积分布函数(CDF)和它的导数时遇到了效率问题,想请大家帮忙出出主意优化代码:

我有两个独立的[0,1]均匀随机变量U和V,需要计算的联合CDF是:
F(x, y) = Pr[(2/3)U - 2/3 <= x, (2/3)V - 2/3 <= y]
以及它对x的偏导数。我写了下面这段代码来实现,但已经跑了10多分钟还没输出结果:

from sage.all import *
var('u v x y')
ineq1 = heaviside(x + QQ(2)/3 - QQ(2)/3 * u)
ineq2 = heaviside(y + QQ(2)/3 - QQ(2)/3 * v )
indicator = ineq1 * ineq2
cdf = integrate(integrate(indicator, v, 0, 1), u, 0, 1)
diff(cdf, x)

但奇怪的是,当我换成另一种线性组合的联合CDF计算时——比如计算Pr[(2/3)U + (1/3)V - 2/3 <= x, (1/3)U + (2/3)V - 2/3 <= y]——用几乎相同结构的代码却能在1秒内得到结果:

from sage.all import *
var('u v x y')
ineq1 = heaviside(x + QQ(2)/3 - QQ(2)/3 * u - QQ(1)/3 * v)
ineq2 = heaviside(y + QQ(2)/3 - QQ(1)/3 * u - QQ(2)/3 * v )
indicator = ineq1 * ineq2
cdf = integrate(integrate(indicator, v, 0, 1), u, 0, 1)
diff(cdf, x)

我实在搞不懂为什么第一段代码会这么慢,有没有什么办法能优化它,提升计算速度呢?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.07 11:28:04