2016-06-26 5 views
1

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

Предположим, у меня есть большой бассейн у себя дома - у меня есть маленькая лодка с RC, которая оснащена очень чувствительным и точным GPS и крошечным компьютером внутри с некоторым модулем SD-карты для загрузки/сохранения данных Neural Network.

Лодка имеет 1x сервопривод (для управления поворотом) и 1x двигатель для перемещения вперед.

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

Я имею в виду следующие входов:

  • Расстояние до WPT
  • Направление WPT

Выходы:

  • двигателя дроссельная
  • Servo повернуть

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

Вопрос:

, прежде чем начать копать в код я скорее хотел бы спросить профи за советом.

  1. a) Возможно ли использовать NN в проекте, подобном этому?
  2. Если да, то я должен делать под наблюдением обучения (показывая сеть как перейти к одному Wpt так много раз, что сеть узнает его, а затем использовать эту сеть для навигации автономно другой WPT?)
  3. Входы/выходы - все, что нужно, чтобы это работало?

Большое спасибо за любой вклад в это.

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

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

  1. тока Лодка Угол [0360]
  2. Угол к следующей точке маршрута [0360]

И один выход

  1. ПЕРЕКЛАДКИ [-1,1]

А вот результаты, это не займет слишком много времени, чтобы учиться.

  • Желтая коробка - тренер лодка
  • Синего ящик нейронной сети управляемого катер

https://youtu.be/_FDWSBYj7WM

ответ

0

Я не уверен, если это правильная задача для нейронной сети. Это звучит как задача применить обучение подкрепления, такое как Q-Learning.

https://en.wikipedia.org/wiki/Reinforcement_learning

https://en.wikipedia.org/wiki/Q-learning

Если вы хотели бы использовать ИНС вы можете использовать их в качестве функции аппроксиматоров. Я думаю, что Google сделал это со своим боттом Alpha Go.

+1

Так что я использовал NN, чтобы узнать, применимы ли они для такой работы. Входы были текущим углом лодки и углом назначения, выход - левым/правым рулевым управлением. Результаты, приведенные ниже: https://www.youtube.com/watch?v=ry3EG3Fv4nw Это простой тест, поэтому не ожидайте ничего, что бы отразить, однако похоже, что он может справиться с задачей довольно хорошо. Обновленная версия NN: https://youtu.be/_FDWSBYj7WM – PeeS

+0

Ну! Это круто! Спасибо за это. Вы проверили обучение подкрепления? –

+0

Эй, Бастиан, еще нет - кажется, что просто RNN делает эту работу на данный момент. Позвольте мне сначала проверить это на самом деле и вернуться сюда с некоторыми обновлениями. Спасибо за то, что урок обучения укрепит, если я не буду удовлетворять результаты с помощью RNN, вы пойдете на усиление, чтобы увидеть .. – PeeS

Смежные вопросы