Введение:

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

Что такое q-обучение?

Q-обучение — это алгоритм обучения с подкреплением вне политики, который пытается определить оптимальный курс действий в текущей ситуации. Это называется вне политики, поскольку функция q-обучения учится на действиях, которые не охватываются настоящей политикой, таких как случайные действия, поэтому политика не требуется. Более подробно, q-обучение направлено на поиск политики, которая максимизирует общее вознаграждение.

Что такое Q?

Качество представлено буквой «q» в q-обучении. В этой ситуации качество относится к тому, насколько ценна конкретная деятельность для получения вознаграждения в будущем.

Итак, как это работает?

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

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

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

Награда отрицательна, если активность отрицательна (ходьба по тротуару, ранение других водителей и т. д.).

Цель агента — выбрать наилучшее действие, приносящее наибольшую награду.

Мы видели много примеров обучения с подкреплением в таких играх, как шахматы и го.

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

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

Используемые зависимости:

  1. Numpy — NumPy (Numerical Python) — это библиотека, состоящая из объектов многомерного массива и набора функций для управления ими.

Самый простой способ установить NumPy — использовать диспетчер пакетов pip, чтобы получить двоичную версию из индекса пакетов Python (PyPI.org) и выполнить следующую команду, чтобы установить ее в вашей системе:

пип установить numpy

  1. Pygame — Pygame — это набор кроссплатформенных инструментов Python для создания видеоигр. Он состоит из компьютерной графики и звуковых библиотек, предназначенных для использования с языком программирования Python.

Хороший способ установить Pygame — использовать инструмент pip (который python использует для установки пакетов). Команда следующая:

py -m pip install -U PyGame — пользователь

  1. Pymunk — Pymunk — это простая библиотека 2D-физики для Python, которую можно использовать всякий раз, когда вам требуется 2D-физика твердого тела.

Pymunk можно установить с помощью pip install:

пип установить pymunk

  1. Keras — Keras — это программная библиотека с открытым исходным кодом, которая предоставляет интерфейс Python для искусственных нейронных сетей. Keras действует как интерфейс для библиотеки TensorFlow.

Keras можно установить с помощью pip install:

пип установить Керас

  1. Theano — Theano — это библиотека Python и оптимизирующий компилятор для манипулирования и вычисления математических выражений, особенно матричных. В Theano вычисления выражаются с использованием синтаксиса NumPy-Esque и скомпилированы для эффективной работы на архитектурах CPU или GPU.

Theano можно установить с помощью pip install:

пип установить теано

  1. h5py — пакет h5py представляет собой интерфейс Pythonic для двоичного формата данных HDF5. Он позволяет хранить огромные объемы числовых данных и легко манипулировать этими данными из NumPy. Например, вы можете нарезать многотерабайтные наборы данных, хранящиеся на диске, как если бы они были настоящими массивами NumPy.

h5py можно установить с помощью pip install:

пип установить h5py

Получить код:https://github.com/Jangs13/Self-Driving-Car

Заключение

В этом исследовании была доказана полезность применения методов обучения с подкреплением для управления автономными автомобилями. Мы продемонстрировали, что Deep Q-Networks можно использовать для управления транспортным средством непосредственно с помощью многомерных сенсорных входов, и мы сделали это, используя новое сочетание сверточной нейронной сети (CNN) и рекуррентной нейронной сети (RNN). Хотя кажется, что хорошо спроектированный низкоразмерный дискретный агент в пространстве состояний может управлять автомобилем более надежно, чем более сложный агент DQN, мы считаем, что наша работа может быть расширена во многих направлениях. В частности, мы хотели бы найти лучший способ определить нашу функцию вознаграждения, которая поддерживает тонкий баланс между оптимизацией скорости и обеспечением устойчивости автомобиля.

Надеюсь это поможет :)

Счастливого обучения

Атарв Джангам