Рубрика «Алгоритмы» - 86

AlphaStar — новая система искусственного интеллекта для StarCraft II от DeepMind (полный перевод) - 1

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

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

Смоделировать все возможные движения человека и описать все сценарии поведения — достаточно сложная задача. Если мы научимся понимать, как человек двигается, и сможем воспроизводить его движения «по образу и подобию» — это сильно облегчит внедрение роботов во многие области. Как раз для того, чтобы роботы учились повторять и анализировать движения сами, и применяется машинное обучение.

Как я научила робота бегать по видео с YouTube - 1
Читать полностью »

Balanced ternary

I am working on a computer architecture principles lectures for our university; and as an assignment I'd like to propose to my students to build a simple programmable machine working in ternary. The main reason is fun: as a lecturer I must bring a bit of entertainment, otherwise I won't be listened to. Besides, it is important for historic reasons. Any further «why?!» questions will be answered «Because I can».

This page describes the very basics, it won't go beyond a simple ternary adder (and its hardware implementation). Stay tuned for more.

I chose the balanced ternary system: every trit represents one of three possible states, -1, 0 or 1. A very extensive description of this system may be found here.

Ternary computing: basics - 1
Читать полностью »

ИИ и 2048. Часть 1: Метод Монте-Карло - 1

«2048» через несколько недель исполняется 5 лет, а значит, пора написать что-нибудь, посвящённое этой замечательной игре.

Особенно познавательна тема самостоятельной игры искусственного интеллекта в головоломку. Способы реализации есть самые разные и сегодня разберём относительно лёгкий из них. А именно — научим компьютерный разум собирать степени двойки с помощью метода Монте-Карло.Читать полностью »

При игре по стандартным правилам Гомоку для выигрыша черным требуется не более 35 ходов. В статье Вашему вниманию представлена полная выигрышная стратегия и соответствующий алгоритм игры.
Выигрышная стратегия Гомоку – 35 ходов - 1
Демонстрация полного решения – здесь – можно поиграть и найти самые длинные варианты. Программа всегда выигрывает и затрачивает на это не более 35 ходов. Исходные тексты приложения, само решение и примеры партий в конце статьи.
Читать полностью »

Распознавание рентгеновских снимков: precision=0.84, recall=0.96. А нужны ли нам еще врачи? - 1

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

Кажется, и раньше можно было применять экспертные системы и алгоритмы классификации к задачам постановки диагноза. Однако, есть одна область AI, которая добилась наибольших успехов в последние годы, а именно область распознавания изображений и сверточные нейронные сети. На некоторых тестах алгоритмы AI в распознавании картинок превзошли человека. Вот два примера: Large Scale Visual Recognition Challenge и German Traffic Sign Recognition Benchmark.

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

Введение

На Habr уже обсуждалась теория хаоса в статьях [1,2,3]. В этих статьях рассмотрены следующие аспекты теории хаоса: обобщённая схема генератора Чуа; моделирование динамики системы Лоренца; программируемые логическими интегральными схемами аттракторы Лоренца, Ресслера, Рикитаке и Нозе-Гувера.

Однако, техники теории хаоса используются и для моделирования биологических систем, которые, бесспорно, являются одними из наиболее хаотических систем из всех, что можно себе представить. Системы динамических равенств использовались для моделирования всего — от роста популяций и эпидемий, до аритмических сердцебиений [4].

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

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

Статья написана с целью обучения, но позволит, даже не имеющему опыта программирования читателю, используя приведенные программы, самостоятельно решить большинство новых учебных задач по теме моделирования явлений хаоса.
Читать полностью »

image

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

Введение

Алгоритм был написан как часть работы на получение степени бакалавра и основан на статье Ma et al (2014). Целью работы было ускорение алгоритма и дополнение его новыми функциями. Я вполне доволен результатом, потому что мы сделали алгоритм достаточно быстрым, чтобы использовать его во время выполнения игры. После завершения бакалаврской работы мы решили превратить её в статью и отправить на конференцию Game-ON 2018.

Алгоритм

Для создания уровня игры алгоритм получает в качестве входных данных набор полигональных строительных блоков и граф связности уровня (топологию уровня). Узлы графа обозначают комнаты, а рёбра определяют связи между ними. Цель алгоритма — назначить каждому узлу графа форму и расположение комнаты таким образом, чтобы никакие две формы комнат не пересекались, и каждая пара соседних комнат могла соединяться дверьми.
Читать полностью »

PERDIX: алгоритм автоматического проектирования ДНК-оригами разной геометрии - 1

Кто не любил в детстве собирать конструкторы? Я до сих пор помню эту красную коробочку с кучей металлических деталей, инструментов и морем возможных результатов лишь бы была фантазия, время и желание. LEGO тоже не стоит забывать, хоть тут все было чуть проще и гораздо красочнее. Но вот что сложнее и того и другого так это конструкторы наноструктур на базе ДНК-оригами. До сих пор все «детальки» подобных конструкций моделировались вручную, что занимало уйму времени и сил. Представьте, что все детали LEGO вам нужно создавать самому, прежде чем собрать их в гигантского робота с лазерами, реактивными двигателями и пулеметом на плече. Но что-то детские воспоминания увели нас не в ту степь.

Шутки в сторону. Сегодня мы с вами познакомимся с алгоритмом, позволяющим автоматически создавать ДНК-оригами достаточно разнообразной формы. Ранее изменение формы нитей ДНК до необходимой выполнялось вручную, что сильно ограничивало возможности подобной процедуры. Данный же алгоритм позволяет создавать детали ДНК конструктора автоматически, что позволяет в дальнейшем использовать их для формирования двумерных и трехмерных наноструктур. Плюс этот алгоритм доступен всем желающим. Доклад исследовательской группы поможет нам разобраться что и как работает. Поехали.Читать полностью »

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

Как устроен скоринг в индустрии каршеринга. Часть 2. Определить агрессивного водителя за 5 секунд - 1
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js