Технический форум по робототехнике.
DrZugrik » 16 окт 2007, 16:53
Есть идейка создать подобие робота, с алгоритмом поведения реального живого сужества. Например, давно уже существуют роботы, которые идут к источнику света - таких делали ещё лет 20 назад и без контроллеров. Идея в том, чтобы робот учился на своих ошибках, чтобы в него можно было бы добавлять новые модули, можно было бы "посмотреть" чему он там научился. Объяснил наверное не очень хорошо, попробую попонятней.
Я гдето читал давно, что какой то учёный делал самообучающихся роботов разного типа. Начинал с роботов-бактерий (не по размеру, а по алгоритму их простейших действий), потом более сложных, которые были прототипами (по алгоритму) животных - лягушки, ящерицы, черепахи, кошки, собаки, обезъяны. Вот хотел бы попробовать создать такую систему.
Например:
- сначала просто подобие рефлексов - вижу свет - иду на свет, выбор оптимальной температуры окружающей среды
- поиск какого либо предмета по "запаху", допустим радиомаяк, с запоминанием препятствий
- добавление визуальных датчиков - сначала ИК, затем можетбыть веб-камера или чтонибудь подобное...
- совершенствование способов движения (колёса->гусеницы->лапки->4 ноги->ноги)
один робот несможет на себе столько всего нести, поэтому хотелось бы иметь возможность переписывать "опыт" одного робота в другово, более совершенного.
в итоге получаем подобие эволюции, которое происходит буквально на глазах.. вот например робот учится искать свет, а через какое то время он уже может выбрать себе наиболее подходящие условия. Общая идея в том, чтобы попытаться повторить эволюцию человека и хотябы попытаться получить подобие искусственного интеллекта.
Где бы можно посмотреть про алгоритмы самообучения и примеры программ, желательно на асемблере, и вообще, кто что посоветует...
Спасибо
Vooon » 16 окт 2007, 17:00
тебе в этот форум:
viewforum.php?f=12а вот на асме врятли что найдеш, на си или си++ вероятнее что найдеш...
lebaon » 16 окт 2007, 17:22
я кидал ссылки на подобные вещи в философию, но их проигнорировали
ищи в огромной теме про ии
там в конце
DrZugrik » 16 окт 2007, 18:02
Посмотрел я что там пишут.. по большей части конструктива очень мало, сплошная философия... а я тут говорю об идее практической реализации. Спасибо за ссылку, кажется нашёл что искал, покрайней мере будет возможность изучить теорию человеческого мозга.
Digit » 16 окт 2007, 23:28
Еще поищи в сторону генетических алгоритмов. На программерских сайтах много встречал... Занимался правда этой темой давно, поэтому ссылок не дам, сорьки.
Сергей » 17 окт 2007, 01:03
Какоето время такиеже идеи были, и есть сейчас. Только вот все софт да софт пишу, а до алгоритмов не добрацца. Хотел сделать чтото наподобии генетического программирования..
Master » 17 окт 2007, 09:19
Человек, который сможет написать простейший алгоритм самообучения будет создателем ИИ. Максимум что можно сделать это брать прошивку одного робота и описывать ее для новых сенсоров.
Ну давайте разберем конкретный пример:
да <- Есть свет? -> нет
Едем на свет Не едем
Ну и чему здесь можно самообучится?
Или предложите другой пример (только обязательно простой иначе это будет опять философия).
Что я знаю точно инфа по полученному опыту должно куданить писаться в EEPROM или на карточку памяти.
EdGull » 17 окт 2007, 10:53
ПИД регулирование и есть самообучающийся (самоподстраивающийся) на ходу простейший алгоритм, в котором есть что понастраивать, например коофициентами порулить...
Сергей » 17 окт 2007, 11:44
Согласен.
Виталий » 17 окт 2007, 12:38
ПИД регулирование и есть самообучающийся (самоподстраивающийся) на ходу простейший алгоритм, в котором есть что понастраивать, например коофициентами порулить...
ПИД сам по себе ни под что не подстраивается, он действует совершенно определенно в зависимости от коэффициентов.
А вот если надстроить над ним еще какую-то штуковину которая по определенным законам меняет коэффициенты улучшая управление, тогда да.
Человек, который сможет написать простейший алгоритм самообучения будет создателем ИИ.
Тогда ты видишь перед собой создателя ИИ, высшую ступень эволюционной пирамиды. =)
Как и просил пример будет простым. Предположим вы с компьютером играете в города и у него есть список всех городов.
Он естественно выигрывает и тебе в очередной раз попадается город на "М". Подумав немного, ты отвечаешь - "Мухосранск". Компьютер смотрит по своему словарю, что такого города нет и спрашивает: "Ты уверен что такой город есть?" и если ты ответишь да, то он занесет его в словарь и таким образом дообучиться и в следующий раз сможет оперировать этим словом. Таким образом компьютер может начать даже с пустого словаря улучшая результат своей игры путем обучения.
SSG » 17 окт 2007, 13:40
Эволюция подразумевает способность приспосабливаться к новым! условиям. А изменение параметров управления в зависимости от изменения внешних условий в соответствии с заложенным разработчиком жестким алгоритмом - это не приспосабливаемость и уж тем более не интеллект.
Развитие, описанное в первом посте, просто усложнение конструкции путем внесения революционных изменений (при переходе от колес к гусеницам, лапкам и т.д. или при добавлении новых сенсоров) в конструкцию и программу.
Развитие, описанное в примере про города - накопление новой информации. А информация является таковой только в случае наличия её осмысления, без интеллекта, который её анализировал бы. Например, генетический материал растений содержит большое количество информации, но если человечество уничтожить, то это просто молекулярны образования, которым пофигу, наблюдает за ними кто-нибудь или нет.
Идея процесса развития, описанного в первом посте, хороша для создания платформы, которая будет потом совершенствоваться разработчиком. Над ней можно подумать. Её можно использовать для самообучения и в технических кружках.
Myp » 17 окт 2007, 13:58
вспомним робота морскую звезду, тут ссылка гдето была
на 4х ногах он ползал сносно
когда ему отрывали 1 ногу(садисты) он путём всяких кувырканий в конце концов находил оптимальный вариант и продолжал ползти вперёд на 3х ногах
вощем брыкаясь по разному вычислял наиболее продуктивные брыкания и совершенствовал их
вот там нечто такое обычающееся сделано
незнаю, мб там и теория есть по этому роботу
Master » 17 окт 2007, 14:37
Myp писал(а):вспомним робота морскую звезду, тут ссылка гдето была
на 4х ногах он ползал сносно
когда ему отрывали 1 ногу(садисты) он путём всяких кувырканий в конце концов находил оптимальный вариант и продолжал ползти вперёд на 3х ногах
вощем брыкаясь по разному вычислял наиболее продуктивные брыкания и совершенствовал их
вот там нечто такое обычающееся сделано
незнаю, мб там и теория есть по этому роботу
ну не знаю может там есть алгоритм движения если оторвали ногу?
Myp » 17 окт 2007, 14:53
Master писал(а):ну не знаю может там есть алгоритм движения если оторвали ногу?
нет =)
там именно упор был на то что звезда обычаемая и самостоятельно пытается научится ходить на 3х ногах
EdGull » 17 окт 2007, 15:21
и собачка была у буржуев, которую они в детскую коватку ложили... у нее заложено было только то, что у нее есть лапы и они могут вот так двигаться. в итоге она сама нашла алгоритм по которому дотягивалась до подвешенных игрушек и помоему дае начала ходить.
т.е. надо ставить цель ходить, а как пусть ИИ сам вычисляет как ему эффективней этого достич.