马尔可夫链和成本函数
马尔可夫链是对本质上“无记忆”的某一类进程的特殊术语。这意味着系统的演变不取决于系统的位置。为了说明这一点,请考虑掷硬币。在每次翻转时,他们都有 50/50 的机会让两边直立。这是一个马尔科夫过程。现在不符合这个标准的可能是流感的传播。在试图预测下周有多少人会感染流感时,你最好考虑一下现在有多少人感染了流感。对于流感,过去的趋势对于预测未来事件的进程非常有帮助,但在抛硬币的马尔可夫过程中则完全没有帮助。
在抛硬币的情况下,我们已经在不知不觉中讨论了成本函数的概念。当我们说硬币有 50/50 的正面朝上机会时,我们直觉地意识到正面朝上和反面朝上对于硬币来说同样困难。如果你是一枚公平的硬币,你不会在乎你以哪种方式降落。因此,成本函数只是一个黑匣子(我们只关心),它告诉我们某个结果的成本有多大,例如在决定如何最好地避开上班路上的交通时。对于一枚硬币,这个成本函数是平坦的,或者对任何一个结果都无关紧要。
该成本函数通过描述与每个选项相关的权重来告诉马尔可夫链如何及时演化。回到我们之前谈到的优化,成本函数应该始终为我们指明正确的方向,以便随着时间的推移提供越来越好的解决方案。
让我们首先设置一个域或区域进行探索。我们将使用一个众所周知的测试函数,它应该提供我们需要的复杂性。
test = function (x,y)