计算创意学系列(四):价值和新颖性的评估

计算创意学系列(四):价值和新颖性的评估

(全系列文章请见:http://psyxel.com/tag/computational-creativity/

欢迎来到计算创意学系列第四章,在前三章的讨论中,我们介绍了三种类型的创造力。

探索性创造力(Exploratory Creativity)是比较常见的创造力:其中某个创作者通过探索某个给定概念空间中无人涉足的区域,得到了一个之前从未被发现过的极具价值的新点子。

转型性创造力(Transformational Creativity)则是更加具有革命性的较为罕见的创造力:创作者在由所有可能的问题的定义规则所组成的高阶概念空间中进行探索,其结果不仅仅是极具价值的新点子,还有概念空间本身的新定义,引导世人以全新的视角看待问题所在的领域。转型性创造力的本质是高阶概念空间中的探索性创造力。

第三种组合性创造力(Combinatorial Creativity),则是指创作者通过在多个看起来无关的知识领域之间建立联系,发现了融合这些知识领域的新概念,继而得到有价值的新点子。

这三种类型的创造力,最初是在玛格丽特·博登(Margaret Ann Boden)的著作《创造力心智(The Creative Mind: Myths and Mechanisms)》[6] 中被提出。

前两章我们讨论了概念整合理论(Conceptual Blending),用以解释组合性创造力(Combinatorial Creativity),将新点子的产生描述为思考主体将多个原本无关的概念网络中的概念映射到整合概念网络中的新概念的过程。我们简单介绍了一些概念整合理论的算法实现,包括1990年的DIVAGO系统,2012年的Metaphor Eyes,以及基于深度神经网络的Deep Dream和Neural Style Transfer。

现有的创造力理论从人类的创造力行为出发,试图描述人类创造力现象的机理。因此基于这些理论设计出的算法,也更像是对人类创造力行为的一种模仿。

有没有一种脱离人类创造力行为的一般意义上的创造力定义?如果我们不想去限制一个算法产生有创意作品的机理,允许它们用任意与人类创造力机理不同的方式表现出创造力行为,该用怎样的与底层机理无关的标准去评判一个系统是不是具有创造力呢?

尽管对创造力(Creativity)的定义有许多不同的看法,但绝大多数这些对创造力的定义都包含“能够产生有价值事物”这样的要求。基于这个要求,一个被认为有创造力的系统,至少应该能够产生有价值的输出,并且这个输出应当在一定范围内具有一定的新颖性(Novelty)

这一章,我们就从这个简单的认识出发,聊聊如何评估一个创造力系统的价值和新颖性。

价值(Value)

首先,一个创造力系统产生的输出,必须得具有一定价值。这不仅仅是对人工创造力系统的要求,也是对任何人工智能系统的要求。

大多数一般意义上的人工智能系统,都是为解决某一个给定的具体问题而设计,其输出对应于这个问题的解决方案。因此对于这类系统,价值的概念就能直截了当地定义为系统的输出是不是给定问题的解,或者系统的输出是质量多高的解。比如一个人脸识别系统输出的价值被定义为人脸判定的正确性,一个大盘走势预测系统输出的价值被定义为预测的准确程度,一个游戏AI的价值被定义为这个AI操纵下的敌人对玩家造成的挑战程度等等。

而对于很多以创造力为目标的人工智能系统,价值的概念就相对模糊,因为这类系统面对的往往不是一个目标明确的问题。一个自动作画程序要产生“好画”、一个自动写诗程序要产生“好诗”、一个自动作曲程序要产生“好曲子”、一个游戏关卡设计程序要产生“好关卡”——而是什么定义了一幅画、一首诗、一首曲子、一个游戏关卡的“好”,比起是什么定义了大盘走势预测的准确度,是复杂而模糊得多的问题。

美国抽象派画家马克·罗斯科(Mark Rothko,1903—1970)的画作《No.5/No.22》,被收藏在现代艺术博物馆(MoMA)。你能看出它好在哪里吗?

当然,对一个具体问题进行求解的系统,也能够因为输出人们意料之外的正确解而被认为是一个创造力系统。之所以大多数以创造力为目标的人工智能系统都不是以求解一个具体的问题为目标,只是因为在人们通常的观念中,创造力一词已经与一些特定的创作领域挂钩,尤其是艺术领域。另一方面,对具体问题的求解中,问题本身的确定性往往也可能限制住创造力的发挥空间(但并不意味着就完全没有创造力的发挥空间)。

因此在目标不明确时,如何定义一个系统输出的价值就成为评估创造力系统的一大挑战。应对这个难题,现有的研究中我们大体可以看到两类做法。

其一是承认这类价值判断的主观性,放弃设计任何算法性的评估机制,直接让人类去评估一个系统输出的价值。评估者不需要对自己的意见给出逻辑严密的解释。比如招募有相关背景知识的志愿者来评价算法产生的作品的好坏,统计得到的结果作为人工创造力系统的评价;甚至可以将算法产生的作品像人类的作品那样投入市场,根据销售的情况来判断作品和算法的价值。这样的评估价值的方法,将算法创作者与人类创作者同等视之,让时间和群众做出判断。它的好处是方法具有极高的通用性,而且方法本身不依赖于人们对某一个创作领域一时的理解。同时,这种评估方法也必然会受到进行统计取样的人类评估者所处的时代、环境和文化取向的影响,而只能获得一定范围内的有意义的结果。

另一种做法是针对具体的创作领域,试图在一定程度上去定义价值,或者退而求其次地定义能够估计价值的另一个指标

上一章我们介绍了DIVAGO系统,它接收两个知识领域的编码,能够自动生成融合这两个知识领域的新概念,比如输入分别关于鸟和马的概念网络而生成类似“飞马”这样的新概念。

在DIVAGO系统中,我们就能看到试图定义价值的做法。DIVAGO系统要产生的是“好的概念”。什么样的概念才是“好的”,听起来是一个极其抽象而让人不知如何着手去回答的问题。但DIVAGO仍然试图去回答这个问题,并且还要是以能够算法化的解释来回答这个问题。

DIVAGO的设计者延续概念整合理论的思路,认为一个怎样的概念才是好的,既取决于思考者当前正在思考的主题,也取决于一些与思考主题无关的概念本身的内在特质。DIVAGO允许用户输入一个逻辑公式来表达对目标概念的需求(比如,用户想要得到一个既会飞又会游泳的虚构生物),这样就能够以最后输出的概念对这个逻辑公式的满足程度来评估这个概念在思考主题相关性上的价值。另一方面,DIVAGO也引入了Fauconnier和Turner的一般最优原则(比如要求新概念本身要有内聚性和逻辑一致性),用可计算的数学公式表达或者近似表达其中的几条重要的最优原则(关于最优原则的详细介绍请见上一章)。这样,输出概念代入这些公式之后得到的得分,就能够用来评估这个概念自身的内在特性所带来的价值。

在具体的创作领域寻找对价值的算法化定义,在自动化游戏设计系统中也能看到。在2013年由Liapis,Yannakakis和Togelius发表的自动关卡设计系统Sentient Sketchbook [4],是一个辅助游戏设计师设计即时或非即时的战略游戏(如星际争霸、文明等)地图的自动化工具。一张地图被表示为各种地图元素(Tile)所组成的二维矩阵。地图元素包括地形、设施、道路、资源、敌人等。在一个图形界面上,用户能够从空白的地图开始进行编辑(在地图上放置各种地图元素),用户每进行一次放置操作,Sentient Sketchbook都会基于用户迄今为止的所有编辑操作生成一系列的完整的地图推荐给用户。

Sentient Sketchbook的主界面:左边是地图编辑区,右边是系统推荐的完整地图,中间是地图在各项指标上的得分

Sentient Sketchbook对地图好坏的判断,基于一系列指标。其中最基本的是可玩性:如果一张地图中所有的基地和资源都是可以到达的,这张地图就被认为是可玩的。可玩性是Sentient Sketchbook对地图最基本的要求,除此之外还有一系列其他的对地图质量的指标。对地图中的每一个基地,Sentient Sketchbook定义了以下几个可量化的分数:

  • 资源安全性(Resource Safety):只在这个基地附近的资源数量越多,资源安全性得分就越高
  • 区域安全性(Area Safety):只从这个基地可达的区域面积越大,区域安全性得分就越高
  • 探索性(Exploration):从这个基地出发越难到达另外的基地,探索性得分就越高

基于每个基地的打分,Sentient Sketchbook进一步定义一张地图在游戏平衡性上的得分:

  • 资源安全平衡性(Resource Safety Balance):衡量各个基地的资源安全性是否得分相当
  • 区域安全平衡性(Area Safety Balance):衡量各个基地的区域安全性是否得分相当
  • 探索平衡性(Exploration Balance):衡量各个基地的探索性是否得分相当

这些打分就构成了Sentient Sketchbook在设计战略游戏地图这个具体的任务上对价值的定义。Sentient Sketchbook使用遗传算法(Genetic Algorithm)来探索所有可能的地图构成的搜索空间。

遗传算法(Genetic Algorithm)是面对庞大搜索空间时的一种搜索策略,模仿达尔文进化论所描述的生物进化过程,将搜索空间中的每一个可能的解都看作是一个生物个体,各自有独一无二的基因型(Genotype),在其作用下演化出各种各样的表现型(Phenotype);遗传算法进而引入适应函数(Fitness Function)来模拟生物界的优胜劣汰——适应函数是以个体的表现型为自变量的函数,遗传算法会选择出那些表现型代入适应函数之后取值较高的解,对这些解进行某种形式的“融合”得到下一代的解(模拟生物交配),再用适应函数去评估这些下一代的解,如此重复一定迭代次数之后,将最新一代的解看作是目前计算资源下能找到的近似最优解。

Sentient Sketchbook在上面介绍的这些指标基础之上定义适应函数(Fitness Function),从而“有意识地”优化上面所说的这些指标,并在选择时保证地图具有可玩性。

游戏设计领域的另一个例子是自动桌面游戏设计系统Ludi System [9]。Ludi System同样基于遗传算法,能够完全自动地生成桌面游戏的规则。由它生成的桌面游戏Yavalath,甚至还被商品化挂在线上桌游商店出售(http://www.nestorgames.com/#yavalath_detail)。

Ludi System自动生成的桌游Yavalath

Ludi System使用一种叫做游戏描述语言(Game Description Language; GDL)的形式语言来定义游戏规则。为了降低问题的复杂程度,系统只考虑状态可能性有限、回合制、无随机性、游戏状态对所有玩家都完全透明的双人游戏。

井字棋(Tic-Tac-Toe)游戏的GDL定义

为了将遗传算法运用到游戏规则的生成上,设计者提出了“Ludemes”的概念。“Ludemes”是“Meme(中文译作模因)”概念在游戏规则这个领域下的具体化。“Meme”是指能够在人与人之间传播的思想单元,类似地,“Ludemes”是指在遗传算法对游戏规则进行演化过程中能够执行分离、修改、组合等操作的游戏规则单元,比如“棋盘由方形各自组成”、“棋盘大小3x3”、“一行出现三个同样的棋子对应玩家就输了”等等都是“Ludemes”的例子。将这些Ludemes进行组合、删改、变异,就能得到各种各样的游戏规则。

Ludi System的系统架构

Ludi System以一组随机的Ludemes组合作为第一代游戏开始演化。对每一代的游戏群体,Ludi System会用一系列衡量游戏“好玩”程度的量化指标去给这个群体中的每一个个体游戏打分,选出其中得分最高的几个游戏个体,再将组成这些游戏的Ludemes进行交叉重组得到下一代的游戏。以此反复直到到达了特定的代数,或者得到的最新一代的游戏在好玩度打分上超过了一定数值。

因此Ludi System如何将一个游戏是否好玩转化为可数值量化并能自动计算出的指标,就成为这个系统设计的关键之一。Ludi System评价一个游戏时考虑这个游戏的方方面面,归纳为共计57个指标,其中一些例子如下:

  • 游戏的深度(Depth):游戏应该能持续数量不少的回合,而不是倾向于一下子就分出胜负
  • 游戏规则的清晰度(Clarity):游戏规则不应该过于复杂
  • 游戏的戏剧性(Drama):对于处于劣势的玩家,应该总有翻盘的希望
  • 游戏的决绝性(Decisiveness):一旦胜负已分,游戏能够不拖泥带水地迅速结束
  • 游戏的可完成性(Completion):游戏应该尽可能避免平局的产生
  • 游戏的不确定性(Uncertainty):游戏应该尽可能长地维持无法预测胜者的状态

为了量化并自动计算这些指标,Ludi System会自动模拟两个玩家的游戏过程,并重复大量的次数来获得上述指标的描述性统计数据,作为一个游戏个体在上述指标上的得分。

Ludi System衡量游戏的戏剧性指标时使用的计算公式

由此我们看到,Ludi System为了能够建立一个游戏规则生成系统的价值评估指标,对回合制双人桌面游戏做了相当深入的研究。Ludi System评价游戏时所使用的每一个指标,都代表着系统设计者对“回合制双人桌面游戏怎样才好玩”这个问题的一个深刻的看法。如果Ludi System能够真正实用,这将不仅仅是人工智能或者计算创意学上的成就,更是游戏设计理论上的成就。

我们可以看到,这种试图为某一个具体的创作领域的价值下定义,甚至寻求算法性的定义的做法,好处首先在于可能实现自动化的评估。而在我个人看来更重要的是,这些价值定义真正推进了人类对某一个创作领域更加深刻的理解,它们本身就是一种学术上的贡献。

新颖性(Novelty)

在对创造力的基本要求中,还包含对新颖性(Novelty)的要求。因此评估一个创造力系统 ,也需要对这个系统输出的新颖性进行评估。

新颖性最直接的含义是,一个作品/产品/概念应当跟已经存在的同类作品/产品/概念不一样。根据进行比较的同类作品/产品/概念的范围不同,玛格丽特·安·博登(Margaret Ann Boden)曾将新颖性细化为历史性新颖性(Historical Novelty; H-Novelty)和心理性新颖性(Psychological Novelty; P-Novelty )。历史性新颖性是相对客观的新颖性,意指一个作品/产品/概念是整个人类历史上的创举,在之前的人类历史上都从未出现过;心理性新颖性则是较为主观的新颖性,意指一个作品/产品/概念与一定范围内的其他作品/产品/概念相比非常地不一样——比如,《十五少年漂流记》并不是历史上的第一部描写孤岛生存的小说,但对于一个从未读过其他孤岛生存的小说的人来说还是能够带来非常新鲜的体验;用三味线和太鼓演奏的古典日本乐曲并不少见,但当有人用三味线和太鼓演奏流行歌曲《千本樱》时,还是能给人们带来新鲜的体验。

img
1917年艺术家杜尚的作品《泉(Fountain)》,将购买来的现成小便池强行放在艺术展览中来挑战当时人们的艺术观念。这类作品的审美意义基本上完全来自于它的新颖性。

关于新颖性评估的另一个问题是如何定义不同性。对于一个作品/产品/概念,如何判定它跟比较范围内的其他作品是不同的?尤其当不同并不是一个单纯的是和否的概念,而是一个程度的问题时,如何可计算地确定这个作品/产品/概念与其他作品/产品/概念不同的程度?

一个直截了当的思路是,我们拿出两个作品/产品/概念在计算机中的编码表示,一个单元一个单元地比较,把最后得到的差的总和定义为两个作品的不同程度。比如两幅画作,我们就一个像素一个像素地比较它们存储在计算机中的位图文件;两首乐曲,我们就去比较它们的声音波形图在每一个时间点上的取值;对于两个抽象的概念比如DIVAGO系统的输出,我们也可以比较每个逻辑原子在两个概念网络上的真值差异。对于基于深度神经网络的应用,由于神经网络将特征映射到向量空间,我们就去对这些向量作差。

这个方案有很明显的问题——它的结果太依赖于作品/产品/概念在计算机中是如何编码表示的了。将两首乐曲存储为wav格式进行比较,和将它们压缩后存储为mp3格式进行比较,很可能得到完全不同的结果。更重要的是,由于最后的差值数据要在非常具体的上下文中解读,只要对编码做了一点改变,原来得到的结果就完全失去了意义。

而且,作品/产品/概念在计算机中的编码并不能反映出它背后的构思。我可以完全照抄梵高的《星月夜》,只是把所有颜色都取反色,就得到一个能被这种算法判定为跟《星月夜》完全不同的画作。

《星月夜》和它的反色版本

因此,我们需要一个跟编码方式无关的指标来计算作品/产品/概念相对于某一个范围的其他作品/产品/概念的新颖性。为此,学者们想到了概率统计中期望值的概念。概率期望的概念刻画的是一个观测主体在观察到大量数据点之后,对新数据点的预测倾向,并且有一个完全可计算的定义——随机事件中每次可能的结果乘以其结果概率的总和。

如果我们将某一类作品/产品/概念的创生看作一个随机变量,那么这个随机变量的概率期望值,某种程度上就代表了人们对这一类作品/产品/概念的固有印象。这个时候,如果出现了一个新的作品/产品/概念,内容不符合这种固有印象,就可以认为这个新的作品/产品/概念在当前范围内具有新颖性。按照这种思路,我们将新颖性定义为一个概率分布中某一数据点与该分布的期望值的偏离程度 [3]。

为了去实实在在地计算这个新颖性的概念,我们就需要首先确立一种作品/产品/概念的编码方式,将某一范围内的作品/产品/概念全部用这种编码方式来表示,然后建立一个统计模型来表示能够代表这些作品/产品/概念的编码的概率分布,继而在这个概率分布上计算出期望值,最后去比较新作品/产品/概念的编码与这个期望值的差别,作为这个作品/产品/概念在给定范围内的新颖性评估。

去建立能够代表如此大规模的结构复杂的数据点(作品/产品/概念)的概率分布,在过去可能存在技术上的困难,但今天由于深度神经网络相关技术的不断成熟,也成为可能的事。

深度学习是机器学习的一个分支,像大多数机器学习方法那样,用一个数学统计模型去拟合给定的训练数据中的输入-输出关系。深度学习的特点在于使用一种叫作深度神经网络(Deep Neural Network)的特殊统计模型,是由多层的“神经元”计算模块组成的复杂数学计算函数,包含了数量庞大的参数用于拟合数据。与传统的机器学习不同,深度学习不仅要用统计模型去“学习”输入中的特征和输出中的特征之间的关系,还要“学习”这些特征本身。也就是说,深度学习的输入往往是原始对象的数据表示(比如一张图片,一段文字),一个深度神经网络要首先从原始对象中提取出对计算任务有用的特征,才能去完成计算任务。而能够自动发现特征,避免了手工去设计特征的编码表示,也正是深度学习优于传统的机器学习很重要的一点。

深度神经网络的本质是参数数量庞大的统计模型,表示的正是以复杂数据结构为空间的概率分布。深度神经网络所擅长的数据表征学习,也正好能够帮助人们封装作品/产品/概念的具体编码,建立与这些具体编码无关的新颖性指标。

如此,新颖性就成为了一个纯统计意义上的概念——这也正确体现了理论意义上的新颖性所具有的主观性和相对性。

2002年发表的SC-EUNE系统 [7],是这种算法化了的新颖性概念的一个应用。SC-EUNE系统是一个在给定地理环境中进行探索的人工智能体(AI Agent)。整个地理环境,包括其中的地理对象(建筑等),一开始对SC-EUNE都是完全未知的,SC-EUNE会在环境中到处移动探索来获得对这个环境的知识。对于每一个地理对象,SC-EUNE与它之间的物理距离越接近,获得的关于它的知识就越丰富。在环境中进行探索的SC-EUNE,会首先远远地观察每个地理对象,计算出当前获得的信息的新颖性。如果新颖性得分非常高,SC-EUNE就会选择进一步靠近这个地理对象作仔细的观察。基于这种对新颖性的自动计算,SC-EUNE模拟了人类在好奇心驱使下的行为表现。

SC-EUNE系统

能够自动生成新奇菜谱的人工创造力系统Q-Chef("Curious Chef";“好奇的厨子”)是算法化的新颖性概念的另一个应用。Q-Chef的系统架构组成包括一个在130,000个菜谱组成的数据集上进行过训练的统计模型。当用户给Q-Chef提供一个新菜谱作为输入,Q-Chef能够通过跟已知菜谱的比较发现新菜谱与众不同的地方。并模仿新菜谱的与众不同之处再生成一系列原创菜谱。比如说,当用户输入一个培根巧克力杯蛋糕的菜谱时,Q-Chef能够发现巧克力和培根是一个不寻常的组合。然后举一反三输出培根可可黑麦面包、培根核桃意大利面、椰子可可番薯料理。

Q-Chef受到“培根巧克力杯蛋糕”的启发而生成的三个新菜谱

总结

本章我们从对计算创意系统最基本的要求——产生有价值事物——出发,讨论计算创意系统内部自我评估和被外部评估的一些方法。在讨论这些方法的过程中,我们看到设计计算创意学系统的尝试,实际上在推动着人们去更加深入地思考各个创作领域价值和审美的本质,甚至人类对新颖性的认知、以及好奇心的本质。

但是,能够产生有价值的新事物,远远不是一个算法被认可为是一个“具有创造性”的算法的充分条件。

例如,根据无限猴子定理,让一只猴子在打字机上随机地按键,当按键时间达到无穷时,几乎必然能够打出任何给定的文字,比如莎士比亚的全套著作。

也就是说,设计一个算法随机地产生一堆符号,总是存在产生的符号组合能够被解读为有价值的新作品的可能性。而将这样的算法称为具有创造力的,怎么想都很牵强。

这说明仅仅用能够产生有价值的新作品作为一个算法有创造力的标准是不够的。

除了对算法输出有要求,一个算法要被称作是“有创造力的”,似乎算法本身还需要具有一些其他的特性。

当一个人在进行创新时,他对自己创作的目的是有意识的。创作者从一开始就有着“要创作出具有价值的新作品”的目的,并且对于要如何达到这个目的有一些想法,而不是胡乱地尝试意义不明的可能性。他以价值和新颖性为目的,并对于作品如何具有价值和新颖性至少有一些思路,将这些思路运用在创作过程中,有意识地创作出一件作品来,并呼吁人们关注它的价值和新颖性。

最后创作出的作品,至少创作者本人应该能够欣赏它的价值和新颖性,并在一定程度上能够为这件作品的价值和新颖性进行辩护。如果连创作者本人都不能欣赏自己的作品,不能理解它的价值和新颖性,我们很难说这样的创作过程是一个富有创造力的过程。

因此我们引入“意向性(Intentionality)”的概念,将上面描述的这种有意识的创作过程称作是具有意向性的创作过程,跟盲目的误打误撞区分开来。

另一方面,一个在进行创造性活动的人类创作者,不仅仅是有目的地在进行创造,对自己想要得到的价值有清晰的意识,还有很重要的一点是:创造的源动力是来自他自身的。他自身应该有强烈的表达欲望,或对某个内容有强烈的认同感,推动着他进行创造。一个出于自我表达的欲望而自发提笔写作的作家,比起一个在语文考试中写命题作文的学生,哪怕两者产出文章的质量相当,人们也会倾向于认为前者更具创造力。这种自发的创造源动力,我们将之称为自主性(Autonomy)

一个怎样的内容生成算法能够被称为是具有意向性自主性地在进行创作?

这是一个非常非常困难的问题,不仅仅困难在设计这样的算法可能存在的技术问题,更重要的是,这个问题就像是针对一般人工智能抛出的“AI怎样能具有意识”的问题,因为掺杂了“形而上”的内容,难以用一个非私人化的方式进行问题的清晰定义和讨论。

不过,就像人们将人工智能分门别类为强人工智能弱人工智能,将说不清的哲学问题留在强人工智能的范畴,我们也可以尝试区分强人工创造力弱人工创造力,看看剥离掉形而上学内容的意向性自主性,还可以剩下什么。

下一章,我们先来考察一个自称表现出了意向性自主性的人工创造力系统。

参考文献

[1] Ventura D. (2019) Autonomous Intentionality in Computationally Creative Systems. In: Veale T., Cardoso F. (eds) Computational Creativity. Computational Synthesis and Creative Systems. Springer, Cham.

[2] Ritchie G. (2019) The Evaluation of Creative Systems. In: Veale T., Cardoso F. (eds) Computational Creativity. Computational Synthesis and Creative Systems. Springer, Cham.

[3] Grace K., Maher M.L. (2019) Expectation-Based Models of Novelty for Evaluating Computational Creativity. In: Veale T., Cardoso F. (eds) Computational Creativity. Computational Synthesis and Creative Systems. Springer, Cham.

[4] Antonios Liapis and Georgios N. Yannakakis and Julian Togelius. (2013) Sentient Sketchbook: Computer-Aided Game Level Authoring. In Proceedings of ACM Conference on Foundations of Digital Games, 2013.

[5] Boden, M. A. (2004). The creative mind: Myths and mechanisms (2nd). London:Routledge.

[6] Macedo, L. and A. Cardoso. (2000). “SC-EUNE - Surprise/Curiosity-based Exploration of UNcertain and UNknown Environments.”

[7] Geraint A. Wiggins. (2020) Creativity, information, and consciousness: The information dynamics of thinking. Physics of Life Reviews. Volumes 34–35, Pages 1-39, ISSN 1571-0645.

[8] Paul R. Cohen. (1995) Empirical Methods for Artificial Intelligence. MIT Press, ISBN 0-262-03225-2

[9]  Cameron Browne. (2011) Evolutionary Game Design. ISBN 978-1-4471-2179-4,