roboforum.ru

Технический форум по робототехнике.
Текущее время: 27 ноя 2024, 13:05

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 08:30 
Не в сети
Аватара пользователя

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

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

Тогда будет ясно - надо пролог в робототехнике или не надо :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 09:39 
Не в сети
Аватара пользователя

Зарегистрирован: 08 окт 2004, 16:43
Сообщения: 2114
Откуда: St. Petersburg
Skype: quark-bot
ФИО: Клебан Виталий
В Буране использовали Пролог.

_________________
Все новости о моих проектах http://savethebest.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 10:13 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
2Виталий: Ну вопрос же был - чем он лучше, относительно современных языков. Когда Буран начинали строить (в 1980 уже производство началось, я так понимаю) - какие языки были в СССР освоены? Ну и наконец - на тот момент ни Джавы, ни Си++ ни разумеется C# и в помине не было.

Добавлено спустя 24 секунды:
С горя можно было софт под Буран и на асме писать :)

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 11:42 
Не в сети
Аватара пользователя

Зарегистрирован: 21 июн 2006, 11:22
Сообщения: 1387
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич
Пролог хорош там, где существует замкнутый мир. В таком мире все объекты и их отношения имеют исчерпывающее описание относительно определенного уровня абстракции. Кроме того, т.к. в сам Пролог вмонтирован механизм обратного логического вывода, то с его помощью удобно решать задачи планирования и поведения сверху вниз (от общего к частному) или от цели к условиям. Упрощенный алгоритм - в правилах, описываемых с пом. Пролога берется следствие правила X, делается переход на его предпосылки и ищутся правила, у которых эти предпосылки X являются следствиями. И т.д. до того момента, когда не перестанут обнаруживаться правила, следствия кот. являются предпосылками текущего правила. Предпочтительный способ метод обхода списка правил - просмотр в глубину.
В системах непрерывного контроля и распознавания в незамкнутом мире более подходящим является механизм прямого вывода, который активирует правило при появлении фактов, являющимися предпосылками этого правила. Правило при этом активируется и выполняется следствие этого правила. Если следствием правила является выработка новых фактов, то от них могут сработать другие правила. И т.д. Если следствием правила является выполнение какого-нибудь действия, производится его выполнение. В частности, так работает система CLIPS, модернизированный вариант которой AIAssistant с языком ECLIPS я разрабатываю.
Существенным отличием работы, основанной на правилах от ООП и др. обычных видов программирования является то, что набором правил не задается заранее алгоритм выполнения программы. В каждый момент времени система отслеживает совокупность имеющихся фактов и "примеряет" их ко всем правилам, находящимся в системе. Для ускорения этого процесса обычно применяется RETE-алгоритм. При выполнении же обычного последовательного алгоритма IF сработает лишь тогда, когда дойдет очередь до данного оператора. В ООП начнется обработка события только при получении сообщения объектом.

_________________
Проект Robosonic RS http://www.aigod.com


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 12:59 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
ой ну прям такие все умные, критиковать стали.
можно подумать никто не учился и ничего подобного не делал.
я например ходил по художественному училищу мерял температуру стен лазерным термометром, а потом перерисовывал схему котельной(лазия там с фонариком) и считал теплопотери и отопление.

любая работа хороша если интересно и голова/руки работают :Yahoo!:

_________________
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 16:03 
Не в сети
Аватара пользователя

Зарегистрирован: 23 апр 2009, 17:03
Сообщения: 2639
Откуда: Москва, Самара
прог. языки: C#
Таня и Робот http://railab.ru/history/Eurobot2009-sp ... C_6972.jpg
для скептиков 8)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 16:29 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Да мы верим ;)

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 15 окт 2009, 17:30 
Не в сети
Аватара пользователя

Зарегистрирован: 05 окт 2008, 14:41
Сообщения: 997
Откуда: СПб
прог. языки: C,Python
знакомые колёса...
:) только у меня по меньше


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 01:16 
Не в сети

Зарегистрирован: 30 мар 2008, 11:44
Сообщения: 2
Откуда: Москва, лаборатория робототехники и искусственного интеллекта Политехнического музея
прог. языки: C, C++, C#, Prolog
Здравствуйте!
Отвечаю всем.

Система управления мобильным роботом была мной создана как курсовой проект в ходе изучения Visual Prolog 7.1.
Робот исправно функционирует, на данный момент стоит на полке. На фестивалях и прочих крупных мероприятиях демонстрируется. Есть техническое описание: http://railab.ru/projects/behavior/mate ... nonDoc.doc.
Хорошая идея снять робота на камеру, постараюсь осуществить.

Меня интересует искусственный интеллект в робототехнике.
Я считаю, что декларативный (Prolog) стиль программирования имеет преимущество перед императивным (C++, Java):
1) Декларативный стиль более понятен и естественен для человека.
2) Как и в каком порядке выполнять правила - возлагается на Пролог-машину. Наша задача - описать задачу в правильных терминах, формализовать ее.
3) Унификация. Это значит, что нам не нужно рассматривать все частные случаи. Мы можем писать более общие, более универсальные программы.

Ответ тем, кто интересовался применением Пролога в робототехнике: вот единственный проект с Прологом в "железе", который мне удалось найти: http://www.ai.hccnet.nl/projectgroepen/B-AI-kar.html. Так что поле для исследований огромное. Если кто-то знает еще такие проекты - пишите в эту тему!

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

С уважением,
Татьяна Волкова,
Лаборатория робототехники и искусственного интеллекта Политехнического музея.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 02:04 
Не в сети
Аватара пользователя

Зарегистрирован: 12 янв 2007, 00:34
Сообщения: 6285
Откуда: Масква
Спасибо, Татьяна, что не обратила внимания на все эти наши сарказмы и прочее, за что теперь неудобно.
Лично я ни в прологах, ни вообще в электронике нибумбум, но серъёзность дел распознать могу и уважаю :)

_________________
.............солнце светит, птички поют, я - зелёный бамбук меня тянет к солнцуЯ - зелёный бамбук, я - зелёный бамбук , меня тянет к солнцу. Я - не огурчик и не лягушка, я - зелёный бамбук. Меня курят...............


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 02:35 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Цитата:
Меня интересует искусственный интеллект в робототехнике.

По какой области ИИ работаешь?

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 07:35 
Не в сети

Зарегистрирован: 06 июн 2008, 05:26
Сообщения: 70
Откуда: Уссурийск
О существовании оного слышал давно. Пролог интересен тем, что оперирует фактами. Программирование поведения робота сводится к описанию совокупности фактов и операций над ними. На данном уровне познании Пролога полагаю, что так:
Есть тележка: правое и левое колесо, датчик смещения координат (опт. система от мыши), датчик вращения колес. Тогда прямолинейное движение описывается так.
факиы :
вращение_правого_колеса(скорость_вращения)
вращение_левого_колеса(скорость_вращения)
координаты(х,у)

ехать_прямо(скорость) если (вращение_правого_колеса(n) или вращение_левого_колеса(m)) и координаты(х+скорость,у)

решение: значения n и m.

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

Конечно все это можно сделать на олгоритмических языках программирования (С, Паскаль и иже с ними) но в данных схемах есть возможность обучения (движение прямо независимо от рзамера колес, грунта и др факторов).

Вот такой у меня интерес.

_________________
Орфография и стилистика автора сохранены.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 08:58 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
Татьяна Волкова писал(а):
Я считаю, что декларативный (Prolog) стиль программирования имеет преимущество перед императивным (C++, Java)

Вопрос в том, насколько пролог удобен в комбинациях с другими языками? Потому как 3Д-реконструкцию, распознавание образов или калмана писать на Прологе будет скорее всего очень тяжко :pardon:

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 09:20 
Не в сети
Аватара пользователя

Зарегистрирован: 04 дек 2008, 22:44
Сообщения: 4363
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович
Да, для распознавания образов Пролог абсолютно не годится

_________________
if(!Operate) Read(pDatasheet);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Prolog и управление роботом
СообщениеДобавлено: 16 окт 2009, 09:21 
Не в сети
Аватара пользователя

Зарегистрирован: 21 июн 2006, 11:22
Сообщения: 1387
Откуда: г. Омск
Skype: victorkazarinov
прог. языки: почти все понемногу
ФИО: Казаринов Виктор Геннадьевич
Пролог как и др. системы подобного рода (LISP, CLIPS) так просто напрямую использовать для распознавания изображений и др. образов, 3D реконструкции не получится.
Они очень медлительны, т.к. фактически происходит интерпретация правил, либо трехстековая работа со списками. На основе LISP фирма GenSym ( http://www.gensym.com/ ) создала реалтайм Rule-based Engine G2 на основе компиляции в С из LISP. Но это тот еще монстр. На данном форуме вряд ли нужно управлять ядерным реактором или полетом корабля к Марсу.
Распознавание образов - сложный процесс, сочетающий анализ и синтез. Но в основном он основан на анализе. А для этого необходим механизм прямого логического вывода. Поэтому Пролог вряд. ли именно для этого процесса предпочтителен. На нем хорошо планировать поведение.
Нужно определиться - идти ли к созданию "мозгов" подобного рода в виде мобильного бортового устройства робота или в принципе такое не нужно и всегда будет достаточно стационарного "мозга", соединенного с "тушкой" - телом робота каналом связи.

_________________
Проект Robosonic RS http://www.aigod.com


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 32 ]  На страницу Пред.  1, 2, 3  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO