Джон Генри Холланд, американский ученый, создатель генетических алгоритмов

Питер Харт

Джон Генри Холланд, американский ученый, создатель генетических алгоритмов

   Питер Э. Харт (родился в. 1940-е годы), американский ученый и предприниматель.

   Внес значительный вклад в области информатики связанные с искусственным интеллектом. Автор известного алгоритма поиска А* —  алгоритм поиска по первому наилучшему совпадению на графе.

   Ральф Винтон Лайон Хартли (30 ноября 1888, Спрус, Невада — 1 мая 1970, Нью-Джерси) — американский учёный-электронщик. Он предложил генератор Хартли, преобразование Хартли и сделал вклад в теорию информации, введя в 1928 году логарифмическую меру информации которая называется хартлиевским количеством информации или просто мерой Хартли.

   Хартли был пионером в области Информационной Теории. Он ввёл понятие «информации» (энтропии) как случайной переменной и был первым, кто попытался определить «меру информации».

   Дрю Хьюстон — американский интернет-предприниматель, более известный как основатель и генеральный директор Dropbox. По данным журнала Forbes его состояние оценивается в 1,2 миллиарда долларов США.

   До основания Dropbox, Дрю работал над многими проектами, одни из них: Bit9, Accolade и Hubspot.

   Дэ́вид Ха́ффман (9 августа 1925, Альянс, Огайо — 7 октября 1999, Санта-Круз, Калифорния) — первопроходец в сфере теории информации.

   В 1952 году создал алгоритм префиксного кодирования с минимальной избыточностью (известный как алгоритм или код Хаффмана).   В 1999 году получил медаль Ричарда Хэмминга за исключительный вклад в теорию информации.

   Андерс Хейлсберг (род. в декабре 1960, Копенгаген) — датский инженер-программист.

   В 1980 году написал свой первый компилятор языка Паскаль, который после портирования под операционную систему MS-DOS продал фирме Borland. Эта версия легла в основу Turbo/Borland Pascal, который развивался до 1995 года.

До 1996 года Хейлсберг был главным инженером фирмы Borland, где создал новое поколение компиляторов Паскаля — язык Delphi, компилятор которого работал уже под операционной системой Windows. В 1996 году он перешёл в Microsoft, где работал над такими проектами, как J++ и Microsoft Foundation Classes.

Позже возглавил группу по созданию и проектированию языка C#. В 2000 году Андерс Хейлсберг получил награду популярного журнала Dr. Dobb's Journal за создание Turbo Pascal, Delphi и C#.

   Ма́ртин Хе́ллман (род. 2 октября 1945, штат Нью-Йорк) — американский криптограф. Получил известность благодаря разработке первой асимметричной криптосистемы в соавторстве с Уитфилдом Диффи и Ральфом Мерклем (1952г).

   Один из активных сторонников либерализации в сфере криптографии. Хеллман долгое время являлся участником конференции компьютерной конфиденциальности, в последнее время работает над анализом рисков ядерной угрозы.

   PJ Хиетт — один из основателей, совместно с Крисом Ванстрастом и Томом Престон-Вернером и авторов GitHub — самого крупного веб-сервиса для хостинга IT-проектов и их совместной разработки.

   Сервис основан на системе контроля версий Git и разработан на Ruby on Rails и Erlang компанией GitHub, Inc (ранее Logical Awesome).

   Вильям Даниэль «Дэнни» Хиллис (25 сентября 1956) американский изобретатель, ученый, инженер, предприниматель.

    Хиллис является одним из основателей Thinking Machines Corporation, компании, разработавшей Connection Machine — параллельного суперкомпьютера, создававшегося на основе исследовательских работ Денни Хиллиса в начале 1980-х годов в Массачусетском технологическом институте в области вычислительных архитектур альтернативных традиционной архитектуре фон Неймана. Изначально планировалось, что Connection Machine будут применяться в задачах связанных с искусственным интеллектом и обработке символьной информации, но поздние версии получили наибольший успех в области вычислительных наук.

   Сэр Чарльз Э́нтони Ри́чард Хо́ар (11 января 1934, Коломбо, Цейлон, Британская империя, ныне Шри Ланка) — английский учёный, специализирующийся в области информатики и вычислительной техники.

   Наиболее известен как разработчик алгоритма «быстрой сортировки» (1960), на сегодняшний день являющегося наиболее популярным алгоритмом сортировки. Другие известные результаты его работы: язык Z спецификаций и параллельная модель взаимодействия последовательных процессов (CSP, Communicating Sequential Process), разработка логики Хоара (англ. Hoare Logic).

   Джон Генри Холланд (род. 2 февраля 1929 года) — американский учёный, профессор психологии, профессор электротехники и информатики в Мичиганском университете, Энн Арбор. Он является одним из первых учёных, которые начали изучать сложные системы и нелинейную науку; известен как отец генетических алгоритмов.

   Холланд часто читает лекции в разных странах мира о своих исследованиях, текущих исследованиях и открытых вопросах в изучении сложных адаптивных систем. В 1975 году он написал книгу о генетических алгоритмах «Adaptation in Natural and Artificial Systems». Он также разработал теорему схем.

   Герман Холлерит (иногда по-русски применяется написание Голлерит; 29 февраля 1860 — 17 ноября 1929) — американский инженер и изобретатель немецкого происхождения.

   Известен как создатель электрической табулирующей системы.

   Аврам Ноам Хомский (7 декабря 1928, Филадельфия, штат Пенсильвания, США) — американский лингвист, политический публицист, философ и теоретик.

   Автор классификации формальных языков, называемой иерархией Хомского. Наиболее известная работа Хомского «Синтаксические структуры» (1957) оказала огромное влияние на развитие науки о языке во всём мире. Ввёл понятие трансформационной грамматики — основы построения современных языков программирования.

   Джон Эдвард Хопкрофт (7 октября 1939 года, Сиэтл, США) — американский учёный в области теории вычислительных систем, лауреат премии Тьюринга.

   Его исследовательская деятельность состоит из теоретических аспектов информатики, в частности анализа алгоритмов, теории автоматов и теории графов. Хопкрофт — соавтор нескольких книг о формальных языках и конечных автоматах.

Вместе с Ричардом Карпом Хопкрофт разработал в 1973 году алгоритм для нахождения максимального паросочетания в двудольных графах.

Кроме того, Роберт Тарьян и Джон Хопкрофт разработали алгоритм для нахождения ориентации рёбер в неориентированном графе с целью создания сильно связного графа. Оба алгоритма были названы в честь их изобретателей.

   Грейс Хоппер (урождённая Грейс Брюстер Мюррей; 9 декабря 1906 — 1 января 1992) — американский учёный и контр-адмирал флота США.

   Являясь первооткрывателем в своей области, она была одной из первых, кто писал программы для гарвардского компьютера Марк I.

Она разработала первый компилятор для компьютерного языка программирования, развила концепцию машинно-независимых языков программирования, что привело к созданию COBOL, одного из первых высокоуровневых языков программирования.

Ей приписывается популяризация термина debugging для устранения сбоев в работе компьютера. В её честь назван эсминец ВМФ США USS Hopper (DDG-70) и суперкомпьютер Cray XE6 «Hopper» Исследовательского вычислительного центра министерства энергетики (NERSC).

   Джон Джозеф Хопфилд (род. 15 июля 1933 года) — американский учёный в основном известный за изобретение ассоциативной нейронной сети в 1982 году. Эта сеть известна под названием сети Хопфилда.

   Р. Найджел Хорспул канадский профессор информатики британского происхождения, работает в Университете Виктории, Канада.

   Изобретатель алгоритма Бойера-Мура-Хорспула, улучшил алгоритм Бойера-Мура быстрого поиска подстроки в строке. Хорспул является одним из соавторов динамического сжатия Маркова и соредактором журнала Software: Практика и опыт.

  Маршиан Эдвард «Тед» Хофф, мл. (род. 28 октября 1937 года в Рочестере, штат Нью-Йорк) — один из изобретателей микропроцессора.

   Вместе с Федерико Фаджином и Масатоси Сима был ведущим разработчиком первого коммерчески доступного однокристального микропроцессора Intel 4004.

Тед Хофф разработал маленький и недорогой чип, который можно было использовать для множества устройств: компьютеров, калькуляторов, фотоаппаратов и пр. Первым изделием, работающим на основе этого микропроцессора, стал японский печатающий калькулятор Busicom 141-PF.

Вклад Хоффа состоит в том, что он предложил сократить число микросхем, передав основные функции центральному процессору.

   Ричард Уэсли Хэмминг (11 февраля 1915, Чикаго — 7 января 1998, Монтерей) — американский математик, работы которого в сфере теории информации оказали существенное влияние на компьютерные науки и телекоммуникации.

   Основной вклад — т. н. код Хэмминга, а также расстояние Хэмминга.

   Гай Ю́лий Це́зарь (12 или 13 июля 100 года до н. э. — 15 марта 44 года до н. э.) — древнеримский государственный и политический деятель, император, полководец, писатель.

   В информатике известен как изобретатель шифра Цезаря — также известного, как шифр сдвига, код Цезаря или сдвиг Цезаря — одного из самых простых и наиболее широко известных методов шифрования. Шифр назван в честь этого римского императора, использовавшего его для секретной переписки со своими генералами.

   Ко́нрад Цу́зе (22 июня 1910, Берлин, Германская империя — 18 декабря 1995, Хюнфельд, Германия) — немецкий инженер, пионер компьютеростроения.

   Наиболее известен как создатель первого действительно работающего программируемого компьютера Z3 (1941) и первого языка программирования высокого уровня Планкалкюль (нем. Plankalkül исчисление планов).

   Марк Э́ллиот Цукербе́рг (14 мая 1984 года, Уайт-Плейнс, штат Нью-Йорк, США) — американский программист и предприниматель в области интернет-технологий, долларовый миллиардер, один из разработчиков и основателей социальной сети .

   Руководитель компании Inc.

   Пафну́тий Льво́вич Чебышёв (4 [16] мая 1821, Окатово, Боровский уезд, Калужская губерния — 26 ноября [8 декабря] 1894, Санкт-Петербург) — русский математик и механик, основоположник петербургской математической школы, академик Петербургской академии наук.

   Автоматический арифмометр, изобретённый им и ставший первым арифмометром непрерывного действия, хранится в Парижском музее искусств и ремесел.

   Алонзо Чёрч (14 июня 1903, Вашингтон, США — 11 августа 1995, Хадсон, Огайо, США) — выдающийся американский математик и логик, внесший значительный вклад в основы информатики.

   Чёрч прославился разработкой теории лямбда-исчислений, последовавшей за его знаменитой статьёй 1936 года, в которой он показал существование т. н. «неразрешимых задач». Его система лямбда-исчислений легла в основу функциональных языков программирования, в частности семейства Лисп (например, Scheme).

Источник: https://info256.jimdofree.com/%D1%85-%D1%87/

ЕСТЕСТВЕННЫЕ АЛГОР�ТМЫ: ГЕНЕТ�ЧЕСК�Й АЛГОР�ТМ

Джон Генри Холланд, американский ученый, создатель генетических алгоритмов

Эволюционные вычисления в широком смысле можно определить как область информатики, в которой используются вычислительные модели, аналогичные идеям Дарвиновского эволюционного процесса. Существует огромное множество методов оптимизации на основе эволюционных методов (например, муравьиный алгоритм, алгоритм имитации отжига). Для решения задач алгоритмической композиции (процесса генерации музыкальных отрывков, мелодий и произведений с помощью вычислительных методов) на данный момент используются четыре: генетические алгоритмы, один из методов роевого интеллекта — муравьиный алгоритм, Л–системы, и клеточные автоматы. В данной главе будет дан обзор генетического алгоритма.

Генетический алгоритм (ГА) — это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путём случайного подбора, комбинирования и вариации искомых параметров с использованием механизмов, напоминающих биологическую эволюцию.

В общем смысле работа генетического алгоритма начинается с применения эквивалента биологического образования новых генов на пространство случайно распределенных решений для нахождения в итоге оптимального набора.

Решения представлены хромосомами, а строки аллель — строками чисел, и задача рекомбинации генов заключается в создании новых аллелей из аллель, взятых от родительских хромосом посредством применения генетических операторов, в большинстве случаев это — мутация и скрещивание. Перебирание хромосом продолжается до достижения определенного условия экстремума. Генетические алгоритмы в задаче алгоритмической композиции разделяются по виду использованной фитнесс–функции — степень приспособленности хромосом может быть оценена исходя из заранее заданных определенных условий, либо может быть непосредственно человеком при прослушивании и субъективной оценке.

Впервые генетический алгоритм был предложен Джоном Холландом в 1975 году в Мичиганском университете.

Целесообразность применения ГА для моделирования музыкального творчества обосновали профессор кафедры компьютерных наук Гонг–Конгского университета Эндрю Хорнер и профессор кафедры индустриальной инженерии Университета �ллинойса Дэвид Голдберг в 1991 году.

Первыми успешными исследованиями в области применения генетических алгоритмов в генеративной музыке можно считать изыскания Джона Бильса — профессора Рочестерского института технологий (Нью–Йорк, США).

Он использовал ГА для имитации джазовой импровизации в собственном ПО GenJam (Genetic Jammer — Генетический Джэммер).

Данная программа читает заранее подготовленные с помощью программы Band–In–A–Box MIDI файлы, включающие партию аккордов пианино, баса, ритм–секции, и генерирует соло.

Оценка происходит посредством человеческого восприятия. Посредством команд �g’ или “b” (�good’ or �bad’) слушатель оценивает сгенерированные куски как удачные или нет.

Новаторская сущность GJ заключается в двух особенностях — во–первых, GJ оперирует двумя популяциями — тактов и фраз, а также использует целую популяцию тактов и фраз для построения соло, а не один «лучший» отрывок.

Пример фразы и ее тактов

В обеих популяциях, число слева от жирной линии представляет собой значение фитнес–функции, а остальные числа — хромосом.

�ндивиды в тактовой популяции состоят из значения фитнес–функции и хромосомы, которые интерпретируются как серия 8 событий, по одному на каждую из восьмеричных нот. Существует три типа событий: новая нота (нота плюс окончание ноты), пауза (окончание предыдущей ноты) и фермата (продолжение предыдущей ноты).

Такт и фраза инициализируются посредством генерации произвольной битовой строки соответствующей длины. Значение фитнесс–функции равно 0. Для фраз строки случайно распределены.

Для тактов строки выглядят как восемь четырехбитовых событий (0–15, РіРґРµ 0 — пауза, 15 — фермата, Р° 1–14 — новые ноты РёСЃС…РѕРґСЏ РёР· стандартной гаммы РґРѕ).

Вероятность наступления паузы 5–24, а новой ноты — 1–24.

В GJ генетические операторы (отбор, замещение, мутация, турнир) используются следующим образом.

Четыре индивида отбираются случайно для формирования семьи.

�з четырех индивидов два с самой высокой фитнес–функцией отбираются как родители, а два худших замещаются двумя из следующего поколения.

GJ оперирует шестью операторами мутации для фраз:

1) Отсутствие мутации (фраза подходит по критериям);

2) реверс (выстраивает фразу в обратном порядке);

3) поворот вправо (сдвигает последовательность в сторону первой ноты);

4) генетический ремонт;

5) суперфраза (генерирует новую фразу из четырех лучших индивидов трех прошедших турниров);

6) разжижитель (решает проблему сходимости генетического алгоритма на одном «супериндивиде» — добавляет случайный такт в фразу);

7) cирота (генерирует РЅРѕРІСѓСЋ фразу выбирая победителей четырех независимых турниров, причем победители — самые редко встречающиеся такты РІ популяции).

� шестью операторами для тактов:

1) Отсутствие мутации;

2) реверс;

3) поворот вправо;

4) инверсия (замена фермат паузами, пауз ферматами, и отражение нот относительно ноты до четвертой октавы);

5) сортировка нот на повышение;

6) сортировка нот на понижение;

7) транспозиция нот (повышение каждой ноты на определенное число от 1 до 4, паузы и ферматы во внимание не принимаются).

Далее приведены таблицы примеров мутаций относительно такта и фразы, представленных на рисунке:

Таблица — пример применения операторов мутации для такта

Оператор мутации

Мутированный такт

Отсутствие мутации

0 15 15 7 5 0 7 9

Реверс

9 7 0 5 7 15 15 0

Поворот вправо

15 15 0 9 7 0 5 7

�нверсия

6 8 15 10 8 0 0 15

Сортровка нот на повышение

5 7 0 7 9 15 15 0

Сортировка нот на понижение

9 7 0 7 5 15 15 0

Траспозиция нот

12 10 0 8 10 15 15 0

Таблица — пример применения операторов мутации для фразы

Оператор мутации

Мутированный такт

Отсутствие мутации

57 57 11 38

Реверс

38 11 57 57

поворот вправо

57 11 38 57

Генетический ремонт

57 57 11 29

суперфраза

41 16 57 62

разжижитель

31 57 11 38

cирота

17 59 43 22

Далее, на основании оценки слушателя, в соответствии с аккордовой последовательностью, выбираются наиболее приемлемые и подходящие популяции.

Источник: https://algorithmiccomposition.ru/article_entry_genetic.html

Booksm
Добавить комментарий