Как стать автором
Обновить
2
0

Пользователь

Отправить сообщение

Адаптивная процедурная генерация при помощи алгоритма WaveFunctionCollapse и априорного распределения вероятностей

Время на прочтение4 мин
Количество просмотров5.9K

Что такое процедурная генерация?


Процедурная генерация включает в себя множество генеративных алгоритмов, принцип работы которых заключается в создании данных не вручную, а алгоритмически: вместо ручного изготовления того, что мы хотим создать (карты, музыки, рельефа…), пишется алгоритм, который успешно может создавать различные примеры без многократного выполнения того же процесса. Особенно полезен такой подход в видеоиграх, где случайным образом может генерироваться целая карта или уровень (например, карты в Minecraft, Terraria или Factorio, или схемы уровней в большинстве roguelike).

Алгоритм коллапса волновой функции и его области применения


В статье мы исследуем алгоритм коллапса волновой функции (WaveFunctionCollapse, WFC), предложенный Максимом Гуминым (в его Twitter есть коллекция потрясающего контента, созданного при помощи этого алгоритма другими разработчиками!) для процедурной генерации изображений или рельефа при помощи создания изображений, локально схожих с входящим изображением в условиях сетки заданного размера.

В основе алгоритма лежит идея пошагового создания готового изображения с отслеживанием того, какие тайлы «соответствуют» уже частично построенному изображению. Для изучения подробного описания алгоритма рекомендуем обратиться к исходному репозиторию WFC на Github и четвёртому разделу статьи "WaveFunctionCollapse is Constraint Solving in the Wild".


Примеры процедурно сгенерированных из seed изображений
Всего голосов 11: ↑11 и ↓0+11
Комментарии2

gReebok detected. Сам себе дерматовенеролог

Время на прочтение16 мин
Количество просмотров78K
Около года назад я опубликовал свою статью Как спастись от «зайцев». Инструкция по борьбе с ультрафиолетом в которой достаточно подробно рассказал про ультрафиолет, его воздействие на ткани человека и способы лучевой защиты. Однажды на досуге я задумался над тем, в какой форме чаще всего приходится сталкиваться с «рукотворным» (т.е. не из спектра Солнца) ультрафиолетом. Вышло, что наиболее популярный УФ — это мягкий УФ и флуоресценция, которую он способен вызывать. Наиболее популярный вариант у моих дружков — это просвечивать друг друга и потом спрашивать у меня, что значит тот или иной цвет пятна на коже, и не грибок ли это. Чтобы раз и навсегда этот вопрос закрыть представляю очередной туториал. На этот раз, по диагностике кожных заболеваний ультрафиолетом лампы Вуда. Так что если интересно, как с помощью «дискотечного ультрафиолета» можно определить наличие чесотки/грибка на ногах/лишая (в том числе у любимого котика), а также про то, как лампа с aliexpress за 5$ может помочь диагностировать рак кожи и бороться с борщевиком — читаем под катом. Только наукоёмкое самоделие, с пожеланием крепкого здоровья в Наступающем 2020 году!
Закинь в закладки, %username% :)


Проверить себя и того парня лампой Вуда!
Всего голосов 69: ↑66 и ↓3+92
Комментарии43

Как проверить паспорт на действительность

Время на прочтение6 мин
Количество просмотров210K


Реквизиты паспорта — не просто набор цифр, в них закодирован вагон информации. Если правильно расшифровывать и сопоставлять реквизиты, подозрительные документы мгновенно всплывут на поверхность. Продукты HFLabs уже 14 лет проверяют клиентские данные в банках, страховых, телекомах и другом крупном бизнесе. Расскажу, как мы распознаем ошибки в российских паспортах.
Читать дальше →
Всего голосов 100: ↑98 и ↓2+130
Комментарии258

Эпигенетические часы старения — а всё-таки, они тикают!…

Время на прочтение32 мин
Количество просмотров35K


Что такое эпигенетические часы я когда-то уже писал. Если вкратце, на сегодняшний день это лучший показатель биовозраста, который точнее паспорта отражает, сколько нам осталось жить. Почему эпичасы так важны? Потому что я считаю, что старение — это эпигенетическая программа. Кто-то называет это моё убеждение религиозным. Да без проблем, готов считать этот тезис своим «Символом веры». Ну или «Символом Юры» — верую, что старение есмь эпигенетическая программа и чаю её взлом.

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

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

При этом наблюдается и обратный процесс: некоторые совсем ненужные нам гены, такие как вредоносные ретротранспозоны, в раннем возрасте не просто выключены, а находятся за семью печатями, но к определённому моменту печати почему-то распечатываются и эта «пятая колонна» начинает свою активность, подвергая бомбардировке наши гены своими копиями. Это приводит к гиперактивации врождённого иммунитета, то есть к пресловутому «инфламэйджингу» — стерильному возрастному воспалению, — которое поголовно наблюдается у пожилых людей и животных.
Читать дальше →
Всего голосов 75: ↑71 и ↓4+67
Комментарии104

Введение в Data Engineering. ETL, схема «звезды» и Airflow

Время на прочтение10 мин
Количество просмотров56K
Способность data scientist-а извлекать ценность из данных тесно связана с тем, насколько развита инфраструктура хранения и обработки данных в компании. Это значит, что аналитик должен не только уметь строить модели, но и обладать достаточными навыками в области data engineering, чтобы соответствовать потребностям компании и браться за все более амбициозные проекты.

При этом, несмотря на всю важность, образование в сфере data engineering продолжает оставаться весьма ограниченным. Мне повезло, поскольку я успел поработать со многими инженерами, которые терпеливо объясняли мне каждый аспект работы с данными, но не все обладают такой возможностью. Именно поэтому я решил написать эту статью — введение в data engineering, в которой я расскажу о том, что такое ETL, разнице между SQL- и JVM-ориентированными ETL, нормализации и партиционировании данных и, наконец, рассмотрим пример запроса в Airflow.


Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии1

Преобразование черно-белых изображений в ASCII-графику при помощи неотрицательного матричного разложения

Время на прочтение6 мин
Количество просмотров22K

В общем случае преобразование изображения в ASCII-графику представляет собой довольно трудоемкую задачу, однако существуют алгоритмы, позволяющие автоматизировать данный процесс. В данной статье рассматривается подход, предложенный исследователями Paul D. O’Grady и Scott T. Rickard в работе «Automatic ASCII Art Conversion of Binary Images Using Non-Negative Constraints». Описанный ими метод предполагает представление процесса преобразования изображения как задачи оптимизации и решение этой задачи при помощи неотрицательного матричного разложения. Ниже приведены описание рассматриваемого алгоритма, а также его реализация:
Читать дальше →
Всего голосов 64: ↑62 и ↓2+60
Комментарии19

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность