Музыка, математика, человек
Источник: журнал «Наука и жизнь», №7, 1968 год. Автор: кандидат физ.-мат. наук В. Детловс
«Математика является наукой, которая рассматривает отвлечённое количество... Она подразделяется на следующие части: арифметика, музыка, геометрия и астрономия. Арифметика – учение о количестве, выражаемом числом. Музыка же – учение, которое рассматривает числа по отношению к тем явлениям, которые наблюдаются в звуке...»
Так писал римский ученый Кассиодор. Дело было в шестом веке, в доброе старое время, когда биология ещё не отделилась от физики, а химии не существовало вовсе. Сегодня мало кому придёт в голову объявить музыку составной частью математики. В течение столетий возникло классическое противопоставление науки и искусства.
Но наша эпоха, которая, помимо многих других эпитетов, с основанием может называться веком синтеза различных наук, по мнению автора, становится также веком синтеза науки и искусства. В настоящее время пример подобных тенденций являют, по-видимому, математика и музыка.
МАТЕМАТИЧЕСКИЙ СИНТЕЗ И МАТЕМАТИЧЕСКИЙ АНАЛИЗ МУЗЫКИ
Этот контакт проявляется при постановке и решении двух основных проблем: математического анализа и математического синтеза музыки. В чём заключаются эти проблемы? Каково их отношение к традиционному, нематематическому музыкознанию?
Музыковедение всегда видело одну из своих основных задач в исследовании, в анализе музыки – с точки зрения мелодики, гармонии, ритмики, формы, инструментовки. Наша первая проблема состоит в использовании для этой цели различных математических дисциплин – статистики, теории информации, теории групп. Оговоримся сразу же: математический анализ музыки и традиционный анализ музыкальных произведений не исключают друг друга. Наоборот, для математического анализа музыки всегда в каком-то объёме необходим предварительный «нематематический» анализ. Результаты же математического анализа не противоречат результатам традиционного анализа, а уточняют их.
Другая основная задача теории музыки с давних пор заключается в её педагогической функции. Будущий композитор обучается теории музыки, начиная с нотной грамоты, за которой следует учение о гармонии, о музыкальных формах и т. д. Проблема математического синтеза музыки вполне аналогична этой задаче, с той «лишь» разницей, что обучать сочинению следует не человека, а машину. Как читатель догадывается, слово «лишь» в предыдущую фразу вставлено в ироническом смысле. В том-то и дело, что человек не машина (точнее, наоборот: современные машины не человек)!
Ведь будущий композитор – обладатель человеческой психики, самого сложного продукта материи. Благодаря этому разные советы и правила он схватывает «на лету», даже если они сформулированы не совсем точно. Пользуясь своим личным вкусом, ученик может оценить, хорошо или плохо звучит музыка, несмотря на то, что он, как правило, не в состоянии объяснить, какими признаками или формальными критериями он при этом руководствовался. Наконец, в его распоряжении фантазия – неиссякаемый источник новых музыкальных идей. Воистину не мудрено из такого великолепного материала сделать композитора. Но попробуйте сделать композитора из вычислительной машины, которая, правда, всему может научиться, но сама не знает ничего. Даже наиболее элементарные вещи машине требуется сообщать точно и подробно, ничего для неё не подразумевается само собой. Никакого вкуса у неё нет, ибо нет музыкального опыта. И уж совершенно безнадёжно выглядит дело с машинной фантазией. Откуда ей взяться?
После всего сказанного у читателя законно возникает вопрос: зачем тогда вообще стараться при помощи машин отнимать хлеб у композиторов-людей? Похоже, что дело это невозможное, да, собственно, и ненужное. Ответим со всей определённостью: никто при помощи «машинной музыки» не собирается превратить композиторов в безработных. Цель серьезных экспериментов по машинному сочинению состоит в другом, и эта цель упомянутыми выше трудностями не снимается, а становится ещё более привлекательной. К последнему утверждению мы ещё вернемся несколько позже. Теперь, не углубляясь в проблематику анализа, рассмотрим несколько более подробно вопросы, связанные с математическим синтезом музыки.
Но прежде всего следует отметить одно обстоятельство, о котором неспециалисты часто забывают. В нашей проблеме речь не идёт о конструировании какой-то новой машины неизвестного до сих пор типа, которая будет способна к сочинению музыки. Такие машины уже построены и существуют во многих тысячах экземпляров. Ибо для этой цели пригодна любая универсальная электронная вычислительная машина. Весь вопрос состоит в том, как научиться составить такую последовательность инструкций, такую программу, следуя которой машина сочинит музыку. Итак, выражения «машина может» или «машина не умеет», по существу, следует читать «программа может» или «программа не умеет». Но программу составляет не машина, а человек, поэтому от него в конечном счёте и зависит успех или неуспех машины. Однако читатель ни в коем случае не должен думать, что программист заложил в машину разные мелодии и потом заставил машину эти же мелодии «сочинить». На самом деле автор программы сам не знает, что сочинит машина. Как же в таком случае происходит процесс синтеза? Как преодолеваются упомянутые выше трудности на этом пути?
ЗАКОНЫ СТРОГИЕ И НЕСТРОГИЕ
Сначала вернемся к вопросу о строгих, категорических правилах, которые должен соблюдать каждый композитор. Сообщение таких правил машине – дело хлопотное и трудоёмкое, однако никаких принципиальных затруднений здесь нет. При проверке оказывается, что таких правил в музыке гораздо меньше, чем обычно принято думать. Поэтому включение этих правил в программу ещё далеко не решает вопроса. Относительным исключением в этом смысле являются, пожалуй, только весьма специфические ситуации. В качестве одного примера можно привести так называемый «строгий стиль», который характеризовал многоголосную (главным образом вокальную) музыку в эпоху Возрождения. Это самая старая музыка, которая изредка может быть услышана в концертах. Другой пример принадлежит уже нашему столетию – это додекафонная музыка в своей последовательной реализации. В упомянутых двух стилях свод строгих законов в сравнительно большой степени характеризует музыку. Вследствие этого процесс сочинения легче поддается программированию. Именно поэтому, вероятно, сюита «Иллиак» для струнного квартета, сочинённая вычислительной машиной Иллинойсского университета, начинается в строгом стиле и кончается додекафонией. Никакой «середины» нет. Но в огромном своём большинстве та музыка, которую мы слышим в концертах, по радио или в грамзаписи, относится именно к этой «середине», к так называемой тональной музыке. Тональную музыку писали Бах, Гайдн, Моцарт, Бетховен, Шуберт, Глинка, Чайковский, Рахманинов, Скрябин, Прокофьев. Тональную музыку пишет большинство современных композиторов – как советских, так и зарубежных. Но сочинение тональной музыки труднее поддаётся программированию. Систематическую работу в этом направлении ведёт московский математик Р. Зарипов. Появились также публикации Бухараева, Рытвинской и Шаронова в Казани. Сюда же относятся опыты рижских математиков. В чём заключается основная трудность алгоритмизации сочинения тональной музыки? Дело в том, что законы тональной музыки в своем большинстве не являются категорическими приказами, а лишь рекомендациями. Например, как в мелодии, так и в гармонии наблюдается стремление к первой, основной ступени лада. Это проявляется хотя бы в том, что в большинстве случаев мелодия в конце произведения достигает первой ступени. Но это закон с очень многими исключениями, так что нельзя даже говорить о законе в строгом смысле слова. Можно лишь отметить некоторую господствующую тенденцию.
Именно в подобных тенденциях – вся суть тональной музыки. Благодаря приобретённому ранее музыкальному опыту композитор эти тенденции ощущает интуитивно и в одной конкретной ситуации отдаёт предпочтение одному направлению развития музыкальной мысли, отвергая некоторые иные рекомендации, а в другой ситуации поступает наоборот. Можно ли помочь машине приобрести нечто подобное такой интуиции?
Отложим, однако, на время решение этого вопроса и обратимся к проблеме фантазии – очень важного компонента любого творчества. Как увидим, оба вопроса удаётся решить одним и тем же методом.
НАПРАВЛЕННАЯ СЛУЧАЙНОСТЬ
Общефилософские категории необходимого и случайного проявляются в каждом виде искусства. Не может быть произведения искусства, которое не подчинилось бы каким-то закономерностям, каким-то правилам. выделяющим «дозволенные приёмы». Но ни одно произведение искусства не оказывается жизнеспособным, если фантазия художника не привела к оригинальному, одновременно неожиданному и естественному сочетанию элементов. Законы, которым подчиняется фантазия, могут быть (и бывают) неизвестны самому художнику, он тоже не может предугадать, что ему фантазия подскажет в следующий миг. Поэтому есть основание считать работу фантазии не строго детерминированным, а случайным процессом. Всё сказанное относится, в частности, и к музыке.
Откуда же наша бедная вычислительная машина возьмёт фантазию? Ведь конструкторы машины считали своим долгом добиться того, чтобы машина не капризничала, чтобы она непреклонно и точно следовала программе и однозначно выполнила бы её. Работа машины нам кажется самим олицетворением точности и детерминированности.
Это действительно так, если иметь в виду нежелательные ошибки в работе машины. Но в то же время даже при выполнении поручения математиков машину иногда нарочно заставляют действовать случайно, непредсказуемо. Конечно, именно в тех ситуациях, когда этого хочет программист. При помощи подобного подхода реализуется в современной математике так называемый метод Монте Карло, который оправдывает себя во многих вычислительных задачах. В связи с этим придуманы специальные приёмы, позволяющие машине выбрать случайное число – например, случайную дробь (число между нулем и единицей).
Таким образом, в работу машины может быть введена случайность, имитирующая фантазию художника. Однако эта фантазия не должна быть слепой. При сочинении мелодии композитор не берёт ноты наугад, а выбирает одни звуки чаще, другие – реже: после большого скачка в мелодии, как правило, выбирается плавный ход и т. п. Такой направленный способ действия доступен и машине. Поясним это на очень простом примере.
Допустим, что машина должна строить ритмический рисунок, выбирая длины нот. Предположим, что характер музыки таков, что восьмые должны преобладать над четвертями, скажем, появляться в среднем в три раза чаще. Этого легко добиться при помощи случайных чисел, если поступать следующим образом. Условимся, что дробь от 0 до 0,75 будет означать, что машина выбрала («сочинила») одну восьмую, а дробь от 0,75 до 1,00 будет означать выбор одной четвертой. Пусть теперь случайная дробь оказалась равной 0,31. Это событие можно рассматривать как элементарный «акт вдохновения», в результате которого пишется нота длины одна восьмая. Число же 0,76 означало бы выбор одной четверти, и т. д. В среднем такая тактика, как легко понять, даст нам восьмых в три раза больше, чем четвертей, но в то же время для каждой отдельной ноты предсказать её длину невозможно – она зависит от «машинного вдохновения», то есть от непредсказуемого заранее значения случайной дроби.
Подобный метод можно использовать как для выбора ритмического рисунка, так и для выбора высоты нот (или же для последовательности интервалов, из которых построена мелодия), для подбора сопровождения, для решения вопроса о форме сочинения и т. д.
При этом от распределения вероятностей, которые мы предпишем машине, будет зависеть общий характер синтезируемой музыки, но в то же время мы никак не сможем предугадать, какой точный вид будет иметь следующий «опус» машины. Элемент неожиданности здесь проявляется примерно в такой же степени, как у композитора-человека.
Оставшийся выше нерешённым вопрос о том, как при математическом синтезе музыки моделировать предыдущий опыт композитора, его вкус, то есть предпочтение одних средств выражения по сравнению с другими, можно решать именно при помощи соответствующего подбора вероятностей. Таким же образом можно включать в процесс синтеза правила типа рекомендаций: машина бросит жребий и в зависимости от результата решит, следовать в конкретном случае данной рекомендации или нет.
Таким образом, композитор-автомат получает принципиальную возможность обзавестись фантазией – она дается использованием случайности, только не слепой случайности, а направленной при помощи подходящего выбора вероятностей.
Тем самым снимается возражение, которое высказывалось по адресу машинного синтеза музыки, а именно, что результатом синтеза может быть только либо застывшее, неинтересное произведение, которое получено «по всем законам», но лишено оригинальности, либо нечто невообразимо хаотическое, полученное при следовании слепой случайности.
ВОЗНИКАЮТ НОВЫЕ ПРОБЛЕМЫ
Однако принципиальная возможность программы синтеза не означает, что такая программа, отвечающая всем требованиям, уже в наших руках сегодня или будет готова завтра. Для практического составления программы требуется, во-первых, знание тех правил, которые должны выполняться безусловно, во-вторых, нужно указать те параметры, значения которых будут выбираться случайно, и, в-третьих, следует дать распределение вероятностей для этих параметров. Кроме того, нужен сам алгоритм синтеза, то есть следует указать, в какой последовательности будут выбираться значения всех нужных параметров. Этот вопрос является существенным потому, что вероятности выбора одного параметра могут зависеть от уже выбранного значения какого-то другого параметра.
Решение указанных вопросов ставит перед теорией музыки новые, непривычные вопросы. Традиционное музыкознание, как правило, ответа на эти вопросы не даёт. Уже в самом факте постановки новых задач хочется видеть заслугу проблемы машинного синтеза музыки. Для их решения приходится использовать как результаты традиционного музыкознания, так и методы математического анализа музыки. Иллюстрируем это одним примером.
В тональной музыке весьма распространенным приемом для построения мелодии является метод секвенцирования. Под этим понимается повторение некоторого мотива с известным сдвигом вверх или вниз. Советский музыковед Л. Мазель в своей работе «О мелодии» высказывает интересные мысли о том, какие секвенции характерны для музыки того или другого стиля. С другой стороны, чисто количественный статистический анализ секвенции был проведён в работе Т. Карлиной и автора этих строк. Рассматривались прелюдии и фуги Баха, симфонии Гайдна и произведения Чайковского. Полученные результаты позволяют уточнять тезисы традиционного музыкознания. Кроме того, они могут использоваться при синтезе музыки. Таким образом, математический анализ музыки даёт сведения, необходимые для синтеза.
Но и наоборот – результаты синтеза позволяют судить о том, насколько глубоко и успешно был проведен анализ. Тем самым впервые за многовековую историю науки о музыке результаты работы музыковеда смогут проходить экспериментальную проверку. Устраняя замеченные дефекты, мы получим уже лучшую программу синтеза и т. д.
При составлении алгоритма синтеза, как уже говорилось, мы опираемся также на достижения традиционной науки о музыке, в том числе на результаты психологии музыкального творчества. Думается, что проблематика синтеза музыки даёт ощутимый импульс для дальнейшего развития этой науки. Ведь машина моделирует – сначала по крайней мере в смысле результата – работу композитора. Значит, успех или неуспех модели позволяет судить о ценности тех приемов, которые были положены в основу построения модели. Если эти приёмы оказались успешными, то можно надеяться, что они имеют некоторое отношение к тем процессам, которые совершаются в психике композитора. Тем самым результативное моделирование постепенно перерастает в функциональное моделирование.
То, что сегодня мы ещё многого не знаем о работе психики, не должно стать причиной отказа от экспериментов по синтезу музыки. Наоборот, постепенно достигаемые успехи в задаче синтеза могут способствовать исследованию психики, точнее – развитию психологии творчества.
МУЗЫКАЛЬНОЕ ПРАВОПИСАНИЕ ДЛЯ МАШИНЫ
Несколько слов о том, как привычную нотную запись можно перевести на «машинный язык».
Устройство запоминания вычислительной машины делится на отдельные ячейки. В одной ячейке можно записать или одно число или одну команду. Обычно для записи одной ноты тоже используется одна ячейка памяти. Она содержит несколько десятков двоичных разрядов, поэтому в неё свободно помещается информация как о высоте ноты, так и о её длительности.
Высоту можно указать при помощи номера октавы (начиная нумерацию, например, с самой низкой октавы) и названия ноты, зашифровывая её тоже числами: до = 1, ре = 2, …, си = 7. При необходимости числами можно обозначать также и знаки для повышения (диезы) или понижения (бемоли) звука.
Длительность характеризуется при помощи единиц, соответствующих самой короткой допускаемой ноте. Так, если за единицу принимается одна шестнадцатая, то длительность одной восьмой записывается как число 2.
Кроме высоты и длительности, в ячейку памяти записывают также некоторые «учётные данные», например, текущий номер ноты в мелодии, номер такта и т. п... При помощи специального признака можно указать, что записанная длительность представляет не ноту, а паузу.
Перевести такой численный код, напечатанный машиной, в обычную нотную запись, понятную музыкантам, – дело не хитрое. Эта работа не требует никакой квалификации ни по математике, ни по музыке.
ЧТО СОЧИНЯЕТСЯ РАНЬШЕ – МЕЛОДИЯ ИЛИ ГАРМОНИЯ?
Когда в голове композитора возникает новая тема, он порой не может ответить на вопрос, что появилось раньше – мелодия или гармония. И уж совсем трудно сказать, решает ли композитор раньше, какой высоты будет следующая нота, или же раньше им выбирается длительность ноты. Музыканты, пожалуй, такой вопрос считали бы бессмысленным. Появление некоторого музыкального замысла, как правило, процесс слитный, труднорасчленимый на отдельные этапы. Даже распределение музыки по инструментам, или оркестровка, часто происходит одновременно с возникновением самого музыкального материала. Чайковский писал по поводу скерцо своей Четвёртой симфонии: «Я никогда не сочиняю отвлечённо, то есть никогда музыкальная мысль не является во мне иначе, как в соответствующей ей внешней форме. Таким образом, я изобретаю самую музыкальную мысль в одно время с инструментовкой».
В машине ситуация иная.
Машина сочиняет разные элементы музыки только строго последовательно. Тем самым возникает вопрос: какой должна быть эта последовательность? Однозначного и универсального ответа на этот вопрос, по-видимому, нет. В одной ситуации есть смысл начать с мелодического рисунка, в другой – с изобретения ритма и т. д.
Дело ещё осложняется тем, что разные элементы, разные стороны музыки не являются независимыми. Они сочетаются и взаимодействуют друг с другом, причем характер этого взаимодействия меняется от случая к случаю в зависимости от художественной цели, которую поставил перед собою композитор. Когда музыку сочиняет человек, это взаимодействие совершается в большой степени неосознанно, интуитивно. Машине же мы, как правило, должны явно указать, между какими параметрами требуется взаимодействие, и более или менее уточнить характер этого взаимодействия.
При сочинении классической музыки (например, в силе фортепьянных произведений Гайдна, Моцарта и Бетховена) большую роль играет выбранная последовательность аккордов. Гармонический план здесь можно даже считать первичным, базисным элементом, над которым мелодия представляет собой некоторую надстройку, вытекающую из этого базиса и согласованную с ним. Практически это означает, что имеет место как будто парадоксальная ситуация – сопровождение сочиняется раньше мелодии. Кстати, история музыки знает любопытный пример, когда вдобавок к этому оба этапа отделены промежутком времени более чем в сто лет. Имеется в виду популярное произведение Баха – Гуно «Аве Мария». Его сопровождение в виде аккордовой фигурации представляет собой без всяких изменений первую прелюдию из знаменитой работы немецкого композитора Баха «Хорошо темперированный клавир» (1722 г.). Мелодия же была написана французом Гуно в XIX столетии.
ПЕРВЫЕ «ОПУСЫ» БЭСМ-2М
Свои первые шаги на композиторском поприще машина БЭСМ-2М рижского вычислительного центра Латвийского госуниверситета имени Петра Стучки делала весьма робко. Она сочинила восьмитактовые одноголосные мелодии в так называемой форме периода, состоящего из двух половин или предложений. Какой была в этом случае последовательность «сочинения» отдельных элементов?
Прежде всего была построена последовательность аккордов (из расчёта один аккорд на такт). Да, да, аккордов, хотя в качестве результата машина должна была выдавать одноголосную мелодию без сопровождения. Аккорд тем самым как бы даже не появляется на сцене, он является только незримым руководителем мелодии, скорее режиссёром, чем актёром.
При выборе каждого следующего аккорда учитывалось то, какой аккорд находится в предыдущем такте. Например, после аккорда второй ступени аккорд пятой ступени выбирался с большей вероятностью, чем после аккорда первой ступени. Таким образом реализовалось некоторое взаимодействие внутри одного и того же элемента музыки (в данном случае гармонии).
Потом машина составила ритмический рисунок, одинаковый для обоих предложений.
Наконец, была получена мелодическая линия. Выбирая направление и величину текущего интервала, машина находила высоту следующей ноты. Однако этот процесс подчинялся выбранным раньше гармониям. Именно требовалось, чтобы в начале и в середине такта нота мелодии была аккордовым звуком, то есть согласовалась бы с гармонией. Если это требование оказалось нарушенным, то нота мелодии браковалась и «сочинялась» ещё раз.
Начиная второе предложение, машина пробовала повторить мелодию первого предложения. Если не возникали никакие «трения» с намеченной гармонией, такая попытка приводила к полному совпадению обоих предложений (что встречается иногда и в «живой» музыке). Это иллюстрируется первыми тремя нотными примерами.
Когда же оказалось, что повторение мелодии противоречит гармонии, мелодия для продолжения второго предложения сочинялась заново. Иногда это происходило уже с первой ноты второго предложения (пример 4), иногда – со второй (пример 5). Чаще всего отклонение от старой мелодии происходило где-то в середине второго предложения (примеры 6-10).
Таким образом, взаимодействие двух компонентов – гармонии и мелодии – в этой программе влияет на форму произведения, на степень повторяемости в периоде.