Определение агента
sergey shishkinМодели информации и данных. Атом и универсум информации
Агент существует в определенной среде. По отношению к самому агенту, окружение, в котором он существует, является внешней средой.
Например, компьютерные агенты могут существовать в среде глобальной сети Интернет. И хотя мы можем на время отказаться от рассмотрения лишних и громоздких механизмов взаимодействия между агентами и сосредоточиться на внутренней структуре агента, в то же время мы не должны отказываться от его существования во внешней среде в целом при определении структуры агента.
Процессы взаимодействия с внешней средой не менее важны, чем процессы, протекающие внутри самой системы.
Рис.1 Взаимодействие агента с внешней средой *
Несмотря на то, что в данном случае используется понятие «агент», в общем, любая программная система в той или иной степени может рассматриваться как агент. В то же время, большинство программных систем нацелены на взаимодействие с человеком либо со строго определенными информационными системами, поэтому они в чистом виде не являются агентами многоагентных систем. Если рассматривать такое взаимодействие сквозь призму агентных систем, то большинство программных систем можно определить как частный вид агента, реализующих коммуникацию через человеко-машинный интерфейс (HMI, Human machine interface). При этом построение жестко структурированных экранных и электронных интерфейсов характеризует системы как жестко коммуницирующие. Это результат того, что системы являются слабо адаптивными, имеющими статичную структуру данных, а их функциональность может изменяться только под воздействием ручных корректировок программистом.
Поскольку мы рассматриваем человеко-машинные системы, мы предполагаем взаимодействие машинных систем между собой, взаимодействие человека с машинными системами и, разумеется, взаимодействие людей между собой. Все они, таким образом, могут рассматриваться как единая коммуникативная среда. А, соответственно, мы можем рассматривать человека как агента. Разумеется, с точки зрения современных машинных систем, человек – это очень умный агент.
Агент отличается от жестко коммуницирующих систем тем, что агент самостоятельно может инициировать контакт с другим агентом либо, как частный случай, выбирать источник данных для получения данных. Например, хорошим примером агента являются индексирующие системы поисковых интернет-систем. Они обращаются к серверам с данными на основе собственных предпочтений и алгоритмов индексации данных.
Большинство программ можно рассматривать как частный случай агента в человеко-машинной среде. Одновременно с этим существует большое количество программных систем, взаимодействующих между собой автономно. Большинство из них являются агентами, хотя их нельзя назвать интеллектуальными агентами. В частности, агентами в машинной среде являются любые программные продукты, которые взаимодействуют между собой, используя любой возможный интерфейс. Будь это FTP-протокол для обмена файлами по сети, HTTP для передачи запросов и данных через web-среду, SMTP для обмена почтовыми сообщениями или UDP для обмена различными данными на низком уровне.
Для обмена данными между программными системами существует масса протоколов обмена данных, средств упаковки данных и структур данных. Например, XML как язык разметки, позволяющий упаковать в себя произвольную структуру данных; SOAP как транспортный протокол передачи упакованных данных (сообщений).
Также сформировался специализированный класс программ, называемых middleware (ПО промежуточного уровня) как промежуточный уровень в коммуникации между различными программами. Программное обеспечение этого класса позволяет получать, отправлять, преобразовывать и буферизировать данные между различными программами-источниками и программами-получателями. Вместе с middleware существует и класс программ, обозначающих ETL (extract, transform, load – выделение, трансформация, загрузка), которые делают подготовку данных при их передаче для некоторой программной системы.
Агент – автономная сущность, обладающая памятью, совершающая процессы обработки данных и позволяющая обмениваться информацией через каналы коммуникации.
Автономность является одной из важнейших характеристик агента. Помимо прочего, эта характеристика связана с понятием собственности, в том числе материальной собственности, как например, наличие собственных носителей данных. Собственность агента может быть связана с материальной сущностью агента, то есть все, что заключено в аппаратном обеспечении агента рассматривается как собственность. Кроме того, собственность может быть связана с хранимыми данными, специфическими правилами обработки данных, специфическими правилами и средствами коммуникации. Таким примером являются авторские права и ноу-хау.
Необходимо сказать несколько слов о целостности агента. Агент – это система с определенным набором составляющих компонентов. Без части составляющих, например, носителей данных, агент не может существовать или рассматриваться как агент.
Примерами агентов могут служить компьютеры, отдельные приложения, люди, группы людей. Для каждого из этих агентов характерны единый коммуникационный канал, а для группы людей – единая позиция для внешних коммуникаций, единая структура хранения данных и система обработки данных.