Ниже приведено описание моего предыдущего профессионального опыта:
Апрель 2022 - Ноябрь 2023: Исследователь-постдок в вычислительной биологии, Университет Монпелье, Монпелье, Франция
- Цели:
- лучше понять как единственная клетка (оплодотворённое яйцо) развивается в сложный биологический организм
- смоделировать морфологию эмбриона, включая его форму, при использовании информации о предыдущих этапах его развития
- Результаты:
- форма клеток эмбриона представлена в качестве параметров сферической взвешенной диаграммы Вороного, перенесён из MATLAB на Python оптимизационный модуль, вычисляющий параметры диаграммы Вороного по изображениям эмбриона и необходимый для свободного выполнения вычислений на суперкомпьютере Jean Zay
- добавлена обработка формы клеток во время митоза, улучшено определение начальных параметров оптимизации для более точного построения сферической взвешенной диаграммы Вороного
- разработана система для обработки и хранения в базе данных Neo4j вычисленных параметров диаграмм, а также биологических маркеров клеток
- эволюция параметров диаграмм Вороного, описывающих процесс развития для разных эмбрионов, представлена в виде многомерных траекторий в пространстве
- при помощи программы Transtab создана нейронная сеть для предсказания параметров клетки и вероятности её деления на основе предыдущей истории развития клетки и построенных траекторий, она смогла предсказать вероятность деления клеток с точностью около 82%
- навыки:
- Вычислительная биология, Морфология, Численное моделирование, Диаграммы Вороного, Численные методы, Обработка изображений, Машинное обучение, Базы данных на графах
- технологии:
- Python, NumPy, SciPy, Scikit-image, Matplotlib, Transtab, Neo4j, Cypher, Git, PyCharm
Май 2017 - Сентябрь 2021: Аспирант (докторант), Инженер-исследователь, Инрия, Страсбургский университет, Страсбург, Франция
- Цели:
- оценить граничные условия вокруг печени для улучшения аккуратности её моделирования в дополненной реальности, создаваемой для хирургии
- реалистично смоделировать деформацию печени, а также влияние окружающих её органов и тканей в реальном времени
- построить статистический атлас для мест крепления связок к печени
- Результаты:
- выбран метод гиперупругих конечных элементов для моделирования деформаций печени, построена система кубических пружин для граничных условий
- создан компонент, описывающий пружинки с полиномиальной зависимостью между напряжением и деформацией, который был интегрирован в программное обеспечение SOFA
- принято участие в разработке программного модуля на C++, позволяющего оценивать различные параметры модели, используя нелинейные фильтры Калмана
- разработан метод ансцентного фильтра Калмана с уменьшенным порядком как наилучший подход при компромиссе между вычислительными затратами в режиме реального времени и точностью моделирования
- проведена оптимизация с использованием предобуславливания для улучшения производительности корректировочного процесса (время вычисления уменьшилось на 26%)
- реализован подход на основе деформируемой регистрации формы печени (метода диффеоморфного метрического отображения большой деформации) для получения статистики о местах крепления связок к печени
- проведены эксперименты с целью подтверждения повышения точности моделирования при скорректированных граничных условиях на базе синтетических данных (ошибка уменьшилась на 66%) и реальных (ошибка уменьшилась на 23%)
- навыки:
- Дополненная реальность, Численное моделирование, Метод конечных элементов, Модель массы-пружинки, Численные методы, Ассимиляция данных, Фильтры Калмана, Диффеоморфное метрическое отображение
- технологии:
- C++, Python, OpenCV, PCL, SOFA, FEBio, Deformetrica, Git, QtCreator
Май 2014 – Ноябрь 2016: Инженер-программист, Научно-производственный филиал “Энергия ОАО “Завод Энергия”, Санкт-Петербург, Россия
- Цели:
- разработать программное обеспечение для обнаружения различных сигналов в заданном частотном диапазоне, создать базу данных для хранения обнаруженных объектов, собрать статистику об основных параметрах сигналов, используя специализированные утилиты
- Результаты:
- реализован модуль, обнаруживающий шумоподобные сигналы и собирающий базовую информацию о них
- перенесён из MATLAB на C++ программный модуль, определяющий сигналы с псевдослучайной перестройкой рабочей частоты и анализирующий их базовые параметры
- создана компонента, записывающая информацию о найденных сигналах и их параметрах в базу данных на платформе PostgreSQL
- разработан пользовательский интерфейс для отображения развёртки спектра и выделения обнаруженных сигналов
- навыки:
- Цифровая обработка сигналов, Анализ Фурье
- технологии:
- C++, MATLAB, Qt, Intel IPP, SQL, PostgreSQL, Git, Visual Studio
Август 2010 – Февраль 2014: Инженер-программист, ООО “Биомоделирование”, Санкт-Петербург, Россия
- Цели:
- разработать клиент-серверное программное обеспечение для моделирования формы тела пациента и результатов хирургии молочных желез с использованием имплантата и экспандера
- реалистично смоделировать биомеханические свойства кожи, жира, мышц, костей и имплантатов
- Результаты:
- создано программное обеспечение, моделирующее помещение имплантата под мягкие ткани, оценены его точность и время вычисления
- реализован графический пользовательский интерфейс, позволяющий выбирать имплантат из каталога и задавать параметры его помещения под ткани
- разработана многослойная, нелинейная и анизотропная модель масс-пружинок для описания деформации мягких тканей
- произведена модификация воксельной модели для ускорения поиска и обработки коллизий между имплантатом и мягкими тканями во время моделирования
- навыки:
- Виртуальная реальность, Численное моделирование, Модель масс-пружинок, Численные методы, Трёхмерная компьютерная графика
- технологии:
- C++, WxWidgets, HTML5/CSS, JavaScript, OpenCV, Wolfram Mathematica, SVN, Visual Studio
Июль 2008 – Июль 2010: Стажёр, Младший инженер-программист, Корпорация EMC, Санкт-Петербург, Россия
- Цели:
- участвовать в разработке программного обеспечения для новой системы хранения данных
- Результаты:
- принято участие в написании кода, позволяющего записывать данные непосредственно на диск без использования оперативной памяти
- принято участие в создании модуля, обеспечивающего сохранение кэша при аварийной остановке системы
- настроена оборудование четырёх систем хранения данных для обеспечения удалённого доступа
- навыки:
- Разработка в Linux, Драйвера систем хранения данных
- технологии:
- C, Perl, SVN