Prof.ARДокументацияОписание 2

Описание 2
Описание
SDK

Описание 2

Абстрактная модель следующая:

ИР (Искуственный Разум) состоит из агентов, разбросаных по разным компьютерам, которые взаимодействуют между собой через общую БЗ (или обмениваясь напрямую). БД состоит из фреймов.

Фрейм я себе сейчас представляю как XML файл, которому назначен уникальный номер (ID).

Агенты выполняют определенные запрограммированые действия, но код каждого агента также представлен в виде фрейма (в виде XML) и может быть изменен (в том числе во время выполнения).

Кто будет изменять програмный код агента? Или человек, или сам агент, если в нем это предусмотрено или специальный агент задачей которого будет выявление зависимостей, вычисление более оптимальных алгоритмов и составление (изменение) програмного кода для создания (изменения) агентов.

Основной вопрос с выбором реализации я думаю решен - все будет в виде XML. Кто не согласен?

Теперь вопрос следующий:

Существуют интерпретаторы XSL (XSLT) c генерацией HTML, Существует JSP, Существует AJAX (как я понял это переименованый JSP).

Вопрос: стоит ли использовать какой-то стандартный интерпретатор-генератор (вроде бы в Apath это давно есть) или для этих целей нужно написать свой?

На сколько я понял все такие системы придуманы для генерации в итоге HTML для отображения человеку. Но вродебы ничего не мешает генерировать XML-фреймы (данные и код для выполнения) для ИИ-Агентов.

Или я гдето ошибся в размышлениях?


Абстракная модель (часть 2)

XML + XSLT = XML, XSLT + XSLT = XSLT - это очень хорошо хорошо подойдет для Базы Знаний и для выборки из БЗ. Но запрограммировать ИР только на XML + XSD + XSLT помему не получится (покрайней мере очень трудно).

Помоему нужно действовать примерно так:

Шаг 1: Создаем агента на каком-либо языке программирования, компилируем и выполняем. В процессе работы праграмма-агент может использовать любые алгоритмы и существующие наработки (.dll, .exe, ActiveX, .NET классы) а также использует XML БЗ. При запросах в XML БЗ какой-либо механизм обрабатывает запрос к БЗ и возвращает ответ в виде XML файла. При этом механизм может выдергивать XML файлы или гененировать их на основе XML + XSLT.

Описаный механизм может быть также программой-агентом, т.е. не просто делать выборки и преобразования, а также "думать" как лучше выбрать или представить данные (но в соответствии с XSD описанием!). Для этого могут использоваться любые алгоритмы ИИ (логический вывод, нейросети и т.д.).

Шаг 2: Создаем агента на языке XSLT, который будет действовать в своей объектной области. Входными данными будут XML файлы (данные и код), а также зчачения свойств объектов локальной объектной области. Выходныме данные также XML файлы (данные и код). Все это должно подчиняться описанию XSD.

Здесь выходной XML-файл-код может быть новой реализацией кода для нового агента или заменять выполняемый код (или часть кода) в этом же агенте.

Например агент управление движением робота: Локальная объектная область - несколько датчиков, несколько сервоприводов, список заданий, XML-код робота, XML-код алгоритмов, Описания внешних функций. Код робота может быть таким:

Абстрактный пример XML-кода для управления роботом

  Бесконечный цикл выполнения
  
   
   
    ol - нумерованый список. Означает, что действия должны быть выполнены по порядку.
    
  1. Выполнить внешнюю функцию из robot.dll. Получить список значений сенсоров. Результат поместить в переменную SensorValueList. Ошибка вызова функции GetSensorValueList из robot.dll. Начать следующий шаг выполнения
  2. Здесь сравнить показания датчиков с шаблонными ...
  3. Принять какое-либо решение в соответствии со списком заданий и выполнить вызвав соответствующую функцию из robot.dll ...

E-mail
© Prof 2006
08.11.2006
Сайт создан в системе uCoz