Day 17: 人工智慧在音乐领域的应用 (AI作曲-基因演算法一)

我们在Day 7的时候曾经介绍过基於达尔文物竞天择适者生存演化式计算,那麽今天开始我们就来详细的介绍演化式计算当中的基因演算法要如何套用在作曲上。
https://ithelp.ithome.com.tw/upload/images/20211002/20140556eu2E6VXvC2.jpg

在第七天介绍演算法的时候,有收到了一些回馈,其实有些读者已经不记得达尔文演化论到底在说什麽,此外也有些读者对於小狗要如何突变出会飞的能力这件事情感到有点疑惑,因此我们在这边先花一点时间重新说明一些基础概念。
https://ithelp.ithome.com.tw/upload/images/20211002/201405567rgpA2EaQE.jpg

物竞天择适者生存

首先先想像一下,在某个岛上,住着一群颈鹿,他们的脖子不长也不短,所以通称颈鹿。
https://ithelp.ithome.com.tw/upload/images/20211002/20140556kvvyv2dn01.jpg
而岛上长着有高有低的树,树上长着颈鹿的主要食物来源: 树叶。
慢慢的,颈鹿们越来越多,而树叶却越吃越少,特别是比较矮的树叶总是最快先被吃光。
而随着粮食不足,就开始了残酷的适者生存、不适者淘汰
首先,脖子比较短的颈鹿们慢慢的因为找不到食物而陆续淘汰;
脖子中等的在矮的树叶都吃光时,由於还有中等的位子可以吃,因此多存活了一阵子之後,也慢慢的被淘汰;
而在这些过程中,某些颈鹿们因为基因突变的关系,所以脖子长得特别的长,变成了长颈鹿,而长颈鹿们在交配後生下来的子代们,因为带着长颈鹿脖子长的基因,所以天生就比其他颈鹿们更有优势 (脖子比较长)。
慢慢的,随着一代一代的演化,没有演化出长脖子基因的颈鹿们被淘汰,消失在这座岛上 (不适者淘汰);而长颈鹿们则适应了环境存活了下来 (适者生存)

至於Day 7举的小狗突变的例子,把它想像成X战警里面那种突变就行了,只是就算小狗长出骨爪、有心电感应、眼睛可以发出X光还是可以控制金属,只要不能飞,一样会被淘汰後送人就是了。
https://ithelp.ithome.com.tw/upload/images/20211002/201405569rBltE2Ua9.jpg

那麽作为基因演算法作曲这系列的开头,一方面昨天的内容又比较硬,我们就先聊到这让大家喘口气。明天开始我们会一一介绍如何把作曲的各种元素放进基因演算法里,那我们明天见~


<<:  standardize VS normalize

>>:  D-13-授权 jwt ? authentication ? authorization

Day 22:多国语言

JUCE 处理多国语言的机制,关键在 juce::LocalisedStrings 类别。 为支援多...

[Day25]-开发GUI程序使用tkinter2

文字方块 entry 建立文字方块 加入按钮 Entry应用 选项纽 核取方块 功能表设计 ...

【Day.28】React进阶 - 导入Redux,让元件沟通更简洁

当专案中的阶层变复杂,state和props变的很多,资料在多层component之间的传递也越来越...

JS 执行绪与同步 非同步 DAY50

这里额外补充2个观念 Not Defined VS undefined Not Defined co...

【Day 17】Django model

续昨天 我们使用 Python 预设的资料库模组-SQLite,昨天讲到的 Database 就会长...