roboforum.ru

Технический форум по робототехнике.

Мысли вслух: набор модулей RoboBrain

Разработка универсальной программно-аппартной платформы роботов.

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Виктор Казаринов » 19 окт 2009, 17:50

Без обработки изображения (распознавание, навигация и т.д.) выработка поведения существенно усложнится и будет неполноценной. НО возможной. Наивно полагать, что и обработка изображения без обратной связи от других блоков RoboBrain будет полноценной. Лишь самые первые этапы обработки изображений могут осуществляться почти автономно, конвейерно. Да и то вряд ли. На робофоруме много говорят о противоречии огромных обработок видеоданных и чрезвычайно малых возможностей МК. Подозреваю, что это не совсем так. Комары и те отлично летают и нас кусают. Стрекозы и др. насекомые? У них и матрица изображения маленькая и стереовидения нет. А навигация неплохая.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Vorral » 19 окт 2009, 18:22

>У них и матрица изображения маленькая и стереовидения нет
Главное то, что они не слепые. Даже человек, если родится слепым и глухим не сможет выжить сам(к сожалению я лично знаю такой случай, родителям такого ребёнка очень тяжело :( ).

Добавлено спустя 4 минуты 39 секунд:
>Лишь самые первые этапы обработки изображений могут осуществляться почти автономно, конвейерно.
Не правда, можно всё, что угодно обработать исключительно руководствуюсь логикой, которую предоставляют языки высокого уровня. Для этого не нужен RoboBrain. Да и вообще, считаю можно построить любой сложности робота исключительно на стандартных языках программирования, без каких либо специальных языков.
Vorral
 
Сообщения: 873
Зарегистрирован: 11 сен 2008, 17:18
Откуда: Москва
прог. языки: Delphi
ФИО: Владислав

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Виктор Казаринов » 19 окт 2009, 18:26

Я не спорю с тем, что зрение необходимо. Более того, я попробую изобразить в железе свой вариант. Но оно не нужно само по себе, а является составной, подчиненной частью самого главного в роботе - выполняемой всем роботом агентской функции. Того, что ждет от робота хозяин - человек.
Vorral писал(а):можно всё, что угодно обработать исключительно руководствуюсь логикой, которую предоставляют языки высокого уровня. Для этого не нужен RoboBrain. Да и вообще, считаю можно построить любой сложности робота исключительно на стандартных языках программирования, без каких либо специальных языков.
Вы что-то путаете. RoboBrain я собираюсь писать на Asm или C for AVR. Но это лишь нижний языковой уровень. Самый верхний - язык знаний. Мой вариант этого языка называется Babylon. Но он еще находится в глубокой разработке. Сначала нужно доделать Базовую онтологию - основу всего RoboBrain и Babylon в частности.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Мысли вслух: набор модулей RoboBrain

Сообщение AndreiSk » 19 окт 2009, 19:59

Я предложу сделать ряд задач прежде чем обсуждать мозги.
Как примеры можно взять задачи-соревнования, типа "Следование по линии", "Кегельринг-Классик;Кегельринг-КВАДРО", "Слалом по линии", "Теннис", "Мини-сумо"
Сделать эти задачи для робота, набить руку, и затем обсуждать что у них общее, универсальное.
А то мы даже самолет не построили, а обсуждаем из чего боинги делать будем ;)
Если нет опыта, то все скатится к чистой теории, не подтвержденной практикой.
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Виктор Казаринов » 19 окт 2009, 20:14

AndreiSk писал(а):>А то мы даже самолет не построили, а обсуждаем из чего боинги делать будем ;)
Если нет опыта, то все скатится к чистой теории, не подтвержденной практикой
Боинги - тоже самолеты.
Почему же скатимся к теории? Но если мы выделяем границы на изображении, то нужно знать для чего конкретно это нужно.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Мысли вслух: набор модулей RoboBrain

Сообщение AndreiSk » 19 окт 2009, 20:22

Так ведь неясно, нужно ли выделять границы изображения.. практики то нет ;)
Может без выделения обойтись?
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Виктор Казаринов » 19 окт 2009, 20:39

Для этого нужно ответить на вопрос - для чего нужно роботу зрение в самом минимальном виде? Скорее всего не как калейдоскоп для увеселения. Изображение даже с одной камеры - это прежде всего окно в 4D реальный мир. Четверое измерение - время. Поэтому 4D что-то такое роботу нужно. Назовем это моделью мира. И сама такая модель - тоже не самоцель, а инструмент для выполнения каких - то действий в этом 4D мире. Поэтому даже в самой примитивном случае навигации должны существовать как минимум две модели - самого робота и окружающего его мира включая то, что он видел ранее благодаря четьвертому измерению. А вообще - то нужно еще и пятое измерение - будущее время. Т.к. будущее может развиваться в нескольких альтернативных вариантах, то его нельзя считать четвертым измерением. Поэтому имеем:
1. Модель "Я" для настоящего и прошлого.
2. Модель окружающего мира для настоящего и прошлого.
1. Набор моделей "Я" для будущего.
2. Набор моделей окружающего мира для будущего.
Исходя из этих моделей и нужно браться за зрение.
Но что же из себя должны представлять эти модели? Это - какая - то изменяемая информация. Причем, желательно, чтобы элементы моделей были связаны между собой. Это дает огромные преимущества перед обособленными фактами.
Последний раз редактировалось Виктор Казаринов 19 окт 2009, 20:44, всего редактировалось 1 раз.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Мысли вслух: набор модулей RoboBrain

Сообщение AndreiSk » 19 окт 2009, 20:40

Неудачный пример чтоли.
Может другой..
Сидит группа обезъян на берегу очень быстрой реки,
и думает, как же забабахать крутой катер на воздушной подушке.
А у обезьян из материалов только ближайшие деревья и веревки,
при этом опыта постройки примитивных лодки тоже нет.
О том что нужен бензин и прочие материалы, они даже не знают.
Думают что бревна будет достаточно.. а не переплыть на бревне, не получится.

Так и мы, сидим, думаем как сделать что-то очень умное, а опыта нет.
Может для того, чтобы сделать это умное, надо то, чего у нас нет вообще.
Я предлагаю, пусть каждый попробует что-нибудь сделать для задач перечисленных выше (соревнования) так как считает нужным... наощупь что-ли.
Потом соберемся, обсудим, что общего есть у решений, может это и будут универсальные блоки для RoboBrain.
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Мысли вслух: набор модулей RoboBrain

Сообщение setar » 19 окт 2009, 20:49

Виктор, вопрос следующий:
Можно ли в предложенную концепцию вписать упрощенную модель адаптивного автомата, с набором раздражителей и реакций на раздражители. Затем расширить адаптивный автомат функциями обучения и лишь затем переходить к более глобальным вещам связанным с ИИ.
так сказать от простого к сложному но в рамках единой идеи.

Или методика и подход отличается по своей сути ?

Меня, да я думаю многих сейчас устроил бы адаптивный автомат которому в виде наборов правил задаются программы действий
например:
еду вперёд и если натыкаюсь на препятствие запоминаю его в свою карту
при этом контролирую заряд батареи и чем он меньше, тем приоритетней задача поиска зарядки
если выключили свет то нужно свалить на базу
а если дали пинка нужно срочно свалить подальше

:) как то так. это возможно ?
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Виктор Казаринов » 19 окт 2009, 21:01

AndreiSk писал(а):Сидит группа обезъян на берегу очень быстрой реки,и думает, как же забабахать крутой катер на воздушной подушке. А у обезьян из материалов только ближайшие деревья и веревки,
при этом опыта постройки примитивных лодки тоже нет. О том что нужен бензин и прочие материалы, они даже не знают.
Думают что бревна будет достаточно.. а не переплыть на бревне, не получится.
Я вовсе не собираюсь специально делать "Сильный ИИ". На данный момент реальнее "сделать плот" а не "катер на воздушной подушке". Но и в том и другом случае обезьянам придется использовать какие-то свойства поверхности воды.

Добавлено спустя 7 минут 57 секунд:
setar писал(а):Можно ли в предложенную концепцию вписать упрощенную модель адаптивного автомата, с набором раздражителей и реакций на раздражители. Затем расширить адаптивный автомат функциями обучения и лишь затем переходить к более глобальным вещам связанным с ИИ.
У человека наряду с высшими проявлениями разума сохранились и примитивные рефлексы, унаследованные от предков. Вспомните удар молоточка по колену. Я полностью согласен с вами, что нужно двигаться от простого к сложному а не наоборот. Я только что говорил о моделях. Но даже в самом простом правиле взаимодействия с внешним миром заложена модель мира. Например, "ЕСЛИ яркая вспышка ТО остановиться". Это для робота - врожденная аксиома, заложенная заранее модель мира (яркая вспышка) и "Я" (остановиться) а также взаимодействие между этими моделями -правило.
setar писал(а):еду вперёд и если натыкаюсь на препятствие запоминаю его в свою карту
при этом контролирую заряд батареи и чем он меньше, тем приоритетней задача поиска зарядки
если выключили свет то нужно свалить на базу
а если дали пинка нужно срочно свалить подальше
:) как то так. это возможно ?
Это - возможно. Я собираюсь моделировать все на своем AIAssistant, который основан на CLIPS - достаточно неплохой системе, основанной на правилах и прямого логического вывода на фактах и слотах объектов.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Re: Мысли вслух: набор модулей RoboBrain

Сообщение setar » 19 окт 2009, 21:03

я имею опыт написания программ ботов управляющих персонажем в MOORPG (многопользовательские игры)
так вот бот персонажа имеет на входе следующие знания:
1. уровни жизненных параметров и способы их нормализации (зарядка/смазка итд)
2. список необходимых для нормальной работы вещей и координаты где их можно получить (сколько зарядиться и где это можно сделать)
3. карта месности с координатами торговцев (зарядных станций)
4. карта месности с монстрами (задача работы - например косить траву на лужайке)
5. набор действий при всяких неожиданных ситуациях / проявлениях (воткнулся в препятствие, переворачивание итд)

далее всё просто : идет бесконечный цикл обработки пула задач.
задача имеет свой приоритет, выполненные задачи запоминаются для анализа (режим обучения)
задачи делятся по типам и приоритетам: жизнеобеспечение , реакции на воздействия, выполнение работы , поддержание актуальности карты.

этот адаптивный автомат ведёт себя вполне осмысленно
в нем реализованы алгоритмы поиска пути , составления карты и многое другое.
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Aseris » 19 окт 2009, 21:07

Мысля в слух:

Есть хитрый язык програмирования, с котором програмирование сводится к задаче правил и методом доказания от обратного получается ответ, на нем реализовано решение каким образом трасируюся линии связи в ПЛИС

Остается придумать как наполнять базу правил = базу знаний

Лисп (LISP, от англ. LISt Processing language — «обработка списков»; современное написание: Lisp) — семейство языков программирования, программы и данные в которых представляются системами линейных списков символов. Лисп является вторым в истории (после Фортрана) высокоуровневым языком программирования, который используется по сей день. Слово «lisp» имеет также значение «детский лепет», что не случайно, так как тематика, которая интересовала создателя Лиспа Джона Маккарти была тесным образом связана с исследованиями человеческой речи[источник не указан 152 дня]: Маккарти занимался исследованиями в области искусственного интеллекта и созданный им язык по сию пору является одним из основных средств моделирования различных аспектов ИИ. [url]http://ru.wikipedia.org/wiki/Лисп[/url]
Аватара пользователя
Aseris
 
Сообщения: 1142
Зарегистрирован: 01 сен 2009, 14:58
Откуда: Чехия
прог. языки: C/С++, VHDL, Verilog, ASM, Python

Re: Мысли вслух: набор модулей RoboBrain

Сообщение AndreiSk » 19 окт 2009, 21:07

И я.. И я тоже писал бота,
правда для игры в травиан (travian.ru, travian.com, аналог "цивилизации").
Бот тоже уверенно держался в двадцатке лучших игроков, как медленного, так и быстрого серверов.
Хотя это грубейшее нарушение правил было, но я отрабатывал систему принятия решений в упрощенном мире с ограниченным количеством ресурсов. Так вот, пока для реального робота это не пригодилось :(
Пока у реального робота совсем другие задачи.
Аватара пользователя
AndreiSk
 
Сообщения: 2639
Зарегистрирован: 23 апр 2009, 17:03
Откуда: Москва, Самара
прог. языки: C#

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Aseris » 19 окт 2009, 21:09

setar писал(а):я имею опыт написания программ ботов управляющих персонажем в MOORPG (многопользовательские игры)
так вот бот персонажа имеет на входе следующие знания:
...

этот адаптивный автомат ведёт себя вполне осмысленно
в нем реализованы алгоритмы поиска пути , составления карты и многое другое.


А на чем реализуются обычно даные чуда?
Аватара пользователя
Aseris
 
Сообщения: 1142
Зарегистрирован: 01 сен 2009, 14:58
Откуда: Чехия
прог. языки: C/С++, VHDL, Verilog, ASM, Python

Re: Мысли вслух: набор модулей RoboBrain

Сообщение Виктор Казаринов » 19 окт 2009, 21:10

setar писал(а):так вот бот персонажа имеет на входе следующие знания:...
далее всё просто : идет бесконечный цикл обработки пула задач.
задача имеет свой приоритет, выполненные задачи запоминаются для анализа (режим обучения)
задачи делятся по типам и приоритетам: жизнеобеспечение , реакции на воздействия, выполнение работы , поддержание актуальности карты.
этот адаптивный автомат ведёт себя вполне осмысленно
в нем реализованы алгоритмы поиска пути , составления карты и многое другое
У вас - хорошая основа. Отличие MOORPG от реального мира - в бОльшей степени непредсказуемости, незамкнутости мира. Особую трудность представляет именно распознавание всего подряд.
Проект Robosonic RS http://www.aigod.com
Аватара пользователя
Виктор Казаринов
 
Сообщения: 1387
Зарегистрирован: 21 июн 2006, 11:22
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич

Пред.След.

Вернуться в Проект Robosonic

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3