Algorithm 是否有一种算法可以在三个变量之间寻找数学联系?
有没有可能构造一个算法来寻找最节省的(在这种情况下,什么是节省的问题似乎有点武断!)连接三个变量的公式 例如,假设:Algorithm 是否有一种算法可以在三个变量之间寻找数学联系?,algorithm,math,information-theory,Algorithm,Math,Information Theory,有没有可能构造一个算法来寻找最节省的(在这种情况下,什么是节省的问题似乎有点武断!)连接三个变量的公式 例如,假设: a = -2, 1, 4, 3.2 b = 1, 2, 7, 0.2 c = 0, 3, 16386, 3.261915 这三个变量之间最节省的联系是(希望这是最节省的): 因为: -2^1 + 2 = 0 1^2 + 2 = 3 4^7 + 2 = 16386 … 我的问题是: 有可能构造这样一个算法吗 你知道这种已经存在的算法吗? 如果是的话,它是否像我的例子中那样对
a = -2, 1, 4, 3.2
b = 1, 2, 7, 0.2
c = 0, 3, 16386, 3.261915
这三个变量之间最节省的联系是(希望这是最节省的):
因为:
-2^1 + 2 = 0
1^2 + 2 = 3
4^7 + 2 = 16386
…
我的问题是:
- 有可能构造这样一个算法吗
- 你知道这种已经存在的算法吗?
- 如果是的话,它是否像我的例子中那样对相对容易的关系有效(快速)
更新: 下面是一个R代码,它创建了3个变量
a.l
,b.l
和c.l
,以作为示例
set.seed(12)
a.l = round(runif(20, -100, 100), 2)
b.l = round(runif(22, -100, 100), 2)
c.l=c()
for (a in a.l){for (b in b.l){c.l[length(c.l)+1] = a^2 + 1.2*b - 8}}
你可能在找
你需要知道你在寻找什么,如果只是因为没有这个限制,有几种解决方案。当您选择抽象域时,您定义了“节俭”。你的例子有四个点和三个变量,还有很多其他方程,其中一些可以说比“a^b…”更简单,它们定义了三维空间中通过这四个点的曲面
您可能也在寻找,但这要求您选择您正在寻找的关系的形状,其意义甚至比抽象域更强烈。您可能正在寻找
你需要知道你在寻找什么,如果只是因为没有这个限制,有几种解决方案。当您选择抽象域时,您定义了“节俭”。你的例子有四个点和三个变量,还有很多其他方程,其中一些可以说比“a^b…”更简单,它们定义了三维空间中通过这四个点的曲面
您可能也在寻找,但这要求您在比抽象域更强烈的意义上选择您正在寻找的关系的形状。回归分析允许寻找这些点的最佳近似值。我正在寻找精确的结果(R平方=1)。我从来没有听说过关系抽象域。事实上,我没有足够的点关系。如果我扩展关系列表,您能否提供一个示例,说明如何找到一个以“多项式的最小数”(例如)作为简约定义的公式?非常感谢你的帮助help@Remi.b“R平方=1”->因此,“更强烈的意义”。更一般地说,我的知识仅限于知道我需要在Google中键入“抽象域多项式”,上面的答案已经传递给您了。由于某种原因,我现在无法下载。快乐阅读。@Remi.b顺便说一句,你可能会发现“M.Karr.程序变量之间的仿射关系。信息学报,6:133–1511976。”是对该主题的一个很好的介绍,没有现代的精炼,但你必须从图书馆获得它。扫描它并把它放到网上如果你找到了,全世界都会感谢你。回归分析允许你寻找这些点的最佳近似值。我正在寻找精确的结果(R平方=1)。我从来没有听说过关系抽象域。事实上,我没有足够的点关系。如果我扩展关系列表,您能否提供一个示例,说明如何找到一个以“多项式的最小数”(例如)作为简约定义的公式?非常感谢你的帮助help@Remi.b“R平方=1”->因此,“更强烈的意义”。更一般地说,我的知识仅限于知道我需要在Google中键入“抽象域多项式”,上面的答案已经传递给您了。由于某种原因,我现在无法下载。快乐阅读。@Remi.b顺便说一句,你可能会发现“M.Karr.程序变量之间的仿射关系。信息学报,6:133–1511976。”是对该主题的一个很好的介绍,没有现代的精炼,但你必须从图书馆获得它。扫描它并把它放到网上如果你找到了,全世界都会感谢你。
^
和+
应该是数学运算还是浮点运算?我不认为3.2^0.2+2=3.261915
在数学中成立,但你说你在注释中寻找精确的等式。@PascalCuoq你的意思是3.2^0.2+2=3.261915
只是一个实际值的近似值吗?嗯,是的。我更新我的帖子是为了得到精确的值。^
和+
应该是数学运算还是浮点运算?我不认为3.2^0.2+2=3.261915
在数学中成立,但你说你在注释中寻找精确的等式。@PascalCuoq你的意思是3.2^0.2+2=3.261915
只是一个实际值的近似值吗?嗯,是的。我更新了我的帖子,以便只有准确的值。
set.seed(12)
a.l = round(runif(20, -100, 100), 2)
b.l = round(runif(22, -100, 100), 2)
c.l=c()
for (a in a.l){for (b in b.l){c.l[length(c.l)+1] = a^2 + 1.2*b - 8}}