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

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

Всем привет. Меня зовут Владислав. Я работаю в компании NTechLab фронтенд-разработчиком и уже более 10 лет пишу на JavaScript и TypeScript. В своей жизни я часто использую эти навыки для решения различных бытовых задач. Как и в этой истории, например.

image
Читать полностью »

Зачастую война дает импульс техническому развитию. За последние два года стали возможны сложные операции по управлению группой дронов и поражению объектов на расстоянии до 25 км. «Герани» и более сложные ракеты достигают целей на сотни километров, но используют достаточно простые алгоритмы взаимодействия.

В данной статье мы рассмотрим некоторые базовые алгоритмы поведения стаи высших животных и аппроксимируем их на развитие роя роботов.

▍ Как в природе?

С точки зрения информатики, стая животных – это набор компьютеров, которые обмениваются информацией по определенным правилам.

Читать полностью »

Предисловие

Рис. 1. Поперечное сечение семейства пучностей в голографическом поле [1]

Рис. 1. Поперечное сечение семейства пучностей в голографическом поле [1]

Всё началось в далёком 2004 году, когда я учился в СПб ГУ ИТМО на кафедре Прикладной и компьютерной оптикиЧитать полностью »

Сортировка — это процесс упорядочивания элементов в массиве или списке по определенному критерию (например, по возрастанию или убыванию). В программировании это одна из базовых задач, которая помогает эффективно искать, обрабатывать и анализировать данные. Давайте разберем основные алгоритмы сортировки, их принципы работы и сложность на примерах реализации на языке Go.


Введение в алгоритмы сортировки

Существует несколько способов сортировки данных. Основные алгоритмы можно разделить на две категории:

  1. Простые алгоритмы сортировкиЧитать полностью »

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

Читать полностью »

Сердце роя: алгоритм навигации роя киборгов-насекомых - 1

Одной из самых активно обсуждаемых тем двадцать первого века является искусственный интеллект и роботизированные технологии. С каждым годом появляются все более совершенные андроиды, способные выполнять те или иные действия, имитируя своих создателей. Но человекоподобный робот не единственный вид, который заслуживает внимания. Также создаются роботы, имитирующие других существ, таких как рыбы, птицы и насекомые. Во время создания роящихся роботов нельзя не учесть тот факт, что рой реальных насекомых, будь то пчелы или муравьи, всегда действует как слаженный механизм, а каждая отдельная особь точно знает свою задачу и маршрут движения, необходимый для ее выполнения. Реализовать подобное поведение внутри исключительно роботизированной системы крайне сложно и затратно, потому необходимы альтернативные решения, даже если они слегка футуристичны Ученые из Наньянского технологического университета (Сингапур) разработали новый алгоритм управления навигацией для роящихся киборгов-насекомых, позволяющий им успешно перемещаться по сложной местности организованными группами. Что легло в основу данного алгоритма, и как он работает? Ответы на эти вопросы мы найдем в докладе ученых.Читать полностью »

Попалась мне одна интересная задача ,суть которой - найти наибольший отрезок в массиве единиц и нулей ,где суммы их кол-ва равны друг другу. Например ,имеем массив [0, 1, 0, 1, 0]. Длина наибольшего подмассива ,где кол-во нулей равно кол-ву единиц = 4. Под этот критерий подходит подмассив [{0, 1, 0, 1}, 0] ,а так же [0, {1, 0, 1, 0}]. В обоих случаях сумма всех нулей = 2 ,а сумма всех единиц равна тоже 2. Длина такой последовательности = 4 ,и это должно быть ответом.

Сперва можно немного поработать над данными ,чтобы в будущем можно было проще вычислять такие отрезки ,где суммы 1 и 0 равны друг другу. Например ,для отрезка [0, 1, 0, 1]Читать полностью »

Документ, лежащий в основе статьи, представляет собой стенограмму семинара, посвящённого вкладу Джона Нэша в теорию игр. Основные участники — выдающиеся учёные в области математики, экономики и биологии, такие как Гарольд Кун, Джон Харшаньи, Рейнхард Зельтен и другие. В центре внимания — достижения Нэша в разработке концепций равновесия для кооперативных и некооперативных игр, а также их влияние на современные экономические и биологические теории.

Введение

Теория игр, как отдельная дисциплина, приобрела известность благодаря книге Джона фон Неймана и Оскара Моргенштерна Читать полностью »

Привет! Я Денис Логашов, инженер-исследователь отдела автоматической обработки результатов моделирования и визуализации YADRO. В этой статье я расскажу о решении основной задачи в соревновании Micromouse: как роботу пользоваться сохраненной картой лабиринта для передвижения по нему и поиска кратчайшего пути. Это продолжение предыдущего материала, где мы учили робота карту составлять. 

Кратко опишу соревнование роботов Micromouse для тех, кто не читал первую частьЧитать полностью »


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