Агенты: исходное определение
Одной из причин, по которой слово объект может заменить с л ово агент во многих определениях и описаниях агента, состоит в том, что агенты по сути основаны на объектах. И в самом деле, наше первое требование к определению агента заключается в том, что оно в первую очередь должно удовлетворять определению объекта [19], т.е. мы имеем в виду, что агент — это объект определенного вида. В этой главе особый акцент делается на том, что отличает агента от других категорий объектов. Исходя из того, что С++ поддерживает интерфейсные, контейнерные и каркасные классы, мы можем с таким же успехом ввести и агентные классы. Это приводит нас ко второму требованию, выдвигаемому к определению агентов в С++-среде. В С++ агент реализуется с использованием понятия класса. Типы классов отличаются друг от друга тем, как они функционируют, или тем, как они структурированы. Например, контейнерный класс описывает объект, используемый для хранения других объектов. Интерфейсный класс применяется для описания объекта, который преобразует или адаптирует интерфейс другого объекта. Каркасный класс описывает объект, который содержит шаблон, или образец поведения, являющегося общим для целого семейства других объектов. Агентные классы предназначены для определения объектов, которые обладают тем, что Иогав Шохам (Yohav Shoham) описывает как психическое (интеллектуальное) состояние: «Психическое состояние должно включать такие компоненты, как представления, возможности, варианты выбора и обязательства». Это психическое состояние зачастую описывается моделью убеждений, желаний и намерений (Belief, Desires and Intentions — BDI). Мы расширяем модель BDI, чтобы включить в нее действия. Теперь в нашем первом определении агент описывается как часть ПО, отвечающая следующим требованиям.
1. Это определенный тип объекта (т.е. не все объекты являются агентами).
2. Его реализация использует понятие класса (для агентов весьма существенны инкапсуляция, наследование и полиморфизм).
3. Он содержит набор поведенческих вариантов и атрибутов, которые должны включатьубеждения, желания, намерения идействия.
В рамках нашего изложения материала агенты по определению являются рациональными программными компонентами. Прежде чем мы перейдем к дельнейшему определению агентов, рассмотрим типы агентов, которые реализуются чаще всего.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОК