nlothik (nlothik) wrote,
nlothik
nlothik

Category:

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

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

Возьмём фортепиано. Его диапазон покрывает все инструменты симфонического оркестра. Поэтому нехай изначально у нас будет 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 строчек 🙂 Проблема не в генерации, проблема в отборе интересного материала.

Mirrored from Лабораторный Журнал №6

Tags: музыка
Subscribe

  • Microsoft Linux

    Дожили. Микрософт выкатили свой дистрибутив Линупса. Называется CBL-Mariner. Брать тут: https://github.com/microsoft/CBL-Mariner Только вот по…

  • Mo’ money, mo’ problems

    Потихоньку привыкаю к новым обязанностям. Самое сложное пока — найм новых сотрудников. Приходят граждане, требуют зарплату под шесть цифирь,…

  • Хорошая статья

    Расистские реалии контроля за оборотом оружия. Рассматривается то же самое, про что говорю я, но немного с другой стороны. Вот я говорю, что…

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 5 comments