Алгоритмы

  • Хабрахабр

    [Из песочницы] Как сгенерировать музыку с помощью физической симуляции

    У физических симуляций есть одна невероятная особенность — их можно останавливать, перематывать назад и повторять. Это очень мощный инструмент который можно использовать для генерации необычных миров. В данном посте я опишу как использовал это, чтобы синхронизировать звуки ударов шариков и известную музыку. Заинтересованных прошу под кат! Вступление Я обожаю создавать разные необычные визуализации, физические симуляции и все в таком роде.…

    Подробнее »
  • Хабрахабр

    C++ template аллокатора с потокобезопасным циклическим буфером

    Вашему вниманию простой C++ template аллокатора с потокобезопасным циклическим буфером. Вся реализация в одном заголовочном .h файле: [fast_mem_pool.h] Фишки, чем этот аллокатор лучше сотни подобных — под катом.Вот как работает мой велосипед. 1) В Release сборке нет ни одного мьютекса и ни одного цикла ожидания на atomic — но при этом аллокатор циклический, и непрерывно регенерирует ресурсы по мере их…

    Подробнее »
  • Хабрахабр

    Нет времени объяснять, сделай автопилот

    Здравствуйте, товарищи! На выходных проходил хакасборкатон — гонки на самоуправляемых моделях автомобилей на базе комплекта donkeycar при содействии Х5 и FLESS. Задача заключалась в следующем: сначала надо было собрать машинку из запчастей, затем ее обучить проходить трассу. Победитель определялся по самому быстрому прохождению 3 кругов. За наезд на конус — дисквалификация. Хотя подобная задача для машинного обучения не нова, но…

    Подробнее »
  • Хабрахабр

    Роботы на карантине

    Тут недавно мужики на Хабре рассказывали про Flipper и отладку на осциллографе по видеосвязи. И это, конечно, победа вне конкурса! Но и у нас был интересный опыт отладки робота, находящегося в 2000 км от нас в лодочном гараже на норвежском побережье. Под катом рассказ о том, как мы делали зрение и правили “облачные мозги” роботам во время карантина удаленно: Весной…

    Подробнее »
  • Хабрахабр

    Роботы на карантине

    Тут недавно мужики на Хабре рассказывали про Flipper и отладку на осциллографе по видеосвязи. И это, конечно, победа вне конкурса! Но и у нас был интересный опыт отладки робота, находящегося в 2000 км от нас в лодочном гараже на норвежском побережье. Под катом рассказ о том, как мы делали зрение и правили “облачные мозги” роботам во время карантина удаленно: Весной…

    Подробнее »
  • Хабрахабр

    [recovery mode] Перевозим волка, козу и капусту через реку с эффектами на Elixir

    Становится уже доброй традицией воспроизведение всего любопытного, что появилось на Хаскеле — повторять на Эликсире. Первой ласточкой были «Примерно 20 строк для подсчета слов», появившиеся как алаверды на «Побеждая C двадцатью строками Haskell: пишем свой wc» от 0xd34df00d — сегодня же я наткнулся на «Перевозим волка, козу и капусту через реку с эффектами на Haskell» от iokasimov и тоже не устоял. Итак, встречайте: ленивый…

    Подробнее »
  • Софт

    Как перезапустить закон Мура программными методами. Ускорение софта в тысячи раз

    Профессор Никлаус Вирт был прав. Создатель языка Pascal, соавтор технологии структурного программирования, лауреат премии Тьюринга в 1995 году заметил: «Замедление программ происходит куда быстрее, чем ускорение компьютеров» С тех пор это высказывание считается законом Вирта. Он фактически нивелирует закон Мура, согласно которому количество транзисторов в процессорах удваивается примерно с 1965 года. Вот что пишет Вирт в статье «Призыв к стройному…

    Подробнее »
  • Хабрахабр

    Перевозим волка, козу и капусту через реку с эффектами на Haskell

    Однажды крестьянину понадобилось перевезти через реку волка, козу и капусту. У крестьянина есть лодка, в которой может поместиться, кроме самого крестьянина, только один объект — или волк, или коза, или капуста. Если крестьянин оставит без присмотра волка с козой, то волк съест козу; если крестьянин оставит без присмотра козу с капустой, коза съест капусту. В этой статье мы попытаемся найти…

    Подробнее »
  • Хабрахабр

    Равномерное перемещение объекта вдоль кривой

    В процессе разработки игры в совершенно различных жанровых категориях может возникнуть потребность «запустить» какой-либо игровой объект вдоль гладкой кривой с постоянной или контролируемой скоростью, будь то грузовик, следующий из города А в город Б, выпущенная по хитрой траектории ракета, или самолет противника, выполняющий заложенный манёвр. Наверное, каждый имеющий отношение к теме знает или, по крайней мере, слышал, про кривые Безье,…

    Подробнее »
  • Хабрахабр

    [Перевод] Алгоритм сортировки quadsort

    Эта статья описывает стабильный нерекурсивный адаптивный алгоритм сортировки слиянием под названием quadsort.В основе quadsort лежит четверной обмен. Традиционно большинство алгоритмов сортировки разработаны на основе бинарного обмена, где две переменные сортируются с помощью третьей временной переменной. Обычно это выглядит следующим образом: if (val[0] > val[1]) { tmp[0] = val[0]; val[0] = val[1]; val[1] = tmp[0]; } В четверном обмене происходит сортировка…

    Подробнее »


Кнопка «Наверх»
Закрыть