【发布时间】:2014-04-18 09:49:21
【问题描述】:
我想使用 MATLAB(或任何其他语言)生成满足以下约束的随机数矩阵(normrnd 和 mean == 0)
- 矩阵中绝对值之和必须等于
X - 最大的
abs(single number)必须等于Y - 数字和它的 8 个邻居之间的差值(3 如果在角落,5 如果在边缘)必须小于
Z
满足其中一个约束相对容易,但我想不出满足所有约束的算法……
有什么想法吗?
我不确定是编辑我的帖子还是在这里回复,所以我正在编辑...@MZimmerman6,你说得有道理。虽然这些约束不会产生唯一的解决方案,但我如何在不使用 rand 的情况下获得多个解决方案?
一个非常简单的 3 x 3,其中 5 是最大元素值,30 是总和,2 是差5 4 34 4 23 2 3
罗迪,这实际上可能会有所帮助...我需要考虑更多:)
路易斯……嗯……为什么不呢?我可以将正态分布样本的绝对值相加...对吗?
【问题讨论】:
-
这是一组限制,可能会使这个“随机”的有效性失效,尤其是最后一个条件。这可能更适合 math.stackexchange.com
-
注意:对约束有一定的约束。至少有一个:
Y < X,但我很确定Z也有一个。 -
@MZimmerman6:确实,感觉有点像数独游戏,不是吗? :p
-
9个数字有什么区别?中心数减去 8 个邻居的总和?中心和每个邻居之间的最大差异?
-
它们不可能是正常的(高斯)并且具有规定的绝对值之和。您的条件不兼容
标签: matlab random matrix constraints