Как стать автором
Поиск
Написать публикацию
Обновить
1
0

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

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

Как распознать профессиональное выгорание

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

Меня зовут Вероника Ильина, я работаю с людьми в Додо. Пару раз в жизни я попадала в ситуации, когда желание успеть всё и рабочие дни с 9 до 21 приводили к тому, что не было сил вставать по утрам. С тех пор я научилась работать так, чтобы даже в самые сложные моменты с кучей проектов, учёбой и так далее не падать на дно выгорания. Когда я пришла в Додо и увидела кучу ребят с горящими глазами, которые в увлечённости своей работой иногда забегают слишком далеко и перегружаются. И мы с командой начали работать над предотвращением выгорания и помощью тем, кому нелегко.

Это большая история и про прозрачное целеполагание, и про работу с процессами в командах. Но в первую очередь о том, что присматривать за собой должен сам человек. Чтобы помочь в этом разобраться и дать ребятам готовые инструменты, мы с нашим внутренним комьюнити PPL (People&Process Leads) собрали материалы на тему выгорания, вылезания из него и его предотвращения. И сегодня я начинаю серию постов, в которой делюсь этими материалами. И первый пост про то, что такое выгорание, какие у него симптомы и как определить, если ли выгорание оно у вас и ваших коллег.

Читать далее

Генетический алгоритм vs алгоритм роя частиц

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

К задачам поиска лучшего варианта решения (объекта, параметров или других данных) сводятся многие из проблем математики, экономики, статистики и т.д. Эти проблемы возникают, когда приходится строить математическую модель ситуации. При обработке полученной математической модели не всегда является возможным перебрать все данные, предоставленные системой, поэтому возникает потребность в разработке таких алгоритмов, которые могли бы искать оптимальные данные с некоторыми погрешностями, чтобы ограничить зону обработки данных для поиска последующих лучших значений.

В данной статье под задачей оптимизации понимается нахождение экстремума (минимума) некоторой вещественной функции в заданной области. Будут рассмотрены два самых важных алгоритма в оптимизации: генетический алгоритм и алгоритм роя частиц.

Ознакомиться

Как достичь максимального счастья в обществе? (теория игр)

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

Теория игр - это не только об изучении стратегий в играх, таких как шахматы, го или других. Применять теорию игр уже сегодня пытаются в различных областях: в политике, в спорте, в кибернетике, в психологии и многих других местах. Данная наука выполняет математический анализ ситуаций (в которых сталкиваются интересы нескольких сторон, преследующих различные цели), пытаясь формализовать и описать данные ситуации в виде математической модели, определяющей некоторую игру.

Возникает логичный вопрос: а можно ли с помощью концепций теории игр смоделировать поведение индивидов в обществе?

Ознакомиться

Задача выбора (назначения). Венгерский метод решения

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

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

Читать далее

Cимплексный метод решения ЗЛП. Пример

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

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

Читать далее

Симплексный метод решения задач линейного программирования

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

Задача линейного программирования (ЗЛП) состоит в определении значений упорядоченной совокупности переменных xj, j=1(1)n при которых линейная целевая функция достигает экстремального значения и при этом выполняются (удовлетворяются) все ограничения (они также линейные) в форме равенств или неравенств. Требуется найти план  Х <n> = <x1, x2, ..., xn>, который обеспечивает получение целевой функцией с экстремальным значением.

Читать далее

Двойственная задача линейного программирования

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

Обычно с ЗЛП связана другая линейная задача, называемая двойственной. Обе эти задачи можно считать двойственными одну по отношению к другой, считать равносильными. Первая задача называется обычно исходной, или прямой. Переменные, используемые в двойственной задаче называются двойственными или множителями Лагранжа. На них не накладывается ограничений по знаку. Рассматриваются двойственные критерии оптимальности. Специальные случаи называют симметричными двойственными задачами линейного программирования. Связь между оптимальными решениями двойственных задач устанавливается теоремой двойственности.

Читать далее

Обзор основных методов математической оптимизации для задач с ограничениями

Время на прочтение7 мин
Количество просмотров64K
Я долго готовился и собирал материал, надеюсь в этот раз получилось лучше. Эту статью посвящаю основным методам решения задач математической оптимизации с ограничениями, так что если вы слышали, что симплекс-метод — это какой-то очень важный метод, но до сих пор не знаете, что он делает, то возможно эта статья вам поможет.

P. S. Статья содержит математические формулы, добавленные макросами хабраредактора. Говорят, что они иногда не отображаются. Также есть много анимаций в формате gif.
Читать дальше →

Алгоритм Левенберга — Марквардта для нелинейного метода наименьших квадратов и его реализация на Python

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



Нахождение экстремума(минимума или максимума) целевой функции является важной задачей в математике и её приложениях(в частности, в машинном обучении есть задача curve-fitting). Наверняка каждый слышал о методе наискорейшего спуска (МНС) и методе Ньютона (МН). К сожалению, эти методы имеют ряд существенных недостатков, в частности — метод наискорейшего спуска может очень долго сходиться в конце оптимизации, а метод Ньютона требует вычисления вторых производных, для чего требуется очень много вычислений.



Для устранения недостатков, как это часто бывает, нужно глубже погрузиться в предметную область и добавить ограничения на входные данные. В частности: МНС и МН имеют дело с произвольными функциями. В статистике и машинном обучении часто приходится иметь дело с методом наименьших квадратов (МНК). Этот метод минимизирует сумму квадрата ошибок, т.е. целевая функция представляется в виде



\frac{1}{2}\sum \limits_{i=1}^{N}(y_i'-y_i)^2 = \frac{1}{2}\sum \limits_{i=1}^{N}r_i^2 \tag{1}


Алгоритм Левенберга — Марквардта является нелинейным методом наименьших квадратов. Статья содержит:


  • объяснение алгоритма
  • объяснение методов: наискорейшего спуска, Ньтона, Гаусса-Ньютона
  • приведена реализация на Python с исходниками на github
  • сравнение методов

Читать дальше →

Откровения пьяного старшего инженера

Время на прочтение8 мин
Количество просмотров144K
image

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

  • Лучший способ достичь карьерного роста — сменить компанию.
  • Стек технологий на самом деле не имеет значения, потому что в моей области есть примерно 15 базовых шаблонов разработки программного обеспечения. Я работаю с данными, поэтому они не будут такими же, как веб-разработка или embedded. Но все области имеют около 10-20 основных принципов, и технический стек просто пытается упростить эти вещи, так что не переживайте.
  • Есть причина, по которой люди рекомендуют искать работу. Если я недоволен работой, наверное, пора уходить.
  • У меня появилось несколько хороших друзей на всю жизнь в компаниях, с которыми я работал. Мне не нужно это от каждого места, где я работаю. Я был совершенно счастлив, работая в тех местах, где у меня не складывались дружеские отношения с моими коллегами, и я был несчастен в местах, где у меня было несколько хороших друзей.
Читать дальше →

Фильтр Маджвика

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

Предисловие от переводчика


Здесь представлен один из новейших методов расчёта ориентации в пространстве по показаниям датчиков акселерометра, гироскопа и компаса — фильтр Маджвика, который, по словам автора, даёт результат лучший, чем применение фильтра на основе метода Калмана в результатах и производительности. Автор — Себастьян Маджвик (его интернет-магазин). Метод описан в статье на английском. Данная работа защищена в Университете г. Бристоля Перевода я не нашёл. Переводчик из меня так себе, особенно таких сложных текстов. Но нам же интересно, что за метод?

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


Читать дальше →

Фильтр Калмана

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


В интернете, в том числе и на хабре, можно найти много информации про фильтр Калмана. Но тяжело найти легкоперевариваемый вывод самих формул. Без вывода вся эта наука воспринимается как некое шаманство, формулы выглядят как безликий набор символов, а главное, многие простые утверждения, лежащие на поверхности теории, оказываются за пределами понимания. Целью этой статьи будет рассказать об этом фильтре на как можно более доступном языке.
Фильтр Калмана — это мощнейший инструмент фильтрации данных. Основной его принцип состоит в том, что при фильтрации используется информация о физике самого явления. Скажем, если вы фильтруете данные со спидометра машины, то инерционность машины дает вам право воспринимать слишком быстрые скачки скорости как ошибку измерения. Фильтр Калмана интересен тем, что в каком-то смысле, это самый лучший фильтр. Подробнее обсудим ниже, что конкретно означают слова «самый лучший». В конце статьи я покажу, что во многих случаях формулы можно до такой степени упростить, что от них почти ничего и не останется.
Читать дальше →

MEMS-акселерометры и гироскопы — разбираемся в спецификации

Время на прочтение12 мин
Количество просмотров78K
“Хьюстон, у нас проблемы”, — устало раздалось в мозгу, пытающемся в ночи продраться сквозь Datasheet IMU MPU-9250 от InvenSense. Когда все слова в отдельности понятны, но взаимосвязь их запутана до невозможности. Началось всё с параметра LSB, про который я только смутно помнила, что в переводе это Least Significant Bit. Дальше пошли “Resolution”, “Sensitivity”, а ещё дальше я поняла, что получающийся текст уже можно озаглавить “Datasheet для чайников”.
Читать дальше →

Применение МЭМС гироскопов и акселерометров для отслеживания движений тела человека

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


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

Каверзные кватернионы

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


Отгадайте загадку: в четырёх измерениях сидит и комплексными числами воротит?

Подсказка: это вектор со скаляром. И вещественная матрица. И придумал его Гамильтон.

Не помогло? Ну что вы, это же элементарно! Это кватернион! Кватернионы используют для записи вращений в робототехнике, игровых движках, ПО для моделирования и вообще везде, где не нужны проблемы с углами Эйлера или матрицами. Если вас испугала путаница выше с разными представлениями кватерниона, то можете быть спокойны. Кватернионы очень просты в использовании и их внутреннее строение может понадобиться только в очень редких случаях, где нужна тонкая оптимизация. В остальное время с помощью кватернионов можно крутить всё что угодно и как угодно, и оно будет плавно и красиво интерполироваться без шарнирных замков.
Что же такое кватернион?

Как устроены волны

Время на прочтение54 мин
Количество просмотров31K
Волны — это самое распространённое явление. Физические колебания, звук, свет, радио и рентген, волны вероятности в квантовой механике, гравитационные волны в теории относительности — физика практически состоит из волн. Каждое явление можно изучать отдельно, но есть что-то общее в волнах, универсальное.

Чтобы ухватить это общее предлагаю разбираться в волнах последовательно.

Начнём с вопроса, на первый взгляд не связанного с темой, но ответ на который сразу много прояснит.

image
Рис. 1. «Две параллельные линии». Канва, браш. Рама.

Перед вами две параллельные линии, с ограниченной областью их просмотра, квадратным окном. Для различия они раскрашены. Вопрос простой: если красная линия это сдвинутая зелёная, то в какую сторону произошел сдвиг?
Конечно, вправо-вверх, зачем ещё пять вариантов ответа?

Как построить свою систему поиска похожих изображений

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

В интернете есть много информации о поиске похожих изображений и дубликатов. Но как построить свою систему? Какие современные подходы применять, на каких данных обучать, как валидировать качество поиска и куда смотреть при выводе в production?

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

Читать далее

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

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

Главная сложность в разработке приложения – накодить его функционал. Например, сделать редактирование текста для приложения-блокнота. Так я полагал, когда был моложе и наивнее.

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

Хочу поделиться краткой выжимкой из своего опыта: какие неожиданные сложности вас ждут, если вы делаете мобильное приложение впервые.

Читать далее

BLE шлюз из Xiaomi Gateway DGNWG05LM *без BLE

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

В этом посте я расскажу как можно собирать данные BLE и передавать через MQTT в системы умного дома на примере HomeAssistant.

Поехали!

Как создать свою собственную Луну

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

В этой статье рассказывается, как с нуля изготовить 3D-модель Луны. Казалось бы, Зачем создавать модель Луны самому, если её можно купить? Хотя бы потому, что при самостоятельном изготовлении модели Луны вы сможете задавать желаемые параметры, например размеры и толщину оболочки, разрешение изображения, пределы вращения, положение секущей плоскости, сможете сделать отверстие для лампы и так далее. Приступим же к творению своей собственной Луны.

Приятного чтения

Информация

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