Автор: tac Пока хотелось бы некую аннотацию - чем ваш проект отличается от всех других. Это как в бизнес-плане спрашивают - а почему именно вы ? |
|
Иерархия (первым идет базовая платформа, ниже - то, что основывается на ней):
1. Набор библиотек на языке C и C++. Это в первую очередь CLIPS. А также OpenCV, Espeak, SQLite, CSound и др.
2. ECLIPS. Это язык, на основе которого я хочу попробовать реализовать свои проекты ИИ. ECLIPS содержит CLIPS и мое расширение команд и шаблонов.
3. AIAssistant - Это прикладная программа - сочетание языка ECLIPS и набора стандартных плагинов на языке ECLIPS, помогающих осуществлять определенные полезные работы. Плагины делятся на системные, которые нужны будут многим прикладным плагинам. Например, библиотека GUI объектов, доступа к компьютерному зрению, речи и т.д. и прикладные - экспертные системы по распознаванию изображений, диагностике, игры, демонстрации и т.д.
4. RoboBrain - составная часть набора стандартных системных плагинов на языке ECLIPS, кот. может содержать также некот. набор априорных знаний, например, онтологию SUMO. Эти плагины в совокупности должны образовывать интеллектуальные способности программы AIAssistant в качестве программного или программно-аппаратного помощника человека - робота.
5. Robosonic. Это серия имплементаций RoboBrain на различных механических платформах.
Вот кое- что из разрозненного по RoboBrain:
http://www.gotai.net/forum/Default.aspx?postid=3308 общие принципы организации системы
http://roboforum.ru/viewtopic.php?f=61&t=7141 модуль монокулярного зрения
http://roboforum.ru/viewtopic.php?f=61&t=7143 модуль 3D реконструкции мира
http://roboforum.ru/viewtopic.php?f=61&t=7142 модуль синтеза 3D модели мира
Это не очеь удобно. Даже очень неудобно, т.к. я не только использую ф-ции CLIPS, но и добавляю свои внешние ф-ции в сам CLIPS. Поэтому максимальная интеграция в одном языковом пространстве (Borland C++) оказалась для меня удобнеее и проще всего, хотя я честно полгода потратил на попытки использовать clips.dll в разнях языках (Java, Delphi, C++ и др.)
Автор: tac Ну, и вопрос в принципе - зачем вообще CLIPS ? |
|
CLIPS потому, что это наименьшее из всех зол, что я нашел для выражения своих идей. Я много лет писал на ассемблере параллельную среду работы с онтологиями, но трудоемкость ее реализации заставили меня взять за основу другой хотя и не совсем подходящий мне, но реальный работоспособный и отлаженный движок. CLIPS "заточен" под прямой логический вывод на фактах и слотах объектов. Это означает, что для целей распознавания он может быть и подойдет. Это мне предстоит проверить в ближайшее время. Я сомневаюсь в первую очередь в его скороростных параметрах. Поэтому сейчас делаю возможность распараллеливать задачи путем запуска множества скоординированных AIAssistant на одном или нескольких компьютерах.
Уважаемый tac. Судя по полученной мною к настоящему моменту информации, вы хорошо продвинулись в работах по распознаванию зрительных образов на основе нейросетей. Это очень хорошо. Я в данной области слаб. Но у меня есть свое понимание ситуации с распознаванием как частью мыслительного процесса, кот. я разрозненно изложил в описании модулей RoboBrain и подробнее позже изложу. При необходимости в AIAssistant можно и нейросети добавить. Но только при необходимости.
Кстати, посмотрите на результаты одного человека относительно работ по автономной зрительной навигации
http://roboforum.ru/viewtopic.php?f=88&t=6021 Видео довольно интересные.