Разделы
Счетчики
Подход к созданию Искусственного Разума (ИР) в виде Черного Ящика (ЧЯ)
Если рассматривать ИР как черный ящик, то первоначально нужно определится что мы хотим? Т.е. какие входные данные будут поступать в ЧЯ и выходные данные будут выходить из ЧЯ. Здесь я рассматриваю создание ИР как компьютерной программы. Причем не распределенной компьютерной программы, а локальной. Возможно программа будет черпать знания от других таких же программ (либо специальных хранилищ знаний).
Черный ящик 0
Рассмотрим устройства ввода и вывода данных.
Устройства ввода данных:
- Клавиатура
- Мышь
- Микрофон
- Веб-камера
- Сканер
Выходные устройства:
- Монитор
- Колонки
- Принтер
Соответсвенно имеем (после преобразования):
Входные данные (рассмотрим первые 4 устроуства ввода данных):
- Клавиатура: Конечное текстовое сообщение, либо сочетание нажатых клавишь в текущий момент (применяется в играх).
- Мышь: После обработки в графической среде получаем события о нажатии на объекты или перетаскивании объектов. Может быть представлено в виде сообщения. В том числе в виде текстового сообщения.
- Микрофон: Поток данных, который может быть разбит на дискретные части. Получаем массивы данных, которые могут быть преобразованы в сообщение. В случае, если распознан голос, то будет текстовое сообщение с информацией об интонации, об принадлежности голоса какому-то известному человеку и другие параметры
- Веб камера: Поток данных, который может быть разделен на отдельные отрывки или отдельные кадры. Отрывки и кадры могут распознаваться различными способами в зависимости от контента. Распознаные изображения могут быть представлены в виде сообщений с информацией об изменении изображенных объектов.
Выходные данные (Рассмотрим первые 2 устройства вывода данных):
- Монитор: Изображение (2D и 3D) обычно строится из графических объектов. Графические объекты могут быть представлены в виде записей определенного формата и передаваться в виде сообщений.
- Колонки: Звук может генерироваться из сообщений определенного формата. Может генерироваться также и человеческая речь из текстовых сообщений.
Черный ящик 0 можно представить в виде такой картинки:
Все сообщения могу быть представлены в бинарном виде, в виде строки текста или в XML виде.
Черный ящик 1
Углубляемся в рассмотрение структуры создания ИР.
В книге AIMA описывается метод построения систем с элементами ИИ на базе агентов. Применим это метод здесь.
Все пришедшие внешние сообщения попадают на обработку в ядро системы (Core). Из ядра сообщения пересылаются соответствующему компоненту системы.
Компоненты системы могут быть следующими:
- Внешние устройства ввода/вывода
- Внешние приложения (в том числе удаленные приложения, веб-сайты и т.д.)
- Модули системы
Модуль системы может быть агентом и источником данных. Агент - это модуль, который имеет внутрениий подпроцесс выполнения. Источник данных (Источник знаний) - это модуль который предоставляет фреймы по запросу.
Черный ящик 1 можно представить в виде такой картинки:
Для удобства работы с данными можно все источники данных объединить и перенаправить поток сообщений через объект KnowlegeBase, который обеспечит уникальность идентификаторов разных фреймов в разных источкиках знаний.
Модуль
Еще углубляемся в рассмотрение структуры создания ИР.
Каждый модуль можно представить в виде черного ящика. В общем виде модуль можно представить так:
module.rar
Источник знаний можно представить так:
source.rar
Агента можно представить так:
agent.rar