Диссертация (Методы и программные средства поиска информации на основе прецедентов в интеллектуальных поисковых системах), страница 17
Описание файла
Файл "Диссертация" внутри архива находится в папке "Методы и программные средства поиска информации на основе прецедентов в интеллектуальных поисковых системах". PDF-файл из архива "Методы и программные средства поиска информации на основе прецедентов в интеллектуальных поисковых системах", который расположен в категории "". Всё это находится в предмете "технические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. , а ещё этот архив представляет собой кандидатскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени кандидата технических наук.
Просмотр PDF-файла онлайн
Текст 17 страницы из PDF
18. Форма ввода поискового запроса114Поисковый запрос (англ. search query) – зачастую это набор ключевых словили фраз, которые встречаются на искомых веб-страницах. В тоже время,пользователь может использовать расширенные возможности языка запросовИПС для уточнения требуемого результата.ИПС осуществляют поиск информации по копиям данных хранимых в ихиндексах. Другими словами, для того чтобы веб-страница попала в результатпоиска, может понадобиться определённое время.Сама же страница результата поиска (рис. 19) представляет собой наборссылок на веб-страницы (картинки, видео и т.д.).
При этом ссылки упорядоченыв зависимости от соответствия (релевантности) пользовательскому запросу.Релевантность данных может определяться ИПС по-разному, в соответствии сиспользуемыми алгоритмами.Рис. 19. Страница результата поиска в ИПС «STRAY SEARCH»115Для персонализации ИП в ИПС «STRAY SEARCH» предусмотренарегистрацияпользователей(рис.20)иформаавторизациизарегистрированных пользователей (рис. 21).Рис. 20. Страница для регистрации пользователейРис. 21. Форма авторизации для зарегистрированных пользователейдля116Прототип ИПС «STRAY SEARCH» включает в себя 7 компонентов (рис.22) [68]:1. Интерфейс поиска (SearchClient);2.
Агент управления (ManagerAgent);3. CBR-агент (LocalAgent);4. Поисковый агент (IndexDataAgent);5. Робот индексатор (RobotAgent);6. Индекс ИПС;7. Хранилище БП.IndexDataAgentCBR-агенты…LocalAgent1LocalAgentnИндексированиеИндексХранилище БПБП1…БПnРис. 22. Структура прототипа ИПС «STRAY SEARCH»1174.2.1. SearchClientSearchClient – это инструмент поиска для пользователей (рис. 23).
Онпредназначен для выполнения поисковых запросов на индексированиедокументов в ИПС и поисковых запросов пользователей к ИПС.InterfacePresentationLayerData accessLayerMethod Search()Method GetResult()Рис. 23. Архитектура «SearchClient»1184.2.2. ManagerAgentДанныйагентосуществляетуправлениесообществомагентов(поисковыми агентами, CBR-агентами и др.). Когда он получает запросы отпользователей, он активирует соответствующих CBR-агентов (LocalAgent) дляполучения ответов на запросы пользователей.
Если CBR-агентом не полученответ на запрос пользователя, тогда агент управления может активировать другихCBR-агентов из соответствующей рабочей группы или обратиться ко всемактивным в данный момент агентам в системе.Агент управления выполняет следующие функции: создание БП (или загрузка уже существующей БП); управление CBR-агентами и агентами индексирования (ПР) для удаления идобавления БП; проверка добавленных БП (можно осуществить проверку каждой БП поотдельности); сохранение в хранилище созданной БП; передачаинформации,соответствующейпользовательскомузапросу(исходный пользовательский запрос, сформированные результаты ответа назапрос пользователя).4.2.3. LocalAgentАгент, который работает с БП конкретного пользователя. Агент извлекаетрешение (ответ на запрос пользователя) из соответствующей БП.Функции CBR-агента (LocalAgent): находить удовлетворительное по точности решение (ответ на запроспользователя) для задания, полученного от агента управления;119 сообщать о найденном решении агенту управления, передавая емуинформацию о решении; выполнять запрос к агенту управления на включение в рабочую группу новыхCBR-агентов для поиска решения; взаимодействие с БП (извлечение, добавление и изменение прецедентов).4.2.4.
IndexDataAgentIndexDataAgent – программа поиска, выполняющая поиск по запросампользователей в индексе ИПС.Функции поискового агента IndexDataAgent: получение строки запроса и выделение ключевых слов из запроса; поиск в индексе ИПС по ключевым словам.4.2.5. RobotAgentRobotAgent – мобильный агент, выполняющий индексирование webдокументов, сохранение их в индексе ИПС и извлекающий ссылки на следующиеweb-страницы.Функции программы-робота RobotAgent: анализ содержимого web-страниц и сохранение данных в индекс ИПС; сохранение копии html-страницы в БД системы; сохранение заголовка информационного ресурса (ИР); извлечение ключевых слов; выявление МЕТА-тегов; обнаружение новых ссылок (URL) на другие web-ресурсы и добавление ихв список индексирования ИПС.1204.3.Реализация Web-сервисовВ WCF служба – это множество конечных точек (endpoints), которыепредоставляют клиентам полезные возможности.
Конечная точка – это простосетевой ресурс, которому можно посылать сообщения. Чтобы воспользоватьсяпредоставляемыми возможностями, клиент посылает сообщения конечнымточкам в формате, который описывается контрактом между клиентом и службой.Сервисы ожидают поступления сообщений на адрес конечной точки,предполагая, что сообщения будут записаны в оговоренном формате. Чтобыклиент мог передать сервису осмысленную информацию, он должен знать адрес,привязку и контракт [62, 63].Для реализации сервисов использован в Visual Studio 2010 шаблон «WCFService Library» и .NET Framework версия 4.0.
Реализация сервисов системы«STRAY SEARCH» состоит из следующих процессов: создание контрактов;выбор подходящей привязки; определение конечных точек; размещениесервисов.4.3.1. Создание контрактовПри создании сервиса WCF необходимо определить его контракт. Вконтракте сервиса указывается его сигнатура, отправляемые и получаемыеданные и прочие данные, требуемые контрактом [63]. Контракт определяет наборфункций, предоставляемых конечной точкой, то есть операции, которые онаможет выполнять, и форматы сообщений для этих операций.
Описанные вконтракте операции отображаются на методы класса, реализующего конечнуюточку, и включают в частности типы параметров, передаваемых каждому методуи получаемых от него. В системе «STRAY SEARCH» созданы следующие дватипа контрактов для каждого сервиса [66–67]:121 Контракт о сервисе. Этот контракт описывает функциональные операции,реализуемые сервисом. Он отображает методы класса .NET на описаниясервисов, типов портов и операций на языке WSDL. Внутри контракта осервисе имеются контракты об операциях, которые описывают отдельныеоперации сервисы, то есть методы, реализующие ее функции. Контракт о данных.
Этот контракт описывает структуры данных,используемые сервисом для взаимодействия с клиентами. Контракт оданных отображает типы CLR (Common Language Runtime) на определенияв языке XML Schema Definitions (XSD) и определяет, как их следуетсериализовывать и десериализовывать. Он описывает все данные,получаемые и отправляемые операциями сервиса. Контракт о сервисе описывается с помощью атрибута [ServiceContract].WCF позволяет применять атрибут ServiceContract к интерфейсам иклассам. Для реализации интерфейса используется код С#.В данном интерфейсе определены все функции, выполняемые сервисом.Применение атрибута [ServiceContract] к внутреннему интерфейсу раскрываетэтот интерфейс как публичный контракт сервиса, готовый к внешнемуиспользованию.
Атрибут [ServiceContact] определяет набор операций, которыемогутпроизводитьсясервисом,адругойатрибут[OperationContract]идентифицирует конкретные методы. .NET CLR транслирует эти интерфейсы вSOAP типы. В терминах языка WSDL [ServiceContract] определяет тип портаPortType. Атрибут [OperationContract] определяет методы класса, которые можновызывать через интерфейс сервиса.
Одновременно он определяет какиесообщения можно передать этим методам и получить от них. С точки зренияWSDL, этот атрибут соответствует разделам Operations и Messages. Операциисервиса поддерживаются при помощи базового обмена сообщениями SOAP, вкоторых передаются данные приложения в двух направлениях, а также данные,122необходимыеприложениюдляподдержкистандартнойбезопасности,транзакций и функций, связанных с сеансами. Для реализации данногоинтерфейса реализован соответствующий класс.В основе работы сервисов «STRAY SEARCH» лежит протокол SOAP(Simple Object Access Protocol), который работает поверх протокола HTTP ипредполагает передачу сообщений по сети в формате XML.
Следовательно,сервис WCF при взаимодействии с клиентом сначала сериализует данные в XML,а затем передаёт их клиенту через SOAP, клиент в свою очередь десериализуетполученноесообщение.Соответственно,всетипыданных,которыеиспользуются в контрактах сервиса должны быть сериализуемыми. В работеиспользуется атрибут [DataContract] для обозначения того, какие классы следуетпредставить на языке XSD и включить в WSDL описание, раскрываемоесервисом.ЗатемуточняетсяXSDпредставление,снабжаяатрибутом[DataMember] те члены класса, которые должны быть видны извне.
На этапевыполнения класс DataContractSerializer, входящий в состав WCF, сериализуетобъекты в виде XML, применяя правила, описанные атрибутами [DataContract] и[DataMember]. В приложение 1 приведен реализованный контракт составныхтипов для обслуживания операций.4.3.2.
Выбор подходящей привязкиПривязка(binding)представляетсобойлогическисогласованный,фиксированный набор настроек, относящихся к транспортному протоколу,кодированию сообщений, коммуникационной схеме, надежности, безопасности,распространению транзакций и совместимости. В WCF существует девятьготовых привязок. Каждая из них отвечает потребностям одного конкретногоспособа распределенных вычислений. Ниже представлены некоторые примерыпривязок, предоставляемых WCF.123•BasicHttpBinding: привязка протокола HTTP, которая подходит дляподключения к Web-сервисам, соответствующим спецификации WS-I BasicProfile (например, сервисы на основе Web-сервиса ASP.NET).•WSHttpBinding: привязка с возможностью взаимодействия, котораяподходит для подключения к конечным точкам, соответствующим протоколамWS-*.•NetNamedPipeBinding: использует .NET Framework для подключения кдругим конечным точкам WCF на том же компьютере.•NetMsmqBinding: использует .NET Framework для создания подключенийочередей сообщений к другим конечным точкам WCF.В разработанной системе выбрана привязка WSHttpBinding, потому чтоданная привязка определяет безопасную, надежную привязку с возможностьювзаимодействия.