prosdo.ru
добавить свой файл
1




для прик эмбл




МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

"Московский государственный технический университет радиотехники,

электроники и автоматики"

МГТУ МИРЭА


Факультет Кибернетики.

Кафедра проблем управления.


Реферат

по дисциплине

«Системы интеллектуального управления приводом»

Тема реферата «Самые последние достижения по НС, НЛ и ГА»



Работу выполнил

Студент группы КС-52-08



Малей А.И.

Реферат проверил


Ситников М.С.



Москва 2012

Оглавление


Нейронные сети 4

Обзор нейронных сетей 4

Мое мнение, вывод и перспектива 5

Нечеткая логика 7

Вывод и взгляд в будущее 7

Генетические алгоритмы 9

Выводы 12

Источники 13




Нейронные сети

Обзор нейронных сетей


Нейронные сети и их изучение начались совсем недавно. Первой и основополагающей работой в данной области считается работа Дж. Маккалока (J. McCulloch) и У. Питтса (W. Pitts) «Логическое исчисление идей, относящихся к нервной деятельности» (1943 г.) [1]. Т.е. искусственным нейронным сетям (ИНС) всего лишь без двух месяцев 70 лет.

В связи с этим, можно сказать, что все, что связано с нейронными сетями – самые последние достижения.

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

Виды нейронных сетей:

  • Многослойный перцептрон.

То, с чего все началось. Хорошо изучены. Применяются. Имеют свои трудности и недостатки. Считать данный тип нейронных сетей новейшим достижением не будем.[2], [3],[6]

  • Рекуррентный перцептрон.

Естественное и логичное развитие многослойного перцептрона. Чуть сложнее по структуре. Отличается от предыдущего тем, что имеет обратные связи. Также хорошо изучен, применяется. Обладает рядом преимуществ. Опять же: в качестве новейшего достижения не подходит. [2],[3],[4]

  • Ассоциативная память.

Имеет меньше общего с первыми двумя типами. Моложе первых двух. Менее изучен. Процесс обучения данного типа сети занимает меньше времени. Данный тип сети хорош для реализации классификации объектов по заранее известным принципам. Новейшего ничего я не нашел для данного типа сети, но изучение ассоциативной памяти идет и перспективы есть.[2],[5]

  • Спайковые сети.

На мой взгляд, если и говорить про существенные достижения в области нейронных сетей, то наиболее интересное, перспективное и новое достижение – это создание и развитие данного типа сетей. Спайковые сети наиболее имитируют функции биологических нейронных сетей – а, следовательно, и вобрали в себя большую часть потенциала биологических нейронных сетей. На сегодняшний день мало изучены, сложны, но перспективны. Единственная проблема – нет оптимального метода их обучения. В результате, эти сети не дают лучший результат в решении задач, которые решаются другими методами, а сложность увеличивают.[2],[6]


  • Нейронная сеть Кохонена.

Предложена финским учёным Теуво Кохоненом в 1984 году. Успешно применяется для распознавания образов и кластеризации данных. Удобна для обработки многомерных данных. Основная особенность – это способность к самообучению. Но прорывов или революций в данной области я тоже не нашел. Много интересного, необычного, но конечного результата, который на 100% удовлетворял заданию пока не получено.[7],[8]

Мое мнение, вывод и перспектива


Изучение нейронных сетей началось с изучением нервной системы, мозга и прочих биологических нейронных сетей. Как только технологии и развитие биологии и медицины продвинулись настолько, что стало возможным модулировать процессы в мозгу человека или животных, сразу появились нейронные сети. Сначала простейшие, и они дали невиданный для того времени результат. Произошел взрыв интереса к искусственным нейронным сетям (а именно к различным типам перцептронов). Их хорошо изучили и уперлись в проблемы: обучение ИНС – процесс длительный, трудоемкий, а главное, нужно заранее иметь хорошо структурированные и известные данные и правильную реакцию на эти данные. Не всегда заранее известно, с чем придется работать и какое правильное решение нужно принять и от чего оно будет зависеть. А даже если сеть и обучили – результат не стопроцентный.[2],[6]

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

Но из-за того, что они плохо изучены и нет четких алгоритмов обучения и настройки данных сетей или их оптимизации, применяются они редко.[2]

После прочтения большого количества информации о нейронных сетях я сделал вывод, что основные прикладные задачи, которые решаются на данный момент – это задачи распознания и классификации образов. В данной сфере действительно есть и прорыв, и интересные результаты.[10],[11],[12],[13]


С помощью нейронных сетей:


  • Построены системы распознавания текста, символов и цифр.

Пример Abby Fine Reader. Все остальные системы, решающие подобные задачи, в том числе системы взлома CAPTCHA (система защиты от автоматических регистраций на различных интернет сервисах).[9]

  • Системы распознавания речи.

Самый красочный пример – Google. Летом 2011 запущен сервис мобильного поиска используя голосовой ввод, мобильного переводчика с голосовым вводом и т.д. Для реализации этой возможности компания Google использует нейронную сеть реализованную на 1000 16ти ядерных компьютеров с более чем одним миллиардом связей.[14],[15]

Компания Apple не отстает. Их система Siri, похоже, также использует нейронную сеть. Правда это лично мое мнение и, как и любой продукт этой компании, Сири строго засекречена, и сказать с уверенностью, какие именно технологии используются нельзя.

  • Снова Google. В этой компании, как я понял, вообще очень любят нейронный сети и умеют с ними обращаться. Летом 2012 года (а это совсем недавно) очередная нейронная сеть Google проанализировала в течении 3х дней 10 миллионов (!) «аватаров» на онлайн сервисе этой же компании YouTube и научилась распознавать лица. Но больше всего всех восхитило, что эта сеть научилась распознавать кошек. Казалось бы – не сложно. Важно отметить, что данная сеть является самообучаемой. А кошек она научилась распознавать, т.к. это наиболее часто встречаемые образы в роликах на YouTube.[15],[16],[17]

  • Вообще в интернете пишут про некую «секретную лабораторию Google», в которой проводятся все вышеперечисленные эксперименты и, которая специализируется на работе с нейронными сетями.[14]-[17]

  • Системы распознавания изображений.

В данном сегменте я не нашел каких-то грандиозных достижений, но например такие задачи, как автоматическая регистрация и учет миграции диких животных, рыб, птиц (что важно для контроля экологической ситуации) уверенно решаются с помощью распознавания изображений аэросъемки с помощью нейронных сетей.[13]


  • Опять лично мое мнение, но популярная интернет игра Акинатор также основана на самообучающейся нейронной сети. [18]

Хотя есть версия, что данная игра основана на теории попроще – на теории вероятности. [19]

  • Интересно применение нейронных сетей для беспилотного управления автомобилем.[20],[21]

Но, лично мой взгляд – нейросети на данный момент не изучены. Их теория сложна и непривычна для людей. Все работы, которые на данный момент ведутся или проведены – это работы сугубо научной, а не прикладной тематики. Да, компания «Google» нашла применение нейронным сетям. Но стопроцентный результат эти технологии все равно не дают. На мой взгляд, те, кто занимаются нейросетями, слишком зациклены на точном воспроизведении возможностей человеческого мозга. Я не понимаю, зачем это нужно и что это даст. Природа давно придумала способ легче и приятней для сознания нового человека.

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

На мой взгляд, будущее науки и техники, если рассматривать их через призму теории нейросетей, в создании нейрокомпьютера.

Группой Манчестерского Университета в Великобритании под руководством профессора Стива Фурбера (Steve Furber), создателя BBC Microcomputer и 32-битного ARM RISC микропроцессора, а также основателя компании ARM проводится проект по созданию подобной технологии.[22],[23]

«Гиганты индустрии признают, что дальнейшее увеличение количества транзисторов не приведёт к значительному увеличению скорости процессора, а логика подсказывает увеличить количество самих процессоров в микросхемах, иными словами применить путь массового параллелизма». [22]

Вот проект, на мой взгляд, действительно заслуживает внимания. Я считаю, что за этим будущее. Не пять лет, конечно, но уже скоро персональные компьютеры будут выглядеть именно так. Уже давно идут разговоры о том, что физический предел вычислительной мощи процессоров скоро будет достигнут. Уже давно появилась тенденция распараллеливания вычислений на несколько ядер. Но пока что этот путь обладает недостатками. Самый главный – при выходе их строя одного из элементов, выходит из строя вся система. Нейронный компьютер подразумевает независимость всей системы от отдельных элементов.


Все остальное, что я смог найти по теме, это мечты и фантазии, наподобие создания вечной жизни. [24]

Когда-нибудь это, наверняка, произойдет. Но пока что, все эти идеи на уровне философии и, слава богу, я не застану тот день, когда все это станет правдой.

Нечеткая логика


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

  • Это все-таки логика и поддается строгому математическому описанию.

  • Позволяет получать простое решение для сложных задач.

  • Позволяет оперировать привычными человеку лингвистическими переменными типа «далеко»-«близко», «холодно»-«жарко».

  • Нечеткая логика поддается алгоритмизации. [25], [26]

Наиболее значительных результатов в применении нечеткой логики добились производители видеоигр. Для совершенствования своих творений, создания более интересного и реалистичного сюжета и для привлечения игроков компании-производители видео игр используют нечеткую логику для создания своих игровых персонажей, будь то бот в Counter-strike или гоночная машина в Need for Speed.[27], [28]

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

Довольно широко нечеткая логика применяется и в технике. В системах управления. Все системы, где затруднительно описать среду и где необходимо оперировать такими понятиями как «далеко»-«близко», «холодно»-«жарко», «долго»-«быстро» используют нечеткую логику. Наиболее наглядный пример использования нечеткой логики в системах управления – беспилотное управление автомобилем. Здесь снова постарались специалисты из Гугл. [29]


А также любой пример, где требуется обходить препятствия. [30],[31]

Применение нечеткой логики коснулось и микропроцессорной техники. Даже созданы несколько моделей микропроцессоров, основанных на нечеткой логике. В основном это Японские производители. Используются эти микроконтроллеры в бытовой технике, такой как стиральные машины, электробритвы, микроволновые печи и проч. Такой «умной» техники в огромном количестве и разнообразии можно найти на рынке. [32],[33]

Вывод и взгляд в будущее


Алгоритмы и математика нечеткой логики хорошо изучены и описаны.

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

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

Я склоняюсь к мнению, что за 5, и даже за 10 лет ничего существенного не изменится в ситуации с нечеткой логикой, т.к. она устойчиво заняла свою нишу, а качественного новых применений данной теории пока нет.

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

Генетические алгоритмы

Определение: генетический алгоритм — это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путём случайного подбора, комбинирования и вариации искомых параметров с использованием механизмов, напоминающих биологическую эволюцию. [34]

Все генетические алгоритмы имеют общую структуру цикла, которая заключается в следующем:

До запуска цикла генетического алгоритма необходимо:


  1. Задать целевую функцию (приспособленности) для особей популяции

  2. Создать начальную популяцию

После чего возможно использовать сам алгоритм, в общем случае состоящий из следующих этапов:

  1. Размножение (скрещивание)

  2. Мутирование

  3. Вычислить значение целевой функции для всех особей

  4. Формирование нового поколения (селекция)

  5. Если выполняются условия остановки, то (конец цикла), иначе (начало цикла).

Изначально генетические алгоритмы были созданы как математическая модель эволюции для изучения механизмов, происходящих в живой природе. Первые работы по симуляции эволюции были проведены в 1954 году Нильсом Баричелли на компьютере, установленном в Институте Продвинутых Исследований Принстонского университета, и привлекли внимание только биологов. С началом широкого распространения вычислительной техники, моделированием естественного отбора заинтересовались математики, а после получения неожиданных результатов работы генетических алгоритмов, они получили заслуженное внимание в более широких кругах ученых и инженеров. [34]

Классическое применение генетические алгоритмы получили в следующих задачах:

  1. Задачи, решающиеся полным перебором. При большой размерности пространства решений полный перебор требует много времени, и в задачах, где точный ответ не требуется, а достаточно приблизительного решения, генетические алгоритмы оказываются производительным инструментом.
  2. Задачи оптимизации. Весь спектр задач, где требуется находить наиболее оптимальное решение: от нахождения минимума функции, до наиболее оптимального размещения макета детали на заготовке, для минимизации отходов на производстве. В большинстве своем, такие задачи представляют класс NP-полных задач [35], для которых не существует метода нахождения точного решения.


  • Упаковка в контейнеры при помощи генетического алгоритма. [36]

  • Задачи синтеза расписаний. [37]

  • Задача упаковки. [38]

  • Задача размещения разногабаритных блоков СБИС. [39] [40]

По данному блоку принципиально нового не появляется, т.к. задача понятна и решена. Ничего принципиально нового в данном классе задач появиться не может, но я нашел достаточно большое количество работ по улучшению алгоритма, оптимизации под конкретную задачу. Все приведенные выше источники (36-40) как раз содержат статьи по улучшению или специализации применения ГА к данному классу задач. Лично меня больше всего заинтересовали работы [39] [40]. В данном классе задач они являются относительно новыми, т.к. для проектирования микропроцессорной техники ГА стали применяться сравнительно недавно. В работе [39] предложен алгоритм для размещения разногабаритных блоков, а в работе [40] предложен алгоритм для решения той же задачи, но комбинирующий ГА и квантовый алгоритм.

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

  • Естественный отбор музыки. [41]
  • Создание музыки с помощью ГА. «Два года назад в Hewlett-Packard создали компьютерного ди-джея HPDJ, который пишет музыку, отслеживая настроение людей. Каждому посетителю клуба выдается браслет-датчик, фиксирующий пульс человека и его местонахождение в зале. Эти данные HPDJ использует для выращивания новых мелодий. Вначале машина вносит в музыку случайные мутации - а затем отслеживает реакции и выбирает те изменения, которые пришлись людям по вкусу». [44]


  • Аппроксимация изображений при помощи ГА.[41]

  • Идентификация и обнаружение объектов на изображении с использованием ГА.[41]

Немного особняком стоят задачи экономики. В интернете можно найти информацию о применении ГА к решению финансовых и экономических задач. Но конкретных примеров немного. Я подозреваю, что на самом деле ГА не применяются в данной сфере на практике (хотя теоретически применение возможно – ситуация аналогичная ситуации с нейронными сетями) по причине сложности составления кодировки хромосом, сложности составления функции приспособленности и, самое главное, из-за сложных экономических зависимостей от отдельных личностей, стран, событий и политики, проводимой государством. [45] [46]
Ну и самое интересное напоследок! Основой для размышлений послужила статья Алексея Андреева ЭлектроДарвин [44]. Сама статья с большой натяжкой может быть названа научной и в ней не содержится ссылок на проверенные источники, но в ней собраны некоторые интересные факты о позднейших достижениях в сфере ГА, такие как:

  • Автоматическая разработка микроконтроллеров.

  • Автоматическая разработка механических сооружений.

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

  • Применение ГА в маркетинге с исследованием реакций мозга на рекламу.

  • Генетическое программирование.

  • Разработка лекарств с применением ГА.

  • Естественный отбор среди роботов.

  • Автоматическая эволюция механики роботов.

Очень рекомендую статью к прочтению.

Еще я бы отметил применение ГА для синтеза и обучения НС.

Выводы



Когда я начал знакомиться с генетическими алгоритмами, я начал с определений и базовой информации. У меня сложилось впечатление, что вряд ли удастся найти что-то интересное. Но по мере поиска примеров применения ГА в различных сферах я к своему удивлению обнаружил, что ГА нашли свое приложение на практике, пожалуй, даже больше чем ИИ и НС, т.к. они являются единственным эффективным методом колоссального сокращения издержек на производстве.

Если говорить о прогнозе на будущее, то сначала стоит обратить внимание вот на этот прогноз, сделанный в 2004 году, т.е. почти 9 лет назад:

«По мнению Девида Андрэ, одного из соратников Козы, в ближайшие 5 лет генетическое программирование создаст больше продуктов, чем продается и используется в настоящее время. Очевидно, что при этом наибольший приоритет получат те, кто контролирует "вычислительный океан". Пока это доступно немногим: компания Genetic Programming смогла сделать свои изобретения благодаря самодельному суперкомпьютеру из тысячи 350-мегагерцовых "Пентиумов". Однако Джон Коза считает, что к концу этого десятилетия 50-гигагерцовые компьютеры станут обычным делом, так что стоящие патентов изобретения можно будет выращивать "в домашних условиях".»

Как видно, прогноз не сбылся даже сейчас, хотя делался также на 5 лет.

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

Если говорить про 5 лет, то, на мой взгляд, ничего существенного не произойдет. Максимум, что может случиться, это возрастет интерес с ГА и начнут готовиться по этому профилю больше специалистов.

Источники

  1. Искусственная нейронная сеть (Wikipedia)


  2. Краткий обзор популярных нейронных сетей (Habrahabr)

  3. Перцептрон (Wikipedia)

  4. Искусственные нейронные сети. Формальный нейрон. Основные нейросетевые парадигмы (www.keldysh.ru)

  5. Ассоциативная память на нейронных сетях (Wikipedia)

  6. Искусственный интеллект. Нейросети.

  7. Unsupervised learning или «пойди туда, не знаю куда, найди то, не знаю что»

  8. Самоорганизующаяся карта Кахонена (Wikipedia)

  9. CAPTCHA (Wikipedia)

  10. Нейронные сети и распознавание символов. (Habrahabr)

  11. Создание оригинальной «Капчи», используя нейронные сети. (Habrahabr)

  12. Применение нейросетей в распознавании изображений. (Habrahabr)
  13. Анализ данных аэрофотосъемки. (Habrahabr)


  14. Нейронная сеть Google поможет распознать устную речь

  15. Google будет активнее использовать искусственный интеллект в своих продуктах

  16. Нейронная сеть Google распознала котов.

  17. Нейронная сеть Google научилась распознавать кошек.

  18. Интернет гений Акинатор

  19. Акинатор и математика. (Habrahabr)

  20. Управление транспортным средством с помощью нейронных сетей. (Habrahabr)

  21. Эмоции в нейросетях

  22. SpinNaker – нейронный компьютер.

  23. SpinNaker project

  24. Вечная жизнь – замена мозга другим носителем информации с сохранением памяти

  25. Нечеткая логика. (Wikipedia)

  26. Нечеткая логика на практике. (Habrahabr)

  27. Video game bot. (Wikipedia )

  28. Боты в видеоиграх.
  29. Беспилотный автомобиль Google (Wikipedia)


  30. Искусственный интеллект с нечеткой логикой в аркадной игре. (Habrahabr)

  31. Описание автономного мобильного робота (АМР) MARGE.

  32. Общая структура нечеткого микроконтроллера.

  33. Нечеткая логика в системах управления.

  34. Генетический алгоритм (Wikipedia)

  35. NP-полная задача(Wikipedia)

  36. Упаковка в контейнеры при помощи генетического алгоритма (Habrahabr)

  37. Задачи синтеза расписаний

  38. Задача упаковки

  39. Размещение блоков СБИС

  40. Задача размещения с применением ГА и квантовых алгоритмов

  41. Естественный отбор музыки

  42. Аппроксимация изображений с помощью ГА(Habrahabr)

  43. Автоматизированное конструирование близких к оптимальным процедур идентификации и обнаружения объектов на изображении с использованием ГА.

  44. ЭлектроДарвин


  45. Интеллектуальные технологии, используемые в экономике

  46. Применение ГА для решения экономических задач

  47. Разработка генетического алгоритма обучения нейронных сетей

  48. Нейронные сети с обучением по методу обратного распространения ошибки и генетическим алгоритмом