假设我有一个参考节点R和几个测试节点T 1 ,T 2 .... T n 。 任何特定节点都有一组属性Rp 1 ,Rp 2 ,... Rp n 和T 1 p 1 ,T 1 p 2 ,T 1 p 3 ,... .T 1 p n ,T 2 p 1 ,T 2 p 2 ,T 2 p 3 ,... T 2 p n ,等等。因此,任何节点都可以有n个属性,每个属性都是特定类型。
我有自己的方法来定义任意两个节点之间同一类型的任何两个属性之间的距离。此外,我会权衡属性之间的距离,然后总结它们。因此,R和T 1 之间的距离将是:
dRT 1 = w 1 * dRT 1 p 1 + w 2 * dRT 1 p 2 + w 3 * dRT 1 p 3 + w 4 * dRT 1 p 4 + ... w n * dRT 1 p <子>名词子>
现在,给定参考节点R和测试节点T 1 ,T 2 .... T n ,并给出我知道R与特定节点T m (1 我们的距离为dRT 1 ,dRT 2 ,dRT 3 ,dRT 4 ,... dRT n 我们知道dRT m 是最小的。我们应该使用什么算法来确定权重?
答案 0 :(得分:1)
你想要做的是设置权重,使特定距离(dRTm)的数值低于任何其他距离,即设置权重以使不等式
dRTm <= dRT1
...
dRTm <= dRTn
都完成了。如其中一条评论中所述,将所有权重设置为零是一个微不足道的解决方案,因为所有距离都将相同为零,并且所有不等式都可以完全满足(等式替换不等式),因此考虑更强的问题更有意义
dRTm < dRT1
...
dRTm < dRT(m-1)
dRTm < dRT(m+1)
...
dRTm < dRTn
无论如何,这是一个简单的 linear programming 问题。加入上述约束,然后最小化
min : dRTm
它是线性的,因为计算出的个别距离是求解最小dRTm时的常数。您可以使用任何linear programming package解决此问题,或者如果您想自己制定一个缓慢但易于实施的解决方案,例如:消除Fourier-Motzkin。然而,Simplex将是实际的选择方法。
答案 1 :(得分:0)
这看起来像http://en.wikipedia.org/wiki/Linear_regression,在文章说“因此模型采用形式”y是dRt1之后,x变量例如是{{3}}。 dRT1p1,以及他们试图解决的beta变量 - 他们的参数向量 - 是你的w1,w2 ......