Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Деякі поняття. 
Характеристика основних елементів агентно-орієнтованого програмування

РефератДопомога в написанніДізнатися вартістьмоєї роботи

З урахуванням наведеного механізму планування важливо підкреслити, що поведінка, подібна представленій нижче, перешкоджає виконанню будь-якої іншої поведінки, бо його action () метод ніколи не завершується. Фактична робота, яку агент повинен робити, як правило, здійснюється в рамках «поведінки агента». Поведінка представляє собою завдання, яку агент може виконувати. Відкриті: кінцеве… Читати ще >

Деякі поняття. Характеристика основних елементів агентно-орієнтованого програмування (реферат, курсова, диплом, контрольна)

  • · Об'єкт — програмна сутність заданої структури та конкретизованих механізмів взаємодії з іншими об'єктами за допомогою передачі повідомлень. Повідомлення формуються і відсилаються у відповідь на отримані повідомлення. Формування повідомлень відбувається процедурами на підставі даних.
  • · Актор — програмна сутність заданої структури і механізмів взаємодії.

Містить дані і процедури.

Інкапсуляція, відношення, успадкування, породження повідомлень.

· Агент — програмна сутність для виконання поставлених завдань.

Володіє поведінкою, а саме: взаємодіє із зовнішнім складною і динамічно-розвивається середовищем, здатної модифікуватися або бути модифікованої іншими агентами в залежності від конкретних умов. Взаємодія має на увазі:

  • · Сприйняття динаміки середовища;
  • · Дії, що змінюють середовище;
  • · Міркування з метою інтерпретації спостережуваних явищ, вирішення завдань, виведення висновків і визначення дій.

Види середовищ:

Залежно від ступеню свободи середовища, що припускає наявність у ній відповідного типу агента, середовища поділяються на:

  • · Замкнуті: кінцеве детерміноване або імовірнісний опис всього середовища, яке відоме агенту апріорі або шляхом дослідження.
  • · Відкриті: кінцеве детерміноване або імовірнісний опис локальній області середовища, в якій знаходиться агент і яке відоме йому апріорі або шляхом дослідження.
  • · Трансформовані: середовища, що динамічно розвивається, структурою яких є агент.

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

Структурно агента можна зобразити наступним чином:

Агент-> Ресурси-> Об'єкти-> Функції-> Дані.

Загальні приклади використання.

Типовим прикладом агентно орієнтованого підходу можна назвати спеціальні програми, що імітують дії гравців в комп’ютерних іграх. Поширена назва для таких програм — боти. Однак, використання ботів не обмежується застосуванням в комп’ютерних іграх. Їх можна зустріти як елемент програми в чатах і форумах, що виконують роль «співрозмовника» і підтримуючих «дискусії». Однак деякі боти виконують не тільки роль імітаторів в процесі спілкування або гри, вони використовуються для редагування текстової інформації (у тому числі і в Вікіпедії), для налагодження мережевих з'єднань, модерування ресурсів і т.п.

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;

}.

}.

Приклад.

Типовим прикладом агентно орієнтованого підходу можна назвати спеціальні програми, що імітують дії гравців в комп’ютерних іграх. Поширена назва для таких програм — боти. Однак, використання ботів не обмежується застосуванням у комп’ютерних іграх. Їх можна зустріти як елемент програми в чатах і форумах, що виконують роль «співрозмовника» і підтримуючих «дискусії». Однак деякі боти виконують не тільки роль імітаторів в процесі спілкування або гри, вони використовуються для редагування текстової інформації (в тому числі і у Вікіпедії), для налагодження мережевих з'єднань, модерування ресурсів і т.п.

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

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

Показати весь текст
Заповнити форму поточною роботою