Prof.AR → Документация → Описание 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-код алгоритмов, Описания внешних функций. Код робота может быть таким:
|