Автор работы: Пользователь скрыл имя, 04 Марта 2014 в 18:54, контрольная работа
История развития систем искусственного интеллекта.
Основные задачи искусственного интеллекта.
Различные подходы к построению систем ИИ.
Нейронные сети: основные положения.
Термин интеллект (intelligence) происходит от латинского intellectus — что означает ум, рассудок, разум; мыслительные способности человека. Соответственно искусственный интеллект (artificial intelligence) — ИИ (AI) обычно означает свойство автоматических систем брать на себя отдельные функции интеллекта человека, например, выбирать и принимать оптимальные решения на основе ранее полученного опыта и рационального анализа внешних воздействий.
Под алгоритмом понимают точное предписание о выполнении в определенном порядке системы операций для решения любой задачи из некоторого данного класса (множества) задач. Термин "алгоритм" происходит от имени узбекского математика Аль-Хорезми, который еще в IX веке предложил простейшие арифметические алгоритмы. В математике и кибернетике класс задач определенного типа считается решенным, когда для ее решения установлен алгоритм. Нахождение алгоритмов является естественной целью человека при решении им разнообразных классов задач. Отыскание алгоритма для задач некоторого данного типа связано с тонкими и сложными рассуждениями, требующими большой изобретательности и высокой квалификации. Принято считать, что подобного рода деятельность требует участия интеллекта человека. Задачи, связанные с отысканием алгоритма решения класса задач определенного типа, будем называть интеллектуальными.
Профессия программиста является одной из самых интеллектуальных, поскольку продуктом деятельности программиста являются программы — алгоритмы в чистом виде. Именно поэтому, создание даже элементов ИИ должно очень сильно повысить производительность его труда.
2. История развития
систем искусственного
В систему знаний робота должны были быть заложены алгоритмы, позволяющие строить план решения очередной задачи, а также алгоритмы, обеспечивающие выполнение этого плана и сравнение ожидаемых и действительных результатов.
С 1969 года по 1979 год начался этап в области исследований по искусственному интеллекту, связанный с разработкой систем, основанных на знаниях. Тогда, например, в Стэнфордском университете была разработана программа Dendral. Эта программа по существу была первой экспертной системой, основанной на широком использовании знаний.
В этот же период была разработана система диагностики Mycin на основе коэффициентов уверенности.
С 1980 года по настоящее время происходит превращение искусственного интеллекта в индустрию. Первая успешно действующая коммерческая экспертная система появилась в компании DEC. Эта программа помогала составлять конфигурации новых компьютерных систем.
С 1980 года по 1988 год наблюдался бурный рост развития систем ИИ, затем наступила «зима ИИ», так как компании не смогли выполнить свои обещания.
С 1986 года началось возвращение к нейронным сетям.
В период с 1987 года и по настоящее время происходит революция как в содержании, так и в методологии работ в области искусственного интеллекта. С точки зрения методологии ИИ наконец-то твердо перешел на научные методы.
В последние годы доминирующее положение в этой области заняли подходы, основанные на скрытых марковских моделях. Во первых, они основаны на строгом математическом аппарате, во вторых, они получены в процессе обучения программ на большом массиве реальных речевых данных. Это гарантирует системам надежные показатели производительности.
В период с 1995 года по настоящее время появляются подходы, основанные на использовании интеллектуальных агентов. Произошло изменение взглядов на роль агента, ученые поняли, что исследования в области ИИ необходимо производить в более тесном контакте с другими областями, такими как теория управления и экономика, которые также имеют дело с агентами.
3. Основные задачи искусственного интеллекта
Существуют различные подходы к построению систем ИИ. Это разделение не является историческим, когда одно мнение постепенно сменяет другое, и различные подходы существуют и сейчас. Кроме того, поскольку по-настоящему полных систем ИИ в настоящее время нет, то нельзя сказать, что какой-то подход является правильным, а какой-то ошибочным.
Для начала кратко рассмотрим логический подход.
Основой для данного логического подхода служит Булева алгебра. Каждый программист знаком с нею и с логическими операторами с тех пор, когда он осваивал оператор IF. Практически каждая система ИИ, построенная на логическом принципе, представляет собой машину доказательства теорем. При этом исходные данные хранятся в базе данных в виде аксиом, правила логического вывода как отношения между ними. Кроме того, каждая такая машина имеет блок генерации цели, и система вывода пытается доказать данную цель как теорему. Если цель доказана, то трассировка примененных правил позволяет получить цепочку действий, необходимых для реализации поставленной цели. Мощность такой системы определяется возможностями генератора целей и машиной доказательства теорем.
Добиться большей выразительности логическому подходу позволяет такое сравнительно новое направление, как нечеткая логика. Основным ее отличием является то, что правдивость высказывания может принимать в ней кроме да/нет (1/0) еще и промежуточные значения — не знаю (0.5), пациент скорее жив, чем мертв (0.75), пациент скорее мертв, чем жив (0.25). Данный подход больше похож на мышление человека, поскольку он на вопросы редко отвечает только да или нет.
Для большинства логических методов характерна большая трудоемкость, поскольку во время поиска доказательства возможен полный перебор вариантов. Поэтому данный подход требует эффективной реализации вычислительного процесса, и хорошая работа обычно гарантируется при сравнительно небольшом размере базы данных.
Под структурным подходом мы подразумеваем попытки построения ИИ путем моделирования структуры человеческого мозга.
Позднее возникли модели, которые обычно известны под термином "нейронные сети" (НС.). Эти модели различаются по строению отдельных нейронов, по топологии связей между ними и по алгоритмам обучения. Среди наиболее известных сейчас вариантов НС. можно назвать НС. с обратным распространением ошибки, сети Хопфилда.
Довольно большое распространение получил и эволюционный подход. При построении систем ИИ по данному подходу основное внимание уделяется построению начальной модели, и правилам, по которым она может изменяться (эволюционировать). Причем модель может быть составлена по самым различным методам, это может быть и НС. и набор логических правил и любая другая модель. После этого мы включаем компьютер и он, на основании проверки моделей отбирает самые лучшие из них, на основании которых по самым различным правилам генерируются новые модели, из которых опять выбираются самые лучшие и т. д.
Еще один широко используемый подход к построению систем ИИ — имитационный. Данный подход является классическим для кибернетики с одним из ее базовых понятий — "черным ящиком" (ЧЯ). ЧЯ — устройство, программный модуль или набор данных, информация о внутренней структуре и содержании которых отсутствуют полностью, но известны спецификации входных и выходных данных. Объект, поведение которого имитируется, как раз и представляет собой такой "черный ящик". Нам не важно, что у него и у модели внутри и как он функционирует, главное, чтобы наша модель в аналогичных ситуациях вела себя точно так же.
Основным недостатком имитационного подхода также является низкая информационная способность большинства моделей, построенных с его помощью.
И заканчивая беглое ознакомление с различными методами и подходами к построению систем ИИ, хотелось бы отметить, что на практике очень четкой границы между ними нет. Очень часто встречаются смешанные системы, где часть работы выполняется по одному типу, а часть по другому.
Идея нейронных сетей родилась в ходе исследований в области искусственного интеллекта, а именно в результате попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки, моделируя низкоуровневую структуру мозга. Основной областью исследований по искусственному интеллекту в 60е - 80е годы были экспертные системы. Такие системы основывались на высокоуровневом моделировании процесса мышления (в частности, на его представлении как манипуляций с символами). Скоро стало ясно, что подобные системы, хотя и могут принести пользу в некоторых областях, не охватывают некоторые ключевые аспекты работы человеческого мозга. Согласно одной из точек зрения, причина этого состоит в том, что они не в состоянии воспроизвести структуру мозга. Чтобы создать искусственный интеллект, необходимо построить систему с похожей архитектурой.
В последние десятилетия в мире бурно развивается новая прикладная область математики, специализирующаяся на искусственных нейронных сетях (НС.). Актуальность исследований в этом направлении подтверждается массой различных применений НС. Это автоматизация процессов распознавания образов, адаптивное управление, аппроксимация функционалов, прогнозирование, создание экспертных систем, организация ассоциативной памяти и многие другие приложения. С помощью НС. можно, например, предсказывать показатели биржевого рынка, выполнять распознавание оптических или звуковых сигналов, создавать самообучающиеся системы, способные управлять автомашиной при парковке или синтезировать речь по тексту. В то время как на западе применение НС. уже достаточно обширно, у нас это еще в некоторой степени экзотика – российские фирмы, использующие НС. в практических целях, наперечет.
Широкий круг задач, решаемый НС., не позволяет в настоящее время создавать универсальные, мощные сети, вынуждая разрабатывать специализированные НС., функционирующие по различным алгоритмам.
Модели НС. могут быть программного и аппаратного исполнения. Несмотря на существенные различия, отдельные типы НС обладают несколькими общими чертами.
Основу каждой НС. составляют относительно простые, в большинстве случаев – однотипные, элементы (ячейки), имитирующие работу нейронов мозга. Далее под нейроном будет подразумеваться искусственный нейрон, то есть ячейка НС. Каждый нейрон характеризуется своим текущим состоянием по аналогии с нервными клетками головного мозга, которые могут быть возбуждены или заторможены.
Состояние нейрона определяется по формуле:
Возвращаясь к общим чертам, присущим всем НС., отметим принцип параллельной обработки сигналов, который достигается путем объединения большого числа нейронов в так называемые слои и соединения определенным образом нейронов различных слоев, а также, в некоторых конфигурациях, и нейронов одного слоя между собой, причем обработка взаимодействия всех нейронов ведется послойно.
Теоретически число слоев и число нейронов в каждом слое может быть произвольным, однако фактически оно ограничено ресурсами компьютера или специализированной микросхемы, на которых обычно реализуется НС. Чем сложнее НС., тем масштабнее задачи, подвластные ей.
Выбор структуры НС. осуществляется в соответствии с особенностями и сложностью задачи. Если же задача не может быть сведена ни к одному из известных типов, разработчику приходится решать сложную проблему синтеза новой конфигурации. При этом он руководствуется несколькими основополагающими принципами: возможности сети возрастают с увеличением числа ячеек сети, плотности связей между ними и числом выделенных слоев; введение обратных связей наряду с увеличением возможностей сети поднимает вопрос о динамической устойчивости сети; сложность алгоритмов функционирования сети (в том числе, например, введение нескольких типов синапсов – возбуждающих, тормозящих и др.) также способствует усилению мощи НС. Вопрос о необходимых и достаточных свойствах сети для решения того или иного рода задач представляет собой целое направление нейрокомпьютерной науки. Так как проблема синтеза НС. сильно зависит от решаемой задачи, дать общие подробные рекомендации затруднительно. В большинстве случаев оптимальный вариант получается на основе интуитивного подбора.