Краткий курс лекций по дисциплине &quot

advertisement
КРАТКИЙ КУРС ЛЕКЦИЙ ПО ДИСЦИПЛИНЕ
«ИНТЕЛЛЕКТУАЛЬНЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ»
Лекция “Предмет и метод”
Задачей изучения дисциплины является приобретение знаний о способах
мышления человека, а так же о методах их реализации на компьютере.
Основным предметом изучения дисциплины являются мыслительные
способности человека и способы их реализации техническими средствами.
Термин интеллект (intelligence) происходит от латинского intellectus — что
означает ум, рассудок, разум; мыслительные способности человека.
Соответственно искусственный интеллект (artificial intelligence) — ИИ (AI)
обычно трактуется как свойство автоматических систем осуществлять
отдельные функции интеллекта человека, например, выбирать и принимать
оптимальные решения на основе ранее полученного опыта и рационального
анализа внешних воздействий.
Ясно, что для того, чтобы осуществлять в окружающей среде
интеллектуальную деятельность (или хотя бы просто существовать),
необходимо иметь в системе знаний модель этого мира. В этой
информационной модели окружающей среды реальные объекты, их свойства
и отношения между ними не только отображаются и запоминаются, но и, как
это отмечено в данном определении интеллекта, могут мысленно
"целенаправленно преобразовываться". При этом существенно то, что
формирование модели внешней среды происходит "в процессе обучения на
опыте и адаптации к разнообразным обстоятельствам".
Мы употребили термин интеллектуальная задача. Для того, чтобы пояснить,
чем отличается интеллектуальная задача от просто задачи, необходимо
ввести термин "алгоритм" — один из краеугольных терминов кибернетики.
Под алгоритмом понимают точное предписание о выполнении в
определенном порядке системы операций для решения любой задачи из
некоторого данного класса (множества) задач. Термин "алгоритм"
происходит от имени узбекского математика Аль-Хорезми, который еще в IX
веке предложил простейшие арифметические алгоритмы. В математике и
кибернетике класс задач определенного типа считается решенным, когда для
ее решения установлен алгоритм. Нахождение алгоритмов является
естественной целью человека при решении им разнообразных классов задач.
Отыскание алгоритма для задач некоторого данного типа связано с тонкими
и сложными рассуждениями, требующими большой изобретательности и
высокой квалификации. Принято считать, что подобного рода деятельность
требует участия интеллекта человека. Задачи, связанные с отысканием
алгоритма решения класса задач определенного типа, будем называть
интеллектуальными.
Что же касается задач, алгоритмы решения которых уже установлены, то, как
отмечает известный специалист в области искусственного интеллекта М.
Минский, "излишне приписывать им такое мистическое свойства, как
"интеллектуальность". В самом деле, после того, как такой алгоритм уже
найден, процесс решения соответствующих задач становится таким, что его
могут в точности выполнить человек, вычислительная машина (должным
образом запрограммированная) или робот, не имеющие ни малейшего
представления о сущность самой задачи. Требуется только, чтобы лицо,
решающее задачу, было способно выполнять те элементарные операции, их
которых складывается процесс, и, кроме того, чтобы оно педантично и
аккуратно руководствовалось предложенным алгоритмом. Такое лицо,
действуя, как говорят в таких случаях, чисто машинально, может успешно
решать любую задачу рассматриваемого типа.
Поэтому представляется совершенно естественным исключить их класса
интеллектуальных такие задачи, для которых существуют стандартные
методы решения. Примерами таких задач могут служить чисто
вычислительные задачи: решение системы линейных алгебраических
уравнений, численное интегрирование дифференциальных уравнений и т. д.
Для решения подобного рода задач имеются стандартные алгоритмы,
представляющие собой определенную последовательность элементарных
операций, которая может быть легко реализована в виде программы для
вычислительной машины. В противоположность этому для широкого класса
интеллектуальных задач, таких, как распознавание образов, игра в шахматы,
доказательство теорем и т. п., напротив это формальное разбиение процесса
поиска решения на отдельные элементарные шаги часто оказывается весьма
затруднительным, даже если само их решение несложно.
Таким образом, мы можем перефразировать определение интеллекта как
универсальный сверхалгоритм, который способен создавать алгоритмы
решения конкретных задач.
Деятельность мозга (обладающего интеллектом), направленную на решение
интеллектуальных
задач,
будем
называть
мышлением,
или
интеллектуальной деятельностью. Интеллект и мышление органически
связаны с решением таких задач, как доказательство теорем, логический
анализ, распознавание ситуаций, планирование поведения, игры и
управление в условиях неопределенности. Характерными чертами
интеллекта, проявляющимися в процессе решения задач, являются
способность к обучению, обобщению, накоплению опыта (знаний и навыков)
и адаптации к изменяющимся условиям в процессе решения задач. Благодаря
этим качествам интеллекта мозг может решать разнообразные задачи, а
также легко перестраиваться с решения одной задачи на другую. Таким
образом, мозг, наделенный интеллектом, является универсальным средством
решения широкого круга задач (в том числе неформализованных) для
которых нет стандартных, заранее известных методов решения.
Примером поведенческой трактовки интеллекта может служить известное
определение А. Тьюринга. Его смысл заключается в следующем. В разных
комнатах находится люди и машина. Они не могут видеть друг друга, но
имеют возможность обмениваться информацией (например, с помощью
электронной почты). Если в процессе диалога между участниками игры
людям не удается установить, что один из участников — машина, то такую
машину можно считать обладающей интеллектом.
Кстати интересен план имитации мышления, предложенный А. Тьюрингом.
"Пытаясь имитировать интеллект взрослого человека, — пишет Тьюринг, —
мы вынуждены много размышлять о том процессе, в результате которого
человеческий мозг достиг своего настоящего состояния… Почему бы нам
вместо того, чтобы пытаться создать программу, имитирующую интеллект
взрослого человека, не попытаться создать программу, которая имитировала
бы интеллект ребенка? Ведь если интеллект ребенка получает
соответствующее воспитание, он становится интеллектом взрослого
человека… Наш расчет состоит в том, что устройство, ему подобное, может
быть легко запрограммировано… Таким образом, мы расчленим нашу
проблему на две части: на задачу построения "программы-ребенка" и задачу
"воспитания" этой программы".
Забегая вперед, можно сказать, что именно этот путь используют
практически все системы искусственного интеллекта. Ведь понятно, что
практически невозможно заложить все знания в достаточно сложную
систему. Кроме того, только на этом пути проявятся перечисленные выше
признаки интеллектуальной деятельности (накопление опыта, адаптация и т.
д.).
Лекция “ Логическое программирование ”
Характерные идеи и методы программирования даже не связанные с
конкретным языком и существующим образом мышления образует так
называемою
модель
или
парадигму
программирования.
Логическое программирование представляет собой нетрадиционную
технологию программирования. Оно основано на идеи описания задачи
совокупных утверждений, в некотором формальном логическом языке и
получение решения задачи построением вывода в формальной дедуктивной
системе.
Пролог - язык пятого поколения, открывающий новое измерение для
программирования. На Прологе, являющимся декларативным языком, можно
писать программы для решения реальных задач. Программист задает
необходимые правила и факты, а Пролог использует дедуктивный вывод для
решения задачи. В языках Бейсик, Паскаль, Алгол и других основным
методом программирования является разбиение задачи на дискретные шаги и
их
последовательное
выполнение.
Последовательность шагов отображается в машинные команды,
выполняемые компьютером. Отменить ранее выполненные команды
невозможно, так как содержимое памяти постоянно обновляется. Языки
такого вида называются алгоритмическими. Пролог же относится к языкам
логического программирования применяемым для создания экспертных
систем.
В области экспертных систем Пролог применяется для моделирования
экспертизы в различных областях, таких как медицина, законодательства и
автоматизация производства. Свое название Пролог получил от слов "Logic”
и “Programming”. Он был принят в качестве базового языка в японской
программе создания ЭВМ пятого поколения, ориентированный на
исследование методов логического программирования и искусственного
интеллекта, а также на разработку нового поколения компьютеров,
специально предназначенных для реализации данных методов. На Прологе
удобно описывать такие структуры данных, как списки и деревья.
Логическая программа требует описания мира задачи, т.е. множества
объектов устроенных определенным образом и отношений определенных на
этих
объектах.
Логическая программа - это множество аксиом и правил задающих
отношения между объектами, вычислением логических программ является
вывод
следствий
из
программы.
Теоретическая основой Prolog является исчисление предикатов.
Существуют
3
вида
основных
конструкций
языка
Prolog.
1.факт
2.правило
3. запрос
Факт используется для констатации того, что выполнено некоторое
отношение
между
объектами.
Отношения в Prolog называются предикатами, объекты - термами.
Переменные в Prolog не рассматриваются как выделенный участок памяти,
она служит для обозначения объекта, на который нельзя сослаться по имени.
Переменную
можно
считать
локальным
именем
объекта.
Запрос - конкретному примеру логического программирования соответствует
понятие запроса(цели). Вычисление ответа на запрос соответствует
доказательству существования объекта делающего цель истинной.
predicates
goal_task.
clauses
goal_task.
Запрос:Goal:gaol_task.
yes
Каждый простой запрос входящий в составной называется подцелью, для
того, чтобы составной запрос оказался истинным необходимо, чтобы каждая
из его подцелей была истинной. Конъюнктивные вопросы представляют
собой интерес в тех случаях, когда имеются одна или более общие
переменные
входящую
в
каждую
из
подцелей.
Domains
фамилия=string
улица=string
дом=string
квартира=string
номер_участка=integer
predicates
пациент(фамилия,улица,дом,квартира,номер_участка)
clauses
пациент("Иванов", "Рабиновича", "25", 178, 4)
(диапазон-значений)
Goal:пациент(X,_,_,_,4).
Goal:пациент(X,_,_,_,N),N>=4.
Goal: пациент(X, Y, Z, _, _), пациент(K, Y, Z, _, _), X<>K.
Получить запрос (цель для доказательства) механизм логического вывода
может найти все объекты, который на основе информации в базе знаний
(совокупность фактов и правил) обладает указанными характеристиками. Эти
объекты предъявляются в виде термов и списков, которые при подстановке
вместо переменных запроса преобразуют это выражение в логическое
следствие утверждений базы знаний.
Правило - это факт, значение истинности, которое зависит от истинности
значений
условий
образующих
тело
правила.
Заголовок правила имеет такую же структуру как и факт. Каждое условие,
входящее в тело называется подцелью. Заголовок правила является
истинным тогда, когда истинна каждая подцель, входящая в тело правила.
Лекция “ Экспертные системы как класс ИИС”
Для очень краткого обзора рассмотрим примеры крупномасштабных
экспертных систем.
MICIN — экспертная система для медицинской диагностики. Разработана
группой по инфекционным заболеваниям Стенфордского университета.
Ставит соответствующий диагноз, исходя из представленных ей симптомов,
и рекомендует курс медикаментозного лечения любой из диагностированных
инфекций. База данных состоит из 450 правил.
PUFF — анализ нарушения дыхания. Данная система представляет собой
MICIN, из которой удалили данные по инфекциям и вставили данные о
легочных заболеваниях.
DENDRAL — распознавание химических структур. Данная система
старейшая, из имеющих звание экспертных. Первые версии данной системы
появились еще в 1965 году во все том же Стенфордском университете.
Пользователь дает системе DENDRAL некоторую информацию о веществе, а
также данные спектрометрии (инфракрасной, ядерного магнитного резонанса
и масс-спектрометрии), и та в свою очередь выдает диагноз в виде
соответствующей химической структуры.
PROSPECTOR — экспертная система, созданная для содействия поиску
коммерчески оправданных месторождений полезных ископаемых.
….
Лекция “Искусственные нейронные сети”
В этой лекции я расскажу об исследованиях в области нейронных сетей. Эта
область теоретических исследований чрезвычайно интересна, активно
развивается, здесь есть множество различных подходов, концепций и
моделей. Наиболее значимые теоретические направления и модели принято
называть нейросетевыми парадигмами.Большинство моделей основывается
на схеме формального нейрона У.С.Мак-Каллока и У.Питтса (1943 год),
согласно которой нейрон представляет собой пороговый элемент (Рис.1). На
входах нейрона имеются возбуждающие и тормозящие синапсы, в нейроне
определяется взвешенная сумма (с учетом весов синапсов) входных
сигналов, при превышении этой суммой порога нейрона вырабатывается
выходной сигнал.
Рис. 1. Схема формального нейрона. Xi – входные сигналы, Y – выходной
сигнал нейрона.
Активационная функция характеризует реакцию нейрона на входное
воздействие, она может быть пороговой:
или некоторой непрерывной, например, линейной:
F(a) = ka
или логистической:
F(a) = 1/[1+exp(-a)] .
В зависимости от реализуемого алгоритма на допустимые значения входов и
выходов нейрона накладываются определенные ограничения: значения Xi и Yj
могут бинарными (т.е. равными 0 или 1), бинарными биполярными (+1 или 1), принадлежащими интервалу (0,1), неотрицательными или
действительными. Аналогичные ограничения накладываются на веса
синапсов нейронов wij .
Отметим, что в основополагающей работе Мак-Каллока и Питтса входы и
выходы нейронов предполагались бинарными, веса синапсов считались
бинарными биполярными, а активационная функция – пороговой.
Исследования нейросетей в проводились с точки зрения анализа логических
исчислений, которые могут быть построены на базе формальных нейронов. В
частности было показано, что "для всякого логического выражения,
удовлетворяющего некоторым условиям, можно найти сеть, имеющую
описываемое этим выражением поведение"
Формальные нейроны до определенной степени отражают динамику
передачи сигналов в реальных биологических нейронах. Живые нейроны
состоят тела клетки, дендритов и аксона. Очень упрощая картину, работу
нейрона можно описать следующим образом. Дендриты получают сигналы
от других клеток через синапсы, эти сигналы поступают в тело клетки, где
они суммируются с другими такими же сигналами. Если суммарный сигнал в
течение короткого промежутка времени является достаточно большим, то
клетка возбуждается, вырабатывая в аксоне импульс, который передается на
следующие клетки. Не вдаваясь в подробности, подчеркнем, что формальные
нейроны только очень грубо отражают работу биологических живых
нервных клеток.
Лекция “ Обучение и применение нейронных сетей ”
Одной из наиболее изученных типов искусственных нейронных сетей
являются сети Хопфилда. Они широко применяются для моделирования
некоторых функций интеллекта, таких как ассоциативная
память.Ассоциативность памяти нейронной сети Хопфилда не является
единственным ее достоинством, которое используется на практике. Другим
важным свойством этой архитектуры является уменьшение ее функции
Ляпунова в процессе нейродинамики. Следовательно, нейросеть Хопфилда
можно рассматривать, как алгоритм оптимизации целевой функции в форме
энергии сети.
Класс целевых функций, которые могут быть минимизированы нейронной
сетью достаточно широк: в него попадают все билинейные и квадратичные
формы с симметричными матрицами. С другой стороны, весьма широкий
круг математических задач может быть сформулирован на языке задач
оптимизации. Сюда относятся такие традиционные задачи, как
дифференциальные уравнения в вариационной постановке; задачи линейной
алгебры и системы нелинейных алгебраических уравнений, где решение
ищется в форме минимизации невязки, и другие.
Исследования возможности использования нейронных сетей для решения
таких задач сегодня сформировали новую научную дисциплину нейроматематику.
Применение нейронных сетей для решения традиционных математических
задач выглядит весьма привлекательным, так нейропроцессоры являются
системами с предельно высоким уровнем параллельности при обработке
информации. В нашей книге мы рассмотрим использование нейрооптимизаторов для несколько иных задач, а именно, задач комбинаторной
оптимизации.
Многие задачи оптимального размещения и планирования ресурсов, выбора
маршрутов, задачи САПР и иные, при внешней кажущейся простоте
постановки имеют решения, которые можно получить только полным
перебором вариантов. Часто число вариантов быстро возрастает с числом
структурных элементов N в задаче (например, как N! - факториал N), и поиск
точного решения для практически полезных значений N становится
заведомо неприемлимо дорогим. Такие задачи называют неполиномиально
сложными или NP-полными. Если удается сформулировать такую задачу в
терминах оптимизации функции Ляпунова, то нейронная сеть дает весьма
мощный инструмент поиска приближенного решения.
Лекция “Нечеткая логика “
В последнее время нечеткая технология завоевывает все больше сторонников
среди разработчиков систем управления. Взяв старт в 1965 году из работ
профессора Лотфи Заде, за прошедшее время нечеткая логика прошла путь от
почти антинаучной теории, практически отвергнутой в Европе и США, до
банальной ситуации конца девяностых годов, когда в Японии в широком
ассортименте появились «нечеткие» бритвы, пылесосы, фотокамеры. Сам
термин «fuzzy» так прочно вошел в жизнь, что на многих языках он даже не
переводится. В России в качестве примера можно вспомнить рекламу
стиральных машин и микроволновых печей фирмы Samsung, обладающих
искусственным интеллектом на основе нечеткой логики. Тем не менее, столь
масштабный скачок в развитии нечетких систем управления не случаен.
Простота и дешевизна их разработки заставляет проектировщиков все чаще
прибегать к этой технологии. После поистине взрывного старта прикладных
нечетких систем в Японии многие разработчики США и Европы наконец-то
обратили внимание на эту технологию. Но время было упущено, и мировым
лидером в области нечетких систем стала Страна восходящего солнца, где к
концу 1980-х годов был налажен выпуск специализированных нечетких
контроллеров, выполненных по технологии СБИС . В такой ситуации
корпорация Intel, имея большое количество разнообразных контроллеров от
MCS-51 до MCS-96, которые на протяжении многих лет успешно
использовались во многих приложениях, решила создать средство разработки
приложений на базе этих контроллеров, но с использованием технологии
нечеткости.
Это
позволило
избежать
значительных
затрат
на
конструирование собственных нечетких контроллеров, а система от Intel,
получившая название fuzzy TECH, завоевала огромную популярность в мире.
Нечеткая логика основана на использовании таких оборотов естественного
языка,
как
«далеко»,
«близко»,
«холодно»,
«горячо».
Диапазон
ее
применения очень широк - от бытовых приборов до управления сложными
промышленными процессами. Многие современные задачи управления
просто не могут быть решены классическими методами из-за очень большой
сложности математических моделей, их описывающих. Вместе с тем, чтобы
использовать теорию нечеткости на цифровых компьютерах, необходимы
математические преобразования, позволяющие перейти от лингвистических
переменных к их числовым аналогам в ЭВМ.
Лекция
“Нечеткий
вывод“
Вернемся к теории и кратко рассмотрим такие понятия, как «нечеткие
правила»,
«нечеткий
вывод»
да
и
сам
термин
«нечеткое
управление». Классическая логика развивается с древнейших времен. Ее
основоположником считается Аристотель. Логика известна нам как строгая и
сугубо теоретическая наука, и большинство ученых (кроме разработчиков
последнего поколения компьютеров) продолжают придерживаться этого
мнения. Вместе с тем классическая или булева логика имеет один
существенный
недостаток
-
с
ее
помощью
невозможно
описать
ассоциативное мышление человека. Классическая логика оперирует только
двумя понятиями: ИСТИНА и ЛОЖЬ, и исключая любые промежуточные
значения. Аналогично этому булева логика не признает ничего кроме единиц
и нулей. Все это хорошо для вычислительных машин, но попробуйте
представить весь окружающий вас мир только в черном и белом цвете,
вдобавок исключив из языка любые ответы на вопросы, кроме ДА и НЕТ. В
такой ситуации вам можно только посочувствовать. Решить эту проблему и
призвана нечеткая логика. С термином «лингвистическая переменная» можно
связать любую физическую величину, для которой нужно иметь больше
значений, чем только ДА и НЕТ. В этом случае вы определяете необходимое
число термов и каждому из них ставите в соответствие некоторое значение
описываемой
физической
величины.
Для
этого
значения
степень
принадлежности физической величины к терму будет равна единице, а для
всех остальных значений - в зависимости от выбранной функции
принадлежности. Например, можно ввести переменную ВОЗРАСТ и
определить для нее термы ЮНОШЕСКИЙ, СРЕДНИЙ и ПРЕКЛОННЫЙ.
Обсудив с экспертами значения конкретного возраста для каждого терма, вы
с полной уверенностью можете избавиться от жестких ограничений логики
Аристотеля.
Получившие наибольшее развитие из всех разработок искусственного
интеллекта, экспертные системы завоевали устойчивое признание в качестве
систем поддержки принятия решений. Подобные системы способны
аккумулировать знания, полученные человеком в различных областях
деятельности. Посредством экспертных систем удается решить многие
современные задачи, в том числе и задачи управления. Однако большинство
систем
все
еще
сильно
зависит
от
классической
логики.
Одним из основных методов представления знаний в экспертных системах
являются продукционные правила, позволяющие приблизиться к стилю
мышления человека. Любое правило продукций состоит из посылок и
заключения. Возможно наличие нескольких посылок в правиле, в этом
случае они объединяются посредством логических связок И, ИЛИ. Обычно
продукционное правило записывается в виде: «ЕСЛИ (посылка) (связка)
(посылка)…
(посылка)
ТО
(заключение)».
Главным же недостатком продукционных систем остается то, что для их
функционирования требуется наличие полной информации о системе.
Нечеткие системы тоже основаны на правилах продукционного типа, однако
в качестве посылки и заключения в правиле используются лингвистические
переменные, что позволяет избежать ограничений, присущих классическим
продукционным
правилам.
Целевая установка процесса управления связывается с выходной переменной
нечеткой системы управления, но результат нечеткого логического вывода
является нечетким, а физическое исполнительное устройство не способно
воспринять такую команду. Необходимы специальные математические
методы, позволяющие переходить от нечетких значений величин к вполне
определенным. В целом весь процесс нечеткого управления можно разбить
на несколько шагов: фаззификация, разработка нечетких правил и
дефаззификация.
Лекция “Генетические алгоритмы”
Генетический алгоритм - это простая модель эволюции в природе,
реализованная в виде компьютерной программы. В нем используются как
аналог механизма генетического наследования, так и аналог естественного
отбора. При этом сохраняется биологическая терминология в упрощенном
виде.
Вот как моделируется генетическое наследование
Хромосома
Вектор (последовательность) из нулей и единиц.
Каждая позиция (бит) называется геном.
Индивидуум
=
Набор хромосом = вариант решения задачи.
генетический
код
Кроссовер
Операция,
при
которой
две
обмениваются своими частями.
хромосомы
Мутация
Cлучайное изменение
позиций в хромосоме.
нескольких
Чтобы
случайную
хромосом
эволюцию
одной
или
смоделировать эволюционный процесс, сгенерируем вначале
популяцию - несколько индивидуумов со случайным набором
(числовых векторов). Генетический алгоритм имитирует
этой популяции как циклический процесс скрещивания
индивидуумов
и
смены
поколений.
Название "генетические алгоритмы" связано с тем, что они воспроизводят
современные представления о естественном отборе: скрещивание генотипов определение удачности порожденных фенотипов - отсев неудачников из
набора
партнеров
для
следующего
скрещивания.
Скрещивание является наиболее критичным этапом генетического
алгоритма. Оно существенно зависит от того, можно ли установить степень
удачности не только варианта в целом, но и его отдельных частей - "генов" (в
нашем случае – отдельных параметров модели ).
Генетические алгоритмы осуществляют стохастический поиск оптимума
сразу несколькими вариантами комбинаций параметров. Процесс поиска
включает три основных этапа, повторяемых в цикле:



эволюция - сдвиг варианта в направлении ожидаемого оптимума с
использованием, вообще говоря, как производных критерия по
пааметрам, так и стохастических "скачков";
отсеивание "неудачливых" вариантов;
скрещивание "удачливых" вариантов: порождение вариантов "потомков", сочетающих удачные значения параметров "родителей".
Для того чтобы понять, почему генетические алгоритмы работают,
задумаемся над понятием пространства поиска. Пространство поиска - это
множество возможных решений задачи. Например, это может быть
множество всех возможных расстановок фигур на шахматной доске. Если мы
нарисуем график приспособленности решений для простой задачи, мы
можем получить как простое и предсказуемое (рис. 7a), так и более сложное
(рис. 7b) пространство поиска. И в том, и в другом случае пространство
поиска одномерно. Хромосома представляет одно число, которое и
описывает решение (например, это может быть температура, при которой
лучше всего растут помидоры). Размерность пространства поиска для более
сложных задач может достигать нескольких сотен; в этом случае рисовать
какие-либо графики невозможно, а программы поиска становятся крайне
сложными.
Рассмотрим один из простых методов поиска - метод восхождения. Он
работает так: сначала генерируется случайное решение (например, маршрут в
ЗКВ), затем в него вносится "единичное" возмущение (например, меняется
местами пара городов), и возмущенное решение сравнивают с исходным.
Если новый маршрут короче, он сохраняется, а старый отбрасывается. Если
новый маршрут длиннее старого, то сохраняется старый. Затем процесс
повторяется с сохраненным решением, но уже с другим единичным
возмущением, и так далее. Если в течение, скажем, тысячи итераций решение
не улучшается, оно объявляется оптимальным, и процесс останавливается.
Лекция «Применение методов и моделей ИИС в научных исследованиях и
экономике.»
Направления искусственного интеллекта. Восприятие и распознавание
образов,
математика и автоматическое доказательство теорем, игры, экспертные
системы, понимание естественного языка, управление динамическими
объектами, получение новых знаний. Перечислим некоторые практические
результаты применения ИИС. Доказательство небольшого числа терем,
построение игровых программ в шахматах уровня чемпиона мира, создание
экспертных систем , помогающих в диагностике и химии, медицинская
диагностика в кардиологии и онкологии, решение задачи обработки и
распознавания сигналов любого типа, решение задач комбинаторной
оптимизации, создание вычислительной техники нового поколения,
нейропроцессора, прогнозирование , диагностика надежности технических
систем, управление динамическими объектами, такими как бытовая техника,
железнодорожный транспорт, зеркала мощных телескопов и двигательная
установка гиперзвукового самолёта.
Контрольные вопросы к зачету по дисциплине
«Интеллектуальные информационные системы»
1.Классификация задач и алгоритмов.
2. Неполиномиальные алгоритмы.
3. Примеры задач, для которых применяется искусственный интеллект.
4. Представление знаний в форме логической и продукционной модели.
5. Вывод на предикатах с помощью алгоритма резолюции.
6.Модели знаний.
7.Языки логического программирования.
8.Элементы языка Пролог.
9.Синтаксис языка Пролог.
11.Запись правил и фактов в языках логического программирование.
12.Понятие базы знаний.
13.Внутренне представление знаний.
14. Назначение и теоретическая база Пролога.
15.Проблемы и достижения логического программирования.
16.Экспертные системы.
17.Структура экспертной системы.
18. Внутренне представление знаний.
19. Продукционная модель.
20.Управление правилами.
21.Алгоритм разработки экспертной системы.
22.Опыт применения экспертных систем в различных областях.
23. Перцептрон. Основные определения.
24. Задача распознавания образов.
25.Обучение перцептрона.
26.Методы обучения с учителем.
27.Система обучения с коррекцией ошибок.
28.Свойства систем обучения перцептрона.
29.Искусственная нейронная сеть.
30. Биологический прототип нейронной сети.
31.Классификация ИНС.
32.Обучение ИНС с учителем.
33.Алгоритмы обучения.
34.Место ИНС в теории искусственного интеллекта.
35. Применение ИНС в экономике.
36.Применение ИНС в технике и медицине.
37.Основные понятия нечёткой логики.
38.Функция принадлежностей.
39.Нечеткая переменная.
40.Основы нечеткой алгебры.
41.Нечеткие отношения.
42.Нечеткий вывод.
43.Нечёткие высказывания.
44.Процедуры фазификации.
45.Процедуры дефазификации.
46.Применение нечёткой логики в управлении динамическим объектом.
47.Применения нечёткой логики в различных областях.
48. Генетические алгоритмы.
49. Место ГА в теории искусственного интеллекта.
50. Применение генетических алгоритмов.
Download