0

我是 Rcpp 的新手,所以如果这个问题很容易回答,我提前道歉。我在网上搜索但找不到太多帮助,我希望这个论坛的精明可以帮助我!

我在 R 中有一个使用 Rcpp 的现有代码,我需要在此代码中添加以下内容。我在两个变量 f(x, y) 中有一个二次函数,我需要找到它的零点:

f(x, y) = (x + by + c)' W (x + by + c)

其中未知数是 x 和 y。也就是说,我有兴趣找到满足 f(x , y)=0 的对 (x, y) 的集合。

注意:这是一个模拟练习,我需要为 a、b、c 和 W 的不同值找到此函数的零点。因此,我需要以机械方式对此进行编码(不能只找到解决方案,例如,通过图形检查)。两个变量都在继续,我不想使用 (x,y) 的网格来查看 f(x,y)=0 的时间。我需要一个更通用/优化的解决方案。我真的不知道 (x,y) 可以采用什么值。

4

1 回答 1

2

在深入研究数字部分之前,我认为您应该以更好的方式定义这个问题。在这里,我假设x,yc是向量,并且b是标量。

一个快速的观察是,如果W是正定的,则f(x, y) = 0​​意味着x + by + c = 0。如果xy都是自由变量,则解不是唯一的。例如,如果(x, y)是一个解决方案,那么(x - b, y + 1)(元素操作)也是一个解决方案。

如果W是不定的,则方程也有多个解。我这里只举一个非常简单的例子。想象这W是一个 2x2 对角矩阵,对角线上有 1 和 -1。那么只要x + by + c = (t, t)'对于 any t,函数值正好为零。

简而言之,在我对符号的假设下,方程有无限个解。我相信您需要额外的限制才能使其独一无二。

于 2017-02-02T18:44:52.490 回答