Камерон Хьюз - Параллельное и распределенное программирование на С++

Тут можно читать онлайн Камерон Хьюз - Параллельное и распределенное программирование на С++ - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-programming, издательство Издательский дом «Вильямс», год 2004. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Параллельное и распределенное программирование на С++
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом «Вильямс»
  • Год:
    2004
  • Город:
    МоскваСанкт-ПетербургКиев
  • ISBN:
    ISBN 5-8459-0686-5 (рус.)ISBN 0-13-101376-9 (англ.)
  • Рейтинг:
    3/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Камерон Хьюз - Параллельное и распределенное программирование на С++ краткое содержание

Параллельное и распределенное программирование на С++ - описание и краткое содержание, автор Камерон Хьюз, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
В книге представлен архитектурный подход к распределенному и параллельному программированию с использованием языка С++. Здесь описаны простые методы программирования параллельных виртуальных машин и основы разработки кластерных приложений. Эта книга не только научит писать программные компоненты, предназначенные для совместной работы в сетевой среде, но и послужит надежным «путеводителем» по стандартам для программистов, которые занимаются многозадачными и многопоточными приложениями. Многолетний опыт работы привел авторов книги к использованию агентно-ориентированной архитектуры, а для минимизации затрат на обеспечение связей между объектами системы они предлагают применить методологию «классной доски».
Эта книга адресована программистам, проектировщикам и разработчикам программных продуктов, а также научным работникам, преподавателям и студентам, которых интересует введение в параллельное и распределенное программирование с использованием языка С++.

Параллельное и распределенное программирование на С++ - читать онлайн бесплатно полную версию (весь текст целиком)

Параллельное и распределенное программирование на С++ - читать книгу онлайн бесплатно, автор Камерон Хьюз
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

1. Это определенный тип объекта (т.е. не все объекты являются агентами).

2. Его реализация использует понятие класса (для агентов весьма существенны инкапсуляция, наследование и полиморфизм).

3. Он содержит набор поведенческих вариантов и атрибутов, которые должны включатьубеждения, желания, намерения идействия.

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

Типы агентов

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

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

Табл и ца 12.1. Пять ос н ов н ых категор и й аге н тов

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

Агенты поиска Выполняют различные виды поиска информации

Агенты мониторинга /управления Патрулируют, наблюдают, отслеживают (выполняемые действия), управляют и контролируют устройства и условия, данные и процессы

Агенты сбора данных Уполномочены запросить некоторые данные или услуги от имени пользователя

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

В чем состоит разница между объектами и агентами

Агент прежде всего должен отвечать условиям объектной ориентации. Это означает, что агенты и объекты имеют больше общего, чем многие специалисты хотели бы это признать. Именно функциональнал и конструктивная составляющие объектов сближают их с агентами. Объекты по определению самодостаточны и проявляют определенную автономность. Если степень автономности пересекает определенный порог, и объекту предоставляются такие когнитивные (познавательные) структуры данных, как те, что характерны для модели BDI, то такой объект является агентом. Автономный рациональный объект является агенто м. [20]Объект считается рациональны м в случае, если он обладает:

м етода м и, которые реализуют некоторую фор м у дедукции, индукции или абдукции;

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

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

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

set Beliefs;

struct statement{

//. . .

float ArrivalTime;

float DepartureTime;

string Destination;

//.. .

};

Здесь инструкции связаны с составлением расписания для некоторого вида общественного, транспорта. Коллекция этих инструкций хранится в С++-множестве setи представляет «убеждения» агента. Это именно то, что мы подразу м евае м под члена м и данных, которые являются реализация м и когнитивных структур данных. Агент должен объявить член данных соответствующим образом.

class agent{

//.. .

set Beliefs;

//. . .

};

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

Понятие об агентно-ориентированном программировании

Агентно-ориентированное программирование — это процесс назначения работы, порученной программе, одному или нескольким агентам. В декомпозиции работ (Work Breakdown Structure — WBS) в этом случае участвуют только агенты. Если всю работу, которую должна выполнить программа, можно назначить одному или нескольким агентам, мы имеем дело с чистой агентно-ориентированной программой, в которой весь необходимый объем проектирования и разработки требует только агентно-ориентированного программирования. Во многих ситуациях нарялу с агентами в приложении будут задействованы и другие виды объектов и систем, которые не являются агентно-ориентированными, и, следовательно, такое программирование нельзя назвать агентно-ориентированным. Подобное сотрудничество часто имеет место, когда агенты участвуют в работе серверов баз данных, серверов приложений и других типов объектно-ориентированных систем. При создании систем ПО — либо полностью агентно-ориентированных, либо только частично — создаются рациональные объектно-ориентированные программные компоненты.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Камерон Хьюз читать все книги автора по порядку

Камерон Хьюз - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Параллельное и распределенное программирование на С++ отзывы


Отзывы читателей о книге Параллельное и распределенное программирование на С++, автор: Камерон Хьюз. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x