Федеральное агентство по образованию Владивостокский государственный университет экономики и сервиса ИНТЕЛЛЕКТУАЛЬНЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ Учебная программа дисциплины по специальности 23020165 Информационные системы и технологии Владивосток Издательство ВГУЭС 2014 ББК 32.97 Учебная программа по дисциплине «Интеллектуальные информационные системы» разработана в соответствии с требованиями ГОС ВПО. Учебная программа предназначена для студентов специальности 23020165 «Информационные системы и технологии». Составитель: Назаров Д.А., доцент, кафедра Информационных систем и компьютерных технологий. Утверждена на заседании кафедры Информационных систем и прикладной информатики от 19.03.14 г., протокол № 9. Утверждена на заседании Ученого совета института ИИБС от 29.04.14 г., протокол № 7. © Издательство Владивостокского государственного университета экономики и сервиса, 2014 Введение Дисциплина «Интеллектуальные информационные системы» (ИИС) рассматривает методы построения информационных систем, ориентированных на решение слабо формализованных или неформализованных задач. Часто такие задачи, лежащие в различных сферах творческой деятельности человека, называют интеллектуальными, т.к. их решение требует подходы, имитирующие различные функции интеллекта человека. В рассматриваемом курсе особое внимание уделяется вопросам разработки экспертных систем, как наиболее значительный результат развития искусственного интеллекта применительно к информационным системам. Кроме экспертных систем в дисциплине рассматриваются математические и алгоритмические основы интеллектуальных информационных систем: нечёткая информация и выводы; нейронные сети; модели представления знаний на основе систем продукций, семантических сетей и фреймов; выводы на знаниях; программирование задач на изученных язвыах программирования, а также в системе Турбо-Пролог и построение экспертных систем в среде FuzzyCLIPS. Изучение дисциплины «Интеллектуальные информационные системы» требует знаний, полученных при изучении таких дисциплин, как «Программирование», «Информатика», а также курса высшей математики и математической логики. Данная программа составлена в соответствии с требованиями ГОС ВПО. Учебная программа предназначена для студентов специальности 230201.65 «Информационные системы и технологии». 1. Организационно-методические указания 1.1 Цели и задачи изучения дисциплины Целью изучения дисциплины «Интеллектуальные информационные системы» является подготовка студентов в области теоретических основ и принципов устройства систем с искусственным интеллектом, введение в проблематику неформализованных задач и методы их решения, а также приобретение ими практических навыков в построении информационных систем с искусственным интеллектом. Основные задачи изучения дисциплины: - формирование у студентов знаний об основах искусственного интеллекта, истории и предпосылках развития этой области научных знаний; - ознакомление с принципами представления знаний: семантические сети, фреймы, логический вывод и продукции; - изучения принципов устройства и функционирования искусственных нейронных сетей, экспертных систем; - ознакомление с проблемой распознавания образов и основными алгоритмами решения задач в области данной проблемы; получение студентами практических навыков решения задач в области искусственного интеллекта: программирование задач на известных языках программирования, в системе ТурбоПролог, построение экспертных систем в среде FuzzyCLIPS. 1.2 Перечень компетенций, приобретаемых при изучении дисциплины В результате изучения дисциплины формируются следующие профессиональные компетенции: - умение решать задачи с нечёткой исходной информацией; - умение решать задачи с использованием искусственных нейронных сетей, умение самостоятельно запрограммировать алгоритмы обучения искусственной нейронной сети; - умение строить системы логического вывода; - навыки проектирования экспертных систем; В результате теоретического изучения дисциплины студент должен знать: - основные понятия в области искусственного интеллекта, область применения систем с искусственным интеллектом; - способы представления знаний посредством систем продукций, семантических сетей и фреймов; - принципы функционирования искусственных нейронных сетей, систем логического вывода и экспертных систем, а также их архитектуру и основные алгоритмы; В результате практического освоения курса студент должен уметь: - создать базу знаний в заданной предметной области; - решать поставленные задачи в условиях нечёткой исходной информации; - построить экспертную и интеллектуальную диагностическую систему; - организовать поисковую интеллектуальную информационную систему 1.3 Основные виды занятий и особенности их проведения Дисциплина «Интеллектуальные информационные системы» изучается студентами очной формы обучения и предназначена для студентов специальности 230201.65 «Информационные системы и технологии». Для студентов очной формы обучения количество аудиторных часов – 68 из них: лекций – 34 часа, лабораторных работ – 34 часа. На самостоятельную работу отводится 44 часа. 1.3.1 Аудиторная и самостоятельная работа студентов Лекционная часть изучения материала по дисциплине сводится к изложению основных понятий и представлений, разбору особых теоретических моментов, требующих более детального рассмотрения, а также изучение теории на простых примерах, доступных для более лёгкого понимания сути рассматриваемой теории. Самостоятельная работа студентов при изучении дисциплины заключается в более детальном и углублённом изучении теоретических основ, полученных на лекционных занятиях. В частности, углублённое самостоятельное изучение материала может потребоваться для решения лабораторных заданий. Практические (лабораторные) занятия проводятся в компьютерном классе, в котором должно быть установлено необходимое программное обеспечение (п.1.5). Для успешного выполнения практического задания студент должен изучить соответствующую заданию теоретическую часть курса, а также ознакомиться с рекомендованной литературой. По каждому выполненному заданию студент должен представить отчёт в электронной форме. 1.4. Виды контроля знаний студентов и их отчетности В ходе изучения дисциплины предусматриваются следующие виды контроля знаний студентов: текущая и промежуточная аттестация. Текущая аттестация предназначена для контроля знаний студентов в середине семестра и включает: - защиту отчетов по выполняемым лабораторным работам; - оценку знаний и умений студентов при проведении консультаций по лекционным и лабораторным занятиям; - оценку степени завершенности курсовой работы. Текущая аттестация проводится в форме защит лабораторных, курсовых работ и является фактическим допуском к экзамену в соответствии с Положением о рейтинговой системе оценки успеваемости студентов во Владивостокском государственном университете экономики и сервиса. Аттестация может быть проведена (в виде исключения) в форме письменного опроса по разделам дисциплины, изученных студентом в семестре, при этом для выставления оценки учитывается количество выполненных и защищенных лабораторных работ за отчетный период, активность студентов на консультациях. Тестирование допускается только для обнаружения пробелов в теоретических знаниях и с предоставлением полного доступа к результатам тестирования (с указанием неверных ответов) преподавателю и студентам. Результаты текущей и промежуточной аттестаций заносятся в ведомость установленной формы (возможно в цифровой форме). Промежуточная аттестация – экзамен.. Условием допуска студента к экзамену является успешное прохождение двух текущих аттестаций в соответствии с требованиями Положения о рейтинговой системе оценки успеваемости студентов во ВГУЭС. Кроме того, студент должен выполнить и защитить не менее 60% всех лабораторных работ. Итоговая оценка формируется на основе результатов текущих и промежуточной аттестаций. 1.5 Техническое и программное обеспечение дисциплины 1. При изучении дисциплины на лекционных занятиях используется презентационное оборудование. Практические (лабораторные) занятия проводятся в компьютерном классе с установленным программным обеспечением: - среда программирования на языке Пролог (Prolog), соответствующего стандарту ISO/IEC JTC1/SC22/WG17; - среда программирования на языке Си/Си++ (C/C++); - система FuzzyCLIPS для работы с нечёткими данными; 2. Содержание дисциплины 2.1 Перечень тем лекционных занятий Тема 1. Задачи искусственного интеллекта (ИИ) и терминология. Основные понятия ИИ; информационные системы, имитирующие творческие процессы; основные направления развития теории ИИ; представления об интеллекте; философские проблемы в области ИИ; проблема безопасности ИИ; история развития систем ИИ (СИИ); области применения ИИ; Тема 2. Архитектура и составные части СИИ. Данные и знания; предметная область; подходы к построению СИИ; логический подход к построению СИИ; структурный подход к построению СИИ; эволюционный подход к построению СИИ; имитационный подход к построению СИИ; Тема 3. Методы представления знаний. Информационные модели знаний; продукционные правила; механизм логического вывода; представление знаний фреймами; фреймовые модели; состав фрейма: атрибут, значение, слот; наследование свойств фреймов; семантические сети; лингвистические, логические, теоретико-множественные и квантификационные семантические отношения; методы представления знаний в базах данных информационных систем; Тема 4. Применение нечётких множеств при проектировании информационных систем. Нечёткая логика; лингвистическая и нечёткая переменные; нечёткая импликация; нечёткий вывод на примере диагностической системы; Тема 5. Системы распознавания образов. Понятие образа; проблема обучения распознавания образов (ОРО); геометрический и структурный подходы к проблеме распознавания образов; гипотеза компактности; обучение и самообучение; адаптация и обучение; Тема 6. Разделение образов. Разделяющая функция; метод потенциальных функций; метод группового учёта аргументов (МГУА); метод предельных упрощений (МПУ); коллективы решающих правил; Тема 7. Анализ структуры многомерных данных. Кластерный анализ; выбор метрики; методы определения расстояния между группами; расстояние ближайшего объекта; расстояние между дальними объектами; расстояние между центрами тяжести; иерархическое группирование; Тема 8. Перцептрон. Структура перцептрона; элементарный альфа-перцептрон; обучение перцептрона; правило Хебба; дельта-правило; Тема 9. Нейронные сети (НС). История исследований в области искусственных нейронных сетей (ИНС); области применения и задачи, решаемые с помощью ИНС; модели нейронов; активационная функция нейрона; адаптивный линейный нейрон (адалайн), мадалайн; Тема 10. Нейронная сеть с обратным распространением ошибки. Многослойная структура НС; полносвязная НС; минимизация целевой функции ошибки НС; Тема 11. Самообучение нейронной сети. Сигнальный метод Хебба; алгоритм Кохонена обучения без учителя; задачи восстановления образа по частичной информации; нейронные сети с обратной связью; нейронная сеть Хопфилда; нейронная сеть Хэмминга; Тема 12. Логический подход к построению СИИ. Неформальные процедуры; продукционные модели; язык логики высказываний: алфавит, синтаксис, семантика; логические связки (дизъюнкция, конъюнкция, импликация, эквивалентность, отрицание); математическая индукция; предикаты первого порядка; логика предикатов; программирование в системе Пролог (Prolog); Тема 13. Экспертные системы (ЭС). Базовые понятия теории экспертных систем; этапы разработки ЭС; этап идентификации; этап концептуализации; этап формализации; этап выполнения; этап тестирования; опытная эксплуатация; пример построения ЭС; Тема 14. Этап концептуализации при проектировании ЭС. Построение модели предметной области; признаковый и атрибутивный подходы; структурный подход; метод локального представления; метод коэффициента использования; метод перечня понятий; ролевой метод; текстологический метод; эффект свободных ассоциаций; Тема 15. Поисковые алгоритмы. Эвристические методы поиска решений; эволюционные методы поиска; генетические алгоритмы; машинная эволюция; репродукция: селекция; кроссовер; мутация; инверсия; приспособленность особи; генетическое программирование; 2.2 Перечень тем лабораторных занятий Тема 1. Операции на нечётких числах. Сумма, разность. Умножение и деление в R+ и R. Тема 2. Основы логического вывода. Программирование правил логического вывода на основе базы правил. Тема 3. Расстояние Хэмминга. Вычисление расстояния Хэмминга между объектами в пространстве признаков. Тема 4. Моделирование перцептрона. Программирование структуры перцептрона. Обучение перцептрона. Тема 5. Обучение нейронной сети. Программирование структуры двухслойной нейронной сети. Реализация алгоритма обучения методом обратного распространения ошибки. Тема 6. Создание базы знаний на языке Пролог (Prolog). Создание правил логического вывода на языке Пролог. Тема 7. Эвристический поиск. Построение дерева поиска на примере игры в «крестики-нолики». Тема 8. Эволюционные методы поиска. Выбор параметров генетического алгоритма. Реализация эволюционного поиска глобального экстремума с построением функции приспособленности при различных начальных условиях поиска. 3. Методические рекомендации по изучению дисциплины 3.1 Перечень и тематика самостоятельных работ студентов по дисциплине В рамках общего объёма часов, отведённых для изучения дисциплины, предусматривается выполнение следующих видов самостоятельных работ студентов (СРС): контрольные работы, самостоятельное изучение материала с самоконтролем по приведённым в п. 3.3 вопросам, изучение материала при подготовке к выполнению и защите лабораторных работ, итоговое повторение изученного материала. На самостоятельное изучение выносится часть материала по всем темам дисциплины с самоконтролем по указанным в п. 3.4 контрольным вопросам и возможностью консультации у ведущего преподавателя общим объёмом 44 часа СРС. Перечень тем самостоятельных работ: Тема 1. Основные понятия о способах представления знаний. Тема 2. Основные алгоритмы с использованием фреймов и семантических сетей. Тема 3. Операции с нечёткими числами, алгоритмы с нечёткими данными. Тема 4. Алгоритмы распознавания образов методом потенциальных функций. Тема 5. Алгоритмы обучения перцептрона и распознавания образов с помощью перцептрона. Тема 6. Алгоритмы обучения многослойной НС. Тема 7. Алгоритмы логического вывода. Тема 8. Генетические алгоритмы. 3.2 Рекомендации по самостоятельной работе Для успешного выполнения лабораторных и контрольных работ, а также для усвоения материала последующих лекционных занятий, студент должен предварительно ознакомиться с соответствующей текущей теоретической частью материала дисциплины, освоить предложенные темы самостоятельных работ, соответствующих текущей теме лекционных и лабораторных занятий и получить необходимые знания из рекомендованных в разделе 4 литературных источников. Для защиты лабораторной работы студент должен знать соответствующий теоретический материал и показать приобретённые практические навыки. 3.3 Рекомендации по работе с литературой Для изучения теоретического материала по дисциплине в наиболее современном изложении, а также с учётом современных проблем и задач в науке и обществе можно использовать источники, указанные в списке основных [1-4]. Также для изучения большинства тем дисциплины рекомендуются учебники [5, 10]. Порядок перечисления ссылок на источники в списке дополнительной литературы примерно совпадает с порядком следования тем лекционных занятий. 3. Контрольные вопросы для самостоятельной оценки качества освоения дисциплины 1. Как обычно трактуется термин «искусственный интеллект»? 2. Какие задачи решаются методами теории «искусственного интеллекта»? 3. Как соотносятся понятия «данные» и «знания»? 4. Какие существуют методы выявления наличия интеллекта у систем? 5. В чём суть теста А.Тьюринга? 6. Какие основные философские проблемы в области ИИ? В чём состоит основная философская проблема? 7. В чём заключается проблема безопасности ИИ? Каковы три закона робототехники Айзека Азимова? 8. Какие существуют основные направления в моделировании ИИ? 9. Кто и когда разработал перцептрон? Какие функции были у этого перцептрона? 10. Какие наиболее известные крупномасштабные экспертные системы? 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. Какие основные понятия теории генетических алгоритмов? 4. Список литературы 4.1 Основная литература 1. Ясницкий Л.Н. Введение в искусственный интеллект: Учеб. Пособие для студ. высш. учеб. Заведений / Леонид Нахимович Ясницкий. - М.: Издательский центр «Академия», 2005. - 176 с. 2. Башмаков А.И., Башмаков И.А. Интеллектуальные информационные технологии: учеб. пособие. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2005. - 304 с. 3. Боженюк А.В. Интеллектуальные интернет-технологии: учебник для студентов вузов. – Ростов н/Д: Феникс, 2009. 381 с. 4. Евменов В.П. Интеллектуальные системы управления. – М.: ЛИБРОКОМ, 2009. - 304 с. 5. Романов В.П. Интеллектуальные информационные системы в экономике: учеб. пособие для студ. вузов / В.П.Романов; Российская Экономическая Академия Им. Г.В. Плеханова; Под Ред Н.П. Тихомирова.- 2-е изд., стер. - М.: Экзамен, 2007. - 496 с. 6. Гладков Л.А. Генетические алгоритмы: учеб. пособие/Л.А. Гладков, В.В. Курейчик, В.М. Курейчик; под ред. В.М. Курейчика. - изд. 2-е, испр. и доп. - М.: Физматлит, 2006. 319 с. 4.2 Дополнительная литература 7. Змитрович А.И. Интеллектуальные информационные системы. - Минск: НТООО «ТетраСистемс», 1997. - 368 с. 8. Представление и использование знаний / под ред. Уэно Т., Исидзука М. - М.: Мир, 1989. - 230 с. 9. Кофман А. Введение в теорию нечетких множеств. - М.: Радио и связь, 1982 — 432 с. 10. Нечеткие множества в моделях управления искусственного интеллекта / под ред. Д.А. Поспелова. - М.: Наука, 1986. 312 с. 11. Лорьер Ж.-Л. Системы искусственного интеллекта. - М.: Мир, 1991. - 586 с. 12. Любарский Ю.Я. Интеллектуальные информационные системы. - М.: Наука, 1990. - 227 с. 13. Уосерман Ф. Нейрокомпьютерная техника. Теория и практика. - М.: Мир, 1992. - 237 с. 14. Розенблатт Ф. Принципы нейродинамики (перцептрон и теория механизмов мозга). - М.: Мир, 1965. 15. Марселус Д.Н. Программирование экспертных систем на Турбо Прологе. - М.: Финансы и статистика, 1994. - 254 с. 16. Братко И. Программирование на языке ПРОЛОГ для искусственного интеллекта. - М.: Мир, 1990. - 560 с. 17. Курейчик В.М., Курейчик В.В. Л.А. Гладков Генетические алгоритмы. - Ростов-на-Дону: РостИздат. 2004. - 400 с.