Pull to refresh
90
0
Iskander Sitdikov @thoughteer

A software engineer on the go

Send message

Извините, не смог "охватить" такой перевод. Поднимается не только TypeError, но еще и волосы там, где не нужно. Исполнителю - минус.

Немного перемудрили с min. Достаточно (x+y-abs(x-y))/2. Функция abs реализована через зануление sign-bit.

В контексте статьи, скорее, так:
В магазин заходит бесконечное число математиков. Первый просит дюжину бананов, второй — две, третий — три… «Понял,» — говорит продавец, — «С вас один банан.»
По неизвестной причине первой по запросу наркотики оптом дешево Спутник выдает ссылку на… мелкомягкий Bing.
Карты тоже вызывают дикий конфуз: на запрос москва ленинские горы 1 бросает в другой конец Москвы.
В этом месте кода вычисляется свертка activity с весовой функцией
Реализовывать такую операцию руками мне не хотелось, поэтому я представил ее в виде разности результатов двух сверток: с и с . В свою очередь, свертка с функцией по сути есть свертка с функцией Гаусса (с точностью до постоянного множителя):
Отсюда и берутся значения всех таинственных констант.
Вот пример для наглядности:

Все абсолютно верно. В представленном варианте связным будет лишь бесконечное периодическое продолжение лабиринта на всю плоскость. Это связано с использованием режима «wrap» в фильтре Гаусса. Для того, чтобы получить конечный связный лабиринт, достаточно поменять «wrap» на «reflect».
Этому вопросу посвящен целый раздел.
Попробую объяснить на пальцах: если запускать демо с теми параметрами, что указаны в посте (M = 0.065), то белые «извилины» (стены) никогда не будут сливаться. Поскольку изначально черная область была связна (из любой черной точки можно было дойти до любой другой черной точки, передвигаясь лишь по черным точкам), то и в любой другой момент времени она останется связной. Иначе говоря, решаемости лабиринта «by design» можно добиться правильным выбором параметров модели (точнее, одного параметра M).
Согласен, но, боюсь, простейшей модификацией не обойтись. Скажем, это не те лабиринты, в которых есть «правильный путь», а те лабиринты, которые можно использовать в гейм-дизайне для генерации интересных уровней.

Information

Rating
Does not participate
Location
Тбилиси, Грузия, Грузия
Date of birth
Registered
Activity

Specialization

Specialist
Senior