Markov Junior

Markov Junior

@Reference: Jack Cui | Github-Markov Junior | Wiki Markov algorithm

第一篇文章简要介绍了一下该编程语言能实现什么效果;第二个是官方repo,其文档和代码都有很强的借鉴意义;第三个是wikipedia对马尔可夫算法的解释,在该编程语言的实现中有重要的意义。

markov algorithm

马尔可夫算法指的是字符串重写算法,其基本逻辑如下:

  1. 自顶向下依次检查规则,看是否能在符号串中找到任何在箭头左边的字符串。
  2. 如果没有找到,停止执行算法。
  3. 如果找到一个或多个,把符号串中的最左匹配的文字替换为在第一个相应规则的箭头右边的字符串。
  4. 返回步骤1并继续。(如果应用的规则是终止规则,则停止执行算法。) [1]

Wave Function Collapse

Wave Function Collapse

@Reference: Github-Mxgmn | zhihu

概念简介和复习

本质上该方法的底层思想就是条件概率的启发式随机生成算法。

波函数坍塌

在介绍算法之前首先需要明确几个概念,第一个就是“波函数坍塌”(名字的来源是量子力学中的概念),参考“薛定谔的猫”,可以理解成:在一系列的不确定像素(存在多种可能)的基础之上,通过确定的规则相关关系,随机的将所有的像素变成确定的状态。(可以通过给定种子来启动,也可以通过随机规则来启动),实现在一定规则或者模式下的随机生成。