Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MAC_answers.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
136.01 Кб
Скачать

25. Класифікація мов програмування агентів.

Класифікацію агентів можна провести в двох напрямках – на їхінструментальної реалізації (мови програмування агентів) і за основнимиприкметами, якими вони володіють.Слід зазначити, що на сьогодні не існує мови програмування, чи інструментальної системи розробки, яка б повністю відповідалавимогам побудови агентів. З точки зору принципів розподіленогооб'єктно-орієнтованого програмування (ООП) необхідність передачіметодів може бути істотно скорочена в тому випадку, якщо може бутизабезпечений віддалений доступ до загальних методів за допомогою передачі посилань навіддалені об'єкти, даних примірників цих об'єктів і їх статків. Однакна додаток до концепції ООП, кожний агент має можливість створення копійсамого себе з повною або обмеженою функціональністю, забезпечуючиможливість налаштування на середу шляхом виключення неефективних методів ізаміни їх новими. Традиційна для ООП схема клас/об 'єкт порушується, тому щоагент має можливість постійної зміни сценарію поведінки без йогозміни в батьківському класі. Багатозначне спадкування дозволяєстворювати екземпляри агентів, змішуючи сценарії поведінки, схемиуспадкування та атрибути, визначені у батьківських класах. Отже, система розробки, яка б повністю відповідалавимогам побудови агентів, мала б відповідати такимвимогам: забезпечення перенесення коду на різні платформи,доступність на багатьох платформах, підтримка мережевої взаємодії,Багатопотокова обробка та деякі інші. Нижченаведена класифікаціямов, що найчастіше використовуються у технології інтелектуальних агентів. Слід зазначити, що границі між групами носять достатньо умовний характер. 1) Універсальні мови програмування (Java). 2) Мови, «орієнтовані на знання»: а) мови представлення знань (KIF), б) мови переговорів і обміну знаннями (KQML, AgentSpeak, April), в) мови специфікацій агентів. 3) Спеціалізовані мови програмування агентів (TeleScript). 4) Мови сценаріїв і scripting languages (Tcl/Tk). 5) Символьні мови і мови логічного програмування (Oz).

26. Порівняльна характеристика мов. Мова Java.

Java – імовірно, одна з найбільш популярних мов, щовикористовуються останнім часом для програмування агентів. Java представляє із себе мову програмування, подібну до C++ за синтаксисом, але більш схожу зі Smalltalk і Objective-C за ідеологією. Система програмування на Java містить у собі віртуальну машину Java і транслятор з Java у bytecode.Мова Java передбачає створення додатків, що переносяться на різні платформи. Програма, написана на Java, компілюється в спеціальний машинно-незалежний байт-код. Потім цей код може бути виконаний за допомогою інтерпретатора Java на будь-якому комп'ютері, де реалізована Java Virtual Machine.Тим самим забезпечується платформо-незалежність Java - додатків на рівні байта-коду, що може надходити відкіля завгодно, включаючи Web-сторінку, у якій міститься посилання на нього. Java Virtual Machine працює в середовищівитискуючої мультизадачності і підтримує полегшені процеси (threads). Засоби створення і синхронізації таких процесів включені в Java на рівні мовних конструкцій і класів. Засоби мультизадачності також покликані забезпечити реакцію системи в реальному часі для мультимедійнихх додатків, критичних дочасу. Java являє собою дійсно об’єктно-орієнтовану мову програмування із сильною типізацією. Схожість з C++ робить її простою для вивчення програмістами. В ній відсутній гранично чіткий розподіл пам'яті і для підвищення надійності програм з мови виключена арифметика покажчиків. Кожен тип даних розуміється як клас об'єктів, будь-яка функція є методом класу. Її виклик розглядається з об’єктно-орієнтованихпозицій як посилка повідомлення об'єкту. Існуєвбудована розширювана бібліотека класів, що включає Abstract Window Toolkit (AWT) для створення користувацьких інтерфейсів, класи підтримки основних типів даних, threads, мережних можливостей, графіки, мультимедіа тощо. Мова Java був спроектована з урахуванням можливості створення додатків, щопрацюють у розподіленому середовищі.Крім підтримки можливостей TCP/IP, таких як читання URLs, роботу із сокетами та обмін повідомленнями на рівні датаграмм, у Java передбачений механізм віддаленого виклику об'єктів, визначений у специфікації RMI (Remote Method Invocation). Цей механізм дозволяє викликати методи віддаленихоб'єктів, оголошені в спеціальному інтерфейсі, причому синтаксично такий виклик виглядає ідентично виклику простого методу. Ця схема надає більш гнучкі можливості в порівнянні з традиційним протоколом RPC (Remote Procedure Call). Механізм серіалізації (Serialization) дозволяє зберігати об'єкти і графи об'єктів у потоках даних (файлах, мережних каналах) і відновлювати їх при необхідності. На сьогоднішній день Java доступна на наступних платформах: Windows 95/NT, Solaris (Intel, SPARC), Macintosh System 7.5.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]