roboforum.ru

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


Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Обсуждаем рождающиеся мысли и результаты экспериментов.

Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 29 ноя 2009, 20:57

Вводный пост для тех, кто хочет присоединиться к обсуждению проблемы:

Мысль №1.

Масса подходов к созданию элементов ИИ и неких подобий ИИ затыкается на самых первых шагах - что же есть этот самый ИИ и как понять, что мы его создали. Я считаю, что создание даже подобия ИИ - это прежде всего проект. Теория управления проектами гласит, что прежде чем начинать проект мы должны иметь критерии оценки, что проект завершен успешно, чтобы 100% понимать, куда мы идём.

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

Мысль №2.

В качестве основного свойства, которое мы хотели бы получить от нашего ПИИ - способность самостоятельно обучаться и адаптироваться к среде в которой он действует (считаем, что среда по физическим законам и структуре близка к нашему реальному миру).

Чтобы нам не пришлось придумывать хитрых способов определения целей существования робота - мы сделаем просто, зададим ему базовые мотиваторы типа боль (уровень повреждений), голод/сытость(уровень заряда батарей) и т.п.

Критерии оценки успеха проекта:

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

Один из типовых тестов может быть таким - робот находится в комнате, в которой кормушка закрыта воротами, которые открываются при нажатии на кнопку, кнопку можно придавить находящимся в комнате предметом Х, который робот может двигать. Либо кнопка открывает ворота на какое-то время. Роботу могут показать что кнопка открывает ворота или он может попробовать сам догадаться потыкаться во все предметы и понять что делает кнопка и что он может двигать предмет Х.

Первичные мысли по решению задачи проекта

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

Для этого надо какую-то распознавалку, которая будет иметь возможность кластеризации полученных данных в предполагаемые образы. Это в базовом варианте :)

Ну и к полученным образам надо будет учиться строить какие-то типа сильно разреженных матриц ковариаций, которые будут показывать зависимость увиденных образов друг от друга.

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

Если даже в базовом варианте это реализовать и робот сможет разбираться в каких-то простых окружениях - думаю уже будет интересно :)

Ну и наконец - какие базовые проблемы нужно решить изначально для этого базового варианта:

Надо какую-то распознавалку совмещенную с кластеризатором, которая сможет отрабатывать инфу с камеры, правда видимо сразу надо будет её делать с обработкой серии кадров и движения. Даже не движения робота при статичном окружении, а при движении объектов относительно окружения, иначе особых способов выделить объекты я не особо вижу. Ну кроме тупого "по расстоянию", но это не выделить двери комнаты относительно стены, кнопку относительно панели вокруг неё и т.п. Короче ничего интересного кластеризация по расстоянию сама по себе не даст.

Мысли возникшие в ходе обсуждения

1. Надо какое-то подобие пространственного мышления, в котором ПИИ сможет строить модели развития событий и выбирать свои действия.

2. Чтобы унифицированно подходить к распознаванию образов предлагается всю информацию со всех сенсоров после обработки препроцессорами скидывать в единое информационное пространство восприятия (далее ЕПВ), из которого уже в унифицированном формате модуль формирования и распознавания образов будет пытаться извлечь кандидаты в образы и распознать уже запомненные образы.

3. Надо как-то работать с составными образами, для этого предлагается выход с разпознавателя образов через так же препроцессор завернуть в часть ЕПВ.

4. Чтобы действовать на разных уровнях планирования ПИИ может строить несколько планов из цепочек образов, например, уровня стратегического плана, тактического, оперативного.

Мысли возникшие в ходе обсуждения. Часть 2
1. Надо решать задачу целиком, пусть и "худо-бедно" и только потом заниматься улучшением её отдельных блоков, поэтому если задачу разбили на блоки и какой-то блок понятно как решить хоть в базовом простейшем варианте - пока его бросаем, пока не будет ясно как решить в базовом варианте все блоки и как они между собой будут работать.

2. Чтобы не возникло ощущение, что обсуждается сферический конь в вакууме - предлагаю "худо-бедное" решение формирователя и распознавателя образов с визуальных данных. Прежде всего будем выделять области с единым или близким к единому цвету. Если какой-то контрастный к этому цвету объект будет окружен такой областью - это кандидат на будущий образ, который мы просто сохраним с маской чтобы выделить его в дальнейшем из фона. Кроме того отличным вариантом выбора кандидата на образ - будет область находящаяся в движении на неподвижном фоне. Собственно хороший способ привлечь внимание человека к какому-то предмету - помахать им у него перед глазами.

3. Распознавать при этом мы можем достаточно тупым способом - почти перебором. Если очень не верится, что это реально - могу накидать примеры, хотя я считаю, что у нас полно других проблем и не гоже тут заниматься изобретением веосипедов :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 01 дек 2009, 19:46

По ходу надо как-то направлять обсуждение в единое русло, а то будет еще одна тема про ИИ на 50 страниц и никакой конкретики.

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

По сути пункт 4, среди прочего, как раз и генерит внутреннюю мозговую активность по постоянному перевариванию имеющейся информации, выбору порядка действий и т.п.

Добавлено спустя 4 минуты 54 секунды:
Надо наверное пытаться начинать прописывать что может служить структурой данных для этих образов (конечно я осознаю, что существующая архитектура ЭВМ скорее всего неэффективна для решения таких задач, но главное получить первые результаты, а там и всякие CUDA или даже ПЛИСы можно будет подключить).

И что может служить обработчиком этой информации, какой должен быть основной управляющий цикл такого робота.

Основные элементы структуры:
1. Образы;
2. Связи между образами;
3. Выборка образов и связей между ними соответствующая текущей программе действий, а точнее сразу нескольким уровням этой программы действий.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Duhas » 01 дек 2009, 19:56

какой должен быть основной управляющий цикл такого робота


я предлагал... имеем список Need.. делаем верхнее=самое значимое... список Need отправляет нас к списку Do, в котором конкретные действия...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение frig » 01 дек 2009, 19:59

Основные элементы структуры:
1. Образы;
2. Связи между образами;


сначала надо как-то образы разделять. как я понимаю, большинство образов будет разделяться по пути их получения, с последующими объединениями. визуальные, слуховые и т.д. и для каждого, в принципе, должен быть какой-то свой принцип хранения. наверняка в основе некий набор признаков и возможно некоторые "сырые" данные.
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 01 дек 2009, 20:06

Ни в коем разе - образы это как раз и должно быть единым бульоном, не надо разделять визуальные, звуковые и прочие образы. И никаких сырых данных, по крайней мере в этой задаче, всякие сырости отдельно будем хранить.

Добавлено спустя 2 минуты 28 секунд:
Еще у меня есть гипотеза, что в обычном режиме первично распознаются образы из примерно последних 5 секунд.
Т.е. скажем нажатие кнопки, пинок по мячу, - всё это человек будет воспринимать таковым только в коротком промежутке. Если совершать пинок по мячу в течение часа - думаю в обычной ситуации человек вообще не обратит внимание на то, что там происходит :)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение frig » 01 дек 2009, 20:07

нельзя не разделять. общих признаков у мелодии или звука голоса и красным кубиком не так много :D походу все признаки напрямую получаются только определенными органами чувств.

сырости нужны чтобы их можно было анализировать повторно.
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 01 дек 2009, 20:09

Ну а некоторые животные вообще неподвижные или медленные объекты не воспринимают за что-то живое.

Добавлено спустя 1 минуту 52 секунды:
frig писал(а):нельзя не разделять. общих признаков у мелодии или звука голоса и красным кубиком не так много :D походу все признаки напрямую получаются только определенными органами чувств.

Это в искусственном мире кажется, что между красным кубиком и звуком голоса мало общего :)
А в животном мире рык тигра и его внешний вид очень хорошо в единый образ ложится :)

frig писал(а):сырости нужны чтобы их можно было анализировать повторно.

Не думаю что на данном этапе надо заморачиваться на эту проблему.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение frig » 01 дек 2009, 20:11

А в животном мире рык тигра и его внешний вид очень хорошо в единый образ ложится :)


я потому и пишу

с последующими объединениями.


Добавлено спустя 25 секунд:
но изначально данные рыка и внешнего вида еще надо как-то объединить.
тут надо будет отслеживать с одной стороны причины и следствия, т.е. то, о чем ты говоришь, а еще надо будет объединять и группировать разрозненные признаки.
Последний раз редактировалось frig 01 дек 2009, 20:12, всего редактировалось 1 раз.
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 01 дек 2009, 20:12

Есть ощущение, что картинка должна быть такая:
1. Есть единое информационное пространство восприятия текущего момента (что-то типа общей памяти);
2. Есть препроцессоры всех сенсоров сводящие всю информацию за некоторый последний период в это единое пространство восприятия;
3. Распознаватель и кластеризатор образов работает с этим самым единым пространством восприятия;
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение frig » 01 дек 2009, 20:14

2. Есть препроцессоры всех сенсоров сводящие всю информацию за некоторый последний период в это единое пространство восприятия;


в каком виде?

Добавлено спустя 1 минуту 6 секунд:
имхо опираться надо все равно на признаки, выделять их и уже ими оперировать.
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Duhas » 01 дек 2009, 20:21

как там в кулинарии. если смешать слишком много всего в кучу. то уже не винегрет а кака...

смысл мешать видео образы и звук? я вообще не пойму зачем делать совсем кажу из итак каши...
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение frig » 01 дек 2009, 20:28

я думаю, что смысл не в прямом смешении, а в уравнивании по времени потока образов из различных источников. общим то корыто будет все равно очень относительно - объединять различные признаки будут источники, принадлежность к различным объектам и время их возникновения.
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 01 дек 2009, 20:37

frig писал(а):в каком виде?

В общем :) не всё ли равно? нам все равно препроцессор делать после органов восприятия - всё равно формат выходной инфы на кластеризатор\распознаватель определять нам. Свыше его нам не дадут.

frig писал(а):имхо опираться надо все равно на признаки, выделять их и уже ими оперировать.

Выделять признаки должен кластеризатор. Не понимаю почему он должен быть разный для разных органов чувств, препроцессоры разные - это да. По крайней мере на первом этапе не вижу никаких причин решать 5 раз одну и ту же задачу, к тому же заведомо создавая себе проблемы со стыковкой разных типов распознанных образов.

Добавлено спустя 1 минуту 31 секунду:
Duhas писал(а):как там в кулинарии. если смешать слишком много всего в кучу. то уже не винегрет а кака...
смысл мешать видео образы и звук? я вообще не пойму зачем делать совсем кажу из итак каши...

А есть основания думать, что оно и так не смешивается у нас в голове? Препроцессоры образов есть конечно, но в итоге у нас один фиг аудиовизуальные образы все вперемешку идут в работе.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Duhas » 01 дек 2009, 20:43

есть основания думать что это создаст лишние проблемы..

как оно у нас в голове - не важно.. мы функциональную модель делаем же ... а не точную копию...

да и я сомневаюсь, что в нашей НС все это в кучу валится.. входы то таки разные... к примеру музыка может напомнить о человеке, но наоборот может и не работать... тихо, тут налицо направленный ассоциативные связи..
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение =DeaD= » 01 дек 2009, 20:50

2Duhas: А можно как-то конкретизировать основания?

Входы то разные у нас, потому как препроцессоры разные. А вот то, что кластеризаторы образов и распознавалки индивидуальные - мне не верится.

Музыка напомнить о человеке, а наоборот нет - потому что мы идём по самым сильным связям, IMHO.
Т.е. например, есть три образа A, B, C. есть связи A-B с весом 10, B-C с весом 500, A-C с весом 5.

От образа А мы скорей пойдём в образ В, а вот из него скорее всего в образ С, а не в А.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Почти RoboBrain. Идея элементов ИИ. Пока в порядке бреда :)

Сообщение Duhas » 01 дек 2009, 20:55

про силу связи - логично...
ну не знаю я как конкретизировать ) ну вот ты все файлы хранишь в 1 папке ?
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Пред.След.

Вернуться в Идеи

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

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