строения интегрированных экспертных систем // Программные продукты и системы. 1997. № 4.
2. Шеер А.-В. ARIS - моделирование бизнес-процессов. М.: Вильямс, 2000. 175 с.
3. Черемных С.В., Семенов И.О., Ручкин В.С. Структурный анализ систем: IDEF-технологии. М.: Финансы и статистика, 2001.
4. Коберн A. Быстрая разработка программного обеспечения; [пер. с англ.]. М.: ЛОРИ, 2002.
5. Кармайкл Э., Хейвуд Д. Быстрая и качественная разработка программного обеспечения; [пер. с англ.]. М.: Виль-ямс, 2003.
6. Маторин В.С., Маторин С.И., Полунин Р.А., Попов А.С. Знаниеориентированный CASE-инструментарий автоматизации UFO-анализа // Проблемы программирования. 2002. № 1-2. С. 469-476.
7. ERwin Data Modeller. URL: http://www.ru.wikipedia.org/ wiki/ERWin Data Modeller (дата обращения: 10.07.2012).
8. Джарратано Дж., Райли Г. Экспертные системы: принципы разработки и программирование. М.: Вильямс, 2007. 1152 с.
9. Гома Х. UML. Проектирование систем реального времени, распределенных и параллельных приложений; [пер. с англ.]. М.: ДМК, 2002.
10. Найденова К.А., Ермаков А.Е. Программные системы и технологии для интеллектуального анализа данных / Знание-Диалог-Решение: Тр. XI междунар. конф. (июнь 2005 г., Варна, Болгария). София, FOI-COMMERCE, 2005. Т. 1. С. 190-198.
11. Ермаков А.Е., Найденова К.А. Опыт разработки инструментального средства для интерактивного создания экспертных систем психофизиологической диагностики / КИИ'98: сб. науч. тр. 6-й национальн. конф. с междунар. участием, Пущи-но, 1998. Т. 2. С. 404-411.
12. Найденова К.А., Ермаков А.Е. и др. Модель знаний для автоматизированного проектирования экспертных психодиагностических систем / Искусственный интеллект-96: Сб. науч. тр. 5-й национальн. конф. с междунар. участием. Казань, 1996. Т. 2. С. 275-279.
13. Ермаков А.Е. Модели вывода в экспертных системах психофизиологической диагностики // Программные продукты и системы. 2012. № 2. С. 103-109.
14. Naydenova X.A., An Incremental Learning Algorithm for Inferring Logical Rules from Examples in the Framework of the Common Reasoning Process. In: Data Mining and Knowledge Discovery Approaches Based on Rule Induction Techniques,
Evangelos Triataphyllou and Giovanni Felici (Eds.), in Massive Computing series, Vol. 6, Chapter 3 (pp. 89-148), 2006. NY, USA: Springer-Verlag.
Referenses
1. Rybina G.V., Pyshagin S.V., Smirnov V.V., Chabaev A.V., Programmnye produkty i sistemy [Software and systems], 1997, no. 4.
2. Scheer A.-W., ARIS — Business Process Modeling, Springer, 3rd edition, 2000.
3. Cheremnykh S.V., Semenov I.O., Ruchkin V.S., Struktur-ny analiz sistem: IDEF-tekhnologii [Systems structural analysis: IDEF-technologies], Moscow, Finansy i statistika, 2001.
4. Cockburn A., Agile Software Development, Addison-Wesley, 2001.
5. Carmichael A., Haywood D., Better Software Faster, Prentice Hall, 2002.
6. Matorin V.S., Matorin S.I., Polunin R.A., Popov A.S., Problems in programming, 2002, no. 1-2, pp. 469-476.
7. ERwin Data Modeller, available at: http://www.ru.wikipe-dia.org/wiki/ERWin Data Modeller (accessed 10 July 2012).
8. Giarratano J.C., Riley G.D., Expert Systems: Principles and Programming, Course Technology, 4th edition, 2004.
9. Gomaa H., Desing Concurrent, Distributed, and RealTime Applications with UML, Reading, MA, Addison-Wesley, 2000.
10. Naydenova K.A., Ermakov A.E., Trudy XI mezhduna-rodnoy konferentsii "Znanie—Dialog—Reshenie" [Proc. of XI int. conf. "Knoledge-Dialog-Decision"], FOI-COMMERCE, Sofia, 2005, Vol. 1, pp. 190-198.
11. Ermakov A.E., Naydenova K.A., Sbornik nauchnykh tru-dov IV natsionalnoy konferentsii s mezhd. uchastiem KII'98 [Proc. of IV national conf. with int. participants KII'98], Pushchino, 1998, Vol. 2, pp. 404-411.
12. Naydenova X.A., Bochenkov A.A., Bulyko V.I., Maklakov A.G., Ermakov A.E., Sbornik nauchnykh trudov V natsionalnoy konferentsii s mezhd. uchastiem "Isskusstvennyy intel-lect-96" [Proc. of V national conf. with int. participants "Artificial intelligence-96"], Kazan, 1996, Vol. 2, pp. 275-279.
13. Ermakov A.E., Programmnye produkty i sistemy [Software & Systems], 2012, no. 2, pp. 103-109.
14. Naydenova X.A., Data Mining and Knowledge Discovery Approaches Based on Rule Induction Techniques, Massive Computing series, NY, USA., Springer-Verlag, 2006, Vol. 6, pp. 89-148.
УДК 007:519.816
ПРИМЕНЕНИЕ МЕТОДОВ ПОИСКА РЕШЕНИЯ НА ОСНОВЕ ПРЕЦЕДЕНТОВ В ИНФОРМАЦИОННЫХ ПОИСКОВЫХ СИСТЕМАХ
(Работа выполнена при финансовой поддержке РФФИ, проект № 12-07-00508)
П.Р. Варшавский, к.т.н., доцент; Зо Лин Кхаинг, аспирант; Аркар Мьо, аспирант (Национальный исследовательский университет «МЭИ», ул. Красноказарменная, 14, г. Москва, 111250, Россия, [email protected], [email protected], [email protected])
Рассматриваются актуальные вопросы построения современных информационных поисковых систем. Эти системы являются основным поисковым инструментом, который может применяться при поиске во всемирной сети Интернет. Кроме того, наблюдается устойчивая тенденция к интеллектуализации информационных поисковых систем и персонализации поиска. Указанные механизмы поиска направлены на устранение основных недостатков традиционного контекстного поиска по ключевым словам. Предлагается использовать методы искусственного интеллекта, в
частности, мультиагентный подход, методы и средства правдоподобных рассуждений на основе прецедентов (CBR -Case-Based Reasoning), для обеспечения персонализации и интеллектуализации поиска. Рассмотрены упрощенная структура поисковой машины Интернета и основные задачи таких машин. Предложена архитектура информационной поисковой системы на базе интеллектуальных агентов, обеспечивающая возможность поиска ресурсов Интернета на основе прецедентов (накопленного системой опыта). Подробно рассмотрены компоненты предложенной архитектуры информационной поисковой системы и программная реализация основных модулей системы в MS Visual Studio 2010 с использованием стандарта FIPA (Foundation for Intelligent Physical Agents) и технологии ASP.NET под операционную систему MS Windows.
Ключевые слова: информационные поисковые системы, поиск решения на основе прецедентов, поисковые машины Интернета, мультиагентные системы.
APPLICATION OF CASE-BASED REASONING METHODS IN INFORMATION SEARCH SYSTEMS
Varshavskiy P.R., Ph.D., associate professor; Zo Lin Khaing, postgraduate; Arkar Myo, postgraduate (National Research University «Moscow Power Engineering Institute»,
Krasnokazarmennaya St., 14, Moscow, 111250, Russia, [email protected], [email protected], [email protected])
Abstract. The paper discusses topical issues of modern information search system development. These systems are the main search tool that can be used to search in the Internet. In addition, there is a stable trend to intellectualization of information search systems and search personalization. These search engines are oriented to eliminate major disadvantages of the traditional context keyword search. We propose to use the artificial intelligence methods and, in particular, multi-agent approach, methods and tools of plausible case-based reasoning for personalization and intellectualization of searching. A simplified structure of the Internet search engine and the main tasks of such engines are considered. We propose an architecture based on intelligent agents, providing the opportunity to Internet resources case-based search. The components of the proposed information search system architecture and main modules software implementation in MS Visual Studio 2010 using FIPA (Foundation for Intelligent Physical Agents) standard and ASP.NET technology under MS Windows operating system are considered in detail.
Keywords: information search systems, case-based reasoning, Internet search engines, multi-agent systems.
Сегодня информационные поисковые системы (ИПС) - основной поисковый инструмент в сети Интернет [1]. Однако поиск в традиционных ИПС (поисковых машинах Интернета) неэффективен, так как по запросу пользователя зачастую выдается большое количество нерелевантных документов. Поэтому, когда речь идет о качестве поиска информации, понятие релевантности является определяющим.
В настоящее время наблюдается устойчивая тенденция к интеллектуализации ИПС и персона-лизации поиска [2]. Именно к этому стремятся крупные компании на рынке поисковых систем Интернета (Google, Yandex и др.), активно внедряющие различные сервисы и инструменты поиска. Механизмы персонализации и интеллектуализации направлены на устранение основных недостатков традиционного контекстного поиска по ключевым словам.
На пути создания персонализированных интеллектуальных ИПС много нерешенных проблем, но разработка подобных систем весьма актуальна, так как они имеют ряд преимуществ, а главное -приближают к решению проблемы выбора релевантной информации. Необходимо подчеркнуть, что для повышения эффективности ИПС интеллектуальные и персонализированные механизмы поиска должны применяться в комплексе с традиционными поисковыми средствами [3].
В данной работе для обеспечения персонали-зации и интеллектуализации поиска предлагается использовать методы искусственного интеллекта, в частности, мультиагентный подход [4] и методы
правдоподобных рассуждений на основе прецедентов (CBR - Case-Based Reasoning) [5].
Поисковые машины Интернета
Для поиска информации в Интернете используются специальные поисковые системы (поисковые машины). В России наиболее популярными являются Google, Яндекс, Поиск@МаП.т и др. Поисковая машина Интернета предназначена для поиска информации в сети Интернет (по web-ресурсам и базам HTML-документов) и вывода результатов в соответствии с запросами пользователей. Ответ поисковой машины Интернета должен быть актуальным и информативным. Упрощенная структура такой машины приведена на рисунке 1 [3].
Рассмотрим основные задачи поисковых машин Интернета: индексация сайтов и формирование БД поисковой машины Интернета (сбор и обработка данных), поиск информации (по копиям данных, хранимых в ее БД (индексе)), выдача результатов по запросам пользователей.
Для сбора информации (индексации сайтов) поисковые системы формируют свой индекс, используя программных агентов (роботов, пауков и др.), перемещающихся по сети в соответствии с переданными ИПС URL-адресами web-ресурсов и собирающих необходимую информацию. Работа программных агентов строится на алгоритмах, созданных в результате совместной работы лингвистов, программистов и аналитиков.
Поисковая машина Интернета
Рис. 1. Структура типовой поисковой машины Интернета
Упрощенная структура индекса ИПС, которая содержит информацию о проиндексированных сайтах, ключевых словах, копиях HTML-страниц, документальных и пользовательских запросах, представлена на рисунке 2.
Поскольку объем информации в Интернете колоссален, сбор и хранение данных требуют огромных мощностей - высокопроизводительных серверов с большим объемом памяти и мощными процессорами.
Определение тематических групп, рубрициро-вание сайтов по темам и т.д. могут выполняться автоматически или вручную (например, многие поисковые системы имеют собственные каталоги сайтов, сформированные опытным редактором, который точно относит некий ресурс к конкретной рубрике в огромном списке сайтов). Для определения важности ресурса в сети разработчиками ИПС используются различные коэффициенты и методы, основанные на учете внешних ссылок на сайты: тематический индекс цитирования у Яндекса, PageRank у Google, коэффициент популярности у Рамблера.
На этом подготовительный этап работы ИПС заканчивается и начинается выполнение основной задачи - поиск по индексу ИПС с учетом заложенных алгоритмов определения релевантности и дальнейшего ранжирования результатов и вывод ответов на запросы пользователей в
удобном виде (то есть показываются сниппеты (выдержки из текста), в которых жирным шрифтом выделяются слова из запроса).
Кроме того, поисковые машины анализируют реакцию пользователя на информацию, выданную ИПС. У поисковой машины Google есть панель-бар (надстройка к браузеру), с помощью которой пользователь может высказать свое отношение к тому сайту, на который его перенаправила поисковая машина. Многие российские поисковые машины учитывают статистику переходов пользователя по результатам поиска, оценивая популярность соответствующих интернет-ресурсов.
Рис. 2. Схема БД ИПС
Персонализация поиска и методы на основе прецедентов
Под персонализацией поиска понимается предоставление пользователю индивидуальных, персонализированных результатов в зависимости от его информационных потребностей, приоритетов, интересов, географического и социального положения, возраста и других особенностей [2].
Существуют три большие группы методов оценки предпочтений аудитории:
- коллаборативная фильтрация, позволяющая получать автоматические прогнозы относительно интересов пользователя по собранной информации о предпочтениях множества пользователей;
- эвристическое моделирование, предполагающее создание математической модели рассматриваемой сложной системы на основе гипотезы о ее структуре и функциях; в отличие от коллаборативной фильтрации применение эвристического моделирования оправдано на небольших выборках объектов;
- поведенческий таргетинг, обеспечивающий мониторинг за действиями и предпочтениями пользователя, как правило, без его участия, что позволяет определить интерес потребителя к той или иной информации или услуге; по итогам анализа формируется профиль пользователя, на основе которого ему выдается персонализированная информация, соответствующая его информационным потребностям.
В работе предлагается осуществлять накопление информации о запросах и предпочтениях пользователя с помощью методов на основе прецедентов (CBR-методов) [5]. Собранная программными агентами ИПС информация будет помещаться в хранилище - библиотеку прецедентов (БП) и подвергаться математической и статистической обработке.
Подход на основе CBR-методов позволяет решить новую, неизвестную задачу, используя или адаптируя решение уже известной задачи.
CBR-методы активно применяются в различных областях, таких как медицинская диагностика, юриспруденция, технические системы, системы экспертной диагностики и др. Данный подход составляет основу машинного обучения и предоставляет широкие возможности для формирования корпоративной памяти, а также накопления разнородной информации (как структурированных, так и слабоструктурированных данных, включая мультимедиа данные).
Как правило, CBR-методы реализуют четыре основных этапа, образующих так называемый CBR-цикл, представленный на рисунке 3 [5]:
- извлечение наиболее соответствующего (подобного) прецедента (или прецедентов) для сложившейся ситуации из БП;
- повторное использование извлеченного прецедента для попытки решить текущую проблему;
- пересмотр и адаптация в случае необходимости полученного решения в соответствии с текущей проблемой;
- сохранение вновь принятого решения как части нового прецедента.
Преимущества CBR-методов:
- возможность напрямую использовать опыт, накопленный системой, без интенсивного привлечения эксперта в той или иной предметной области;
- возможность сокращения поиска решения поставленной задачи за счет использования уже имеющегося решения для подобной задачи;
- возможность исключения повторного получения ошибочного решения;
- отсутствие необходимости полного и углубленного рассмотрения знаний о конкретной предметной области (вместо детального построения модели предметной области можно ограничиться учетом только существенных особенностей предметной области);
- возможность применения эвристик, повышающих эффективность решения задач.
Архитектура ИПС на основе прецедентов
Для реализации ИПС на основе прецедентов предлагается использовать мультиагентную среду, основными компонентами которой являются взаимодействующие между собой мобильные (интеллектуальные) агенты [4].
Агенты могут как функционировать на серверной стороне ИПС, выполняя традиционные функции поисковой машины Интернета, так и являться клиентским прикладным ПО, которое может встраиваться или дополнять браузер пользователя.
Пользовательский интерфейс
Запрос • кна индексирование
Список URI для индексирования
Ф
Блок индексирования (Indexing Block)
Результаты
Робот 1
Программа поиска
Робот 2 (Robot 2)
Ф
Робот n (Robot n)
Реестр программных модулей
Блок управления (Management Block)
Агент управления (Management Agent)
Запрос
Список запросов пользователей
V
Индекс
<<WCF Web Service» Служба учета агентов
О
о
Результаты
А
V
Блок CBR (CBR Block)
CBR-агент 1 (CBR Agent 1)
CBR-агент 2 ( CBR Agent 2)
CBR-агент n (CBR Agent n)
Хранилище БП
с;
БП1
с 5
бп2
1 J
БПп
Рис. 4. Архитектура ИПС на основе прецедентов
Такие агенты позволяют реализовать интеллектуальный поиск и обеспечивают многосторонний мониторинг предпочтений пользователя.
На базе архитектуры системы распределенного вывода на основе прецедентов для интеллектуальных систем [6] была предложена мультиагентная архитектура ИПС (рис. 4), включающая в себя следующие основные компоненты:
- пользовательский интерфейс для организации взаимодействия пользователей с ИПС;
- блок управления (Management Block), который содержит инструменты, предназначенные для координации и поддержки работы основных компонентов ИПС;
- блок индексирования (Indexing Block), выполняющий сбор и обработку информации (индексацию интернет-ресурсов) и формирование индекса ИПС;
- блок CBR (CBR Block), содержащий компоненты, связанные непосредственно с реализацией методов поиска решения на основе прецедентов;
- программу поиска, применяемую не зарегистрированными в системе пользователями для поиска информации в ИПС;
- индекс - базу проиндексированных документов ИПС.
Пользовательский интерфейс предоставляет возможность регистрации в ИПС новых пользователей и выполнения авторизации в системе для зарегистрированных пользователей. Диалог с пользователем осуществляется через web-браузер с помощью web-интерфейса, реализующего набор шаблонов запросов к системе (запросы на индексирование документов в ИПС и поисковые запросы к ИПС). Для каждого зарегистрированного пользователя доступна возможность сохранения и учета их личных предпочтений (прецедентов) при выполнении поиска в ИПС (персонализированный поиск). Для незарегистрированных пользователей ИПС предусмотрена возможность традиционного поиска по ключевым словам с использованием программы поиска ИПС. С помощью пользова-
тельского интерфейса формируются список URI для индексирования интернет-ресурсов и список поисковых запросов пользователей к ИПС, а также выдаются результаты поиска пользователям.
В состав блока управления входят web-служба учета агентов и агент управления с реестром программных модулей. Web-служба учета агентов объединяет в себе функции системы управления агентами (Agent Management System) и каталога внешних интерфейсов агентов (Directory Facilitator), описываемых в стандарте FIPA (Foundation for Intelligent Physical Agents) по базовой архитектуре мультиагентных систем [7]. Данная web-служба публикует информацию об адресах и именах всех агентов, зарегистрированных в системе, а также о доступных сервисах, предоставляемых данными агентами.
Агент управления отвечает за создание, удаление и поддержание функционирования рабочих групп поисковых роботов в блоке индексирования и CBR-агентов при выполнении персонализированного поиска.
В соответствии со списком запросов на индексирование (список URI) агент управления создает новых поисковых агентов (роботов) или активизирует работу уже зарегистрированных в системе и имеющих свободные ресурсы роботов, передавая им соответствующие URI для индексирования интернет-ресурсов.
Робот - это программа, предназначенная для сбора и обработки данных в Интернете с целью занесения их в индекс ИПС. Робот заходит на web-страницу, анализирует ее содержимое, сохраняет его в базе ИПС и отправляется по ссылкам на следующие web-страницы. Как правило, роботы сохраняют копии html-страниц, заголовки информационных ресурсов, аннотации, обнаруженные ключевые слова и выявленные META-теги, а также добавляют в список URI ИПС новые обнаруженные ссылки на другие web-ресурсы. Порядок обхода страниц, частота визитов, защита от зацикливания, а также критерии выделения значимой информации определяются поисковыми алгоритмами [1, 3].
На основе списка поисковых запросов пользователей агент управления создает новых CBR-агентов, загружая в них соответствующие идентификаторам пользователей БП. Если на момент запроса в системе уже есть зарегистрированные CBR-агенты, БП которых соответствуют идентификаторам пользователей, агент управления проверяет их на предмет наличия свободных ресурсов и по возможности включает в работу по новым запросам пользователей.
В состав блока CBR входят CBR-агенты и хранилище БП. CBR-агенты получают пользовательские поисковые запросы и осуществляют поиск решения в своих БП. CBR-агент занимается поиском решения в БП с использованием стандартных
алгоритмов извлечения прецедентов и CBR-цикла [5]. Если CBR-агент не смог найти решение, удовлетворительное по точности (согласно выбранной метрике и заданному пороговому значению), он может сообщить об этом агенту управления, передавая ему информацию о решении, ближайшем к заданному пороговому значению. В свою очередь агент управления включает в рабочую группу по данному поисковому запросу дополнительных CBR-агентов, с которыми может взаимодействовать CBR-агент, для получения ответа на запрос пользователя и пополнения своей локальной БП новыми прецедентами.
Основные программные компоненты предложенного архитектурного решения, обеспечивающие как традиционные, так и интеллектуальные механизмы поиска, были реализованы средствами MS Visual Studio 2010 на платформе Micro-soft.NET с использованием технологии ASP.NET под операционную систему MS Windows.
Литература
1. Ландэ Д.В. Поиск знаний в Internet. М.: Диалектика, 2005.
2. Харитоненков А.В. Семантические модели персонали-зации поиска в документальных массивах сети Интернет // Журн. науч. публ. аспирантов и докторантов. 2009. № 9.
3. Башмаков А.И., Башмаков И.А. Интеллектуальные информационные технологии: учеб. пособие. М.: Изд-во МГТУ им. Н.Э. Баумана, 2005.
4. Тарасов В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика. М.: Эдиториал УРСС, 2002.
5. Варшавский П.Р., Еремеев А.П. Моделирование рассуждений на основе прецедентов в интеллектуальных системах поддержки принятия решений // Искусственный интеллект и принятие решений. 2009. № 2. С. 45-47.
6. Бредихин К.Н., Варшавский П.Р. Архитектура системы распределенного вывода на основе прецедентов для интеллектуальных систем // Программные продукты и системы. 2011. № 1. С. 50-53.
7. FIPA: The Foundation for Intelligent Physical Agents. Abstract Architecture Specification, 2004. URL: www.fipa.org (дата обращения: 10.07.2012).
References
1. Lande D.V., Poisk znaniy v Internet [Knowledge retrieval in the Internet], Moscow, Dialektika, 2005.
2. Kharitonenkov A.V., Zhurnal nauchnykh publikatsy aspirantov i doktorantov [Academic paper journal for postgraduates and Ph.D.], 2009, no. 9.
3. Bashmakov A.I., Bashmakov I.A., Intellektualnye infor-matsionnye tekhnologii: ucheb. posobie [Intelligent IT: study guide], Moscow, MGTU a.n. N.E. Baumana, 2005.
4. Tarasov V.B., Ot mnogoagentnykh sistem k intellek-tualnym organizatsiyam: filosofiya, psikhologiya, informatika [From multi-agent systems to intelligent companies: philosophy, phycology, computer science], Moscow, Editorial URSS, 2002.
5. Varshavsky P.R., Eremeev A.P., Iskusstvennyy intellect i prinyatie resheniy [Artificial intelligence and decision making], 2009, no. 2, pp. 45-47.
6. Bredikhin K.N., Varshavsky P.R., Programmnye produkty i sistemy [Software & Systems], 2011, no. 1, pp. 50-53.
7. FIPA: The Foundation for Intelligent Physical Agents. Abstract Architecture Specification, 2004, available at: www.fipa.org (accessed 10 July 2012).