Научная статья на тему 'Проектирование мультиагентной системы для сбора текстовой информации из сети'

Проектирование мультиагентной системы для сбора текстовой информации из сети Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY-NC-ND
179
42
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МУЛЬТИАГЕНТНАЯ СИСТЕМА / MULTIAGENT SYSTEM / ВРЕДОНОСНАЯ ИНФОРМАЦИЯ / MALICIOUS INFORMATION / КЭШ-ПАМЯТЬ / МНОГОЯДЕРНОСТЬ КОМПЬЮТЕРА / MULTI-CORE COMPUTER ARCHITECTURE / СУИЦИД / SUICIDE / ТЕРРОРИЗМ / TERRORISM / НАРКОТИКИ / DRUGS / CPU CACHE MEMORY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Пестряев Александр Андреевич, Воронова Лилия Ивановна, Воронов Вячеслав Игоревич

В статье рассматривается проектирование мультиагентной системы МАС «Стоп-ТСН», которая занимается сбором ссылок из Интернета. Система разработана для поиска запрещенных слов и выражений на страницах социальных сетевых сервисов. Онтология содержит слова и выражения о суициде, наркотиках и терроризме. Проведено проектирование агентов системы, баз данных, механизмов доступа в глобальную сеть, выбраны средства реализации проекта, осуществлена реализация МАССТИС «Стоп-ТСН». Проведено тестирование. На момент написания статьи система собрала более 10 000 ссылок на страницы, содержащие «опасную» информацию. Проектируемая МАС учитывает многоядерность архитектуры компьютера, анализируя размер КЭШ-памяти и распределяя работу агентов на разные ядра процессора. Работа выполнена с использованием комплекса современных информационных технологий, таких как «Qt Creator v. 4.7.4», «MSSQL Server 2012», «Boost C++ Libraries v.1.53». Преимущества разработанной системы по сравнению с существующими рассмотрены на конкретных примерах.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Пестряев Александр Андреевич, Воронова Лилия Ивановна, Воронов Вячеслав Игоревич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Designing multi-agent system to collect textual information from the network

The article considers designing of multi-agent system MAS “Stop TSD”, which collects links from the Internet. The system is designed to search for banned words and phrases in the pages of social networking services. Ontology contains words and expressions of terrorism, suicide and drugs (TSD). Designing of the system agents, databases, access mechanisms in the global network was carried out and MAS “Stop TSD” system was realized. Its testing was accomplished. By now the system has collected more than 10,000 links to pages containing “dangerous” information. MAS takes into account the projected multi-core computer architecture, analysing the size of the cache and distributing agents working on different processor cores. The work was done using the package of later information technologies such as “Qt Creator v. 4.7.4”, “MSSQL Server 2012”, “Boost C++ Libraries v.1.53”. The advantages of the developed system, as compared with existing specific examples discussed.

Текст научной работы на тему «Проектирование мультиагентной системы для сбора текстовой информации из сети»

А.А. Пестряев, Л.И. Воронова, В.И. Воронов

ПРОЕКТИРОВАНИЕ

мультиагентной системы для сбора текстовой информации

ИЗ СЕТИ

В статье рассматривается проектирование мультиагентной системы МАС «Стоп-ТСН», которая занимается сбором ссылок из Интернета. Система разработана для поиска запрещенных слов и выражений на страницах социальных сетевых сервисов. Онтология содержит слова и выражения о суициде, наркотиках и терроризме.

Проведено проектирование агентов системы, баз данных, механизмов доступа в глобальную сеть, выбраны средства реализации проекта, осуществлена реализация МАССТИС «Стоп-ТСН». Проведено тестирование. На момент написания статьи система собрала более 10 000 ссылок на страницы, содержащие «опасную» информацию.

Проектируемая МАС учитывает многоядерность архитектуры компьютера, анализируя размер КЭШ-памяти и распределяя работу агентов на разные ядра процессора.

Работа выполнена с использованием комплекса современных информационных технологий, таких как «Qt Creator v. 4.7.4», «MSSQL Server 2012», «Boost C++ Libraries v.1.53».

Преимущества разработанной системы по сравнению с существующими рассмотрены на конкретных примерах.

Ключевые слова: мультиагентная система, вредоносная информация, КЭШ-память, многоядерность компьютера, суицид, терроризм, наркотики.

Введение

Сравнительно недавно, 20 лет назад, в жизни человека появился Интернет и за этот короткий промежуток времени занял в ней значимое место. Данные опроса фонда «ФОМнибус»1 в 2013 г. показывают, что люди используют Интернет на 80% для общения в социальных сетевых сервисах2.

© Пестряев А.А., Воронова Л.И., Воронов В.И., 2015

За последние десять лет в обществе широко распространились социальные сетевые сервисы, и интерес к ним только растет. В связи с большим объемом вовлеченных пользователей социальные сетевые сервисы стали достаточно мощным инструментом воздействия на общество в целом и на отдельного индивидуума. Результатом роста социальных сетевых сервисов стали как позитивные следствия, связанные с решением актуальных проблем современного общества, так и негативные тенденции, характерные для общества сетевого типа, в частности манипулирование поведением больших групп социума, обсуждение антиобщественных мероприятий, разжигание межнациональной розни, пропаганда насилия и т. д. Примеры такого рода сайтов приведены на рис. 1 (а, б).

а)

Каждый для, себя решает сам эту дилемму Колоться или не колоться? Или по другрму.

Колоть наркотик »ли не колоть в вену?

Казалось бы, н'егр'не хватает, взяд'пузырь, залудил стакан, другой и-балдей Нет, надо острь^рщущений, каких то |й^ни'й. Начинается как обычно с травы, с таб;¡е ток. То есть ящщри- нар.кщдаов_.

б)

Рис. 1. Страницы социальной сети «ВКонтакте» а) содержат группу о подрыве школы, б) содержат информацию об использовании наркотиков

Поиском и удалением такой информации из социальных сервисов занимаются, как правило, администраторы системы, что требует довольно много времени. В связи с этим научные исследования и технологические разработки в области систем сетевого

семантического анализа высказываний крайне востребованы. Существует ряд разработок как зарубежных, так и отечественных, автоматизирующих эту деятельность, например: «Kaspersky Internet Security»3, «ChildWebGuardian PRO»4 и т. п. Разработанные системы не учитывают особенности архитектуры компьютера во время работы, в частности КЭШ-память5, многоядерность системы6 и возможности распределения вычислений7.

Постановка задачи

Авторами статьи разработана мультиагентная система для сбора текстовой информации в сети МАС «Стоп-ТСН» (стоп - терроризм, суицид, наркотики), которая занимается сбором ссылок на страницы в Интернете, содержащие слова и выражения о наркотиках, суициде и терроризме. Разработанная система поможет родителям оградить детей от вредоносной информации, а также укажет спецслужбам на людей, угрожающих безопасности страны.

МАС «Стоп-ТСН» учитывает архитектуру компьютера, анализируя размер КЭШ-памяти и распределяя работу агентов на разные ядра процессора.

Для достижения поставленной цели был решен ряд взаимосвязанных задач в соответствии с жизненным циклом разработки ИС. Проведен анализ прикладной области, в том числе исследованы социальные сети, блоги, форумы, средства разработки мульти-агентных систем и продукты-аналоги8,9,10,11; разработаны требования к МАС, проведено проектирование, реализация и отладка МАС «Стоп-ТСН»12. В данный момент прототип системы находится в стадии тестирования.

Проектирование архитектуры МАС и функциональности агентов

На рис. 2 приведена архитектура МАС «Стоп-ТСН», которая состоит из пяти агентов с разной функциональностью, двух баз данных, базы знаний и Центра обработки сообщений (ЦОС). В системе присутствуют механизмы для обмена информацией между агентами - очереди (queue)13.

Рис. 2. Архитектура МАССТИС «Стоп-ТСН»

Агент -исследоизтель.

Агент — собиратель.

Анализ, компьютера. Если ядер на компьютере от 1 до 4, та агент-побйрнтель и эгент-

иоспвдоватепь работают в 4 потока. Если ядер на компьютере от 5 дп 6, та агент--::оонрятель и атент-

исотеяоват&ль работают в 6 потоков, Если ядер на компьютере от 7 до 8, то агент-собиратель и агент-

иссмейозатопь работают £ Э потоков, Еспя на компьютере более го агент-собиратель и агент-исслеасоэтель работают в Ю потоков.

Цэнтр Обработки Сообщении

Рис. 3. Возможное количество потоков для агентов

ЦОС - единый центр, который занимается запуском и остановкой системы, вычисляет возможности компьютера, в частности размер КЭШ-памяти и количество ядер. Зная возможности компьютера, ЦОС указывает агенту-собирателю и агенту-исследователю количество потоков, которое они должны использовать для своей работы (рис. 3). Также ЦОС загружает начальный список опасных ссылок в «Очередь для запросов в Интернет» для первого запуска системы.

Рис. 4. Архитектура агента-загрузчика

Агент-загрузчик (рис. 4) переходит по ссылкам из «Очереди для запросов в Интернет» и загружает текст для каждого агента. Очередь для запросов в Интернет состоит из двух атрибутов. Первый - это ссылка, которую необходимо исследовать, а второй - это число, которое указывает, от какого агента пришла данная ссылка. Если 1, то собиратель, если 2, то исследователь, если 3, то диагностик. По второму атрибуту загрузчик определяет, в какую очередь

ему положить полученный текст из Интернета. Если 1, то в очередь для собирателя, если 2, то в очередь для исследователя, если 3, то в очередь для диагностика.

Агент-собиратель (рис. 5) из «Очереди с текстом для собирателя» получает новую порцию данных, которая содержит текст интернет-страницы. В полученном тексте агент ищет новые ссылки на страницы. Найденные ссылки агент сохраняет во временную базу данных и загружает в «Очередь для запросов в Интернет» для агента-загрузчика. Ссылки, сохраненные во «Временной БД», будут использованы агентом-исследователем и агентом-очистителем.

Рис. 5. Архитектура агента-собирателя

Рис. 6. Архитектура агента-исследователя

Агент-исследователь (рис. 6) из «Очереди с текстом для исследователя» получает новую порцию данных, которая содержит ссылку на страницу и текст со страницы. В полученном тексте агент ищет запрещенные слова и выражения из «Базы знаний». Если слова или выражения найдены, то он сохраняет ссылку на страницу в «Конечную базу данных». Также агент-исследователь загружает ссылки из «Временной БД» в «Очередь для запросов в Интернет» с целью получения текста со страницы.

Агент-диагностик проверяет работоспособность ссылок из «Конечной базы данных». Если ссылка не работает, то он ее удаляет.

Агент-очиститель удаляет ссылки, прочитанные агентом-исследователем из «Временной базы данных».

Временная база данных - это база, в которой хранятся ссылки, найденные агентом-собирателем в полученном тексте от агента-загрузчика и подлежащие дальнейшей обработке агентом-исследователем. Временная база данных состоит из 676 таблиц, причина выбора данного значения рассмотрена ниже. Каждая таблица имеет два атрибута (рис. 7):

• первый атрибут - это ссылка на исследуемый сайт;

• второй атрибут отвечает за прочтение ссылки агентом-исследователем. Если значение «1», то ссылка прочитана, «0» - нет.

паrcoforum.com/t5963-muzhparerbrat-narkoman-vam- .. 1

narcoforum.eom/post247855.html#p247855 1

па rcoforu m com/post247856. htmS#p247856 1

narcoforum.eom/post247857.html#p247857 1

narcoforum.com/post247858. htm!#p247858 1

na rcoforu m. com/post247859. htm!#p247859 1

narcoforum.com/post247860. htm!#p247860 1

narcoforum.com/post247861 htm!#p247861 1

na rcoforum. com/post247862. htm!#p247862 1

na rcoforu m. com/post247863. htm!#p247863 1

Рис. 7. Фрагмент таблицы временной базы данных

База знаний - это база, которая содержит словари запрещенных слов и выражений о суициде, наркотиках и терроризме (рис. 8).

База знаний содержит простейшую онтологию для проверки работоспособности МАС.

Рис. 8. Словари базы знаний о суициде, терроризме и наркотиках

Конечная база данных - это база, которая содержит ссылки на страницы, на которых найдены слова или выражения из базы знаний (рис. 9). Конечная база данных состоит из трех таблиц:

• ссылки о суициде;

• ссылки о наркотиках;

• ссылки о терроризме.

Каждая таблица имеет два атрибута:

• ссылка на запрещенный сайт;

• запрещенное слово или выражение, найденное на странице.

http://n ews. revda .su/a utonews/2 831/#com merits ФСБ

http:// news, revd a .su/econom ics/232 7/ ФСБ

http://n ews. revda.su/econom ics/2827/#com merits ФСБ

http://amt.allergist.ru/product/viktoza.html ЦРУ

http://freemadbad.chat.ru/boom.htm взорвать

Рис. 9. Фрагмент содержимого таблицы конечной базы данных

Исследование способов повышения производительности МАС

Для повышения быстродействия МАС «Стоп-ТСН» на этапе проектирования разработчиками было принято решение о распределении работы агентов на разные ядра процессора, а также учет размера КЭШ-памяти второго уровня. Существующие продукты-аналоги не используют многоядерность компьютера, поэтому время отображения страницы может быть увеличено от несколь-

ких миллисекунд до десятков секунд, что заставит пользователя отказаться от использования данного продукта.

Процессор сначала обращается к КЭШ-памяти в поисках информации для обработки, и если она не найдена, то через Системную Шину, как видно на рис. 10, обращается к оперативной памяти, что замедляет работу системы.

Рис. 10. Схема взаимодействия процессора с памятью

Учитывая размер КЭШ-памяти, можно ускорить работу программы в несколько раз. Существующие продукты-аналоги для первоначальной обработки информации используют одну большую базу данных, которая не сможет вся поместиться в КЭШ-памяти за один раз, как следствие, будут потери в производительности.

Разработчиками МАС «Стоп-ТСН» предложен другой подход, рассмотренный ниже. Известно, что КЭШ-память второго уровня напрямую влияет на производительность процессора. На современных компьютерах размер КЭШ-памяти второго уровня составляет 512 КБ (килобайт). У каждого ядра процессора своя КЭШ-память второго уровня. Создав вместо одной таблицы 676 таблиц по 1000 записей, можно добиться значительного прироста производительности. Учитывая количество ядер процессора, можно в несколько раз ускорить работу системы.

Временная база данных состоит из 676 таблиц - это 26*26. В английском алфавите 26 букв. Агент-собиратель анализирует первые две буквы ссылки и вносит ссылку в соответствующую таблицу (рис. 11).

Рис. 11. Сохранение ссылки во временную базу данных

Тестирование производительности МАС с учетом КЭШ-памяти второго уровня

Для подтверждения высказанных предположений были проведены тесты производительности системы при разных размерах и количестве таблиц во временной БД.

Проведенное тестирование демонстрирует, что если в 100 таблиц по 1000 записей вносить изменения в несколько потоков с учетом КЭШ-памяти, то это окажется намного быстрее, чем работа с одной таблицей на 100 000 записей.

Тест 1.

Агент-собиратель работает в одном потоке и производит обработку и запись данных в БД с одной таблицей на 100 тыс. записей (рис. 12). Размер строки 55 символов, так как это средний размер ссылки в Интернете. Средний размер ссылки вычислен с помощью программы, написанной авторами статьи, которая исследовала 10 тыс. сайтов и вычислила средний размер ссылки.

Временная БД

Рис. 12. Взаимодействие агента-собирателя с временной БД

Работа агента-собирателя завершается сообщением о времени, затраченном на запись (в сек.) (рис. 13). При этом на рис. 14 показана степень загруженности процессора (в %).

'; Затрачено время на работу с бд о секу.,, |" | 78 Секунд

ОК

Рис. 13. Время, затраченное на запись

Хронология загрузки ЦП

Рис. 14. Загрузка процессора

Из полученных данных следует, что только одно ядро процессора загружено на 45%, что явно недостаточно. Время, затраченное на работу с БД, 78 секунд. Возможности процессора позволяют выполнять больше операций.

Тест 2.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Во втором тесте исследована ситуация, при которой в БД создано 100 таблиц по 1000 записей. Как подтверждают результаты исследований, такая конфигурация работает намного эффективнее, так как есть возможность запустить несколько потоков и каждая таблица может быть загружена в КЭШ-память за один раз. На рис. 15 показана схема взаимодействия агента-собирателя с временной БД, в которой агент-собиратель имеет 6 потоков для взаимодействия с БД.

Полученные результаты тестирования представлены на рис. 16 и 17. Загрузка процессора во время работы на всех ядрах составляет 90%, что указывает на правильное использование ресурсов компьютера.

Агент-собиратель Имеет шесть потоков для записи в БД

Временная БД

Рис. 15. Взаимодействие агента-собирателя с временной БД

!■ .'] Затрачено время на работу с бд в секу,., 17 Секунд

ОК

Рис. 16. Время, затраченное на запись в БД

Хронология загрузки ЦП

Рис. 17. Загрузка процессора

Из рис. 13 и 16 видна разница в скорости выполнения записи, в 4,5 раза быстрее происходит запись в «малые» таблицы, чем в одну большую, что обусловлено 90-процентной загрузкой всех трех ядер (рис. 17), по сравнению с 45-процентной загрузкой единственного ядра процессора (тест 1), что говорит об оптимальном выборе количества потоков и размере таблиц для данного многоядерного компьютера.

Выводы

Разработана мультиагентная система для сбора текстовой информации в сети «Стоп-ТСН», которая занимается сбором ссылок

на «опасные / вредоносные» страницы в Интернете, содержащие информацию, связанную с терроризмом, суицидом и наркотиками.

Проведено проектирование архитектуры МАС, агентов системы, баз данных, механизмов доступа в глобальную сеть, выбраны средства реализации проекта, осуществлена реализация МАССТИС «Стоп-ТСН».

Проектируемая МАС учитывает многоядерность архитектуры компьютера, анализируя размер КЭШ-памяти и распределяя работу агентов на разные ядра процессора, что позволяет в разы ускорить работу программы. Преимущества разработанной системы по сравнению с существующими рассмотрены на конкретных примерах.

Разработанная система поможет родителям оградить детей от такой информации, а также укажет спецслужбам на людей, угрожающих безопасности страны.

Примечания

Для чего люди используют интернет? [Электронный ресурс] // Фонд «Общественное мнение». URL: http://fom.ru/SMI-i-internet/11088 (дата обращения: 23.11.2014).

Социальные сетевые сервисы [Электронный ресурс] // Академик. URL: http://dic.academic.ru/dic.nsf/ruwiki/1334827 (дата обращения: 23.11.2014). Kaspersky Internet Security [Электронный ресурс] // Wikipedia. URL: https://ru.wikipedia.org/wiki/Kaspersky_Internet_Security (дата обращения: 23.11.2014).

Интернет фильтр «ChildWebGuardian Pro» [Электронный ресурс]. URL: http://www.childwebguardian.ru (дата обращения: 23.11.2014). Антес Г. Кэш-память (Computerworld Россия. 2000. № 15) [Электронный ресурс] // Открытые системы. URL: http://www.osp.ru/cw/2000/15/4418/ (дата обращения: 23.11.2014).

Сравнение многоядерных процессоров [Электронный ресурс] // HardwareGuide.ru. URL: http://hardwareguide.ru/%D0%BF%D1%80%D0% BE%D1%86%D0%B5%D1%81%D1%81%D0%BE%D1%80/mnogojadernie-processori/ (дата обращения: 23.11.2014).

Таненбаум Э., Ван Стеен М. Распределенные системы. Принципы и парадигмы. СПб.: Питер, 2003. 877 с.: ил.

Пестряев А.А., Воронова Л.И. Анализ поисковых роботов и выбор функций для своего робота // Мат-лы V Междунар. студенч. электрон. науч. конф. «Студенческий научный форум» [Электронный ресурс]. URL: http://www. scienceforum.ru/2013/183/2549 (дата обращения: 23.11.2014).

3

4

5

6

I

10

9 Лукоянов И.А., Охапкина Е.П., Воронов В.И., Воронова Л.И. Разработка и внедрение поискового робота для анализа интересов клиентов // Современные наукоемкие технологии. 2014. № 5-2. С. 210-212.

Авхадеев Б.Р., Воронова Л.И., Охапкина Е.П. Разработка рекомендательной системы на основе данных из профиля социальной сети «ВКОНТАКТЕ» // Вестник Нижневартовского государственного университета. 2014. № 3. С. 68-76.

Охапкина Е.П., Воронова Л.И. Разработка фрагмента онтологии для много-агентной системы модерации сообщений пользователей // Там же. С. 60-67. Пестряев АА., Воронова Л.И. Мультиагентная система. Взаимодействие агента-собирателя с базой данных // Современные наукоемкие технологии. 2014. № 5-2. С. 214-217.

Хомутова Е.В., Воронова Л.И. Автоматизация ранжирования типов визуализации в DATA MINING для нереляционных баз данных // Там же. С. 219-221.

i Надоели баннеры? Вы всегда можете отключить рекламу.