Интеллектуальные системы_курс лекций. Основное назначение информационных систем в экономике
Скачать 355.11 Kb.
|
Введение Основное назначение информационных систем в экономике – это своевременное представление необходимой информации ЛПР для принятия им адекватных и эффективным решений при управлении процессами, ресурсами, финансовыми транзакциями, персоналом или организацией в целом. Однако в процессе развития информационных технологий, исследования операций и технологий моделирования, а также с возрастанием потребителей информационно – аналитической поддержки самих ЛПР, все больше проявлялась потребность в системах, не только представляющих информацию, но и выполняющих некоторый ее предварительный анализ, способных давать некоторые советы и рекомендации, осуществлять прогнозирование развития ситуаций, отбирать наиболее перспективные альтернативы решений, т.е. поддерживать решения ЛПР, взяв на себя значительную часть рутинных операций, а также функции предварительного анализа и оценок. Информационная система поддержки решений (ИСПР) связывает интеллектуальные ресурсы управленца со способностями и возможностями компьютера для улучшения качества решений. Эти системы предназначены для менеджеров, принимающих управленческие решения в условиях полуструктурированных и слабо определенных задач. Таким образом, дальнейшее развитие ИСПР привело к созданию интеллектуальной информационной СПР. Интеллектуальные информационные технологии (ИИТ) (Intellectual information technology, IIT) — это информационные технологии, помогающие человеку ускорить анализ политической, экономической, социальной и технической ситуации, а также - синтез управленческих решений. Использование ИИТ в реальной практике подразумевает учет специфики проблемной области, которая может характеризоваться следующим набором признаков: качество и оперативность принятия решений; нечеткость целей и институциальных границ; множественность субъектов, участвующих в решении проблемы; хаотичность, флюктуируемость и квантованность поведения среды; множественность взаимовлияющих друг на друга факторов; слабая формализуемость, уникальность, нестереотипность ситуаций; латентность, скрытость, неявность информации; девиантность реализации планов, значимость малых действий; парадоксальность логики решений и др. ИИТ формируются при создании информационных систем и информационных технологий для повышения эффективности управления знаниями, принятия решений в условиях, связанных с возникновением проблемных ситуаций. В этом случае любая жизненная или деловая ситуация описывается в виде некоторой познавательной модели (когнитивной схемы, архетипа, фрейма и пр.), которая впоследствии используется в качестве основания для построения и проведения моделирования, в том числе - компьютерного. Глава I. История развития Интеллектуальных информационных систем История Интеллектуальных информационных систем (ИИС) начинается с середины XX века, что связано с развитием Искусственного интеллекта как нового научного направления, появлением термина «Artificial Intelligence». Предпосылки развития искусственного интеллекта в СССР и России появляются уже в XIX веке, когда Коллежский советник Семён Николаевич Корсаков (1787—1853) ставил задачу усиления возможностей разума посредством разработки научных методов и устройств, перекликающуюся с современной концепцией искусственного интеллекта, как усилителя естественного. В 1832 г. С. Н. Корсаков опубликовал описание пяти изобретённых им механических устройств, так называемых «интеллектуальных машин», для частичной механизации умственной деятельности в задачах поиска, сравнения и классификации. В конструкции своих машин Корсаков впервые в истории информатики применил перфорированные карты, игравшие у него своего рода роль баз знаний, а сами машины по существу являлись предшественниками экспертных систем. «Интеллектуальные машины» позволяли находить решения по заданным условиям, например определять наиболее подходящие лекарства по наблюдаемым у пациента симптомам заболевания. В СССР работы в области искусственного интеллекта начались в 1960-х гг. В Московском университете и Академии наук был выполнен ряд пионерских исследований, возглавленных В. Пушкиным и Д. А. Поспеловым. В 1964 г. была опубликована работа ленинградского логика С. Маслова «Обратный метод установления выводимости в классическом исчислении предикатов», в которой впервые предлагался метод автоматического поиска доказательства теорем в исчислении предикатов. В 1966 г. В. Ф. Турчиным был разработан язык рекурсивных функций Рефал. До 1970-х гг. в СССР все исследования ИИ велись в рамках кибернетики. По мнению Д. А. Поспелова, науки «информатика» и «кибернетика» были в это время смешаны, по причине ряда академических споров. Только в конце 1970-х в СССР начинают говорить о научном направлении «искусственный интеллект» как разделе информатики. При этом родилась и сама информатика, подчинив себе прародительницу «кибернетику». В конце 1970-х создаётся толковый словарь по искусственному интеллекту, трёхтомный справочник по искусственному интеллекту и энциклопедический словарь по информатике, в котором разделы «Кибернетика» и «Искусственный интеллект» входят наряду с другими разделами в состав информатики. История ИИТ начинается с середины 1970-х годов и связывается с совместным практическим применением интеллектуальных информационных систем, систем искусственного интеллекта, систем поддержки решений и информационных систем. История ИИТ связана также с развитием трех научных направлений: компьютерной философии, компьютерной психологии и продвинутой компьютерной науки (Advanced computer science) и дополняется прогрессом в создании: 1. ситуационных центров 2. информационно-аналитических систем 3. инструментариев эволюционных вычислений и генетических алгоритмов 4. систем поддержки общения человека с компьютером на естественном языке 5. когнитивным моделированием 6. систем автоматического тематического рубрицирования документов 7. систем стратегического планирования 8. инструментариев технического и фундаментального анализа финансовых рынков 9. систем менеджмента качества 10. систем управления интеллектуальной собственностью и др. Искусственный интеллект как наука был основан тремя поколениями исследователей. В Табл.1.1. представлены ключевые события в истории ИИ и инженерии знаний, начиная с первой работы У. Маккалока и У. Питса в 1943 г. и до современных тенденций в комбинированных усилиях экспертных систем, нечеткой логики и нейронных вычислений в современных системах, основанных на знаниях, способных осуществлять вычисления при помощи слов. Таблица 1.1. Краткий перечень главных событий в истории ИИ и инженерии знаний
Таким образом,исторически разработки в области ИИ велись в двух основных направлениях: - первое направление связано с попытками разработки интеллектуальных машин путем моделирования их биологического прототипа - человеческого мозга. Сейчас это направление возрождается на основе развития современных аппаратных и программных средств (микрочипы на основе нечеткой логики, распределенные многопроцессорные системы, многоагентные системы, мягкие вычисления, генетические алгоритмы и нейронные сети и т.д.). - второе направление связано с разработками методов, приемов, специализированных устройств и программ для компьютеров, обеспечивающих решение сложных математических и логических задач, позволяющих автоматизировать отдельные интеллектуальные действия человека (системы, основанные на знаниях, экспертные системы, прикладные интеллектуальные системы). Эти два направления как бы определяют программу минимум и программу максимум, между которыми и лежит область сегодняшних исследований и разработок систем ИИ. Работы по разработке программного и аппаратного обеспечения ИИ выделены в отдельную область. Глава II. Интеллектуальные системы и их виды Интеллектуальная система (ИС, intelligent system) — это техническая или программная система, способная решать задачи, традиционно считающиеся творческими, принадлежащие конкретной предметной области, знания о которой хранятся в памяти такой системы. Структура интеллектуальной системы включает три основных блока — базу знаний, решатель и интеллектуальный интерфейс. Со всем процессом разработки интеллектуальных информационных систем в целом и ЭС в частности тесно связана Инженерия знаний. Это методология ЭС, которая охватывает методы добычи, анализа и выражения в правилах знаний экспертов для формирования базы правил. Развитие ЭС создало инженерию знаний – процесс построения интеллектуальных систем. Онапредставляет собой совокупность моделей, методов и технических приемов, нацеленных на создание систем, которые предназначены для решения проблем с использованием знаний. Главными элементами инженерии знаний являются использование операций типа обобщение, генерация гипотез для индуктивных выводов, подготовка новых программ самими компьютерными программами и т.д. Слово engineering в английском означает искусная обработка предметов, изобретение или создание чего-либо. Следовательно, работу по оснащению программ специальными экспертными знаниями из проблемной области, выполняемую человеком, либо компьютером (программой), также можно назвать инженерией знаний. Виды интеллектуальных систем: Расчетно-логическая система К расчетно-логическим системам относят системы, способные решать управленческие и проектные задачи по декларативным описаниям условий. При этом пользователь имеет возможность контролировать в режиме диалога все стадии вычислительного процесса. Данные системы способны автоматически строить математическую модель задачи и автоматически синтезировать вычислительные алгоритмы по формулировке задачи. Эти свойства реализуются благодаря наличию базы знаний в виде функциональной семантической сети и компонентов дедуктивного вывода и планирования Рефлекторная интеллектуальная система Рефлекторная система - это система, которая формирует вырабатываемые специальными алгоритмами ответные реакции на различные комбинации входных воздействий. Алгоритм обеспечивает выбор наиболее вероятной реакции интеллектуальной системы на множество входных воздействий, при известных вероятностях выбора реакции на каждое входное воздействие, а также на некоторые комбинации входных воздействий. Данная задача подобна той, которую реализуют перцептроны. Перцептро́н, или персептрон (perceptron) — математическая и компьютерная модель восприятия информации мозгом (кибернетическая модель мозга), предложенная Фрэнком Розенблаттом в 1957 г. и реализованная в виде электронной машины «Марк-1» в 1960 г. Перцептрон стал одной из первых моделей нейросетей, а «Марк-1» — первым в мире нейрокомпьютером. Несмотря на свою простоту, перцептрон способен обучаться и решать довольно сложные задачи. Рефлекторные программные системы применяются к следующим задачам: естественно-языковой доступ к базам данных; оценки инвестиционных предложений; оценки и прогнозирования влияния вредных веществ на здоровье населения; прогнозирования результатов спортивных игр. Интеллектуальная информационная система Интеллектуальная информационная система (ИИС, intelligent system) — система, основанная на знаниях. Гибридная интеллектуальная система Под гибридной интеллектуальной системой принято понимать систему, в которой для решения задачи используется более одного метода имитации интеллектуальной деятельности человека. Таким образом ГИС — это совокупность: аналитических моделей экспертных систем искусственных нейронных сетей нечетких систем генетических алгоритмов имитационных статистических моделей Междисциплинарное направление «гибридные интеллектуальные системы» объединяет ученых и специалистов, исследующих применимость не одного, а нескольких методов, как правило, из различных классов, к решению задач управления и проектирования. Глава III. Интеллектуальные информационные системы (ИИС) поддержки принятия решений ИИСпредставляет собой комплекс программных, лингвистических и логико-математических средств для реализации основной задачи: осуществление поддержки деятельности человека, например возможность поиска информации в режиме продвинутого диалога на естественном языке. ИИС – это компьютерная система, состоящая из 5 основных взаимодействующих компонентов: языковой подсистемы (механизм обеспечения связи между пользователем и другими компонентами ИСПР), информацией подсистемы (хранилище данных и средств их обработки), подсистемы управления знаниями (хранилище знаний о проблемной области, таких как процедуры, эвристики и правила, и средства обработки знаний), подсистемы управления моделями и подсистемы обработки и решения задач (связующее звено между другими подсистемами). Классификация задач, решаемых ИИС: Интерпретация данных. Это одна из традиционных задач для экспертных систем. Под интерпретацией понимается процесс определения смысла данных, результаты которого должны быть согласованными и корректными. Обычно предусматривается многовариантный анализ данных. Диагностика. Под диагностикой понимается процесс соотношения объекта с некоторым классом объектов и/или обнаружение неисправности в некоторой системе. Неисправность — это отклонение от нормы. Такая трактовка позволяет с единых теоретических позиций рассматривать и неисправность оборудования в технических системах, и заболевания живых организмов, и всевозможные природные аномалии. Важной спецификой является здесь необходимость понимания функциональной структуры («анатомии») диагностирующей системы. Мониторинг. Основная задача мониторинга — непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Главные проблемы — «пропуск» тревожной ситуации и инверсная задача «ложного» срабатывания. Сложность этих проблем в размытости симптомов тревожных ситуаций и необходимость учёта временного контекста. Проектирование. Проектирование состоит в подготовке спецификаций на создание «объектов» с заранее определёнными свойствами. Под спецификацией понимается весь набор необходимых документов—чертёж, пояснительная записка и т.д. Основные проблемы здесь — получение чёткого структурного описания знаний об объекте и проблема «следа». Для организации эффективного проектирования и в ещё большей степени перепроектирования необходимо формировать не только сами проектные решения, но и мотивы их принятия. Таким образом, в задачах проектирования тесно связываются два основных процесса, выполняемых в рамках соответствующей ЭС: процесс вывода решения и процесс объяснения. Прогнозирование. Прогнозирование позволяет предсказывать последствия некоторых событий или явлений на основании анализа имеющихся данных. Прогнозирующие системы логически выводят вероятные следствия из заданных ситуаций. В прогнозирующей системе обычно используется параметрическая динамическая модель, в которой значения параметров «подгоняются» под заданную ситуацию. Выводимые из этой модели следствия составляют основу для прогнозов с вероятностными оценками. Планирование. Под планированием понимается нахождение планов действий, относящихся к объектам, способным выполнять некоторые функции. В таких ЭС используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемой деятельности. Обучение. Под обучением понимается использование компьютера для обучения какой-то дисциплине или предмету. Системы обучения диагностируют ошибки при изучении какой-либо дисциплины с помощью ЭВМ и подсказывают правильные решения. Они аккумулируют знания о гипотетическом «ученике» и его характерных ошибках, затем в работе они способны диагностировать слабости в познаниях обучаемых и находить соответствующие средства для их ликвидации. Кроме того, они планируют акт общения с учеником в зависимости от успехов ученика с целью передачи знаний. Нейронные сети не программируются в привычном смысле этого слова, они обучаются. Возможность обучения — одно из главных преимуществ нейронных сетей перед традиционными алгоритмами. Технически обучение заключается в нахождении коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными данными и выходными, а также выполнять обобщение. Это значит, что, в случае успешного обучения, сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке. Управление. Под управлением понимается функция организованной системы, поддерживающая определенный режим деятельности. Такого рода ЭС осуществляют управление поведением сложных систем в соответствии с заданными спецификациями. Поддержка принятия решений. Поддержка принятия решения — это совокупность процедур, обеспечивающая лицо, принимающее решения, необходимой информацией и рекомендациями, облегчающие процесс принятия решения. Эти ЭС помогают специалистам выбрать и/или сформировать нужную альтернативу среди множества выборов при принятии ответственных решений. В общем случае все системы, основанные на знаниях, можно подразделить на системы, решающие задачи анализа, и на системы, решающие задачи синтеза. Основное отличие задач анализа от задач синтеза заключается в том, что если в задачах анализа множество решений может быть перечислено и включено в систему, то в задачах синтеза множество решений потенциально не ограничено и строится из решений компонент или подпроблем. Задачами анализа являются: интерпретация данных, диагностика, поддержка принятия решения; к задачам синтеза относятся проектирование, планирование, управление. Комбинированные: обучение, мониторинг, прогнозирование. Глава IV.Разработка и проектирование ИИС §1. Этапы проектирования ИИС Существуют различные взгляды на определение числа этапов проектирования интеллектуальных систем. Это зависит от многих факторов, в частности от характера функций будущей интеллектуальной системы, области использования, наличия развитых инструментальных средств и т. д. Процесс построения систем ИИ можно разделить на пять этапов (см.Рис.4.1.1.). Рис.4.1.1. Этапы проектирования ИИ 1. Идентификация определения задач и идентификация их характеристик. Разрабатывается техническое задание на проектируемую систему, ограничивается круг пользователей системы. 2. Выделение главных концепций предметной области, которые отражают знания круга экспертов. Инженер знаний определяет формальные средства представления знаний и процедуры получения решений. Выявляются и формулируются понятия, определяющие выбор характерной схемы представления знаний эксперта о предметной области. Основным источником знаний о проблемной области является человек-эксперт, книги, технологические описания, инструкции, документы, методы «мозгового штурма», методы автоматизированного заполнения БЗ. Другим важным источником знаний является Интернет (традиционный поиск необходимой информации и знаний, а также интеллектуальные агенты (программные роботы)). 3 . Выбор формализма представления знаний и определение механизма вывода решений. Разработанная структура для представления знаний является основой для реализации следующего этапа — непосредственного построения базы знаний системы. 4. Выбор или разработка языка представления знаний. После того как правила сформулированы и представлены на выбранном языке представления, они заносятся инженером знаний в БЗ. 5. Тестирование системы путем решения конкретных проверочных задач. Этапы создания интеллектуальных систем не являются четко очерченными и подробно регламентированными. Между некоторыми из них трудно провести временную и содержательную границу. Они в какой-то степени приблизительно описывают процесс проектирования интеллектуальных систем. §2. Стадии существования ИИС Стадии существования интеллектуальных систем (или жизненные циклы системы) соответствуют уровню готовности системы, завершенности ее функциональных возможностей, реализуемых инструментарием. Определяют следующие стадии существования интеллектуальных систем: демонстрационный прототип; исследовательский прототип; действующий прототип; промышленная система; коммерческая система. Демонстрационный прототип — это состояние разработанности системы, когда она решает некоторую часть проблемных задач. При разработке демонстрационного прототипа стремятся достичь противоречивых целей: с одной стороны, система на стадии демонстрационного прототипа должна выполнять задачи, которые бы довольно полно характеризовали ее возможности, с другой стороны, эту стадию стремятся пройти как можно быстрее. Работа демонстрационного прототипа может быть признана удовлетворительной, если он оперирует минимальным набором правил, достаточным для решения некоторых задач. Время разработки колеблется от двух месяцев до года. Исследовательский прототип проектируется в течение 1,5 ...2 лет. На этой стадии развития системы ее БЗ уже содержит несколько сотен правил, которые достаточно адекватно описывают предметную область. Действующий прототип интеллектуальных систем осуществляет качественный вывод решений на расширившемся пространстве правил, достигшем порядка 1000. Поэтому для вывода сложных решений требую большие ресурсы времени и памяти. Промышленные системы обеспечивают высокий уровень качества решения проблем предметной области при значительных уменьшениях времени решения и требуемой памяти. Количество правил возрастает не столь значительно по сравнению с действующим прототипом. На этой стадии происходит преобразование действующего прототипа за счет расширения числа правил и совершенствования интеллектуальных систем на базе использования более эффективных, инструментальных средств. Это требует примерно 3 ... 4 года. Коммерческая система предназначена в основном для продажи. Она является либо проблемно-ориентированной, либо проблемно-независимой. §3. Инструментальные средства проектирования ИИС Несмотря на наличие множества подходов как к пониманию задач ИИ, так и созданию интеллектуальных информационных систем, можно выделить два основных подхода к разработке ИИ: нисходящий (Top-DownAI), семиотический — создание экспертных систем, баз знаний и систем логического вывода, имитирующих высокоуровневые психические процессы: мышление, рассуждение, речь, эмоции, творчество и т. д.; восходящий (Bottom-UpAI), биологический — изучение нейронных сетей и эволюционных вычислений, моделирующих интеллектуальное поведение на основе биологических элементов, а также создание соответствующих вычислительных систем, таких как нейрокомпьютер или биокомпьютер. Для разработки ИИС раньше использовались логические языки (Пролог, Лисп и т. д.), а сейчас используются различные процедурные языки. Логико-математическое обеспечение разрабатывается как для самих модулей систем, так и для состыковки этих модулей. Однако в области лингвистики тоже существует множество проблем, например, для обеспечения работы системы в режиме диалога с пользователем на естественном языке необходимо заложить в систему алгоритмы формализации естественного языка, а эта задача оказалась куда более сложной, чем предполагалось на заре развития интеллектуальных систем. Еще одна проблема — постоянная изменчивость языка, которая обязательно должна быть отражена в системах искусственного интеллекта. На проектирование и создание одной экспертной системы ранее требовалось 20-30 человек-лет. В настоящее время имеется ряд средств, ускоряющих создание. Эти средства называют инструментальными или инструментарием. Использование инструментальных средств разработки экспертных систем сокращает время, затрачиваемое на их создание, в 3-5 раз. Инструментальное средство разработки экспертных систем – это язык программирования, используемый инженером знаний и/или программистом для построения экспертной системы. Этот инструмент отличается от обычных языков программирования тем, что обеспечивает удобные способы представления сложных высокоуровневых понятий. По своему назначению и функциональным возможностям инструментальные программы, применяемые при проектировании экспертных систем, можно разделить на четыре большие категории: 1. Оболочки экспертных систем Системы этого типа создаются, как правило, на основе какой-нибудь экспертной системы, достаточно хорошо зарекомендовавшей себя на практике. При создании оболочки из системы-прототипа удаляются компоненты, слишком специфичные для области ее непосредственного применения, и оставляются те, которые не имеют узкой специализации. Примером может служить система EMYCIN, созданная на основе прошедшей длительную «обкатку» системы MYCIN. В EMYCIN сохранен интерпретатор и все базовые структуры данных – таблицы знаний и связанные с ними механизм индексации. Оболочка дополнена специальным языком, улучшающим читабельность программ, и средствами поддержки библиотеки типовых случаев и заключений, выполненных по ним экспертной системой. 2. Языки программирования высокого уровня Инструментальные средства этой категории избавляют разработчика от необходимости углубляться в детали реализации системы – способы эффективного распределения памяти, низкоуровневые процедуры доступа и манипулирования данными. Одним из наиболее известных представителей таких языков является OPS5. Этот язык прост в изучении и предоставляет программисту гораздо более широкие возможности, чем типичные специализированные оболочки. Следует отметить, что большинство подобных языков так и не было доведено до уровня коммерческого продукта и представляет собой скорее инструмент для исследователей. Осуществляется программирование на обычных языках (Паскаль, Си и др.), программирование на специализированных языках, применяемых в задачах искусственного интеллекта (LISP, FRL, SmallTalk и др.) и др. 3. Среда программирования, поддерживающая несколько парадигм Средства этой категории включают несколько программных модулей, что позволяет пользователю комбинировать в процессе разработки экспертной системы разные стили программирования. Среди первых проектов такого рода была исследовательская программа LOOP, которая допускала использование двух типов представления знаний: базирующегося на системе правил и объектно-ориентированного. На основе этой архитектуры во второй половине 1980-х годов было разработано несколько коммерческих программных продуктов, из которых наибольшую известность получили KEE, KnowledgeCraft и ART. Эти программы предоставляют в распоряжение квалифицированного пользователя множество опций и для последующих разработок, таких как КАРРА и CLIPS, и стали своего рода стандартом. Однако освоить эти языки программистам далеко не так просто, как языки, отнесенные к предыдущей категории. 4. Дополнительные модули Средства этой категории представляют собой автономные программные модули, предназначенные для выполнения специфических задач в рамках выбранной архитектуры системы решения проблем. |