Jump to content

3АПЛ

Язык программирования абстрактных агентов или язык программирования искусственных автономных агентов или 3APL (произносится как тройной APL) — это экспериментальный инструмент и язык программирования для разработки, реализации и тестирования нескольких когнитивных агентов с использованием подхода «Убеждение-Желание-Намерение » (BDI).

3APL был разработан и поддерживается командой факультета Утрехтского информатики университета в Нидерландах . Он облегчает спецификацию поведения когнитивного агента с использованием действий, убеждений, целей, планов и правил. Он был предметом по крайней мере 15 статей и конференций и по крайней мере 4 тезисов .

Платформа

[ редактировать ]

3APL Платформа имеет визуальный интерфейс для мониторинга и отладки запущенных на ней агентов, а также синтаксиса раскраски редактор для редактирования исходного кода . Он был выпущен как Java на основе программное обеспечение , которое поставляется с некоторыми спецификациями интерфейсов Java , которые можно использовать для разработки подключаемых модулей и библиотек на основе Java . Их можно использовать, например, для обеспечения видимого представления виртуальной среды. Платформа 3APL также может подключаться в роли клиента или сервера к другим платформам 3APL по сети , чтобы обеспечить связь между агентами 3APL на каждой платформе. облегченная версия 3APL для мобильных приложений , получившая название 3APL-M « Toymaker Также выпущена ».

Язык 3APL относительно прост. Синтаксис содержит базовые логические операторы AND , OR и NOT IF-THEN-ELSE , с условными операторами и структуры цикла управления WHILE-DO . Хотя временные переменные не могут быть созданы, кроме как путем вызова подключаемых методов или условий убеждения/цели, итеративные циклы счетчиков могут быть созданы с использованием комбинации циклов WHILE-DO, убеждений и возможностей.

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

PROGRAM "agent"
BELIEFBASE {}
CAPABILITIES {}
GOALBASE {}
PLANBASE {}
PG-RULES {}
PR-RULES {}

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

BELIEFBASE {
	status(standby).
	at(0,0).
	location(r1,2,4).
	location(r5,6,1).
	dirty(r1).
	dirty(r5).
}

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

CAPABILITIES {
	{status(S1)} SetStatus(S2) {NOT status(S1), status(S2)},
	{at(X1,Y1)} NowAt(X2,Y2) {NOT at(X1,Y1), at(X2,Y2)},
	{dirty(R)} Clean(R) {NOT dirty(R)}
}

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

GOALBASE {
	cleanRoom(r1).
	cleanRoom(r5).
}

В идеале каждая цель имеет связанные с ней правила планирования целей, свои правила PG, которые служат абстрактными планами и вызываются из целей, пока соблюдаются их охранные условия.

PG-RULES {
	cleanRoom(R) <- dirty(R) | {
		SetStatus(cleaning(R));
		goTo(R);
		clean(R);
		SetStatus(standby);
	}
}

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

PLANBASE { SetStatus(started); }
PR-RULES {
	goTo(R) <- location(R,X,Y) AND NOT at(X,Y) | {
		NowAt(X,Y);
	}
	clean(R) <- location(R,X,Y) AND at(X,Y) | {
		Clean(R);
	}
}

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

Java("JanitorWorld", moveNorth(), M);

Агенты также могут общаться друг с другом с помощью команд отправки . Когда часть информации X отправляется с перформативом P от агента A к агенту B, действие отправки записывается в базе убеждений A как отправленное (B,P,X) и регистрируется в базе убеждений B как полученное (A,P ,Х) .

Send(Partner,inform,dirty(R));

3APL доступен для загрузки на веб-сайте 3APL Университета Утрехта, в комплекте с образцами одиночных и коммуникативных агентов, а также дискретным подключаемым модулем мультиагентной среды переднего плана под названием BlockWorld .

См. также

[ редактировать ]

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 8e07579932e3797f1c4d9d08a2d84cf5__1689424920
URL1:https://arc.ask3.ru/arc/aa/8e/f5/8e07579932e3797f1c4d9d08a2d84cf5.html
Заголовок, (Title) документа по адресу, URL1:
3APL - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)