讀天才與演算法:人腦與AI的數學思維筆記15_聲響的數學之旅

躺柒發表於2024-05-02

1. 音樂

1.1. 巴赫的作品以嚴格的對位著稱,他十分中意對稱的結構

1.2. 巴托克的作品很多都以黃金比例為結構基礎,他非常喜歡並善於使用斐波納契數列

1.3. 有時,作曲家是本能地或者不自知地被數學的模式和結構所吸引,而他們並沒有意識到這些數學模式的意義

1.4. 有時,他們主動去尋找新的數學思想來作為他們作品的框架

2. 有量卡農

2.1. prolation canon

2.2. 又稱mensuration canon或proportional canon

2.3. 在中世紀的一種復調作曲技法

2.4. 卡農的不同聲部以相同或相似的節奏(主題動機)、不同比例的速度進行

2.5. 這種作曲技法是從一個簡單的節奏開始,單聲部進行;隨後,第二聲部以一半的速度、同樣的節奏加入;再然後,第三聲部以兩倍的速度、同樣的節奏加入

3. 雙曲幾何

3.1. 是一種獨立於歐幾里得幾何的幾何公理系統

3.2. 也稱羅巴切夫斯基幾何

3.3. 也稱波利亞–羅巴切夫斯基幾何

3.4. 也稱羅氏幾何

4. 歐幾里得演算法

4.1. 又稱輾轉相除法,用於計算兩個正整數的最大公約數,應用於數學和計算機兩個領域

4.2. 歐幾里得演算法和擴充套件歐幾里得演算法可使用多種程式語言實現

5. 演算法和作曲之間

5.1. 演算法是一組規則,它可以接受各種各樣的輸入,透過將規則應用於輸入的內容,可以得到結果

5.2. 初始輸入就是種子,演算法是種子生長的方法

5.2.1. 新生成的部分與原始的種子有很強的聯絡,但它不只是複製原始的種子,或是它的一部分

5.3. 演算法可以有不同的影像,透過分析這些影像,你可以知曉這些演算法的內容

5.4. 有一些演算法可以生成分形圖形:從一個簡單的幾何影像開始,反覆將一個數學方程應用到影像上,最後就會出現一個複雜的圖形

5.5. 作曲家在創作的時候要進行藝術或科學的雙重考量

5.5.1. 發明新的演算法,用以創作有趣的音樂

5.5.2. 選擇不同的種子(即主題動機)輸入到演算法當中

5.5.2.1. A是兩短一長的節奏

5.5.2.2. B是一個長的節奏

5.5.2.3. 演奏者可以選擇某一種演算法(規則)來組合這兩個主題

6. 巴赫

6.1. 首位音樂程式設計師

6.1.1. 演算法在巴赫創作音樂的過程中發揮了顯而易見的重要作用

6.1.2. 巴赫的許多作品可以用數學的語言描繪出來,但其蘊含的演算法要比中世紀的復調音樂複雜得多

6.2. 《音樂的奉獻》

6.2.1. 《音樂的奉獻》源於腓特烈大帝要求巴赫即興創作,但這部作品清楚地證明了上述觀點

6.2.1.1. 《音樂的奉獻》開篇的十首卡農分別用了不同的演算法,這些演算法在數學的層面上對原始的主題進行了發展

6.2.2. 1747年,62歲高齡的巴赫去看他兒子時創作了《音樂的奉獻》這部作品

6.2.3. 腓特烈大帝給巴赫的這個主題,並不是一個普通的主題

6.2.3.1. 這是一個缺乏音樂性的主題,幾個音符之間的音程關係毫無關聯,它們被生硬地堆砌在一起

6.2.3.2. 一般人是無法用這種主題作曲的

6.2.3.3. 用任何經典的對位規則都無法解釋這部作品

6.2.3.3.1. 這不僅僅是單一對卡農模仿。
6.2.3.3.1.1. 20世紀的作曲家阿諾爾德·勳伯格(Arnold Schoenberg)

6.2.4. 此故事有另一個版本

6.2.4.1. 腓特烈大帝和巴赫的兒子編造了這個困難的無旋律性的主題,來挑戰巴赫

6.2.4.2. C.P.E.巴赫是巴赫(約翰·塞巴斯蒂安·巴赫,即J.S.巴赫)的次子,因為巴赫在音樂界的影響甚大,他厭惡一直以來都活在父親的光環之下

6.2.4.2.1. 他認為父親的作品是老派的,他想創造一種新的音樂風格
6.2.4.2.2. 即興作曲也許是暴露他父親作曲風格和方法中缺點的機會,好讓他出醜

6.2.4.3. 巴赫用這個怪異的主題,即興創作了令人驚歎的三部賦格曲

6.2.5. 巴赫創作的這部套曲裡的十首卡農都是以腓特烈大帝所給的主題為基礎的,構成每一首樂曲的都是基礎的主題動機和一個數學規則或演算法

6.2.5.1. 每一首樂曲都像是一道數學題,演奏者必須解開這道數學題才能進行演奏

6.2.5.2. 演算法的內容是:將譜子上下顛倒過來,按照譜面所記演奏出一條旋律,然後再將這條旋律和原有的旋律同時奏出,這樣就得到了一首二聲部的鋼琴曲

6.2.5.3. 該演算法是應用於原始旋律主題的規則,目的是為原始聲部新增額外的聲部

6.2.5.3.1. 正如影像識別的演算法適用於任何照片一樣,只要有一個基礎的主題動機旋律,這個音樂演算法也可應用其上

6.3. 賦格曲

6.3.1. 是一種更復雜的卡農或輪唱,很多人在學校裡應該唱過這種歌

6.3.2. 卡農的唱法

6.3.2.1. 一半的同學先開始唱,幾拍過後,另一半同學再開始唱同一首歌

6.3.2.2. 一個聲部的曲調自始至終追逐著另一個聲部,直到最後的一個小節

6.3.2.3. 最後的一個和絃,歌聲融合在一起,給人以一個神聖的意境

6.3.3. 《倫敦大火》(London’s Burning)和《雅克兄弟》[1](Frère Jacques)都是很好的例子

6.3.4. 這裡所使用的演算法非常簡單,具有非常明顯的幾何性質

6.3.4.1. 創作旋律導句是卡農的基礎,你需要把它寫在五線譜上

6.3.4.1.1. 演算法是一個規則,這個演算法應用在旋律導句上生成一首和諧的曲子

6.3.4.2. 該演算法的工作原理是先獲取旋律導句的副本,然後在時間軸上向右移動,重複相同的樂句

6.3.4.3. 這種演算法選擇模仿導句進入的時間不同會產生不同的效果

6.3.4.3.1. 這有點像罐子上的條形圖案,可以複製、移動和重複
6.3.4.3.2. 就像罐子上的圖案,輪唱曲也可以在第一聲部、第二聲部之後再新增第三聲部

6.3.5. 賦格在卡農的基礎上進一步發展了,成為多聲部多主題動機的多聲復調作品

6.3.5.1. “裡切卡爾”(ricercar)

6.3.5.1.1. 一部六聲部的賦格曲

6.4. 巴赫在作品中喜歡使用的一個手法是不僅在二聲部的時間上做延遲,還對二聲部的主題做音高移動的處理

6.5. 在作品中運用對稱規則:二聲部可能是將主題旋律反過來使用,就像鏡面反射一樣

6.6. 結合所有這些規則,人們可以構建一種演算法,來應對如腓特烈大帝故意為難巴赫這樣的難題

6.7. 我們的大腦一邊緊張地識別樂曲進行的模式,一邊分析這個模式的執行規律,但未來是未知的,所以在分析的同時我們對樂曲接下來的進行模式做出預測是異常困難的

7. 骰子音樂

7.1. musikalisches würfelspiel

7.2. musical dice game

7.3. 遊戲演算法,使用一組骰子生成16小節的華爾茲舞曲

7.3.1. 使用這個系統可以生成1116種不同的華爾茲,即約4600萬億(45 949 729 863 572 161)首華爾茲

7.3.2. 早期的“演算法藝術家”會使用這樣的技巧——將預先設定的結構和隨機性元素結合

7.3.3. 並非所有的變化都是悅耳的,有些組合顯然比其他組合的效果更好

7.4. 莫扎特被認為其有一套類似於C.P.E.巴赫的演算法來譜寫華爾茲舞曲

7.4.1. 莫扎特的作曲遊戲精妙地將176小節(固定結構)和擲骰子(隨機性)結合起來,無論怎樣都能拼合成令人信服的華爾茲圓舞曲

7.4.2. 莫扎特並沒有給出評價拼合作品的標準

7.4.2.1. 這是開放式演算法的問題之一

相關文章