Научная статья на тему 'Виртуальная организация интернет-предприятий на основе многоагентного подхода'

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

CC BY
282
68
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
многоагентные системы / Интернет-предприятие / Multi-agent systems / Internet-enterprise

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

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

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

This work is devoted to development of the virtual Internet-enterprises on the basis of multi-agent approach, capable to give, for example, services on loading file content. The multi-agent system consists of some «intellectual» information web-agents, taking the information from various sources and uniting it in a single whole.

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

№ 6(24) 2009

В. В. Андреев, А. А. Солдатов

Виртуальная организация интернет-предприятий на основе многоагентного подхода

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

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

Разработка искусственных сообществ и организаций, состоящих из виртуальных агентов, является естественным следствием развития проблематики многоагентных систем [1-5].

Их коммерческое использование могло бы найти применение в создании так называемых интернет-предприятий.

СУБОРДИНАТОР

аксиологический

праксеологический аспект знаний

Рис. 1. Двухуровневое представление базовой структуры (единицы) открытого сетевого предприятия

118

Сетевую деятельность подобной системы можно сравнить с технологическим процессом открытого предприятия [4].

Виртуальная организация интернет-предприятия представляет собой веб-архитектуру, состоящую из множества искусственных интеллектуальных агентов, способных к синер гетическим эффектам. Модель многоагентной системы виртуальной организации можно рассмотреть на основе открытого горизонтального посттейлоровского предприятия [4] (рис. 1). Здесь термин «открытое» указывает на интенсивное взаимодействие предприятия со своими клиентами и партнерами в интересах наиболее полного удовлетворения их потребностей. Единая сетевая организация подобных предприятий включает заказчиков, поставщиков и подрядчиков.

Агенты: их типы и функции

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

Типы агентов можно определить по ролевому признаку:

1) агент-заказчик;

2) агент-координатор;

3) агент-исполнитель;

№ 6(24) 2009

4) агент-субординатор;

5) агент-наблюдатель.

Таким образом, имеется множество агентов А = А■,,...,А5, а объекты отсутствуют.

Агент-заказчик формирует запрос и отправляет заказ на выполнение некоторого задания. Он определяет общую задачу и инициирует фронт работ, участвует в выработке решений и отслеживает процесс выполнения заказа. Окончание действия агента определяется удовлетворением всех требований к выполненной работе. Функция агента-заказчика носит гносеологический характер и рассматривается как своего рода служебная функция многоагентной системы. Ее суть можно выразить вопросами «Что делать (производить) системе?», «Для чего использовать производимый продукт?». С коммуникационной (семиотической) точки зрения функция агента-заказчика определяет семантику информационных обменов в многоагентной системе.

Агент-координатор создает и поддерживает сеть запросов и обязательств, необходимых для выполнения работы. Распределяя работу, агент-координатор взыскивает требуемые машинные ресурсы. Он занимается согласованием действий отдельных исполнителей и регулярно общается с заказчиком. Агент-координатор является посредником между агентом-заказчиком и агентом-исполнителем. Функция агента-координатора носит онтологический характер и может пониматься как операционная функция многоагентной системы. Ей соответствуют вопросы «Кто, когда и где будет выполнять данную работу?». Онтология проявляется в аспекте коммуникации потоков информации, циркулирующих в системе.

Агент-исполнитель — это агент (или группа агентов), непосредственно занимающийся выполнением задания. О ходе и завершении работ он сообщает агенту-координатору. Функция агента-исполнителя имеет праксео-логический характер и предполагает владение методами и приемами решения задачи. Она может пониматься как базовая техническая функция многоагентной системы, соответствует вопросу «Как сделать работу?» и определяет прагматику информационных обменов в системе.

Агент-субординатор, находясь на более высоком уровне, осуществляет общее управление процессами, протекающими на предприятии. В рамках данной модели это означает управление взаимодействием «агент-заказчик — агент-координатор — агент-исполнитель». Функции агента-субординатора состоят в наблюдении, контроле и оценке эффективности деятельности многоагентной системы, связаны с определением стратегий организационного развития, включая подбор агентов-заказчиков, определение должностных инструкций для агентов-исполнителей.

Метафункция агента-субординатора, связанная с прогнозированием будущих тенденций, анализом рынка, формированием мотивов и интересов, постановкой важнейших целей и выработкой стратегических решений, носит аксиологический характер. Прежде всего, он ставит вопросы типа «Почему выгодно производить и продавать продукт (услугу)?» и «Сколько надо произвести (продать)?».

Агент-наблюдатель (метакоординатор) находится на том же уровне, что и агент-субординатор. Он обладает полной информацией о деятельности предприятия и вырабатывает свои предложения об изменениях в мно-гоагентной системе, но может воздействовать на нее только косвенно через агента-субординатора.

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

Многоагентный подход в онлайн-бизнесе

Предполагается, что основная часть бизнес-процессов будет проводиться многоагентной системой. Цепочка технологического процесса определяется следующим образом. Сначала человек, желающий получить файлы из веб-сети, регистрируется на сайте интернет-предприятия. Первое, с чем он сталкивается, — это выполнение необходимого набора условий к выполнению заказа агента-заказчика. Агент-заказчик осуществляет прием заявки, регистрируя учетные данные пользователя ресурса (далее — пользователь), заносит

«о

0

1 £

«о ш

ш %

119

№ 6(24) 2009

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

1) агенты-загрузчики файлов из пиринговых (Р2Р) сетей (например, torrents.ru);

2) агенты-загрузчики файлов из ресурсов файлообменников (например, rapidshare.ru, depositfiles.com, letitbit.net);

3) агенты-загрузчики файлов, имеющих прямые ссылки.

Число агентов-загрузчиков прямо пропорционально числу имеющихся ссылок. По мере поступления заказа на загрузку веб-файлов происходит непрерывный процесс создания ,§ и уничтожения агентов-загрузчиков. Число рождающихся агентов-загрузчиков определяет-| ся количеством адресов ссылок специального

0 списка. Агенты-загрузчики представляют со-| бой однотипный класс объектов, имеющий Ц множество методов для работы с различными § типами сетевых ресурсов. Действия агента-за-| грузчика по мере выполнения им работы кор-| ректируются агентом-координатором и сооб-§ щаются владельцу многоагентной платформы зс посредством агента-наблюдателя. Отражение

текущего состояния выполненной работы по § загрузке доступно в режиме реального време-,§■ ни при любом обращении агента-наблюдателя к агенту-загрузчику с целью проверки хода £= деятельности. В состояние «смерти» агент-ис-^ полнитель может перейти лишь в случае ус-| пешного выполнения задания. До этих пор ^ агент считается активным либо находится в спящем режиме в связи с возможностью возникно-3 вения нештатных ситуаций: обрыв связи, отклю-5 чение питания, недействующий адрес ссылки. § В любом случае, агент-загрузчик должен опо-* вестить платформу об успешном выполнении задания или о неудаче. Отличительным свой-

1 ством агентов-загрузчиков является возможет

оа ность их портирования на различные хосты.

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

Каждому адресному списку, созданному агентом-заказчиком, соответствует так называемый «агент-сборщик». Его задача состоит в том, чтобы осуществить сборку заказа. Сборка подразумевает выполнение следующих пунктов:

1) агент-координатор посылает сигнал успешного выполнения задания агентом-исполнителем агенту-сборщику, и с этого момента считается, что агент-сборщик «родился» и стал активным;

2) проверяются условия на предмет загрузки всех позиций, указанных в очереди: при успешном выполнении этого пункта агент-сборщик переходит к следующему, а при неудаче происходит оповещение администратора платформы через агентов координатора и наблюдателя, и формируется файл ошибок;

3) создание самораспаковывающегося архива и установка на него парольной защиты; в дальнейшем будем говорить о двух сгенерированных паролях: один из них будет соответствовать паролю на архив, а второй — сообщен заказчику во вспомогательном файле, причем оба пароля будут соответствовать одному заказу; собранный проект будет состоять из архива и указанного выше файла с паролем, готовых к прожигу на диск специальными средствами операционной системы;

4) печать почтового конверта с указанием почтового адреса заказчика и фирмы отправителя.

Агент-сборщик должен учитывать множественность заявок и ссылок с целью их правильного распределения.

Хэш-суммы скачанных файлов фиксируются в базе данных заказов. Агент-координатор передает ссылку агенту-исполнителю и ждет от него возврата полученной хэш-суммы файла. Если хэш-сумма необходимого к закачке файла соответствует загруженному ранее файлу, то агент-координатор выносит решение прекратить деятельность агента-исполнителя. После этого он отыскивает необходимую запись заказа и восстанавливает необходи-

№ 6(24) 2009

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

Наряду с перечисленными, можно рассмотреть еще несколько типов агентов платформы. Один из них — «агент продвижения» (или агент-субординатор). Отвечая на вопросы «Сколько?» и «Почему?», данный агент прогнозирует объемы продаж, определяет сбалансированную ценовую политику, отвечающую интересам как заказчика, так и интернет-предприятия. Раскрутка сайта, в структуру которого встроен агент-заказчик, также ложится на плечи агента-субординатора.

Агент-наблюдатель — еще один необходимый для нашей платформы агент. В его обязанности входит:

1) сообщение о возможном числе конкурентов и их ценах;

2) формирование сводки готовых к записи проектов;

3) информирование администратора платформы о доставленных и готовящихся к отгрузке проектах, о дебиторской и кредиторской задолженности по выполненным услугам.

Агент-наблюдатель способен определить стоимость выполненной услуги по объему загруженных файлов на один заказ.

Одним из наиболее интересных агентов нашей платформы является «агент-кассир». Этот агент создан для проведения всех расчетных операций по оплате выполненных услуг. Агент-кассир использует технологию «Электронной кассы», при которой существу-

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

Технологический процесс интернет-предприятия

На рис. 2 представлена блок-схема структурных взаимосвязей рассматриваемой мно-гоагентной системы. Для полного понимания технологического процесса интернет-предприятия рассмотрим его суть. Человек, желающий получить веб-файлы, регистрируется на сайте веб-фирмы, заполняя необходимые поля учетных данных: фамилия, имя, отчество, телефон, мобильный телефон, электронная почта, адрес места жительства. Таким образом, в локальной базе данных платформы формируется запись о заказчике с уникальным номером. Далее создается список адресов ссылок на интернет-файлы, причем на один заказ формируется один список. Агент-координатор передает первый список из базы данных агентам-загрузчикам (агентам-исполнителям). Первый метод, который запускает загрузчик, — это проверка действительного существования ссылки. Если проверка существования всех ссылок списка прошла успешно, создается необходимое число агентов-загрузчиков. Второй метод, запускаемый агентом-загрузчиком, определяет возможное существование ранее скачанного файла по сохраненной хэш-сумме в записях таблицы заказов. Рожденные агенты-загрузчики живут до тех пор, пока файл не будет загружен в соответствующую директорию, созданную совместно с записью, сделанной агентом-заказчиком.

После выполнения всех загрузок и уничтожения агентов-загрузчиков, появляется агент-сборщик. Действуя в рамках своих обязанностей, агент-сборщик готовит необходимый файл архива и устанавливает на него пароль (пароль № 1), а также создает вспомогательный текстовый файл, в котором будет сообщен пользовательский пароль (пароль №2). Понятно, что агент-сборщик следит за размером создаваемого архива, чтобы он укладывался в диапазон возможного размера записи диска. Если размер превышает допустимый, то создается

«о

0

1 £

«о ш

ш %

121

№ 6(24) 2009

Хост № 1

Агент-исполнитель № 1

Агент-исполнитель № 2

Агент-исполнитель № N

Агент-субординатор № 1

Агент-заказчик

Агент-координатор

Агент-наблюдатель

Агент-сборщик

Агент-кассир

Хост № К

Агент-исполнитель № К

Агент-субординатор № К

Рис. 2. Блок-схема многоагентной платформы интернет-предприятия

дополнительное количество проектов для записи. Пароли № 1 и № 2 вписываются в соответствующую запись заказа базы платформы в дополнительные поля. Заказ считается от-,§ правленным после того, как произошел прожиг диска, создалась резервная копия и напе-| чатался почтовый конверт. После этого агентка заказчик обновляет информацию о проекте а

| и ожидает события от агента-кассира о под-Ц тверждении оплаты. В то же время создается § агент-наблюдатель, который должен предос-| тавить агенту-заказчику, и, соответственно, | администратору платформы сводку о достав-§ ке товара. Данная опция становится доступ-ас ной, когда заказчик получит диск с архивом и вспомогательным файлом. Прочитав вспо-§ могательный файл, заказчику придется сооб-,§■ щить пароль № 2 на ресурсе интернет-предприятия, а также номер платежного докумен-| та. Таким образом, произойдет обмен между ^ агентом-заказчиком и агентом-кассиром че-| рез агента-координатора, в результате кото-^ рого агент-кассир подтвердит либо опровергнет правильность проведения платежа и со-3 общит о своем решении агенту-наблюдате-5 лю. Обновляя свою регистрационную запись § и указывая файловый пароль № 2, заказчик * подтверждает доставку диска, а также его це-^ лостность. Пароль № 1 на архив становится 1 доступным на сайте лишь после подтвержде-оа ния перечисленных денег.

122 V

Одним из событий агента-наблюдателя служит метод оповещения заказчика о стадии выполнения проекта посредством отправки соответствующего сообщения на e-mail.

СПИСОК ЛИТЕРАТУРЫ

1. Шогулин Э. В., Андреев В. В. Использование мно-гоагентных платформ // Математические методы в технике и технологиях — ММТТ-20: сб. трудов XX Междунар. науч. конф. В 10 т. Т. 6. Секция 12 / под общ. ред. В. С. Балакирева. Ярославль: Изд-во Яросл. гос. техн. ун-та, 2007. С. 196-198.

2. Шогулин Э. В., Андреев В. В. Многоагентная платформа для создания распределенных приложений / Технологии Microsoft в теории и практике программирования: материалы конференции / под ред. проф. Р. Г. Стронгина. Нижний Новгород: Изд-во Нижегородского гос. ун-та, 2007. С. 347-352.

3. Шогулин Э. В., Андреев В. В. Разработка многоагентной платформы для распараллеливания ресурсоемких задач / Вестник Чувашского университета. 2007. № 2. С. 190-196.

4. Тарасов В. Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика. М.: Эдиториал УРСС, 2002.

5. MaesP. Agent that Reduce Work and Information Overload // Communication of the ACM. 1994. Vol. 37. № 7.

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