GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.3 (5)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Планировщик задач (построитель алгоритмов) для робота
NO.
Сообщений: 10700
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 5:57
Изменено: 24 авг 16 8:51, автор изменений: r
Наверно планировщик работ, а не задач.
Таким занимается оптимизирующий компилятор.
[Ответ][Цитата]
гость
78.25.120.*
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 6:05
Изменено: 24 авг 16 8:51, автор изменений: r
вообще тут есть проблема. Одно дело 'естественное' планирование жизнедеятельности, другое - планирование задач в рамках какой-нибудь операционной системы (в смысле распределения заданий по процессорам, выдерживание жестких временных параметров etc). подозрения что принципы разные, хотя слово планирование одно..
[Ответ][Цитата]
NO.
Сообщений: 10700
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 7:46
Изменено: 24 авг 16 8:52, автор изменений: r
Да вроде одно и то же, возможности и ограничения, сроки и стоимость, качество и контроль.
Трудно планировать когда у каждой операции много побочных эффектов и их нельзя просто выбросить, нужно отслеживать и использовать. Как в шахматах.
Вот существенная разница это игры с противником или неполной информацией. Когда мы не можем просто просчитать до конца и потом выбрать кратчайшую траекторию. Все рассуждения гипотетические.
Но я видел менеджеров, которые эти случаи не различают. И даже не отличают разовое мероприятие от повторяющихся процессов. Кстати с либерально-демократическим стилем управления Это хорошо для роста в ширь и в правовых системах как в США или у нас в госструктурах, иначе просто ресурсы утекают, похоже как покойник "рассасывается", мне лично такая "организация" совсем не нравится.

вот сейчас на hbr зашел, интересные ссылки
4+2: как думают ученые и самые талантливые интеллектуалы
http://hbr-russia.ru/lichnaya-effektivnost/lichnye-kachestva/p18104/
Как работает мозг Цена: 700,00 руб.
http://hbr-russia.ru/sborniki/14120/kupit/
[Ответ][Цитата]
гость
78.25.123.*
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 9:57
Изменено: 24 авг 16 8:52, автор изменений: r
no> одно и то же, возможности и ограничения, сроки и стоимость, качество и контроль.

разумеется, но эмоции (как оценивающий механизм) вносят некий иррациональный компонент, накладывающий некую специфику на поведение ест. агента c его ограниченной рациональностью и постоянными конфликтами желаний, опасений, обязательств, нежеланий, намерений, интересов, прямых и побочных целей. как бы рациональное вырастает из субрационального, но не вытеcняет его полностью.
[Ответ][Цитата]
NO.
Сообщений: 10700
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 10:49
Изменено: 24 авг 16 8:53, автор изменений: r
Иррациональность остается всегда, поэтому чего бы и как ни планировали, нужно проверять что получилось. А эмоции это первая реакция мозга на неожиданное, до осмысления. Толку в них мало.
Можно сделать робота, который на все предлагаемые для распознавания картинки делает большие глаза и говорит "вау"
[Ответ][Цитата]
гость
78.25.123.*
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 11:15
Изменено: 24 авг 16 8:53, автор изменений: r
эмоции некий сектор специфической информационной обработки, есть же не только пугнические эмоции. как бы чтобы планировщик понимал чужие планы он сам должен быть способным к порождению иррационального (контролируемого иррационального).
[Ответ][Цитата]
NO.
Сообщений: 10700
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 22 авг 16 11:38
Изменено: 24 авг 16 8:53, автор изменений: r
типа совместной джазовой импровизации
[Ответ][Цитата]
Vpolevoj
Сообщений: 1408
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 0:56
Изменено: 24 авг 16 8:54, автор изменений: r
Цитата:
Автор: r

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

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

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

А вот пример из соседней темы про робота-слугу.

Цитата:
Автор: Yandersen

Ах да, щас только дошло ещё одно простое решение проблемы о сборе малины под дождём, если робот не знает о зонтике - собирать малину после дождя (но это для случая, если робот знает, что дождь - явление врЕменное)!

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

Но рассмотрим процесс подробнее, в деталях...

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

1) Робот знает, что целевое значение повышается при запуске функции F1 (сбор ягоды) в присутствии абстракции X (куст малины). В текущем состоянии сенсорной картины такой абстракции не наблюдается (робот стоит в ангаре), а значит сенсорная картина должна включать её в себя, поэтому целевая сенсорная картина транслируется интеллектом в новый вид - теперь целью назначается наличие в сенсорной картине абстракции Х (куст малины) и использование при этом функции F1 (сбор ягоды).

2) Робот также знает, что использование функции F2 (движение платформы, приводящее в точку, где находится куст) изменяет сенсорную картину таким образом, что в ней появляется требуемая абстракция Х (куст малины), а значит решением поставленной задачи в данный момент станет использование функции F2 (движение к кусту). При данных условиях это и является требуемым планом действий - активировать функцию F2 (движение к кусту).

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

Когда корзина наполнится, мотиватор начнёт требовать новую цель - возвращение в ангар (решение - использование функции F3), и интеллект будет его исполнять таким же образом, пока робот не окажется в ангаре; потом разгрузка и т.д. Ну в общем примитивно и понятно, да?

Но так будет в простом случае с ясной погодой. А у нас дождь.

При таком стечении обстоятельств вскоре после начала исполнения функции F2 (движение из ангара к кусту) робот начнёт намокать под дождём и мотиватор добавит ему новую задачу: уменьшить показание сенсора намокания (при этом продолжая требовать увеличение показаний сенсора заполненности корзины). Поскольку решением задачи уменьшения намокания является возвращение в ангар (функция F3, т.е. действие, противоположное движению к кусту F2), робот попутно с функцией F2 (движение к кусту) начнёт использовать F3 (возвращение в ангар). Очевидно, использование обоих функций одновременно приведёт к остановке платформы робота.

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

Какой фичи интеллекту не хватает, чтобы избежать такого фэйла?

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


А не кажется ли вам, многоуважаемый r, что это реинкарнация уже озвученной нами (и придуманной Вами) задачи про "зонтик, дождь и автомобиль"? Только она немного видоизменилась.

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

Но задача, соглашусь, интересная.

Немного пофантазирую.

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

Вы спросите, зачем подобному роботу нужен Интеллект? Ну, как зачем?

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

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

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

Осталось лишь указать этому роботу место стоянки - специально для него оборудованный ангар с платформой, на которую робот заезжает и подключается к интерфейсным разъемам, для подзарядки своих аккумуляторов и диагностики систем. Разумеется, роботу нужно указать месторасположение этого ангара на участке тоже. Теперь картина (Карта участка) полная, и робот может приступать к работе.

Нужно лишь задать ему график работы. Скажем, мы постановили, чтобы он выезжал на сбор ягод каждый день в 7:00 утра. И процесс пошёл.

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

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

Поэтому (после ремонта) мы ввели в него небольшую программу: "если идет дождь, то выезжать из ангара НЕЛЬЗЯ". А чтобы он все же выехал на сбор ягод (и не пропустил целый день), то мы установили ему такое специальное расписание с проверкой на наличие дождя, чтобы он осведомлялся о погоде, скажем, каждый час, и если дождь уже прекратился, то пусть идёт и собирает ягоды, нефиг стоять.

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

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

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

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

Пришлось опять вызывать ремонтную бригаду и снова вносить в его программу изменения. Теперь уже касательно непосредственно его поведения во время работы: "Если НАЧАЛСЯ дождь, то - возвращайся в ангар".

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

========================
Что я хотел сказать этим примером?

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

Это, если кто не понял, я таким вот образом сформулировал ЗАДАЧУ.

Кто сумеет написать программу, которая бы позволяла задавать на близком к обычному человеческому языку уровне правила поведения робота - сборщика малины (пока без зонта).
[Ответ][Цитата]
r
Сообщений: 837
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 12:18
Изменено: 24 авг 16 8:55
Цитата:
Автор: гость
вообще тут есть проблема. Одно дело 'естественное' планирование жизнедеятельности, другое - планирование задач в рамках какой-нибудь операционной системы (в смысле распределения заданий по процессорам, выдерживание жестких временных параметров etc). подозрения что принципы разные, хотя слово планирование одно..
В данном случае под планировщиком мной понимается программный модуль, отвечающий за разбиение задачи на элементарные составляющие, составляющий полную цепочку из подзадач для решения задачи, отправляющий цепочку на выполнение с контролем выполнения каждой подзадачи, в случае неудачи выполняющий поиск альтернативного пути для решения задачи, перераспределяющий ресурсы между задачами, если их несколько. Т.е. это что-то между обычным планированием своих действий, планированием задач в ОС и еще чем-то таким, что способно накапливать опыт и использовать его.
[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 12:33
Изменено: 24 авг 16 8:56, автор изменений: r
Цитата:
Автор: r

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

Другими словами речь о хорошо обученном, на уровне выше вчерашнего студента соответствующего ВУЗа, СИИ/AGI...
Осталось только создать не просто СИИ, а с довольно большим начальным потенциалом, затем его хорошо обучить, а уж потом можно и просто тиражировать.... т.е. самая малость... Вот на форуме немножко еще пообсуждаем и если хмурные кошачье-луарвиково-яйцеголовые гении одобрят и разрешат, то можно будет приступить и непосредственно к разработке...

И так... ждемс...

Пожалуйста не удаляйте сразу, дайте время шоб целевая аудитория успела среагировать...
[Ответ][Цитата]
dr2chek
Сообщений: 871
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 12:50
Изменено: 24 авг 16 8:55, автор изменений: r
Цитата:
Автор: Vpolevoj

и если дождь уже прекратился, то пусть идёт и собирает ягоды, нефиг стоять.



Вы, похоже никогда малину не собирали. Штука в том, что после дождя малину нельзя собирать, т.к. она, будучи мокрой, быстро сгниет. Нужно обязательно дождаться, пока она не обсохнет на кусте. Так что снабжайте ваш агрегат сенсором влажности и еще лампочками подсветки, чтобы и ночью собирал, пока нет дождя
[Ответ][Цитата]
r
Сообщений: 837
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 13:40
Изменено: 24 авг 16 8:55
Цитата:
Автор: Vpolevoj
Для меня странно, r, что ты еще не "реализовал что-то такое", поскольку мы уже обсуждали с тобой этот вопрос (а вот начало этого разговора). Так что, эта тема уже достаточно "старая" (хотя пока еще до конца и не решенная).
Это тот редкий случай, когда без полного понимания я за реализацию браться бы не хотел.
По этим ссылкам две проблемы.
Проблема 1. Вторая ссылка, которая про начало обсуждения, касается процедуры программирования человеком робота, с ограниченным доступом к коду робота. То есть это как бы не разработка интеллектуального агента - человек последовательно и планомерно прописывает действия робота на языке близком к естественному.
Проблема 2. Первая ссылка, про дальнейшее обсуждение, касается разработки такого механизма, который позволил бы роботу строить алгоритм решения задач "на лету". То есть если посмотреть код такого робота, то готового решения там не найдешь, решение выстраивается из кусочков, в обратном порядке, от желаемого положения вещей к текущему положению. Это уже разработка интеллектуального агента.
Собственно, я сейчас (как вобщем-то и тогда) занят первой проблемой, так как эта идея является более старой ну и более базовой что ли. Был приличный перерыв в работе, но решил опять взяться. Все таки хочется проверить идею программирования на основе ситуаций на удобство. Думаю доделать до какого-то удобоваримого вида и примерно через месяц показать. В качестве синтаксиса я взял все ту же фреймовую модель с валентностями. Более подходящего придумать не получилось. Если не понятно о чем речь, то я разрабатываю интерпретатор на основе предложенной тогда ситуационной модели построения кода.

Цитата:
Автор: Vpolevoj
А не кажется ли вам, многоуважаемый r, что это реинкарнация уже озвученной нами (и придуманной Вами) задачи про "зонтик, дождь и автомобиль"? Только она немного видоизменилась.
Да, все так. Подобных примеров вокруг множество.

Цитата:
Автор: Vpolevoj
Что я хотел сказать этим примером?

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

Цитата:
Автор: Vpolevoj
Кто сумеет написать программу, которая бы позволяла задавать на близком к обычному человеческому языку уровне правила поведения робота - сборщика малины (пока без зонта).
Вот этим как раз и занимаюсь
[Ответ][Цитата]
r
Сообщений: 837
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 14:11
Изменено: 24 авг 16 8:54
Цитата:
Автор: rrr3
Другими словами речь о хорошо обученном, на уровне выше вчерашнего студента соответствующего ВУЗа, СИИ/AGI...
СИИ конечно не получится, но минимальная гибкость/автономность робота просто необходима.

Цитата:
Автор: rrr3
Пожалуйста не удаляйте сразу, дайте время шоб целевая аудитория успела среагировать...
Не переживайте, мне самому не нравится когда посты удаляют сразу же. Поэтому взял за правило чистить не раньше чем через месяц. И то, если не лень будет.
[Ответ][Цитата]
rrr3
Сообщений: 11857
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 23 авг 16 14:41
Изменено: 24 авг 16 8:54, автор изменений: r
Цитата:
Автор: r

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

Нет, Вы не поняли. Это то, что Вы хотите
Цитата:
Автор: r

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


не получится без полноценного, да еще и обученного СИИ/AGI
[Ответ][Цитата]
r
Сообщений: 837
На: Планировщик задач (построитель алгоритмов) для робота
Добавлено: 24 авг 16 0:24
Изменено: 24 авг 16 8:50
Цитата:
Автор: rrr3
не получится без полноценного, да еще и обученного СИИ/AGI
Это не обязательно так. Как я понимаю, почти все существующие когнитивные архитектуры работают схожим образом, соответственно всё это умеют.
[Ответ][Цитата]
 Стр.3 (5)1  2  [3]  4  5<< < Пред. | След. > >>