Сказка в трех главах про лесной блокчейн
Как устроен блокчейн? Что такое «умный контракт», который можно заключить с его помощью? Как работает цифровая подпись? В чем их преимущества перед традиционными договорными отношениями? Ответы на эти и другие вопросы не так сложны, как кажутся, но чтобы сделать их еще более наглядными, мы в рамках партнерского проекта с AlfaLab решили рассказать вам сказку. Итак, в самом центре густого леса была маленькая полянка...
В самом центре густого леса была маленькая полянка, вся поросшая кустами черники. На ее краю стоял большой старый пень, на котором сидел грустный Ежик, а рядом устроился его друг, Муравей. И Муравей никак не мог понять, почему Ежик был такой расстроенный: он то и дело вздыхал, принимался болтать ножками, потом крепко задумывался, да опять вздыхал и ножками больше не болтал. И так продолжалось уже полчаса. Наконец, Муравей не выдержал и спросил:
— Ежик, а почему ты грустишь?
Ежик в этот момент как раз решал, болтать ему ногами или нет, но вопрос застал его врасплох. Он спрыгнул с пенька и принялся ходить вокруг него кругами. Муравей попробовал было бегать вслед за Ежиком, но быстро утомился и решил залезть на пенек и просто следить за своим другом оттуда. Ежик сделал еще несколько шагов, остановился, посмотрел вверх и задумчиво ответил:
— А как тут не грустить? Ты бы, Муравей, грустил, если бы тебя пообещали напоить чаем с ватрушками?
Муравей удивленно поднял ус:
— Ну, разумеется, если бы я не любил чай с ватрушками. Но я-то его люблю, поэтому нет, не грустил бы.
— Ага. — кивнул Ежик, но вопреки ожиданиям никуда не пошел, а просто молча уставился в землю.
— Ну а если так: ты насобирал два кузовка ягод, оба отдал, а когда пришел на полдник, там ни чая, ни ватрушек? Тогда бы ты грустил?
Муравей начал догадываться о печальной истории Ежика, но все-таки решил уточнить:
— Это с тобой что ли такая история приключилась, Ежик?
Тот скосил глаза в сторону, почесал за ухом и отмахнулся:
— Да нет, с одним моим другом. Ты его не знаешь, он за оврагом живет.
— Понятно, — покивал Муравей, — Ну да, я бы расстроился, наверное. Уговор дороже денег, да и вообще, где это видано, шутить такими вещами, как чай с ватрушками. А что же твой друг, к Барсуку не ходил?
— К Барсуку? — Ежик аж чихнул от удивления, — что ты, что ты! Буду я еще Барсука по таким пустякам тревожить.
Муравей было открыл рот, но Ежик быстро поправился:
— Ну, мой друг, в смысле, — тут Муравей вздохнул, но продолжил кивать, — будет еще Барсук с его проблемами разбираться. Да и вообще, пока к нему сходишь, пока к Белке приведешь, пока все расскажешь. Да и она скорее его чаем с ватрушками напоит, чем мою порцию отдаст.
— К Белке?
— Ну, да, это же она ягоды забрала.
Ежик молчал, Муравей — тоже, оба пребывали в задумчивости. На мордочке Ежика читались досада и желание в скором времени перекусить, тогда как Муравей пытался изобразить усиками солидарность к беде друга (друга), но получалось у него плохо — он все равно выглядел очень довольным.
— Муравей, а чего это ты такой довольный? — Ежик нахмурился и на секунду забыл о вопросе надвигающегося перекуса.
Муравей попытался спохватиться, но в итоге развел лапками и честно ответил:
— Да я пытался представить себе, что бы я делал в твоей ситуации...
— Моего друга! — поправил Ежик
— Ну да, твоего друга. Так вот, я пытался себя представить на его месте, но у меня не получилось. Тогда я решил, что это даже хорошо, поэтому теперь сижу довольный.
Ежик молча моргал и таращился на Муравья, а тот оторвал соломинку и стал неторопливо жевать ее кончик.
— Подожди, Муравей. Как так, ты не можешь себя представить на моем месте? — тут Муравей довольно кивнул.
— Но ты же наверняка был в похожей ситуации!
— Не-а, — покачал головой Муравей.
— Значит, твои друзья, другие муравьи, были!
— Не-а, — опять покачал головой довольный Муравей.
Ежик тоже выдернул из травы соломинку и принялся нервно ее жевать. Муравей смотрел-смотрел за этим, а потом заметил:
— Ты, Ежик, не обижайся и не злись, просто у нас, муравьев, такая история бы никогда не смогла приключиться, вот и все. Поэтому мне так сложно разделить твое горе.
— Да почему же она не могла? — не унимался Ежик.
— Ну, потому что у нас есть феромонный след.
— Ферокаконный? — не понял Ежик.
— Феромонный. Ну, не знаю, как объяснить. Вот ты малину от клубники по запаху отличишь?
Ежик фыркнул:
— Ну, ты спросил. Конечно, отличу.
— Ну вот, а я не только малину от клубники, но и любую полянку по запаху от другой отличу, и любое дерево, и любого муравья. Но только, если там след будет, понимаешь?
— Нет, — честно ответил Ежик, но теперь по нему было видно, что история с загадочным следом его заинтересовала.
— Вот смотри. Каждый муравей умеет в воздухе оставлять особый след, который не только необычно пахнет, но и кучу всего рассказывает другим муравьям, как письмо.
— Допустим, — Ежик уселся на траву и внимательно слушал. Муравей встал на ножки и с пня продолжил вещать:
— Ну вот и получается, что везде, где был один муравей, пробежал другой, третий, — везде мы оставляем какую-то информацию и стараемся ее разнести и передать всем остальным. Поэтому получается, что обычно в муравейнике все про всех все знают. Вот, теперь ты все понял?
— Ничегошеньки не понял. Ну, след, ну знают, а дальше-то что? У нас тоже в лесу почта есть, можно подумать.
— Сам ты почта. Ладно, смотри. Мы же не только рассказываем друг другу о том, кто куда пошел, мы еще и говорим, что где лежит. Например, если кто-то нашел новую полянку с едой. Если он первый ее нашел, он сразу оставит специальный сигнал. Остальные придут, проверят и подтвердят, что он действительно первый — и весь муравейник будет знать, что он первый. Поэтому он получит дополнительную порцию еды с этой полянки, понял?
— Про еду — понял, но понятия не имею, к чему ты ведешь, Муравей.
— А ты дальше слушай, — Муравей принялся расхаживать по пеньку влево и вправо и активно жестикулировать усиками.
— Раз все знают, кто, где и когда находит еду, никто не пытается обманывать остальных, потому что смысла нет — все равно проверят. Так и еду далеко один не унесешь, помощники нужны, поэтому удобно по нашему следу еще говорить, кто, куда и сколько еды понес, и кто, кому и сколько отдал.
— Так-так-так, — Ежик теперь облокотился на землю и внимательно сощурился, предвкушая развязку подзатянувшейся истории.
— Ну так вот! Если бы я обещал Белке два кузовка ягод, я бы это непременно записал в след. Но только после того, как она туда же записала бы, что мне за эти ягоды причитается.
— Чай с ватрушками! — воскликнул обрадованный Ежик, а Муравей торжествующе воздел лапки к небу:
— Именно! Именно, что чай с ватрушками. А теперь главное: все вокруг знают, что Белка мне обещала чай с ватрушками, более того, раз вся еда-то на складе в муравейнике, ей за ними придется идти, ведь больше взять их неоткуда.
Ежик приоткрыл рот, опять закрыл и покачал головой:
— Опять не понял.
Муравей вздохнул, но продолжил:
— В муравейнике все общее, каждый просто знает, кто, сколько и какой еды может взять. Все в следе записано! Если захочешь что-то себе утащить тайком, это придется новый муравейник строить, где ты будешь единственный житель. Только ты тогда ничем с другими муравьями не поменяешься, потому что тебя в следе не будет. Так-то.
— Ну так а что с Белкой-то? — вспомнил Ежик.
— А, ну так все просто: как только я кузовки принес на склад и в след это записал, Белкин чай с ватрушками моим станет. Потому что это в следе было еще давным-давно записано, что мы так договорились. У нас даже для этого слово специальное есть:"Умный контракт«.
— И к Барсуку идти не надо? — недоверчиво спросил Ежик.
— Идти вообще никуда не надо, все и так все знают. Но вообще, да, Барсук в этой схеме не требуется.
— А без муравейника и лимонного...
— Феромонного.
— Ну да, без него — никак, значит?
— Получается, что так, — угомонился наконец Муравей и снова сел на пенек.
— Дааа, — протянул Ежик. — Почему я не Муравей.
Оба задумались и продолжили жевать свои соломинки.
В этой сказке говорится о том, как устроен типичный блокчейн. Каждый муравей — это пользователь блокчейна, а по сути просто кошелек для внутренней валюты (например, биткоинов). Подобно тому, как в сказке муравей, первым нашедший еду, получает дополнительную долю, пользователи блокчейна ищут хэш, который выглядит особенным образом: кто первым нашел, то и получил на свой счет дополнительные биткоины. Параллельно с поисками хэша пользователи, подобно муравьям, обменивающимся едой, постоянно обмениваются монетами. Именно эти транзакции и составляют основную массу информации, записанной в каждом блоке.
Теперь об «умном контракте». Лица, которые хотят заключить такой контракт, формулируют его, как и обычный контракт, в терминах определенных условий. Например, один обязуется предоставить другому определенные услуги, а другой — оплатить их в заданном объеме. Учитывая, что блокчейн — это алгоритм, умный контракт должен быть записан на математическом языке, что автоматически исключит любые недосказанности и оговорки. Наконец, что еще более удобно: поскольку пользователь — это всего лишь кошелек, как только условия «умного контракта» будут выполнены, сразу же совершится транзакция. При этом поменять условия «умного контракта» после его записи в блокчейн уже нельзя, гарантом этого выступает вся система и все ее пользователи, которые майнят новые монеты и проверяют каждую существующую транзакцию. Чтобы сделать существование «умных контрактов» выгодным, существует особая валюта, которая является платой за проверку и осуществление транзакций. Схема «умных контрактов» прекрасно переносится на реально существующие услуги, например на аккредитив — соглашение, гарантом которого выступает банк. Блокчейн не только ускоряет обращение аккредитивов, но и делает систему более надежной: и банк, и его клиенты знают, что блокчейн невозможно изменить, не получив контроль над большинством пользователей всей системы.
Муравей лежал на маленькой полянке, жевал соломинку и грелся на солнышке. Примерно час назад он должен был встретиться здесь, возле пенька, с Ежиком, но тот все не показывался. Муравей не сильно расстраивался по этому поводу, благо день был длинным и теплым — почему бы и не погреться лишний часок.
По характерному шороху черничных кустов Муравей понял, что Ежик все-таки вспомнил про друга и спешит сюда. Действительно, через несколько мгновений уставший и запыханный Ежик показался на полянке, помахал Муравью рукой и принялся изо всех сил пыхтеть, чтобы восстановить дыхание.
— Привет, Ежик, ты чего такой взъерошенный?
Ежик еще несколько раз глубоко вздохнул и тоже улегся на траву.
— Не спрашивай. Ты не замечал, как много нынче приходится бегать по всему лесу, чтобы в итоге произошло что-то очень простое?
Муравей почесал кончик усика и покачал головой:
— Не-а.
Ежик недовольно фыркнул:
— Все у тебя не как у нормальных зверей. Вот я встал сегодня ни свет ни заря, чтобы успеть застать Белку, прежде чем она уедет к своей кузине за овраг.
— Ты опять ей ягод, что ли, собирал?
— Ага, конечно, вот еще. Нет, мы с ней договорились, давно еще, что она меня пустит пожить в домик своей бабушки, ненадолго. Но только, если я дам ей попользоваться своим медным тазиком для варенья: в этом году у нее богатый урожай, варить придется много.
Муравей, понял, что история будет длинной, поэтому перевернулся на бок и приготовился слушать.
— Ну вот, я долго искал таз, а потом вспомнил, что месяц назад уже отдал его Мышке, когда она нашла ту полянку с земляникой, помнишь? — Муравей кивнул.
— Мышка живет далеко, поэтому я попросил Хорька, — нашего почтальона, — передать ей мою записку, в которой я ее прошу передать тазик прямо Белке, когда та будет у кузины. А сам в это время побежал к Барсуку, чтобы он записал, что я временно поживу у Белки, поэтому орехи, которые мне должен Хомяк...
— Стой, Ежик, остановись, пожалуйста, ты меня потерял, — Муравей действительно изо всех сил пытался уследить за перемещениями Ежика, но это было невероятно трудно.
— Ну вот! А говорил, что вы, последователи Картонного Следа...
— Феромонного.
— Ну да! Что вы все так лихо организовываете, а ты даже в моей простой ситуации запутался.
— Да нет, Ежик, я не запутался, я просто ужаснулся, что у вас, лесных жителей, все так сложно.
— Можно подумать, у вас проще! Всем все рассказать, везде все записать — то же самое.
— А вот и нет. Смотри, что я бы сделал. — Муравей опять лег на спину и сложил лапки домиком.
— Ты говоришь, Ежик, что хочешь сделать всего три вещи: переехать на время в домик белкиной бабушки, отдать свой тазик...
— Который сейчас у Мышки!
— Да-да, его ты хочешь отдать Белке, а орехи, которые тебе должен Хомяк, хочешь получить по новому адресу.
— Да, но еще...
— Подожди с еще. Я бы на твоем месте весь этот список дел разом спокойно внес в феромонный след. И через 10 минут об этом бы уже знал весь муравейник: тазик бы направлялся к Белке, орехи — к тебе, а ты бы сам обустраивался на новом месте. К чему вся эта беготня по лесу?
— А как без нее? — Ежик опять ничего не понимал. Дурацкий филимонный след!
— Твоя проблема в том, что ты вынужден сам бегать по всему лесу и с каждым договариваться отдельно, причем в строгой последовательности. А можно же выдать все указания списком, который, во-первых, проверят все остальные, а во-вторых, о нем все сразу будут знать.
— А что, если кто-то что-то перепутает? — недоверчиво спросил Ежик.
— Тогда остальные его поправят! — улыбнулся Муравей.
Ежик какое-то время тихонько бормотал себе что-то под нос, загибал пальцы и рисовал в воздухе загадочные линии, которые, не иначе, обозначали, кто и куда пошел. Наконец, он махнул рукой и вслух согласился с Муравьем.
— А хорошо тебе живется, да, Муравей?
Тот сладко потянулся на солнышке и, довольный, ответил:
— Вообще отлично!
В этой главе обсуждается быстродействие блокчейна. Казалось бы, безналичный перевод денег — это далеко не новость, тем не менее, любой перевод требует определенных процедур, которые помогают банку или платежной системе удостовериться, что данная транзакция не является вредоносной или мошеннической. В зависимости от многих факторов — суммы транзакции, ее приоритета, валюты и так далее — проверка может занимать разное время. В случае с блокчейном все по-другому: валюта всего одна, а проверка транзакции — это фактически единственное, чем занимаются все пользователи (майнеры). Более того, сложность майнинга подбирается таким образом, чтобы новый блок (список транзакций) выходил с определенной периодичностью, например раз в 10 минут. Соответственно, если список взаимных транзакций составлен корректно (как в примере из сказки), они автоматически совершились бы уже в следующем созданном блоке, то есть через те самые 10 минут. А самое главное — подобное быстродействие не идет в ущерб безопасности. Это происходит за счет математического совершенства блокчейна, где проверка осуществляется не человеком, а изначально заложенным открытым алгоритмом.
«...и вот так Хомяк остался должен мне 18 орехов,» — подытожил Ежик.
Они вместе с Муравьем снова сидели на черничной полянке и делились друг с другом новостями за последнюю неделю. Ежик, понабравшись знаний о феромонном следе, решил вести свои дела в духе муравейника, однако, судя по всему, другие обитатели леса не сильно разделили его восторг от идеи метить все вокруг специфическими запахами. Тем не менее, Ежик был полон энтузиазма и даже успел рассказать Муравью о своей сделке с Хомяком.
— Так что же, орехи вкусные были? — поинтересовался Муравей.
— Не знаю, он их мне еще не отдал. Он вообще сказал, что сначала должен выяснить у Белки, кто из них остался должен, ведь орехи-то они вместе собирали. Так что как только они разберутся — вот тут-то я свою долю и отведаю.
— Понятно, — сказал Муравей, а про себя подумал «Ну, понеслась».
— Ну понимаешь, Муравей, орехи — штука такая, не так-то легко за ними следить. Но я могу быть спокоен, потому что Хомяк на моей феромонной бумажке все написал, вот, смотри, — и Ежик достал сложенную в 4 раза бумажку, всю исписанную вдоль и поперек печатными буквами и цифрами.
— Вот, вот здесь, он написал, что должен орехи Ежу (это мне, значит). Получается, отдаст. Это же феромонная бумажка!
Муравей саркастически посмотрел на Ежика и покивал. А потом поинтересовался:
— А где тут сказано, что это Хомяк написал? Тут рядом похожими буквами написано что-то про сосновые шишки, а вот здесь — про мед.
— Ну что ты, Муравей, это не он писал. Или он? Да какая разница, я же все помню.
— А он помнит?
— Не знаю, он тоже обещал такую бумажку завести.
— И все-все в лесу тоже обещали?
— Ну да, — голос Ежика звучал все менее уверенно.
Муравей покачал головой и приготовился объяснять все заново.
— Только не с самого начала, ладно, Муравей? — взмолился Ежик.
— Хорошо. Только одну деталь, договорились?
— Договорились!
Муравей попросил у Ежика чистую бумажку и карандаш и принялся быстро записывать вслед собственным словам:
— Вот ты делаешь новую запись, например, «Ежик нашел десять ягод черники». Если ты ее так и оставишь — ничего не сработает, кто угодно мог такое написать. Тебе нужна подпись. Да не просто подпись, а такая, чтобы никто больше не подделал. Есть идеи?
— Конечно! Я могу пробить бумажку несколькими своими иголками. Так больше в лесу никто не сможет.
— Отлично! Тогда ты подписываешь это у себя в бумажке, у Хомяка в бумажке, и вообще у всех, кого увидишь. А кто захочет проверить — проверит, что ты действительно первым нашел ягоды. А теперь надо то же самое проделать с вашей историей с орехами. Пусть Хомяк напишет, что он отдал Ежику 18 орехов. И тоже пусть подпись придумает!
— Это тоже легко! Он может прокусить бумажку своими большими зубами.
— Здорово! — Муравей не на шутку обрадовался.
— Понимаешь, Ежик, когда каждый свои слова подписывает, ни у кого не возникнет проблем с тем, чтобы вспомнить, кто, кому и сколько должен? Здорово?
Ежик призадумался.
— А если кто-то у себя в бумажке все переправит, как будто не было ничего?
— Так у других-то не переправит!
— А когда новую бумажку заводить придется?
— Да и это ерунда: возьми, да посчитай, сколько всякой еды на этой бумажке записано. Да количество букв тоже посчитай во всех записях. Прибавь все это и на новой странице запиши.
— Это еще зачем? — Ежик опять понял, что ничего не понял.
— Ну как, зачем. Если кто в старых бумажках что-то задумает исправить — всегда проверить можно будет, ведь что-то поменяется: или количество еды, или слова другие будут. Ты опять все посчитаешь, да с числом на следующей бумажке сравнишь. Если сошлось — все в порядке, никто не менял ничего.
— Здорово... — протянул Ежик, — а вы у себя в муравейнике так же делаете, да?
— Не-а, — отмахнулся Муравей, — у нас же феромонный след, он сам все за нас делает, удобно, правда?
— Да ну тебя, — фыркнул Ежик. А потом вдруг подскочил и стал Муравья трясти:
— Идея!
— Ну ты меня напугал, глупый! Какая такая идея? — Муравей вырвался из цепких ежиных лап и принялся отряхиваться.
— Зачем нам бумажки эти, когда у нас ты есть!
— Не понял, — насупился Муравей.
— Ну, у тебя же это след есть, да? И муравейник есть, так? И у вас все это давно работает, так?
— Таак, — недоверчиво протянул Муравей.
— Ну так давай мы просто будем все важные договоренности в ВАШ феромонный след записывать — какая разница, туда, или на бумажку?
Муравей призадумался.
— Ну, действительно, разницы нет. След-то даже получше работает, практика, знаешь ли, — добавил он не без гордости.
— Ну и вот! Мы если чем-то задумаем меняться, понесем в муравейник, и обещания в след запишем. Тогда и не пропадает ничего, и не подделает никто. Да и пользоваться удобно.
— А нам, муравьям, за это что?
— Ну, будем вам тоже ягод отсыпать, за помощь.
Муравей долго думал над идеей Ежика. И чем дольше думал, тем больше она ему нравилась.
— Знаешь что? Давай попробуем, — решил он наконец.
Друзья подхватили бумажки и побежали к Хомяку — радостную весть рассказать, что теперь он все-таки должен Ежику 18 орехов.
В этой главе ставится следующий вопрос: надо ли обязательно становиться майнером, приобретать и настраивать дорогостоящее оборудование, если можно пользоваться блокчейном как обычным внешним инструментом и только тогда, когда он необходим? Выясняется, что лицу, решившему заключить «умный контракт», совсем не обязательно самому усиленно заниматься майнингом — достаточно лишь иметь на своем счете сумму, необходимую для совершения описанной в контракте сделки. Гарантом выполнения «умного контракта» выступят все остальные пользователи блокчейна, за что получат свое вознаграждение (об этом говорилось в предыдущей главе).
Еще один важный аспект — цифровая подпись. Именно она обеспечивает максимальную прозрачность всех операций в блокчейне. Цифровая подпись основана на хэшах, которые невозможно подделать или подобрать. Пользователь в этом случае приравнивается к закрытому ключу, с помощью которого подписывается любая транзакция. В любой спорной ситуации достаточно пройти назад по цепочке транзакций, чтобы выяснить, чья подпись стоит на соответствующей записи.
Тарас Молотилин
Он показал лучшее время на трассе, обойдя соперников на полсекунды
Инженеры разработали автопилот для гоночного дрона, управляющий беспилотником на уровне лучших людей-пилотов. Алгоритм под названием Swift, полученный с помощью метода обучения с подкреплением, способен управлять гоночным квадрокоптером, полагаясь только на данные бортовых сенсоров. В реальных полетах на тестовой трассе для дрон-рейсинга Swift смог превзойти трех профессиональных пилотов-чемпионов, выиграв у них 15 гонок из 25 и пройдя трассу с минимальным временем, которое на полсекунды меньше лучшего результата пилота-человека. Статья опубликована в журнале Nature. При поддержке Angie — первого российского веб-сервера Дрон-рейсинг — вид спорта, в котором мультикоптеры на высокой скорости проходят трассу, состоящую из последовательности ворот, через которые нужно пролететь за минимально возможное время. При этом управление происходит от первого лица, с помощью камеры и видеоочков. Современные дроны обладают очень высокой маневренностью и подвижностью: они могут резко менять направление движения, ускоряться, замедляться и совершать перевороты, а во время гонки они разгоняются до скоростей свыше 100 километров в час и подвержены перегрузкам, превышающим их собственный вес в пять раз. Это делает их пилотирование непростой задачей и требует хорошей подготовки и высокой скорости реакции оператора. Инженеры давно работают над созданием автопилота, который мог бы управлять дроном на уровне профессиональных пилотов. Помимо участия в дрон-рейсинге такая способность может пригодиться и в обычной жизни — мультикоптеры обладают невысокой энергоэффективностью, поэтому способность быстро летать и успешно маневрировать в окружении большого числа препятствий напрямую связана с успешностью выполнения задач. Инженеры под руководством Давида Скарамузза (Davide Scaramuzza) из Цюрихского университета уже имеют опыт разработки эффективных алгоритмов управления для дронов. К примеру, ранее они создали автопилот, способный управлять квадрокоптером на скорости от 3 до 7 метров в секунду в лесу между деревьев, полагаясь только на данные с бортовых сенсоров. В своей новой работе инженеры представили алгоритм под названием Swift. Он способен эффективно управлять гоночным квадрокоптером на уровне профессионального пилота дрон-рейсинга. Swift состоит из двух основных модулей: системы восприятия, которая переводит изображение от бортовой камеры дрона и данные от инерционного измерительного блока IMU в низкоразмерное представление, а также системы управления, которая принимает на вход низкоразмерное представление, созданное системой восприятия, и генерирует управляющие команды для электромоторов дрона. В модуль системы восприятия также входит алгоритм, вычисляющий текущее положение дрона в пространстве на основе данных камеры и инерционно-измерительного блока. Эта информация через фильтр Калмана объединяется с данными об относительном положении гоночных ворот, обнаруженных предварительно обученным нейросетевым детектором объектов в видеопотоке, после чего передается на вход системы управления, которая состоит из двух скрытых слоев, по 128 нейронов в каждом. Система управления тренировалась в симуляции с использованием модельно-свободного глубокого обучения с подкреплением. Этот метод обучения использует метод проб и ошибок, чтобы максимизировать величину параметра вознаграждения. В данном случае вознаграждение было максимальным в случае, если дрон следовал в сторону центра ближайших ворот таким образом, чтобы следующие ворота оставались в поле зрения камеры. Чтобы учесть различия между симуляцией и реальной динамикой полета, в процессе обучения информацию симулятора дополнили данными из реального мира, записанными с помощью системы захвата движений. Оценку автопилота провели на трассе для дрон-рейсинга, состоящей из семи ворот, установленных на квадратной площадке с длиной стороны 30 метров. Длина маршрута через все ворота составляла 75 метров. Алгоритм соревновался с тремя профессиональными пилотами Алексом Вановером (Alex Vanover), Томасом Битматтой (Thomas Bitmatta) и Марвином Шэппером (Marvin Schaepper). Все участники использовали гоночные дроны с одинаковыми характеристиками. Перед испытательными соревнованиями у пилотов была неделя для знакомства с трассой. В соревнованиях каждый из пилотов стартовал одновременно с дроном под управлением автопилота. Победителем становился тот, кто быстрее пролетит через все ворота на трассе в правильном порядке три раза. По результатам Swift смог выиграть у своих соперников в совокупности 15 гонок из 25, а также установил рекорд трассы, пролетев ее быстрее на полсекунды, чем остальные участники. https://www.youtube.com/watch?v=fBiataDpGIo&t=1s Инженеры разрабатывают гоночные автопилоты и для автомобилей. Например, инженеры из подразделения искусственного интеллекта компании Sony создали алгоритм автопилота GT Sophy, который с помощью обучения с подкреплением научился проходить за минимальное время трассы в гоночном автосимуляторе Gran Turismo Sport. В настоящих киберспортивных соревнованиях GT Sophy не только показала лучшее время в одиночных заездах, но и смогла победить команду лучших игроков в совместных гонках, набрав больше всего очков.