Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Tema_6 all.docx
Скачиваний:
33
Добавлен:
13.03.2015
Размер:
338.17 Кб
Скачать

Современный искусственный интеллект [править]

ASIMO — Интеллектуальныйгуманоидный робот фирмыHonda

Можно выделить два направления развития ИИ:

  • решение проблем, связанных с приближением специализированных систем ИИ к возможностям человека, и их интеграции, которая реализована природой человека (см. Усиление интеллекта);

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

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

Применение [править]

Турнир RoboCup

Некоторые из самых известных ИИ-систем:

  • Deep Blue — победил чемпиона мира по шахматам. Матч Каспаров против суперЭВМ не принёс удовлетворения ни компьютерщикам, ни шахматистам, и система не была признана Каспаровым (подробнее см. Человек против компьютера). Затем линия суперкомпьютеров IBM проявилась в проектах brute force BluGene (молекулярное моделирование) и моделирование системы пирамидальных клеток в швейцарском центре Blue Brain[22].

  • Watson — перспективная разработка IBM, способная воспринимать человеческую речь и производить вероятностный поиск, с применением большого количества алгоритмов. Для демонстрации работы Watson принял участие в американской игре «Jeopardy!», аналога «Своей игры» в России, где системе удалось выиграть в обеих играх[23].

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

  • 20Q — проект, основанный на идеях ИИ, по мотивам классической игры «20 вопросов». Стал очень популярен после появления в Интернете на сайте 20q.net[24].

  • Распознавание речи. Системы такие как ViaVoice способны обслуживать потребителей.

  • Роботы в ежегодном турнире RoboCup соревнуются в упрощённой форме футбола.

Банки применяют системы искусственного интеллекта (СИИ) в страховой деятельности (актуарная математика), при игре на бирже и управлении собственностью. Методы распознавания образов (включая, как более сложные и специализированные, так и нейронные сети) широко используют при оптическом и акустическом распознавании (в том числе текста и речи), медицинской диагностике, спам-фильтрах, в системах ПВО (определение целей), а также для обеспечения ряда других задач национальной безопасности.

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

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

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

Самым известным языком логического программирования является Prolog.

Первым языком логического программирования был язык Planner (см. обзор Шапиро (Ehud Shapiro) [1989]), в котором была заложена возможность автоматического вывода результата из данных и заданных правил перебора вариантов (совокупность которых называлась планом). Planner использовался для того, чтобы понизить требования к вычислительным ресурсам (с помощью метода backtracking) и обеспечить возможность вывода фактов, без активного использования стека. Затем был разработан язык Prolog, который не требовал плана перебора вариантов и был, в этом смысле, упрощением языка Planner.

От языка Planner также произошли логические языки программирования QA-4, Popler, Conniver и QLISP. Языки программированияMercury, Visual Prolog, Oz и Fril произошли уже от языка Prolog. На базе языка Planner было разработано также несколько альтернативных языков логического программирования, не основанных на методе поиска с возвратами (backtracking), например,Ether (см. обзор Шапиро [1989]).

1. ТЕОРЕТИЧЕСКИЕ ПРИНЦИПЫ ПРОЛОГА

ПРОЛОГ является языком исчисления предикатов. Предикат – этологическая формула от одного или нескольких аргументов. Можно сказать, что предикат – это функция, отображающая множество произволь-ной природы в множество {ложно, истинно}.Обозначаются предикаты F(x), F(x, y), F(x, y, z) и т. д..Одноместный предикат F(x), определенный на предметной областиM, является истинным, если у объекта x есть свойство F, и ложным –если этого свойства нет.Двухместный предикат F(x, y) является истинным, если объекты x иy находятся в отношении F.Многоместный предикат F(x1 , x2 , x3 ,..., xN ) задает отношение между элементами x1, x2, ..., xN и интерпретируется как обозначение высказывания: “Элементы x1 , x2, xN находятся между собой отношении F”.При разработке логических программ предикаты получают обычноназвания, соответствующие семантике описываемой предметной области Задача ПРОЛОГ – программы заключается в том, чтобы доказать,

является ли заданное целевое утверждение следствием из имеющихся фактов и правил.Решаемая задача представляется в виде совокупности утверждений (аксиом), цель задачи также записывается в виде утверждения. Тогда решение задачи представляет собой выяснение логического следования из аксиом 2. СТРУКТУРА ПРОГРАММЫ НА ПРОЛОГЕ

Программа на языке ПРОЛОГ включает следующие основные разделы:описание имен и структур объектов (domains);описание предикатов – названий отношений, существующих междуобъектами (predicates);раздел целевых утверждений (goal), который может отсутствовать; вэтом случае программа будет запрашивать целевое утверждение призапуске;6описание фактов и правил, описывающих отношения (clauses).Имена объектов (констант) в ПРОЛОГе пишутся с маленькой буквы,а переменных – с большой.Рассмотрим, как можно описать на ПРОЛОГе задачу из некоторойпредметной области, например географии.

4. ЗАПРОСЫ К ПРОЛОГ-ПРОГРАММЕЗапрос – это последовательность из одного предиката или множе-ства предикатов, разделяемых запятыми (связка and) и завершающаясяточкой. С помощью запросов можно установить истинность соответ-ствующего выражения. Предикат запроса называется целью (goal).Простые запросы, не содержащие переменных, называют да-нет-воп-росами. Они допускают лишь два возможных ответа: “Yes” или “No”. Вслучае ответа “Yes” говорят, что запрос завершился успехом, цель дос-тигнута.

Правило является рекурсивным, если содержит в качестве компо-

ненты само себя. Рекурсия допустима в большинстве языков програм-

мирования (например, в Паскале), но там этот механизм не является

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

языкам, механизмы – циклы, процедуры и функции.

Рассмотрим преимущества использования рекурсии на примере.

Пусть имеются следующие факты о том, какая валюта котируется выше 3. Синтаксис языка ПРОЛОГ, его влияние на стиль и методы программирования.