Агентно-ориентированный подход

Поделись знанием:
Перейти к: навигация, поиск
Парадигмы программирования
 • Императивная
(контрастирует с декларативной)
Процедурная
Структурная
Аспектно-ориентированная
Объектно-ориентированная
Агентно-ориентированная
Компонентно-ориентированная
Прототипно-ориентированная
Обобщённое программирование

 • Декларативная
(контрастирует с императивной)

Чистота языка
Чистота функции
Функциональная
В терминах Рефал-машины
Аппликативная
Комбинаторная
Бесточечная
(чистая конкатенативная)
Логическая
Ограничениями

 • Конкатенативная
 • Векторная[en]
 • Метапрограммирование

Языково-ориентированная
Предметно-ориентированная
Пользователями[en]
Автоматизация процесса программирования
Рефлексивность
Гомоиконность[en]

 • Связанные темы

Программирование в крупном и мелком масштабе[en]
Модульность
Полиморфизм
Продолжения и CPS
Параллелизм и конкурентность

 • Методы и алгоритмы

Автоматное
Динамическое
Потоков данных
Событийно-ориентированное
Реактивное
Сервис-ориентированное

Агентно-ориентированный подход (в дальнейшем АОП) к программированию — разновидность представления программ или парадигма программирования, в которой основополагающими концепциями являются понятия агента и его ментальное поведение, зависящее от среды, в которой он находится. Концепция была предложена Шохемом (англ. Yoav Shoham) в 1990 г.[1]. Определение парадигмы, данное автором:[2]

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

Агентом является всё, что может рассматриваться как воспринимающее свою среду с помощью датчиков и воздействующее на эту среду с помощью исполнительных механизмов.[3]





Значение термина «агент»

Шохем, представляя агентно-ориентированный подход, как новую парадигму достаточно подробно обсуждает в каком смысле в ней используется слово агент. Дело в том, что данное слово может использоваться в различных близких смыслах. И хотя Шохем под агентом понимает программного агента, он базируется на теории искусственного интеллекта и отталкивается от понятия интеллектуальный агент, которое уже существовало ранее. Но, замечая, что это понятие достаточно расплывчато, он ставит перед собой цель преобразовать его для более формального применения в программировании, предлагая специальный AOП фреймворк. В итоге понятие агента, в отличие от простого объекта, наделяется рядом ментальных конструкций, таких как вера, обязанности и способности. Поэтому в языке программирования будут появляться различные ментальные категории, а семантика программирования будет связана с семантикой ментальных конструкций.[1]

Связанные понятия

Объект
 Программная сущность заданной структуры и конкретизированных механизмов взаимодействия с другими объектами посредством передачи сообщений. Сообщения формируются и отсылаются в ответ на пришедшие сообщения. Формирование сообщений происходит процедурами на основании данных.
Актор
Программная сущность заданной структуры и механизмов взаимодействия.
  • Содержит данные и процедуры.
  • Обладает инкапсуляцией, отношениями, наследованием и может порождать сообщения.
Агент
Программная сущность для выполнения поставленных задач. Обладает поведением, а именно: взаимодействует с внешней сложной и динамично-развивающейся средой, способной модифицироваться или быть модифицированной другими агентами в зависимости от конкретных условий. Взаимодействие подразумевает[4]:
  • восприятие динамики среды;
  • действия, изменяющие среду;
  • рассуждения в целях интерпретации наблюдаемых явлений, решения задач, вывода заключений и определения действий.

В зависимости от степени свободы среды, подразумевающей наличие в ней соответствующего типа агента, среды подразделяются на [5]:

Замкнутые
Конечное детерминированное или вероятностное описание всей среды, которое известно агенту априори или путём исследования.
Открытые
Конечное детерминированное или вероятностное описание локальной области среды, в которой находится агент и которое известно ему априори или путём исследования.
Трансформируемые
Динамически развивающиеся среды, развивающей структурой которых является агент.

Связь АОП и ООП

Агентно-ориентированный подход является частным случаем (специализацией) объектно-ориентированного программирования (ООП). В ООП вычислительный процесс понимается достаточно широко как система, собранная из объектов, которые взаимодействуют друг с другом через сообщения. АОП специализирует эти понятия, устанавливая состояние (называемое психическим состоянием) объектов (называемых агентами), состоящих из компонентов таких как верование (убеждения) (включая убеждения о мире, о себе, и о друг друге), способности, и решения, каждое из которых обладает определенным синтаксисом. Кроме того различные ограничения помещены в психическое состояние агента. Вычисление состоит из информирования агентов, выполнения их требований, выполняя их предложения, принимая, отклоняя, конкурируя, и помогая друг другу.[1]

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

Наличие у агента механизма целеобразования обеспечивает принципиально новый уровень автономии. Агент не обязательно выполняет распоряжения какого-либо другого агента или пользователя, он просто зависит от условий среды, включая цели и намерения других агентов. В отличие от объекта, агент может принять на себя определенные обязательства или, наоборот, отказаться от выполнения некоторой работы, мотивируя это отсутствием компетентности, занятостью другой задачей и т. п. В то же время, агент может выполнять такие действия как порождение, подавление и замена других агентов, активизация функций (как своих, так и у других агентов), активизация сценария деятельности, запоминание текущего состояния других агентов и пр.[6].

От задачи к реализации

Причины возникновения

Причины возникновения агентно-ориентированного подхода:

  1. необходимость преодоления границ операционных сред;
  2. устранение разнородности объектных моделей, вызванных тем, что классы и объекты, построенные в различных инструментальных средах, имеют определённые отличия.

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

В целом, система АОП должна включать следующие базовые компоненты:[7][8]

  • ограниченный формальный язык с соответствующими синтаксисом и семантикой для описания внутреннего состояния агента, которое определяется несколькими параметрами типа убеждений, желаний, намерений и обязательств;
  • язык программирования для спецификации агентов, включающий примитивные команды типа REQUEST и INFORM;
  • агентификатор, преобразующий нейтральные компоненты в программируемые агенты.

Основными свойствами, которыми должны обладать агенты, считаются:

  • Автономность — способность выполнять действия самостоятельно;
  • Гомогенность/гетерогенность — способность объединять однородные или разнородные функции;
  • Наличие «интеллекта», способности к обучению, коррекция поведения для улучшения собственной эффективности;
  1. Активное поведение, постоянный обмен информацией «внутри» агента и между агентом и средой;
  2. Коммуникативность — обмен данными с внешней средой;
  3. Восприятие среды — наличие специальных «средств» восприятия среды функционирования агента;
  4. Мобильность — перемещение агента внутри других программных и физических сред и/или компонентов.

Реализации

Распределённые объектные архитектуры (CORBA, DCOM, Java RMI, WEB-services), обладая многими перечисленными свойствами, имеют следующие недостатки:

  1. необходимость перекомпиляции программных кодов при внесении изменений в объекты и интерфейсы;
  2. невозможность динамической адаптации поведения программных объектов в зависимости от состояний и поведения среды;
  3. невозможность работы в явной форме с моделями знаний;

Распределённая объектная среда JADE (основана на Java RMI, Java CORBA IDL, Java Serialization и Java Reflection API) придаёт Java агентам следующие свойства:

  1. Автономность, способность выполнять действия самостоятельно: агент следует списку поведений, который может быть пополнен асинхронно, то есть и в режиме ожидания, и в режиме «занят — идёт работа».
  2. Устойчивость: не имея побочного эффекта после каждого поведения, имеет возможность отката.
  3. Активное поведение: заключается в том, что в случае неудачи, выполняются циклические попытки выполнить текущее, а затем перейти к следующему действию поведения. Во время выполнения поведения агент занят — не взаимодействует со средой. После завершения текущего поведения, агент переходит к следующему по списку, а в случае отсутствия списка — ожидает появление такового. Объект же в случае успеха не имеет спуска, а в случае неудачи — бросает задачу.
  4. Мобильность: возможность передавать агент в другой контейнер. Данное свойство возникает из отсутствия после выполнения каждого поведения побочного эффекта.

Структура агента

Структурно агента можно изобразить следующим образомК:Википедия:Статьи без источников (тип: не указан)[источник не указан 4666 дней]:

Агент
  |
  |->Ресурсы
  |
  |->Объекты
       |
       |->функции
       |
       |->данные

Структура поведения

Примеры

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

Рассмотрим предметную область «Торговля книгами», на которой будут проиллюстрированы шаги, необходимые для создания агентно-ориентированных приложений.

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

JADE

Для создания агента в JADE достаточно определить метод его инициализации:

import jade.core.Agent;

public class BookBuyerAgent extends Agent {
    protected void setup() {
        // Printout a welcome message
        System.out.println(“Hello! Buyer-agent “+getAID().getName()+” is ready.”);
    }
}

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

Агент может выполнять одновременно несколько моделей поведения. Однако важно заметить, что расписание нескольких моделей поведения в агенте имеет не упреждающий характер, а кооперативный. Это означает, что когда поведение исполняется по расписанию, его метод action() вызывается и работает до тех пор, пока не завершится. Поэтому именно программист определяет, когда агент переключается от исполнения данного поведения к выполнение следующего.

С учетом описанного механизма планирования важно подчеркнуть, что поведение, подобное представленному ниже, препятствует выполнению любого другого поведения, т.к его action() метод никогда не завершается.

public class  OverbearingBehaviour extends Behaviour { 
   public void action() { 
      while (true) { 
        // do something 
      } 
   } 
   
   public boolean done() { 
      return true; 
   } 
}

Напишите отзыв о статье "Агентно-ориентированный подход"

Примечания

  1. 1 2 3 Shoham Yoav [citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.123.5119&rep=rep1&type=pdf Agent Oriented Programming] (англ.) : Technical Report STAN-CS-90-1335. — Computer Science Department, Stanford University, 1990.
  2. Shoham Yoav. [www.masfoundations.org/downloading.html Multiagent systems: Algorithmic, Game-Theoretic, and Logical Foundations] = Artificial Intelligence: A Modern Approach. — Cambridge University Press, 2009. — 504 с. — ISBN 9780521899437. (Проверено 1 июня 2010)
  3. Стюарт Рассел, Питер Норвиг. Искусственный интеллект: современный подход = Artificial Intelligence: A Modern Approach. — второе. — М.: Вильямс. — 1407 с. — ISBN 5-8459-0887-6.
  4. Б.Хэйес-Рот
  5. [www.masters.donntu.edu.ua/2009/fvti/zaytsev/library/book8/ цитируется по Д.А.Поспелов]
  6. Тарасов В.Б. [www.masters.donntu.edu.ua/2009/fvti/zaytsev/library/book8/ Агенты, многоагентные системы, виртуальные сообщества: стратегическое направление в информатике и искусственном интеллекте] // Новости искусственного интеллекта : Сб.. — 1998. — № 2. — С. 5-63. (Проверено 25 мая 2010)
  7. Shoham Yoav. [www.cs.unb.ca/~ulieru/Teaching/CS6705/Shoham.pdf Agent-oriented programming] (англ.) // Artificial Intelligence. — 1993. — No. 60(1). — P. 51-92. [web.archive.org/web/20120113022101/www.cs.unb.ca/~ulieru/Teaching/CS6705/Shoham.pdf Архивировано] из первоисточника 13 января 2012. (Проверено 25 мая 2010)
  8. Тарасов В.Б. От многоагентных систем к интеллектуальным организациям: философия, психология, информатика. — М.: Эдиториал УРСС, 2002. — С. 352. — ISBN 5-8360-0330-0.

См. также

Литература

  • Зайцев И. М., Федяев О. И. [www.masters.donntu.edu.ua/2009/fvti/zaytsev/library/book0/ Агентно-ориентированный подход к моделированию интеллектуальных распределённых систем] : Сб. — Донецк: ДонНТУ, 2008. — С. 337-338.  (Проверено 1 июня 2010)
  • Камерон Хьюз, Трейси Хьюз. Параллельное и распределенное программирование с использованием С++. — М.: Вильямс, 2004. — 672 с. — ISBN 5-8459-0686-5.
  • Giovanni Caire [www.masters.donntu.edu.ua/2009/fvti/zaytsev/library/book1/ JADE tutorial for beginners] (рус.) = [jade.tilab.com/doc/tutorials/JADEProgramming-Tutorial-for-beginners.pdf original] / перевод И. М. Зайцев. (Проверено 25 мая 2010)
  • А.Н. Швецов. [window.edu.ru/window_catalog/files/r56179/62333e1-st20.pdf Агентно-ориентированные системы: от формальных моделей к промышленным приложениям]. Проверено 27 октября 2010. [www.webcitation.org/66eQxo6Ug Архивировано из первоисточника 3 апреля 2012].

Отрывок, характеризующий Агентно-ориентированный подход

– Ну, ну, хорошо! – сказал старый граф, – всё горячится. Всё Бонапарте всем голову вскружил; все думают, как это он из поручиков попал в императоры. Что ж, дай Бог, – прибавил он, не замечая насмешливой улыбки гостьи.
Большие заговорили о Бонапарте. Жюли, дочь Карагиной, обратилась к молодому Ростову:
– Как жаль, что вас не было в четверг у Архаровых. Мне скучно было без вас, – сказала она, нежно улыбаясь ему.
Польщенный молодой человек с кокетливой улыбкой молодости ближе пересел к ней и вступил с улыбающейся Жюли в отдельный разговор, совсем не замечая того, что эта его невольная улыбка ножом ревности резала сердце красневшей и притворно улыбавшейся Сони. – В середине разговора он оглянулся на нее. Соня страстно озлобленно взглянула на него и, едва удерживая на глазах слезы, а на губах притворную улыбку, встала и вышла из комнаты. Всё оживление Николая исчезло. Он выждал первый перерыв разговора и с расстроенным лицом вышел из комнаты отыскивать Соню.
– Как секреты то этой всей молодежи шиты белыми нитками! – сказала Анна Михайловна, указывая на выходящего Николая. – Cousinage dangereux voisinage, [Бедовое дело – двоюродные братцы и сестрицы,] – прибавила она.
– Да, – сказала графиня, после того как луч солнца, проникнувший в гостиную вместе с этим молодым поколением, исчез, и как будто отвечая на вопрос, которого никто ей не делал, но который постоянно занимал ее. – Сколько страданий, сколько беспокойств перенесено за то, чтобы теперь на них радоваться! А и теперь, право, больше страха, чем радости. Всё боишься, всё боишься! Именно тот возраст, в котором так много опасностей и для девочек и для мальчиков.
– Всё от воспитания зависит, – сказала гостья.
– Да, ваша правда, – продолжала графиня. – До сих пор я была, слава Богу, другом своих детей и пользуюсь полным их доверием, – говорила графиня, повторяя заблуждение многих родителей, полагающих, что у детей их нет тайн от них. – Я знаю, что я всегда буду первою confidente [поверенной] моих дочерей, и что Николенька, по своему пылкому характеру, ежели будет шалить (мальчику нельзя без этого), то всё не так, как эти петербургские господа.
– Да, славные, славные ребята, – подтвердил граф, всегда разрешавший запутанные для него вопросы тем, что всё находил славным. – Вот подите, захотел в гусары! Да вот что вы хотите, ma chere!
– Какое милое существо ваша меньшая, – сказала гостья. – Порох!
– Да, порох, – сказал граф. – В меня пошла! И какой голос: хоть и моя дочь, а я правду скажу, певица будет, Саломони другая. Мы взяли итальянца ее учить.
– Не рано ли? Говорят, вредно для голоса учиться в эту пору.
– О, нет, какой рано! – сказал граф. – Как же наши матери выходили в двенадцать тринадцать лет замуж?
– Уж она и теперь влюблена в Бориса! Какова? – сказала графиня, тихо улыбаясь, глядя на мать Бориса, и, видимо отвечая на мысль, всегда ее занимавшую, продолжала. – Ну, вот видите, держи я ее строго, запрещай я ей… Бог знает, что бы они делали потихоньку (графиня разумела: они целовались бы), а теперь я знаю каждое ее слово. Она сама вечером прибежит и всё мне расскажет. Может быть, я балую ее; но, право, это, кажется, лучше. Я старшую держала строго.
– Да, меня совсем иначе воспитывали, – сказала старшая, красивая графиня Вера, улыбаясь.
Но улыбка не украсила лица Веры, как это обыкновенно бывает; напротив, лицо ее стало неестественно и оттого неприятно.
Старшая, Вера, была хороша, была неглупа, училась прекрасно, была хорошо воспитана, голос у нее был приятный, то, что она сказала, было справедливо и уместно; но, странное дело, все, и гостья и графиня, оглянулись на нее, как будто удивились, зачем она это сказала, и почувствовали неловкость.
– Всегда с старшими детьми мудрят, хотят сделать что нибудь необыкновенное, – сказала гостья.
– Что греха таить, ma chere! Графинюшка мудрила с Верой, – сказал граф. – Ну, да что ж! всё таки славная вышла, – прибавил он, одобрительно подмигивая Вере.
Гостьи встали и уехали, обещаясь приехать к обеду.
– Что за манера! Уж сидели, сидели! – сказала графиня, проводя гостей.


Когда Наташа вышла из гостиной и побежала, она добежала только до цветочной. В этой комнате она остановилась, прислушиваясь к говору в гостиной и ожидая выхода Бориса. Она уже начинала приходить в нетерпение и, топнув ножкой, сбиралась было заплакать оттого, что он не сейчас шел, когда заслышались не тихие, не быстрые, приличные шаги молодого человека.
Наташа быстро бросилась между кадок цветов и спряталась.
Борис остановился посереди комнаты, оглянулся, смахнул рукой соринки с рукава мундира и подошел к зеркалу, рассматривая свое красивое лицо. Наташа, притихнув, выглядывала из своей засады, ожидая, что он будет делать. Он постоял несколько времени перед зеркалом, улыбнулся и пошел к выходной двери. Наташа хотела его окликнуть, но потом раздумала. «Пускай ищет», сказала она себе. Только что Борис вышел, как из другой двери вышла раскрасневшаяся Соня, сквозь слезы что то злобно шепчущая. Наташа удержалась от своего первого движения выбежать к ней и осталась в своей засаде, как под шапкой невидимкой, высматривая, что делалось на свете. Она испытывала особое новое наслаждение. Соня шептала что то и оглядывалась на дверь гостиной. Из двери вышел Николай.
– Соня! Что с тобой? Можно ли это? – сказал Николай, подбегая к ней.
– Ничего, ничего, оставьте меня! – Соня зарыдала.
– Нет, я знаю что.
– Ну знаете, и прекрасно, и подите к ней.
– Соооня! Одно слово! Можно ли так мучить меня и себя из за фантазии? – говорил Николай, взяв ее за руку.
Соня не вырывала у него руки и перестала плакать.
Наташа, не шевелясь и не дыша, блестящими главами смотрела из своей засады. «Что теперь будет»? думала она.
– Соня! Мне весь мир не нужен! Ты одна для меня всё, – говорил Николай. – Я докажу тебе.
– Я не люблю, когда ты так говоришь.
– Ну не буду, ну прости, Соня! – Он притянул ее к себе и поцеловал.
«Ах, как хорошо!» подумала Наташа, и когда Соня с Николаем вышли из комнаты, она пошла за ними и вызвала к себе Бориса.
– Борис, подите сюда, – сказала она с значительным и хитрым видом. – Мне нужно сказать вам одну вещь. Сюда, сюда, – сказала она и привела его в цветочную на то место между кадок, где она была спрятана. Борис, улыбаясь, шел за нею.
– Какая же это одна вещь ? – спросил он.
Она смутилась, оглянулась вокруг себя и, увидев брошенную на кадке свою куклу, взяла ее в руки.
– Поцелуйте куклу, – сказала она.
Борис внимательным, ласковым взглядом смотрел в ее оживленное лицо и ничего не отвечал.
– Не хотите? Ну, так подите сюда, – сказала она и глубже ушла в цветы и бросила куклу. – Ближе, ближе! – шептала она. Она поймала руками офицера за обшлага, и в покрасневшем лице ее видны были торжественность и страх.
– А меня хотите поцеловать? – прошептала она чуть слышно, исподлобья глядя на него, улыбаясь и чуть не плача от волненья.
Борис покраснел.
– Какая вы смешная! – проговорил он, нагибаясь к ней, еще более краснея, но ничего не предпринимая и выжидая.
Она вдруг вскочила на кадку, так что стала выше его, обняла его обеими руками, так что тонкие голые ручки согнулись выше его шеи и, откинув движением головы волосы назад, поцеловала его в самые губы.
Она проскользнула между горшками на другую сторону цветов и, опустив голову, остановилась.
– Наташа, – сказал он, – вы знаете, что я люблю вас, но…
– Вы влюблены в меня? – перебила его Наташа.
– Да, влюблен, но, пожалуйста, не будем делать того, что сейчас… Еще четыре года… Тогда я буду просить вашей руки.
Наташа подумала.
– Тринадцать, четырнадцать, пятнадцать, шестнадцать… – сказала она, считая по тоненьким пальчикам. – Хорошо! Так кончено?
И улыбка радости и успокоения осветила ее оживленное лицо.
– Кончено! – сказал Борис.
– Навсегда? – сказала девочка. – До самой смерти?
И, взяв его под руку, она с счастливым лицом тихо пошла с ним рядом в диванную.


Графиня так устала от визитов, что не велела принимать больше никого, и швейцару приказано было только звать непременно кушать всех, кто будет еще приезжать с поздравлениями. Графине хотелось с глазу на глаз поговорить с другом своего детства, княгиней Анной Михайловной, которую она не видала хорошенько с ее приезда из Петербурга. Анна Михайловна, с своим исплаканным и приятным лицом, подвинулась ближе к креслу графини.
– С тобой я буду совершенно откровенна, – сказала Анна Михайловна. – Уж мало нас осталось, старых друзей! От этого я так и дорожу твоею дружбой.
Анна Михайловна посмотрела на Веру и остановилась. Графиня пожала руку своему другу.
– Вера, – сказала графиня, обращаясь к старшей дочери, очевидно, нелюбимой. – Как у вас ни на что понятия нет? Разве ты не чувствуешь, что ты здесь лишняя? Поди к сестрам, или…
Красивая Вера презрительно улыбнулась, видимо не чувствуя ни малейшего оскорбления.
– Ежели бы вы мне сказали давно, маменька, я бы тотчас ушла, – сказала она, и пошла в свою комнату.
Но, проходя мимо диванной, она заметила, что в ней у двух окошек симметрично сидели две пары. Она остановилась и презрительно улыбнулась. Соня сидела близко подле Николая, который переписывал ей стихи, в первый раз сочиненные им. Борис с Наташей сидели у другого окна и замолчали, когда вошла Вера. Соня и Наташа с виноватыми и счастливыми лицами взглянули на Веру.
Весело и трогательно было смотреть на этих влюбленных девочек, но вид их, очевидно, не возбуждал в Вере приятного чувства.
– Сколько раз я вас просила, – сказала она, – не брать моих вещей, у вас есть своя комната.
Она взяла от Николая чернильницу.
– Сейчас, сейчас, – сказал он, мокая перо.
– Вы всё умеете делать не во время, – сказала Вера. – То прибежали в гостиную, так что всем совестно сделалось за вас.
Несмотря на то, или именно потому, что сказанное ею было совершенно справедливо, никто ей не отвечал, и все четверо только переглядывались между собой. Она медлила в комнате с чернильницей в руке.
– И какие могут быть в ваши года секреты между Наташей и Борисом и между вами, – всё одни глупости!
– Ну, что тебе за дело, Вера? – тихеньким голоском, заступнически проговорила Наташа.
Она, видимо, была ко всем еще более, чем всегда, в этот день добра и ласкова.
– Очень глупо, – сказала Вера, – мне совестно за вас. Что за секреты?…
– У каждого свои секреты. Мы тебя с Бергом не трогаем, – сказала Наташа разгорячаясь.
– Я думаю, не трогаете, – сказала Вера, – потому что в моих поступках никогда ничего не может быть дурного. А вот я маменьке скажу, как ты с Борисом обходишься.
– Наталья Ильинишна очень хорошо со мной обходится, – сказал Борис. – Я не могу жаловаться, – сказал он.
– Оставьте, Борис, вы такой дипломат (слово дипломат было в большом ходу у детей в том особом значении, какое они придавали этому слову); даже скучно, – сказала Наташа оскорбленным, дрожащим голосом. – За что она ко мне пристает? Ты этого никогда не поймешь, – сказала она, обращаясь к Вере, – потому что ты никогда никого не любила; у тебя сердца нет, ты только madame de Genlis [мадам Жанлис] (это прозвище, считавшееся очень обидным, было дано Вере Николаем), и твое первое удовольствие – делать неприятности другим. Ты кокетничай с Бергом, сколько хочешь, – проговорила она скоро.
– Да уж я верно не стану перед гостями бегать за молодым человеком…
– Ну, добилась своего, – вмешался Николай, – наговорила всем неприятностей, расстроила всех. Пойдемте в детскую.
Все четверо, как спугнутая стая птиц, поднялись и пошли из комнаты.
– Мне наговорили неприятностей, а я никому ничего, – сказала Вера.
– Madame de Genlis! Madame de Genlis! – проговорили смеющиеся голоса из за двери.
Красивая Вера, производившая на всех такое раздражающее, неприятное действие, улыбнулась и видимо не затронутая тем, что ей было сказано, подошла к зеркалу и оправила шарф и прическу. Глядя на свое красивое лицо, она стала, повидимому, еще холоднее и спокойнее.

В гостиной продолжался разговор.
– Ah! chere, – говорила графиня, – и в моей жизни tout n'est pas rose. Разве я не вижу, что du train, que nous allons, [не всё розы. – при нашем образе жизни,] нашего состояния нам не надолго! И всё это клуб, и его доброта. В деревне мы живем, разве мы отдыхаем? Театры, охоты и Бог знает что. Да что обо мне говорить! Ну, как же ты это всё устроила? Я часто на тебя удивляюсь, Annette, как это ты, в свои годы, скачешь в повозке одна, в Москву, в Петербург, ко всем министрам, ко всей знати, со всеми умеешь обойтись, удивляюсь! Ну, как же это устроилось? Вот я ничего этого не умею.
– Ах, душа моя! – отвечала княгиня Анна Михайловна. – Не дай Бог тебе узнать, как тяжело остаться вдовой без подпоры и с сыном, которого любишь до обожания. Всему научишься, – продолжала она с некоторою гордостью. – Процесс мой меня научил. Ежели мне нужно видеть кого нибудь из этих тузов, я пишу записку: «princesse une telle [княгиня такая то] желает видеть такого то» и еду сама на извозчике хоть два, хоть три раза, хоть четыре, до тех пор, пока не добьюсь того, что мне надо. Мне всё равно, что бы обо мне ни думали.
– Ну, как же, кого ты просила о Бореньке? – спросила графиня. – Ведь вот твой уже офицер гвардии, а Николушка идет юнкером. Некому похлопотать. Ты кого просила?
– Князя Василия. Он был очень мил. Сейчас на всё согласился, доложил государю, – говорила княгиня Анна Михайловна с восторгом, совершенно забыв всё унижение, через которое она прошла для достижения своей цели.
– Что он постарел, князь Василий? – спросила графиня. – Я его не видала с наших театров у Румянцевых. И думаю, забыл про меня. Il me faisait la cour, [Он за мной волочился,] – вспомнила графиня с улыбкой.
– Всё такой же, – отвечала Анна Михайловна, – любезен, рассыпается. Les grandeurs ne lui ont pas touriene la tete du tout. [Высокое положение не вскружило ему головы нисколько.] «Я жалею, что слишком мало могу вам сделать, милая княгиня, – он мне говорит, – приказывайте». Нет, он славный человек и родной прекрасный. Но ты знаешь, Nathalieie, мою любовь к сыну. Я не знаю, чего я не сделала бы для его счастья. А обстоятельства мои до того дурны, – продолжала Анна Михайловна с грустью и понижая голос, – до того дурны, что я теперь в самом ужасном положении. Мой несчастный процесс съедает всё, что я имею, и не подвигается. У меня нет, можешь себе представить, a la lettre [буквально] нет гривенника денег, и я не знаю, на что обмундировать Бориса. – Она вынула платок и заплакала. – Мне нужно пятьсот рублей, а у меня одна двадцатипятирублевая бумажка. Я в таком положении… Одна моя надежда теперь на графа Кирилла Владимировича Безухова. Ежели он не захочет поддержать своего крестника, – ведь он крестил Борю, – и назначить ему что нибудь на содержание, то все мои хлопоты пропадут: мне не на что будет обмундировать его.
Графиня прослезилась и молча соображала что то.
– Часто думаю, может, это и грех, – сказала княгиня, – а часто думаю: вот граф Кирилл Владимирович Безухой живет один… это огромное состояние… и для чего живет? Ему жизнь в тягость, а Боре только начинать жить.