Pull to refresh

Неортогональная БИНС для малых БПЛА

Reading time 7 min
Views 30K
Algorithms *
БИНС
По правилам сокращений в заголовке не должно быть, но расписав сокращения я превратил бы заголовок в аннотацию. Так что вот…
  • БИНС — бесплатформенная инерциальная навигационная система
  • БПЛА — беспилотный летательный аппарат
  • ОЧ — ось чувствительности датчика

Речь в статье пойдет о навигационной системе, в которой ОЧ датчиков ориентированы неортогонально, т.е. расположены под некоторым, ненулевым, углом к осям системы координат, связанной с БПЛА. Особенность таких БИНС в том, что по информации от каждого из датчиков можно получить значения всех трех компонент угловой скорости (для гироскопов) и линейного ускорения (для линейных акселерометров) объекта.
Статья написана как дополнение к Строим мультикоптер, часть вторая. Целью является описание одного из способов борьбы с дрейфом нуля в дешевых датчиках.
Для чего нужна избыточность читать тут...
Total votes 67: ↑63 and ↓4 +59
Comments 45

Атмосферное поглощение или как оценить загрязнёность воздуха

Reading time 6 min
Views 16K
Image processing *
Многие здесь увлекаются астрофотографией и для могих это стало любимым занятием. Однако Вашему хобби можно найти очень интересное применение и проделать на основе одной фотографии целое исследование. Сегодня мы попытаемся по фотографии оценить степень загрязнёности атмосферы в Вашем городе. Кого заинтересовал пост, то добро пожаловать под кат.
image
Читать дальше →
Total votes 37: ↑36 and ↓1 +35
Comments 34

Несколько слов о «линейной» регрессии

Reading time 5 min
Views 52K
Data Mining *Big Data *Mathematics *R *Machine learning *
Иногда так бывает: задачу можно решить чуть ли не арифметически, а на ум прежде всего приходят всякие интегралы Лебега и функции Бесселя. Вот начинаешь обучать нейронную сеть, потом добавляешь еще парочку скрытых слоев, экспериментируешь с количеством нейронов, функциями активации, потом вспоминаешь о SVM и Random Forest и начинаешь все сначала. И все же, несмотря на прямо таки изобилие занимательных статистических методов обучения, линейная регрессия остается одним из популярных инструментов. И для этого есть свои предпосылки, не последнее месте среди которых занимает интуитивность в интерпретации модели.
Читать дальше →
Total votes 38: ↑37 and ↓1 +36
Comments 15

Использование МатАнализа в компьютерных играх

Reading time 10 min
Views 29K
Mathematics *
Sandbox

Введение


Во многих играх, особенно РПГ очень большое значения имеют «статы». Атака, защита, сопротивление, урон, пробивание брони, промахи и прочее влияют на наносимый противнику урон или вами от противника получаемый. Чаще всего игроки предпочитают придерживаться тактики – «чем больше всего и сразу, тем лучше». Такой подход скорее вызван не продуманной стратегией развития персонажа, а отсутствием детального анализа игры, лени, или же недостатком информации о конкретном характере(конкретной расчётной формулы) влияния «статов» на те или иные показатели. Более того, очень часто, по задумке создателей игры, бывает невозможно увеличивать все характеристики одновременно, и поэтому правильно выбрать «что и куда «вкачивать» становится особенно важно.

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

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

Метод наименьших квадратов (МНК)

Читать дальше →
Total votes 28: ↑22 and ↓6 +16
Comments 6

В трёх статьях о наименьших квадратах: ликбез по теории вероятностей

Reading time 10 min
Views 21K
Programming *C++ *Algorithms *Mathematics *
Tutorial
Полтора года назад я опубликовал статью «Математика на пальцах: методы наименьших квадратов», которая получила весьма приличный отклик, который, в том числе, заключался в том, что я предложил нарисовать сову. Ну, раз сова, значит, нужно объяснять ещё раз. Через неделю ровно на эту тему я начну читать несколько лекций студентам-геологам; пользуюсь случаем, излагаю тут (адаптированные) основные тезисы в качестве черновика. Моей основной целью не является дать готовый рецепт из книги о вкусной и здоровой пищи, но рассказать, почему он таков и что ещё находится в соответствующем разделе, ведь связи между разными разделами математики — это самое интересное!

На данный момент я предполагаю разбить текст следующим образом:


Я зайду к наименьшим квадратам чуть сбоку, через принцип максимума правдоподобия, а он требует минимального ориентирования в теории вероятностей. Данный текст рассчитан на третий курс нашего факультета геологии, что означает, (с точки зрения задействованного матаппарата!) что заинтересованный старшеклассник при соответствующем усердии должен суметь в нём разобраться.

Насколько обоснован теорвер или верите ли вы в теорию эволюции?


Однажды мне задали вопрос, верю ли я в теорию эволюции. Прямо сейчас сделайте паузу, подумайте, как вы на него ответите.


Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Comments 21

Методы наименьших квадратов без слёз и боли

Reading time 10 min
Views 46K
Programming *C++ *Game development *Algorithms *Mathematics *
Tutorial


Итак, очередная статья из цикла «математика на пальцах». Сегодня мы продолжим разговор о методах наименьших квадратов, но на сей раз с точки зрения программиста. Это очередная статья в серии, но она стоит особняком, так как вообще не требует никаких знаний математики. Статья задумывалась как введение в теорию, поэтому из базовых навыков она требует умения включить компьютер и написать пять строк кода. Разумеется, на этой статье я не остановлюсь, и в ближайшее же время опубликую продолжение. Если сумею найти достаточно времени, то напишу книгу из этого материала. Целевая публика — программисты, так что хабр подходящее место для обкатки. Я в целом не люблю писать формулы, и я очень люблю учиться на примерах, мне кажется, что это очень важно — не просто смотреть на закорючки на школьной доске, но всё пробовать на зуб.

Итак, начнём. Давайте представим, что у меня есть триангулированная поверхность со сканом моего лица (на картинке слева). Что мне нужно сделать, чтобы усилить характерные черты, превратив эту поверхность в гротескную маску?



В данном конкретном случае я решаю эллиптическое дифференциальное уравнение, носящее имя Симеона Деми Пуассона. Товарищи программисты, давайте сыграем в игру: прикиньте, сколько строк в C++ коде, его решающем? Сторонние библиотеки вызывать нельзя, у нас в распоряжении только голый компилятор. Ответ под катом.
Читать дальше →
Total votes 54: ↑54 and ↓0 +54
Comments 58

Методы наименьших квадратов: текст, написанный программистом для программистов

Reading time 19 min
Views 34K
Programming *C++ *Data Mining *Algorithms *Mathematics *
Tutorial
Продолжаю публикацию своих лекций, изначально предназначенных для студентов, учащихся по специальности «цифровая геология». На хабре это уже третья публикация из цикла, первая статья была вводной, она необязательна к прочтению. Однако же для понимания этой статьи необходимо прочитать введение в системы линейных уравнений даже в том случае, если вы знаете, что это такое, так как я буду много ссылаться на примеры из этого введения.

Итак, задача на сегодня: научиться простейшей обработке геометрии, чтобы, например, суметь преобразовать мою голову в истукана с острова Пасхи:


Читать дальше →
Total votes 84: ↑80 and ↓4 +76
Comments 13

Адаптация подхода с применением сжатия zlib для отсеивания некачественных текстов разной длины

Reading time 4 min
Views 1.3K
Python *Natural Language Processing *Processing *
Sandbox

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

Читать далее
Total votes 11: ↑11 and ↓0 +11
Comments 3

Построение моделей на панельных данных в Python, часть 1

Reading time 12 min
Views 1.6K
Python *
Roadmap

Привет, Хабр!

В данной серии статей рассматривается построение “обычных” моделей на панельных данных в Python: объединенной модели МНК (pooled OLS), однонаправленной модели с фиксированными эффектами (one-way individual FE), двунаправленной модели с фиксированными эффектами (two-way FE), однонаправленной модели со случайными эффектами (one-way RE). Также будет рассмотрена оценка эффекта методом “разность разностей” (diff-in-diff) и синтетическим контролем. Основное внимание будет уделено практике, теоретические аспекты методов будут упомянуты вскользь.

Контекст: Данная статья сделана отдаленно по мотивам статьи “Online platform price parity clauses: Evidence from the EU Booking.com case” (Mantovani, Piga, Reggiani, 2021) [1]. Текст статьи, описание переменных, данные можно скачать здесь.

В Италии и Франции сайт Booking.com мог устанавливать потолок цен на стоимость жилья, которое выставлялось на сайте. 6 августа 2015 года во Франции был принят закон Макрона, который исключил из договоров между отелями и Booking.com пункты, запрещавшие отелям продавать номера по ценам ниже, чем у Booking.com. Целью закона Макрона - не допустить монопольного положения Booking.com. Французские отельеры поздравляли себя с принятием этого закона, так как считали, что, если отель предложит такие же цены, как на Booking.com, или даже ниже, то клиент предпочтет забронировать комнату на сайте отеля. В Италии такой закон принят не был.

Задача: Необходимо оценить, как изменились цены на отели после введения закона.

Читать далее
Total votes 1: ↑1 and ↓0 +1
Comments 0