Я думаю, что фильтровать все локальные колебания собираются путем массовой обработки (обработки данных с большого числа телефонов, расположенных в разных местах). А по поводу колебаний дома от термических вибраций и подобных возмущений — акселерометры в телефонах их просто не чувствуют (не хватает точности/частоты)
Это на самом деле очень интересная идея. Не так давно была статья про определение эпицентра землетрясения по данным фитнес-трекеров.
И, конечно же, телефон это не сейсмограф, а просто дополнительный источник информации.
Как уже заметили выше, такое приложение может стать популярным только при небольшом расходе батареи.
Насколько я знаю, в VB есть какие-то ограничения на наследование. В частности, не реализовано множественное наследование классов, из-за чего приходиться искать обходные пути через наследование интерфейсов. Если я не прав — поправьте, с VB я знаком не очень хорошо.
Я правильно понимаю, что основную часть проектов удалось перенести автоматически? Не возникало проблем с отсутствием полноценного наследования в Visual Basic?
Можно, полученный результат обычно не сильно хуже. Но тут встает вопрос о том какие частицы считать достаточно маловероятными. Логично было бы сравнивать с максимальным значением веса (с самой вероятной частицой), например отсеивать все частицы, вес которых меньше 0.1*maxWeight. Но на практике оказывается, что этот критерий (0.1*maxWeight) нужно подбирать опытным путем и для каждой задачи отдельно.
А Resampling wheel является универсальным алгоритмом: один раз написал — и используй во всех задачах.
Функция random просто выдает случайное число в заданных пределах, например
random.uniform(0, 2*max(weight))
дает случайное число от 0 до 0.5 (в рассматриваемом примере max(weight) = 0.25).
Так как фильтр частиц работает с вероятностями (вес частиц), то без генератора случайных чисел не обойтись.
Про отсев частиц:
Гарантированно лишние частицы — это те частицы, вес которых равен нулю (вероятность нахождения объекта в этой точке 0%). Остальные отсеиваемые частицы являются маловероятными. Ну и так бывает, что маловероятные события иногда происходят. Поэтому и у этих частиц тоже есть шанс пройти отсев, просто маленький.
Из опыта могу сказать, что был случай когда фильтр разошелся (не оказалось частиц рядом с роботом и ошибка начала быстро увеличиваться) и логи показали, что была частица соответствующая положению робота, но ее вес был где-то в 100 раз меньше чем вес «больших» частиц и она не пережила отсев.
В моделировании не страшно, а если вы используете фильтр для определения местоположения реального объекта, например квадрокоптера, может быть фатально.
Ситуация маловероятна, но увеличение количества частиц в фильтре помогает снизить вероятность её возникновения.
Что за система Nest?
И, конечно же, телефон это не сейсмограф, а просто дополнительный источник информации.
Как уже заметили выше, такое приложение может стать популярным только при небольшом расходе батареи.
А Resampling wheel является универсальным алгоритмом: один раз написал — и используй во всех задачах.
(не туда написал)
дает случайное число от 0 до 0.5 (в рассматриваемом примере max(weight) = 0.25).
Так как фильтр частиц работает с вероятностями (вес частиц), то без генератора случайных чисел не обойтись.
Про отсев частиц:
Гарантированно лишние частицы — это те частицы, вес которых равен нулю (вероятность нахождения объекта в этой точке 0%). Остальные отсеиваемые частицы являются маловероятными. Ну и так бывает, что маловероятные события иногда происходят. Поэтому и у этих частиц тоже есть шанс пройти отсев, просто маленький.
Из опыта могу сказать, что был случай когда фильтр разошелся (не оказалось частиц рядом с роботом и ошибка начала быстро увеличиваться) и логи показали, что была частица соответствующая положению робота, но ее вес был где-то в 100 раз меньше чем вес «больших» частиц и она не пережила отсев.
В моделировании не страшно, а если вы используете фильтр для определения местоположения реального объекта, например квадрокоптера, может быть фатально.
Ситуация маловероятна, но увеличение количества частиц в фильтре помогает снизить вероятность её возникновения.
Адамс Мориока и Терри Стоун. «Дизайн цвета.Практикум».