Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Алгоритмы обучения с подкреплением на Python

Описание и разработка алгоритмов искусственного интеллекта
Покупка
Артикул: 748353.01.99
Доступ онлайн
999 ₽
В корзину
Эта книга поможет читателю овладеть алгоритмами обучения с подкреплением (ОП) и научиться реализовывать их при создании самообучающихся агентов. В первой части рассматриваются различные элементы ОП, сфера его применения, инструменты, необходимые для работы в среде ОП. Вторая и третья части посвящены непосредственно алгоритмам. В числе прочего автор показывает, как сочетать Q-обучение с нейронными сетями для решения сложных задач, описывает методы градиента стратегии, TRPO и РРО, позволяющие повысить производительность и устойчивость, а также детерминированные алгоритмы DDPG и TD5. Читатель узнает о том, как работает техника подражательного обучения, познакомится с алгоритмами исследования на базе верхней доверительной границы (UCB и UCB1) и метаалгоритмом ESBAS. Издание предназначено для тех, кто интересуется исследованиями в области искусственного интеллекта, применяет в работе глубокое обучение или хочет освоить обучение с подкреплением с нуля. Обязательное условие - владение языком Python на рабочем уровне.
Лонца, А. Алгоритмы обучения с подкреплением на Python : практическое руководство / А. Лонца ; пер. с англ. А. А. Слинкина. - Москва : ДМК Пресс, 2020. - 286 с. - ISBN 978-5-97060-855-5. - Текст : электронный. - URL: https://znanium.com/catalog/product/1210701 (дата обращения: 24.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Андреа Лонца

Алгоритмы обуче ния  
с подкреплением на Python

Reinforcement Learning 
Algorithms with Python

Learn, understand, and develop smart 
algorithms for addressing AI challenges

Andrea Lonza

BIRMINGHAM - MUMBAI

Алгоритмы обуче ния  
с подкреплением на Python

Описание и разработка алгоритмов  
искусственного интеллекта

Андреа Лонца

Москва, 2020

УДК 004.85
ББК 32.971.3
Л76

Лонца А.
Л76 
Алгоритмы обуче ния с подкреплением на Python / пер. с англ. А. А. Слинкина. – М.: ДМК Пресс, 2020. – 286 с.: ил. 

ISBN 978-5-97060-855-5

Эта книга поможет читателю овладеть алгоритмами обучения с подкреплением (ОП) и научиться реализовывать их при создании самообучающихся агентов.
В первой части рассматриваются различные элементы ОП, сфера его применения, инструменты, необходимые для работы в среде ОП. Вторая и третья части 
посвящены непосредственно алгоритмам. В числе прочего автор показывает, как 
сочетать Q-обучение с нейронными сетями для решения сложных задач, описывает 
методы градиента стратегии, TRPO и PPO, позволяющие повысить производительность и устойчивость, а также детерминированные алгоритмы DDPG и TD3. 
Читатель узнает о том, как работает техника подражательного обучения, познакомится с алгоритмами исследования на базе верхней доверительной границы 
(UCB и UCB1) и метаалгоритмом ESBAS.
Издание предназначено для тех, кто интересуется исследованиями в области 
искусственного интеллекта, применяет в работе глубокое обучение или хочет 
освоить обучение с подкреплением с нуля. Обязательное условие – владение 
языком Python на рабочем уровне.

УДК 004.85
ББК 32.971.3

First published in the English language under the title ‘Reinforcement Learning Algorithms 
with Python. Russian language edition copyright © 2020 by DMK Press. All rights reserved.

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

ISBN 978-1-78913-111-6 (англ.) 
Copyright © Packt Publishing 2019
ISBN 978-5-97060-855-5 (рус.) 
©  Оформление, издание, перевод, 
ДМК Пресс, 2020

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

Фред, ты крутой чувак.  
Ты всегда понуждаешь меня сделать больше.  
Спасибо, брат!

Содержание

Об авторе ...........................................................................................................12

Предисловие ....................................................................................................13

Часть I. АЛГОРИТМЫ И ОКРУЖАЮЩИЕ СРЕДЫ .......................18

Глава 1. Ландшафт обуче ния с подкреплением ................................19
Введение в ОП .......................................................................................................20
Сравнение ОП и обучения с учителем ............................................................22
История ОП .......................................................................................................23
Глубокое обуче ние ............................................................................................25
Элементы ОП ........................................................................................................26
Стратегия ..........................................................................................................26
Функция ценности ............................................................................................28
Вознаграждение ................................................................................................29
Модель ...............................................................................................................30
Применение ОП ....................................................................................................30
Игры ...................................................................................................................30
Робототехника и индустрия 4.0 .......................................................................31
Машинное обуче ние .........................................................................................32
Экономика и финансы .....................................................................................32
Здравоохранение ..............................................................................................32
Интеллектуальные транспортные системы ....................................................33
Оптимизация энергопотребления и умные сети электроснабжения ...........33
Резюме ...................................................................................................................33
Вопросы .................................................................................................................33
Для дальнейшего чтения ......................................................................................34

Глава 2. Реализация цикла ОП и OpenAI Gym .....................................35
Настройка окружающей среды ............................................................................36
Установка OpenAI Gym .....................................................................................36
Установка Roboschool .......................................................................................37
OpenAI Gym и цикл ОП .........................................................................................37
Разработка цикла ОП ........................................................................................38
Привыкаем к пространствам ...........................................................................41
Разработка моделей МО с помощью TensorFlow ................................................42
Тензоры .............................................................................................................43
Создание графа .................................................................................................45
Простой пример линейной регрессии ............................................................46

Содержание  7

Введение в TensorBoard ........................................................................................49
Типы окружающих сред ОП .................................................................................51
Зачем нужны различные среды? .....................................................................51
Окружающие среды с открытым исходным кодом ........................................52
Резюме ...................................................................................................................54
Вопросы .................................................................................................................55
Для дальнейшего чтения ......................................................................................55

Глава 3. Решение задач методом динамического  
программирования ........................................................................................56
МППР .....................................................................................................................56
Стратегия ..........................................................................................................58
Доход .................................................................................................................58
Функции ценности ...........................................................................................59
Уравнение Беллмана ........................................................................................60
Классификация алгоритмов ОП ..........................................................................61
Безмодельные алгоритмы ................................................................................62
Алгоритмы ОП, основанные на модели ..........................................................63
Разнообразие алгоритмов ................................................................................64
Динамическое программирование .....................................................................64
Оценивание и улучшение стратегии...............................................................65
Итерация по стратегиям ..................................................................................66
Итерация по ценности .....................................................................................70
Резюме ...................................................................................................................72
Вопросы .................................................................................................................73
Для дальнейшего чтения ......................................................................................73

Часть II. БЕЗМОДЕЛЬНЫЕ АЛГОРИТМЫ ОП .................................74

Глава 4. Применение Q-обуче ния и алгоритма SARSA ...................75
Обучение без модели............................................................................................76
Порядок действий.............................................................................................76
Оценивание стратегии .....................................................................................77
Проблема исследования ...................................................................................77
TD-обуче ние ..........................................................................................................78
TD-обновление .................................................................................................79
Улучшение стратегии .......................................................................................79
Сравнение методов Монте-Карло и TD-методов ...........................................79
SARSA .....................................................................................................................80
Алгоритм ...........................................................................................................80
Применение SARSA к игре Taxi-v2 ......................................................................81
Q-обуче ние ............................................................................................................86
Теория ................................................................................................................86
Алгоритм ...........................................................................................................87
Применение Q-обуче ния к игре Taxi-v2 .............................................................87
Сравнение SARSA и Q-обуче ния......................................................................89

 Содержание

Резюме ...................................................................................................................91
Вопросы .................................................................................................................92

Глава 5. Глубокая Q-сеть ..............................................................................93
Глубокие нейронные сети и Q-обуче ние ............................................................93
Аппроксимация функций ................................................................................94
Q-обуче ние с нейронными сетями .................................................................95
Неустойчивость глубокого Q-обуче ния ..........................................................96
DQN ........................................................................................................................97
Решение .............................................................................................................97
Алгоритм DQN ..................................................................................................98
Архитектура модели .......................................................................................101
Применение DQN к игре Pong ...........................................................................102
Игры Atari ........................................................................................................102
Предварительная обработка ..........................................................................103
Реализация DQN .............................................................................................105
Результаты.......................................................................................................112
Вариации на тему DQN .......................................................................................113
Double DQN .....................................................................................................114
Dueling DQN ....................................................................................................117
n-шаговый DQN ..............................................................................................118
Резюме .................................................................................................................120
Вопросы ...............................................................................................................120
Для дальнейшего чтения ....................................................................................121

Глава 6. Стохастическая оптимизация и градиенты  
стратегии ..........................................................................................................122
Методы градиента стратегии.............................................................................122
Градиент стратегии ........................................................................................123
Теорема о градиенте стратегии .....................................................................124
Вычисление градиента ...................................................................................125
Стратегия ........................................................................................................126
Алгоритм ГС с единой стратегией .................................................................127
Устройство алгоритма REINFORCE ....................................................................127
Реализация REINFORCE ..................................................................................129
Посадка космического корабля с помощью алгоритма REINFORCE ..........132
REINFORCE с базой .............................................................................................134
Реализация REINFORCE с базой .....................................................................136
Обучение алгоритма исполнитель–критик ......................................................137
Как критик помогает обучаться исполнителю .............................................137
n-шаговая модель AC ......................................................................................138
Реализация AC.................................................................................................139
Посадка космического корабля с помощью алгоритма AC .........................141
Дополнительные улучшения AC и полезные советы ...................................142
Резюме .................................................................................................................143
Вопросы ...............................................................................................................143
Для дальнейшего чтения ....................................................................................143

Содержание  9

Глава 7. Реализация TRPO и PPO ............................................................144

Roboschool ...........................................................................................................144
Управление непрерывной системой .............................................................145
Метод естественного градиента стратегии ......................................................148
Интуитивное описание NPG ..........................................................................149
Немного математики .....................................................................................150
Осложнения в методе естественного градиента ..........................................152
Оптимизация стратегии в доверительной области .........................................152
Алгоритм TRPO ...............................................................................................153
Реализация алгоритма TRPO .........................................................................156
Применение TRPO ..........................................................................................160
Проксимальная оптимизация стратегии ..........................................................163
Краткое описание ...........................................................................................163
Алгоритм PPO .................................................................................................163
Реализация PPO ..............................................................................................164
Применение PPO ............................................................................................166
Резюме .................................................................................................................168
Вопросы ...............................................................................................................168
Для дальнейшего чтения ....................................................................................169

Глава 8. Применения алгоритмов DDPG и TD3 ................................170

Сочетание оптимизации градиента стратегии с Q-обуче нием ......................170
Детерминированный градиент стратегии ....................................................171
Алгоритм DDPG ..................................................................................................174
Реализация DDPG ...........................................................................................176
Применение DDPG к среде BipedalWalker-v2 ................................................180
Алгоритм TD3 .....................................................................................................182
Проблема смещения оценки в сторону завышения.....................................182
Уменьшение дисперсии .................................................................................184
Применение TD3 к среде BipedalWalker-v2 ...................................................186
Резюме .................................................................................................................187
Вопросы ...............................................................................................................188
Для дальнейшего чтения ....................................................................................188

Часть III. ЗА ПРЕДЕЛАМИ БЕЗМОДЕЛЬНЫХ  
АЛГОРИТМОВ .............................................................................................189

Глава 9. ОП на основе модели .................................................................190

Методы на основе модели ..................................................................................190
Общая картина обуче ния на основе модели ................................................191
Достоинства и недостатки .............................................................................195
Сочетание безмодельного и основанного на модели обучения .....................196
Полезная комбинация ....................................................................................196
Построение модели из изображений ............................................................198
Применение алгоритма ME-TRPO к задаче об обратном маятнике ...............199

 Содержание

Принцип работы ME-TRPO ............................................................................200
Реализация ME-TRPO .....................................................................................200
Эксперименты в среде RoboSchool ................................................................204
Резюме .................................................................................................................206
Вопросы ...............................................................................................................207
Для дальнейшего чтения ....................................................................................207

Глава 10. Подражательное обуче ние и алгоритм DAgger ...........208
Технические требования ....................................................................................208
Установка Flappy Bird .....................................................................................209
Подход на основе подражания ..........................................................................209
Пример: помощник водителя ........................................................................210
Сравнение подражательного обуче ния и обучения с подкреплением .......211
Роль эксперта в подражательном обуче нии .................................................211
Структура IL ....................................................................................................212
Игра Flappy Bird ..................................................................................................214
Порядок взаимодействия с окружающей средой .........................................215
Алгоритм агрегирования набора данных .........................................................216
Алгоритм DAgger ............................................................................................217
Реализация DAgger .........................................................................................217
Анализ результатов игры в Flappy Bird .........................................................221
Обратное обуче ние с подкреплением ...............................................................222
Резюме .................................................................................................................223
Вопросы ...............................................................................................................223
Для дальнейшего чтения ....................................................................................224

Глава 11. Оптимизация методом черного ящика ...........................225
За рамками ОП ....................................................................................................225
Краткий обзор ОП ...........................................................................................226
Альтернатива ..................................................................................................226
Основы эволюционных алгоритмов .................................................................227
Генетические алгоритмы ...............................................................................230
Эволюционные стратегии ..............................................................................230
Масштабируемые эволюционные стратегии ....................................................232
Основной принцип .........................................................................................233
Масштабируемая реализация ........................................................................234
Применение масштабируемой ЭС к среде LunarLander ..................................239
Резюме .................................................................................................................241
Вопросы ...............................................................................................................241
Для дальнейшего чтения ....................................................................................242

Глава 12. Разработка алгоритма ESBAS ..............................................243
Исследование и использование .........................................................................244
Задача о многоруком бандите .......................................................................245
Подходы к исследованию ...................................................................................246
e-жадная стратегия ........................................................................................246

  11

Алгоритм UCB .................................................................................................247
Сложность исследования ...............................................................................248
Алгоритм ESBAS..................................................................................................249
Что такое выбор алгоритма ...........................................................................249
ESBAS изнутри ................................................................................................250
Реализация ......................................................................................................252
Тестирование в среде Acrobot ........................................................................255
Резюме .................................................................................................................257
Вопросы ...............................................................................................................258
Для дальнейшего чтения ....................................................................................258

Глава 13. Практические подходы к решению проблем ОП ........259
Рекомендуемые практики глубокого ОП ..........................................................259
Выбор подходящего алгоритма .....................................................................260
От простого к сложному .................................................................................261
Проблемы глубокого ОП .....................................................................................263
Устойчивость и воспроизводимость результатов ........................................263
Эффективность ...............................................................................................264
Обобщаемость .................................................................................................265
Передовые методы .............................................................................................266
ОП без учителя ................................................................................................266
Перенос обуче ния ...........................................................................................268
ОП в реальном мире ...........................................................................................270
Лицом к лицу с реальным миром ..................................................................270
Преодоление разрыва между имитационной моделью и реальным  
миром ..............................................................................................................271
Создание собственной окружающей среды ..................................................272
Будущее ОП и его влияние на общество ...........................................................272
Резюме .................................................................................................................273
Вопросы ...............................................................................................................274
Для дальнейшего чтения ....................................................................................274

Ответы на вопросы ......................................................................................275

Предметный указатель ..............................................................................281

Об авторе

Андреа Лонца занимается глубоким обуче нием, одержим искусственным 
интеллектом и страстью создавать машины, действующие «разумно». Знания в области обуче ния с подкреплением, обработки естественного языка 
и компью терного зрения приобрел в ходе работы над проектами по машинному обуче нию в университете и в промышленности. Также участвовал в нескольких конкурсах Kaggle и достигал высоких результатов. Всегда ищет интересные задачи и любит доказывать, на что способен.

О рецензенте

Грег Уолтерс занимается компьютерами и программированием с 1972 года. 
Отлично владеет языками Visual Basic, Visual Basic .NET, Python и SQL (диалектами MySQL, SQLite, Microsoft SQL Server, Oracle), C++, Delphi, Modula-2, Pascal, C, ассемблером 80x86, COBOL и Fortran. Обучает программированию, через его руки прошло множество людей, которых он учил таким продуктам, как 
MySQL, Open Database Connectivity, Quattro Pro, Corel Draw!, Paradox, Microsoft 
Word, Excel, DOS, Windows 3.11, Windows for Workgroups, Windows 95, Windows 
NT, Windows 2000, Windows XP и Linux. Сейчас на пенсии и в свободное время 
музицирует и обожает готовить, но всегда готов поработать фрилансером над 
разными проектами.

Предисловие

Обучение с подкреплением (ОП) – популярное и многообещающее направление искусственного интеллекта, в рамках которого изучается построение 
моделей и агентов, способных находить идеальное поведение в условиях изменяющихся требований. Эта книга поможет вам овладеть алгоритмами ОП 
и научиться реализовывать их при создании самообучаю щихся агентов.
Книга начинается с введения в инструменты, библиотеки и процедуру установки, необходимые для работы в среде ОП, затем рассматриваются различные элементы ОП и применение методов, основанных на понятии ценности, 
в частности алгоритмов Q-обуче ния и SARSA. Вы научитесь сочетать Q-обучение с нейронными сетями для решения сложных задач. Рассматриваются также методы градиента стратегии, TRPO и PPO, позволяющие повысить производительность и устойчивость, а затем детерминированные алгоритмы DDPG 
и TD3. Объясняется, как работает техника подражательного обуче ния и как алгоритм Dagger позволяет обучить агента летать. Вы узнаете об эволюционных 
стратегиях и оптимизации методом черного ящика. И напоследок познакомитесь с алгоритмами исследования на базе верхней доверительной границы 
(UCB и UCB1) и метаалгоритмом ESBAS.
Прочитав книгу до конца, вы научитесь применять основные алгоритмы ОП 
для решения реальных задач и станете членом сообщества ОП.

ПредПОлагаемая аудитОрия

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

Структура книги

В главе 1 «Ландшафт обуче ния с подкреплением» описываются проблемы, которые ОП с успехом решает, и приложения, в которых алгоритмы ОП уже нашли применение. Здесь же рассматриваются инструменты, библиотеки и процедуры их установки и настройки, необходимые для выполнения обсуждаемых 
в книге проектов.
В главе 2 «Реализация цикла ОП и OpenAI Gym» описывается главный цикл 
алгоритмов ОП, инструментарий для разработки алгоритмов и различные 
типы сред. Мы разработаем с помощью интерфейса к OpenAI Gym агента, который будет играть в игру CartPole, совершая случайные действия. Мы также 
научимся использовать OpenAI Gym для работы в других средах.
Глава 3 «Решение задач методом динамического программирования» содержит введение в основные идеи, терминологию и подходы, применяемые в ОП. 

 Предисловие

Вы узнаете о главных составных частях ОП и составите общее представление 
о том, как алгоритмы ОП применяются к решению задач. Вы также узнаете 
о различиях между основанными на модели и безмодельными алгоритмами 
и о классификации алгоритмов обуче ния с подкреплением. Мы применим динамическое программирование для решения игры FrozenLake.
В главе 4 «Применения Q-обуче ния и алгоритма SARSA» речь пойдет о методах на основе ценности, в частности Q-обуче нии и SARSA, двух алгоритмах, 
которые отличаются от динамического программирования и хорошо масштабируются на задачи большого размера. Чтобы лучше разобраться в этих алгоритмах, мы применим их к игре FrozenLake и сравним результаты с динамическим программированием.
В главе 5 «Глубокие Q-сети» описывается использование нейронных сетей 
и, в частности, сверточных нейронных сетей (СНС) к Q-обуче нию. Вы узнаете, почему сочетание Q-обуче ния и нейронных сетей дает поразительные 
результаты и как это открывает путь к гораздо более широкому кругу задач. 
Кроме того, мы применим глубокую Q-сеть к игре Atari, воспользовавшись интерфейсом к OpenAI Gym.
В главе 6 «Стохастическая оптимизация и градиенты стратегии» вводится новое семейство безмодельных алгоритмов: методы градиента стратегии. 
Мы узнаем о различии между методами градиента стратегии и методами на 
основе ценности, а также об их сильных и слабых сторонах. Затем реализуем 
алгоритмы REINFORCE и исполнитель–критик для решения игры LunarLander.
В главе 7 «Реализация TRPO и PPO» предлагается модификация методов градиента стратегии с использованием новых механизмов контроля над улучшением стратегии. Эти механизмы позволяют улучшить устойчивость и сходимость алгоритмов градиента стратегии. В частности, мы опишем и реализуем 
два основных метода градиента стратегии, в которых используются эти подходы: TRPO и PPO. Они будут реализованы в семействе сред с непрерывным 
пространством действий RoboSchool.
В главе 8 «Применения алгоритмов DDPG и TD3» вводится новая категория 
алгоритмов с детерминированной стратегией, которые сочетают идею градиента стратегии с Q-обуче нием. Вы узнаете об идее и реализации двух глубоких 
детерминированных алгоритмов, DDPG и TD3, в новой окружающей среде.
В главе 9 «ОП на основе модели» иллюстрируются алгоритмы ОП, которые 
обучаются модели окружающей среды для планирования будущих действий, 
т. е. обуче ния стратегии. Вы узнаете, как они работают, в чем их плюсы и почему они предпочтительны во многих ситуациях. Чтобы лучше разобраться 
в них, мы реализуем основанный на модели алгоритм в среде RoboSchool.
В главе 10 «Подражательное обуче ние и алгоритм DAgger» объясняется, как 
работает подражательное обуче ние и как его можно адаптировать к конкретной задаче. Будет рассмотрен самый известный алгоритм подражательного 
обуче ния, DAgger. Ради лучшего освоения мы реализуем его и тем ускорим 
процесс обуче ния агента в игре FlappyBird.
В главе 11 «Оптимизация методом черного ящика» изучаются эволюционные алгоритмы – класс алгоритмов оптимизации методом черного ящика, которые не опираются на обратное распространение. Интерес к этим алгоритмам растет, потому что они, во-первых, быстро обучаются, а во-вторых, легко 

Графические выделения  15

распараллеливаются на сотни и тысячи процессорных ядер. В этой главе подводится теоретический фундамент под эти алгоритмы и приводится практическая реализация на примере алгоритма эволюционной стратегии.
В главе 12 «Разработка алгоритма ESBAS» описывается важная дилемма исследования–использования, специфичная для ОП. Она демонстрируется на 
примере задачи о многоруких бандитах и решается методами верхней доверительной границы: UCB и UCB1. Затем мы узнаем о проблеме выбора алгоритма 
и разработаем метаалгоритм ESBAS, в котором UCB1 используется для выбора 
наиболее подходящего алгоритма ОП в конкретной ситуации.
В главе 13 «Практические подходы к решению проблем ОП» мы рассмотрим 
основные проблемы, возникающие в этой области, и объясним, как их преодолевать. Вы узнаете о некоторых трудностях применения ОП к реальным задачам, о будущем глубокого ОП и о его влиянии на общество.

ЧтО неОбхОдимО для Чтения этОй книги

Необходимо владение языком Python на рабочем уровне. Знакомство с ОП 
и различными инструментами, используемыми в этой области, также было бы 
полезно.

графиЧеСкие выделения

В этой книге для выделения семантически различной информации применяются различные стили. Ниже приведены примеры стилей с пояснениями.
Код в тексте: фрагменты кода, имена таблиц базы данных, папок и файлов, 
URL-адреса, адреса в Twitter, например: «В этой книге используется версия Python 3.7, но должны работать все версии начиная с 3.5. Предполагается также, 
что пакеты numpy и matplotlib уже установлены».
Отдельно стоящие фрагменты кода набраны так:

import gym

# создать окружающую среду
env = gym.make("CartPole-v1")
# привести среду в исходное состояние перед началом работы
env.reset()

# повторить 10 раз
for i in range(10):
  # предпринять случайное действие
  env.step(env.action_space.sample())
  # отрисовать игру
  env.render()

# закрыть среду
env.close()

Текст, который вводится на консоли или выводится на консоль, напечатан 
следующим образом:

 Предисловие

$ git clone https://github.com/pybox2d/pybox2d
$ cd pybox2d
$ pip install -e .

Новые термины, важные слова и слова на экране набраны полужирным 
шрифтом. Также выделяются элементы интерфейса, например пункты меню 
и поля в диалоговых окнах, например: «В обуче нии с подкреплением (ОП) 
алгоритм называется агентом, он обучается на данных, поступающих от окружающей среды».

 Предупреждения и важные замечания оформлены так.

 Советы и рекомендации выглядят так.

Отзывы и ПОжелания

Мы всегда рады отзывам наших читателей. Расскажите нам, что вы думаете об 
этой книге – что понравилось или, может быть, не понравилось. Отзывы важны 
для нас, чтобы выпускать книги, которые будут для вас максимально полезны.
Вы можете написать отзыв прямо на нашем сайте www.dmkpress.com, зайдя 
на страницу книги, и оставить комментарий в разделе «Отзывы и рецензии». 
Также можно послать письмо главному редактору по адресу dmkpress@gmail.
com, при этом напишите название книги в теме письма. 
Если есть тема, в которой вы квалифицированы, и вы заинтересованы в написании новой книги, заполните форму на нашем сайте http://dmkpress.com/ 
authors/publish_book/ или напишите в издательство: dmkpress@gmail.com.

СПиСОк ОПеЧатОк

Хотя мы приняли все возможные меры для того, чтобы удостовериться в качестве наших текстов, ошибки все равно случаются. Если вы найдете ошибку 
в одной из наших книг – возможно, ошибку в тексте или в коде, – мы будем 
очень благодарны, если вы сообщите нам о ней. Сделав это, вы избавите других читателей от расстройств и поможете нам улучшить последующие версии 
данной книги. 
Если вы найдете какие-либо ошибки в коде, пожалуйста, сообщите о них 
главному редактору по адресу dmkpress@gmail.com, и мы исправим это в следующих тиражах.

СкаЧивание иСхОднОгО кОда

Скачать файлы с дополнительной информацией для книг издательства «ДМК 
Пресс» можно на сайте www.dmkpress.com на странице с описанием соответствую щей книги. 

Доступ онлайн
999 ₽
В корзину