Vector 如何将向量归一化为某个值?

Vector 如何将向量归一化为某个值?,vector,normalization,Vector,Normalization,我一直在寻找解决方案,但没有发现任何有用的东西。我想了解: 如何规范化向量,使其和为某个值 我试图复制论文的结果: 设计行为类似人类代理人的人类代理人:W.Brian Arthur 1991的有限理性行为方法 本文第354页提到了四点,我的怀疑仅限于第四点。我不明白如何计算第四点 为了方便起见,我将在前面3点之前写下整个第4点 问题描述: 存在一组N个动作,从1到N。每次“t”时,强度S_t的向量与每个动作相关联。这些强度的当前和是C_t,S_t和初始向量S_0的分量和是严格正的。概率p_t表示

我一直在寻找解决方案,但没有发现任何有用的东西。我想了解:

如何规范化向量,使其和为某个值

我试图复制论文的结果: 设计行为类似人类代理人的人类代理人:W.Brian Arthur 1991的有限理性行为方法

本文第354页提到了四点,我的怀疑仅限于第四点。我不明白如何计算第四点

为了方便起见,我将在前面3点之前写下整个第4点

问题描述:

存在一组N个动作,从1到N。每次“t”时,强度S_t的向量与每个动作相关联。这些强度的当前和是C_t,S_t和初始向量S_0的分量和是严格正的。概率p_t表示代理在时间t采取行动1到N的概率

在每个时间t,代理: 1.将概率向量计算为与每个动作关联的相对强度。它设置为,p_t=S_t/C_t

根据概率p\u t从集合中选择一个动作并触发该动作

观察收到的收益,并通过将所选动作j的收益添加到动作j的强度来更新强度。也就是说,在选择动作j的地方,它将强度设置为S_t+β。式中,β=支付j*e_j e_j是第j个单位向量

对强度进行重新规范化,使其总和为预压缩时间序列中的值。在这种情况下,它将强度重新规范化,使之和为C_t=C*t。 式中,t也可以提高到值v

问题:我不明白如何将强度重新规范化为总和


此外,我已经读到了:

所以你只需要确定向量的分量和是X。这很简单

如果我们有一个向量V=[a,b,c,d],它的分量和s当然是s=a+b+c+d。如果这个加起来等于X,那么我们可以简单地用X乘以两边得到S*X=a+b+c+d*X,把S移到另一边得到X=a+b+c+d*X/S

现在我们知道了如何得到X:向量的每一部分都必须乘以X,然后除以当前分量之和:

a' = a*X/S
b' = a*X/S
c' = a*X/S
d' = a*X/S

然后我们得到新的向量V'=[a',b',c',d'],它的分量和将是X,相对权重将保持不变。

我认为这个问题的详细版本在这里非常有用。这个问题不是针对?和到某个值,你的意思是分量和将是2吗?通常标准化处理向量的长度,而不关心分量的和,所以我认为这不是正确的术语。但是,如果你只是想确保它们加起来等于2,那么就用每个分量乘以2,再除以原始分量之和。@RobAston我已经编辑了这个问题,并给出了详细的描述。请看一看。@Sami Kuhmonen:我已经编辑了这个问题,如果可能的话,请你看一看,因为我不太清楚你说了什么。非常感谢。我昨天做了这件事,但我只是想确定,既然你解释得如此准确,我知道我从你的回答中理解的是正确的。再次感谢你。。!!!