И опять о конечном количестве комбинаций

А вот возьмём музыку. Является ли конечным число теоретически возможных песен? Разумеется, является. Давайте прикинем, сколько.

Возьмём фортепиано. Его диапазон покрывает все инструменты симфонического оркестра. Поэтому нехай изначально у нас будет 88 нот.

Пусть у нас будет одноголосая мелодия (контрапункт и прочую полифонию рассматривать не будем, речь-то про песни) из 20 нот. Можно предположить, что вариантов мелодии 8820. Это примерно 7.76E+38 разных теоретически возможных мелодий. Это, безусловно, очень много.

Но это не очень точная прикидка. Во-первых, врядли мелодия будет скакать с самого низа в самый верх. Мелодия обычной песни — где-то 2 октавы. Сильно больше уже не всякий певец из современных споёт. Я, например, хреновый певец и мой голос покрывает всего 2.5 октавы. Фредди Меркьюри — 4 октавы, но это всё же один из величайших певцов нашего времени.

Так что возьмём две октавы. Если ограничиться одной тональностью, то это 14 нот (так-то нот в октаве 12, а не 7). Но это слишком большое упрощение, так как во-вторых, не менее важной составляющей мелодии является как эти звуки организованы во времени. Одна нота может длиться полный такт, другая — половину, одну восьмую и даже одну тридцатьвторую и даже ещё короче). Но ограничимся 1/32. Пусть длительность нот у нас составляет от 2 тактов (бревис) до 1/32, всего 7 разновидностей. Паузы такой же длительности не забудем. Точки, лиги, и триоли с квинтолями брать не будем. Мы же не классическую музыку или прог-рок пишем, а так, попсу.

Итого получается (15 * 7)20. Это 7.65E+40. Большинство из них не будет благозвучными. Но даже если благозвучной будет одна из миллиарда, то песен всё равно будет очень много 🙂

Кстати, Питоновский код, который будет генерировать эти песни и записывать их в MIDI, занимает менее 30 строчек 🙂 Проблема не в генерации, проблема в отборе интересного материала.