Многоагентные системы


Языки программирования агентов



Download 0,64 Mb.
bet14/22
Sana30.04.2022
Hajmi0,64 Mb.
#600356
1   ...   10   11   12   13   14   15   16   17   ...   22
Bog'liq
Городецкий В.И., Многоагентные системы (обзор)

6. Языки программирования агентов


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

6.1. Требования к языкам программирования агентов


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


1. Обеспечение переносимости кода на различные платформы. Это требование возникает всегда, когда необходимо обеспечить агента свойством мобильности. Чтобы обеспечить мобильность агента, язык должен поддерживать механизм посылки, передачи, получения и выполнения кодов, содержащих агентов. Имеются два различных подхода, которые решают проблему мобильности. Первый - это передача агента в текстовой форме, как специального сценария (script) с последующей интерпретацией этого сценария на принимающей машине. Второй - передача агента в форме машинно-независимого байт-кода. Этот байт-код генерируется транслятором на этапе создания агентской системы, посылается по сети и выполняется интерпретатором байт-кодов на принимающем компьютере. Оба из этих методов имеют свои преимущества и недостатки.
2. Доступность на многих платформах. Это требование непосредственно вытекает из предыдущего. Интеллектуальные агенты должны работать в гетерогенной компьютерной среде. Любой компьютер, получающий агента, должен быть способен принять и выполнить его.
3. Поддержка сетевого взаимодействия. Свойство агентов участвовать в переговорах и многие другие особенности агентов нуждаются в доступе к удаленным ресурсам. Поддержка сетевых услуг может включать семейства соответствующих программных интерфейсов (APIs) таких как: sockets, интерфейсы к базам данных, интерфейсы взаимодействия объектов (CORBA, OLE, ActiveX и т.д.), специальные механизмы, встроенные в язык (типа Remote Method Invocation в языке Java), специальные примитивы языка для осуществления переговоров агента и т.д.
4. Многопоточная обработка (“Multithreading”). Агент может выполнять некоторые действия одновременно. Тем самым, язык программирования агентов должен включать поддержку параллельного выполнения различных функций агента (типа “threads”) и различных примитивов синхронизации (семафоры, мониторы, критические секции, и т. д.). Кроме того, процесс который выполняет всех агентов (и может, фактически, рассматриваться как мета-агент) должен поддерживать параллельное выполнение агентов. Последнего можно добиться с помощью отдельной виртуальной машины с реализованным режимом вытесняющей многозадачности и собственной стратегией разделения времени.
5. Поддержка символьных вычислений. Так как в рамках современных взглядов агент должен активно использовать достижения и методы искусственного интеллекта, было бы полезно иметь поддержку символьных вычислений и, возможно, логического программирования, встроенную в язык (подобно PROLOG и LISP), а также иметь встроенный механизм выводов, включающий различные стратегии поиска решения. Автоматическое управление памятью и сборка мусора - стандартные средства для таких языков.
6. Безопасность, в частности, наличие системы защиты от несанкционированного доступа и “плохих кодов”. Это важно по многим причинам. Мобильные агенты, которые приходят из сети, могут таить в себе множество опасностей для принимающей машины, так как они выполняются в ее адресном пространстве. Для обеспечения безопасности перед передачей управления каждому агенту необходимо выполнить процесс авторизации агента, т. е. проверить, зарегистрирован ли он и имеет ли соответствующие полномочия (привилегии), чтобы выполнить то или иное действие или обратиться к некоторым ресурсам. Система безопасности должна предотвращать любые несанкционированные действия агента.
7. Истинная объектная ориентированность. Язык должен иметь механизмы наследования, рассматривать вызовы процедур как сообщения, передаваемые от одних объектов другим, включать возможности синхронного и асинхронного взаимодействия объектов, а также допускать параллельность внутри объекта.
8. Языковая поддержка свойств агента. Было бы, вероятно, удобно иметь поддержку специфических для агента свойств, встроенную в язык на уровне синтаксических конструкций, так, чтобы, например, свойства типа “beliefs-desires-intentions” (BDI), инструкции для переговоров и обеспечения мобильности, места встречи, и т.д. могли бы быть выражены с помощью соответствующих примитивов языка.

  1. Эффективность, достаточная для потребностей прикладных программ.

Download 0,64 Mb.

Do'stlaringiz bilan baham:
1   ...   10   11   12   13   14   15   16   17   ...   22




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish