Володимир Ніколаєвський — київський десятикласник, який хоче допомогти українським військовим. Кілька місяців тому він придумав систему, яка за допомогою штучного інтелекту та алгоритмів обчислення допомагатиме оператору визначати та збивати FPV на лінії фронту. Разом із другом розробили прототип, протестували мотори на тестовій 3D-моделі. Утім, найбільший виклик — як розробити нейронну мережу для виявлення дронів із відстані принаймні двісті метрів. Він розповів DOU, які проблеми є на цьому шляху, як триває розробка і чому його графік розписаний з 6:00 до 23:00.
Як усе почалося: від теорії до спроб першого проєкту
Мій тато — програміст. Він працює бекенд-розробником на C# на закордонні проєкти. І коли мені було десять, він показав дитячий підручник з веброзробки та JS.
Не скажу, що здолав у ньому все. Десятирічній людині реально важко зацікавити себе чимось, а надто програмуванням. Але тато допомагав, пояснював. Тож мене спершу втягнули, а тепер я вже свідомо займаюся програмуванням.
Тієї книжки я так і не допрацював до кінця. Але минуло трохи часу — і почав проходити курс з React: React JS, Redux. Тут я вже просунувся значно далі. Але в програмуванні якщо не пишеш, то забувається, потрібна постійна практика. Курс був дуже великий, сотня з лишком відео, і я його теж не добив. Частково тому, що бачив, що він застарілий: технології рухаються, а я з таким навчанням — не встигаю.
Тож на якийсь час я пригальмував, а тоді разом із татом взявся працювати над розробкою: сервісом спільних поїздок на зразок «Блаблакару». Це було в 2021-2022, до повномасштабної війни. Також я пішов у школу програмування, на відділ геймдизайну. З одного боку, шкодую про це: у геймдизайн краще не йти, якщо маєш ще якісь зацікавлення. Потрібно повністю вкладатися в цей напрям і глибоко розбиратися, як працюють рушії. З іншого — я відкрив для себе 3D-моделювання, і в цій сфері зумів піти далі. Зараз я розробляю 3D-моделі, користуюся Fusion, Blender. До того ж у школі я знайшов друга, з яким ми разом робимо поточний проєкт.
Ми закінчили цю школу торік і почали придумувати власні ігри на тему війни. Після повномасштабного вторгнення я дивлюся багато новин: особливо останній рік-два. Так, я дізнався, що на фронті через величезну кількість БПЛА неможливо просунутися ні на метр. Як із цим бути? Раніше, коли не було дронів, танки штурмували ворожі позиції. Тож як їх позбутися?
Мені спала на думку ідея.
«Хочу збирати дрони і надалі в цивільний час». Про перший дрон
Отож я відклав цивільні розробки до спокійнішого часу. Натомість вирішив зробити пристрій, який збиватиме російські дрони. Від знайомих у війську я чув, що звук FPV для них нагадує кінець світу.
Ще раніше, коли мені було тринадцять років, я зібрав свій перший дрон. Показав, що це можна робити, тато. Утім він попередив, що це не легко. Я сам захотів, мені замовили компоненти з Китаю, паяльники. У ютубі є відеогайд від Social Drone. Не знаю, як для кого, та для мене пайка виявилася доволі легкою. Можливо, тому, що я паяв ще в років 11 громіздким радянським паяльником і зрозумів, як це робиться. І коли паяв самотужки дрон, було доволі легко поєднати ці малі компоненти.
Також сам налаштовував мікроконтролер, припаював мотори, контакти, скручував усе докупи. Дрон і пульт до нього я віддав на навчання татовим знайомим інструкторам: вони навчають людей літати на дронах в реальних умовах. Саме на навчання, не на знищення. Шкода, що ніхто орка не замочив моїм дроном.
Хочу їх збирати і надалі в цивільний час, це прикольно. Мати свою колекцію FPV-дронів, літати на них, фристайлити — як хобі на майбутнє.
На цей дрон отримав фідбек: казали, що трохи неміцно припаяв мотори, мінімальна тряска іноді впливала на сам політ. Але оскільки це було вперше, я радий, що він злетів, що я зробив те, що згодилося.
Колись у майбутньому я дуже хотів би зробити свій БПЛА. Але навряд чи потягну це сам. Дрон — без проблем, якщо хтось надішле компоненти і є така потреба, залюбки зроблю (тато зараз не дуже охоче купує з Китаю). А для БПЛА потрібні люди, які тямлять, які вчилися, наприклад, в авіаційних вишах і можуть допомогти. Головне — це зробити модель, налаштування, конфігурацію. На все треба гроші, людей і знання, поки їх у мене небагато.
Поліція розшукала і затримала стрільця в Новопечерських Липках: йому загрожує до 7 років в'язниці
Рішення про кредитування Києва на ₴68 млрд для будівництва метро на Троєщину не пропустили
Педагог із Київщини став найкращим учителем хімії України
У Києві затримано блогера з Дніпропетровщини, який видавав себе за співробітника кіберполіції
«Нас гальмує те, що ми не маємо людей». Як відбувається розробка прототипу
Чотири місяці тому ми з другом створили дошку в Mira. Спершу прикинули, який вигляд матиме розробка — установка для захисту техніки від дронів. Зазвичай її вражають саме дрони, тому на техніку клеять великі протикомулятивні сітки, щоб не пробивало. Це схоже на гараж над технікою, тож я подумав зробити зручнішу захисну установку. Можливо, нею вийде керувати з прифронтової лінії, з тилу, сидячи за ноутбуком.
Я придумав цю ідею, заінтригував друга, а потім зробили модель. Нікіта більше любить C++, «Ардуїнку», C# тощо.
Спершу ми орієнтувалися на те, що це носитиме людина. Але швидко від цього відмовилися. Потрібні потужності людина на собі не понесе, це радше для бронемашини. За попередніми розрахунками, система матиме приблизно пів метра заввишки. Потрібно розмістити всі деталі, обчислювальні машини. На начерках тестової моделі розбиралися з моторами: малювали по сантиметрах, як усе має бути. Цей план розписаний більш ніж на половину для тестової моделі, щоб показати як MVP-зразок.
У розробці все має триматися на алгоритмах. ШІ допомагатиме знаходити цілі: грубо кажучи, його інструменти мають розшукувати у небі плями й визначати: чи це і є той самий дрон, чи пташка. А тоді вже оператор дивитиметься, потрібно збивати ціль чи ні.
Зараз у нас є прототип, ми протестували мотори. Вдома зробили тестову 3D-модель, приблизно 20 см, на якій випробовували мотори, щоб вони правильно повернулися на певну кількість градусів. Усе працює ідеально.
Найнагальніше і найважче, що потрібно вирішити, — як виявляти дрони в небі. Я ж поки використовував загальні моделі YOLO, які використовують, наприклад, для визначення кількості людей в аеропортах тощо. Але це дуже глобалізована модель, дрібні деталі в ній стираються. Знайти дрон для неї — це як побачити мурашку в океані, складно само собою за допомогою штучного інтелекту.
Нас гальмує те, що ми не маємо людей і не знаємо, як це зробити краще, в який бік рухатися далі, щоб покращити знаходження дронів. Зараз ШІ може розпізнати дрон на відстані десяти-двадцяти метрів, а ми плануємо на двісті.
У нас немає ані зуму, ні прокачаної нейронної мережі. Все інше здебільшого зроблене: мотори, закінчене управління, коригування, всі повороти та наведення налаштовані. Залишилася нейронка, яку потрібно зробити чи не з нуля. Бо як звернути увагу YOLO на дрон, поки незрозуміло. Треба розбиратися, можливо, хтось знає, як це зробити.
Загалом дивно, що досі немає досконалішого рішення для збиття, тільки ручні сіткомети, які стріляють сіткою по дронах. Якщо, можливо, хтось уже працював над схожим рішенням і може підказати нейронну мережу, що допоможе реально виявити дрон, я був би дуже радий поспілкуватися та скооперуватися. Для мене це звучить як складне технологічне рішення.
Поза цим головним викликом залишилися деталі: попаяти все, додати більше моторів, обладнати все батарейками та приготуватися до нових проблем під час подальшої розробки уже не тестової моделі.
Коли до цього дійде, варто буде зареєструватися на Brave1. Поки ж фінансово ми вкладаємо або власні заощадження, або кошти батьків, або працюємо за бартером. Шкільний батьковий приятель, військовий волонтер, виготовляє підшипники і має 3D-принтери. Він попросив нас допомогти зробити скиди з FPV на Arduino. Натомість дозволив безплатно надрукувати нашу модель. Це було дуже корисно для нас, бо такий друк — це трохи менше ніж чверть від вартості всього наразі зробленого.
Якщо проєкт розвиватиметься далі, велику модель доведеться виготовляти вже з металу. Буде потрібне металургійне виробництво, що обробляє метал.
І ще одним питанням для нас залишається, яку зброю використовувати (все зроблено так, щоб стріляти з кулемета). Найвірогідніше, це буде американський зразок — але, можливо, хтось може краще порадити.
Ще один плюс установки — у тому, що теоретично вона зможе збивати й шахеди, якщо переробити нейронну мережу так, щоб звертала на них увагу. Я вже бачив новини, що такі установки коштують 150 тисяч доларів, тож бюджетніші установки були б доречніші.
Щоб цей проєкт рухався далі, нам потрібно показати MVP-модель, робочу тестову версію. Зараз шукаємо допомоги з нейронною мережею: як побачити дрон здалеку, як його засікти. І якщо все вийде, нам знадобиться інвестування та фахівці, які допоможуть організувати розробку на виробничому рівні. Нині з усіма потрібними компонентами допомагає тато.
Коли я придумав цю розробку, то почав розбиратися, як працює Computer Vision і ШІ загалом — без нього тут ніяк. Мені завжди казали, що це важко, потрібна вища математика і треба багато чого знати, тож я й не підступав. Боявся-боявся, але врешті сів, бо без цього у роботі ніяк.
Для тренування моделі використовуємо YOLO, моя натренована модель може навіть розрізнити, наприклад, ліхтар від дрона. Але бачить тільки на відстані до 20 метрів. 200 і більше зараз звучить як нереально, утім це те, до чого ми прагнемо. Я знаходив нові статті, недавні дослідження про нові методи оперування нейронними мережами. Утім для мене важкувато розбиратися в наукових документах. Допомагає з поясненнями ChatGPT, та все ж у практичній роботі я завис уже на кілька тижнів.
«Мій графік розписаний з 6:00 до 23:00». Про навчання в онлайн-школі та самоосвіту
Я навчаюся у випускному класі. Обрав для себе онлайн-школу, щоб могти більше зосереджуватися на тому, що цікавить, і легше закривати предмети, які я не бачу як складову свого життя надалі. Наприклад, географія. Не заперечую, що вона потрібна, але розібратися при потребі у покладах вугілля або топах країн геть не важко за потреби. Головні уроки для мене — фізика, алгебра, геометрія. Школа дає мені змогу зосередитися на тому, на чому хочу.
Додатково я вчуся по ютубу, на курсах, які сам собі шукаю. Поза тим майже рік навчаюся в IT Step. Як на мене, ця школа для новачків, я пішов туди суто заради кількох дисциплін. Python Core, наприклад, — щоб вийти суто на базовий рівень. Embedded Coding, для «Ардуїнки», я не підтягував: він мені не потрібен, бо сам знаю, як на ній писати. Набір дисциплін підібраний таким чином, щоб ми зрозуміли, куди хочемо йти далі. Найбільше сподобалося збирати комп’ютери. Це було дуже цікаво. (Але загалом, як на мене, програма трохи застаріла).
Мій графік розписаний з 6:00 до 23:00, кожні пів години щось інше. Проходжу курси зі штучного інтелекту, Python, цікавлюся Computer Vision. Улітку, поки не було уроків, посилено вивчав Data Science для data prediction на майбутні дані. На жаль, тепер через заповнений розклад не маю часу на це.
Я ніколи не брав участі у жодних технічних олімпіадах. Зазвичай вчуся відразу в процесі, а курси допомагають мені зрозуміти, як усе влаштовано зсередини. Багато в чому допомагає ChatGPT: від того, щоб закривати домашні завдання у непріоритетних предметах до пошуку незнайомих термінів. Також прошу його порадити курси: з лінійної алгебри, Python, ШІ, React TypeScript. З цим завданням він чудово справляється. Починав я з веброзробки.
Утім, зараз я не маю часу навіть на парт-тайм. І дилема для мене — чи працювати після школи. З одного боку, дохід допоміг би продовжувати розробку, вкладати в неї кошти. З іншого — відбирав би час, який можна використати для власних проєктів.
Поза опануванням хард-скілів я читаю книжки про ведення бізнесу, про те, як правильно взаємодіяти з людьми, як спілкуватися. Це цікавить на майбутнє, бо я хочу і захистити свій проєкт, і продати його. Вміти знайти друзів, людей, які можуть мені допомогти в реалізації ідей. Можливо, я теж комусь зможу.
«Штучний інтелект — найважчий, але найперспективніший». Про плани на майбутнє
Що більше буде нашого власного виробництва, то менше будемо залежати від закордонних дозволів щодо ударів по Росії. Я підтримую українське виробництво, вболіваю за нього та тішитимуся, якщо самому вдасться до нього долучитися. Закрити українське небо від дронів, щоб військовим стало легше просуватися на землі — це моя першочергова мета. Збивати «шахеди» — це вже другорядне. Мати змогу розвивати все, масштабувати — це шлях, яким хочу йти, але поки він звучить як мрія.
Якщо ж війна закінчиться і можна буде займатися цивільними проєктами, то я повернуся до розробки, яку спільно з татом розпочав напередодні війни. Це застосунок для спільних подорожей, далеких і близьких. За задумом люди зможуть легше комунікувати і швидше одне одного підвозити, без логування в системі водіїв, як це працює зараз у схожих програмах. Ідея належала моєму татові, але оскільки він працює, то делегував мені візуал, бекенд тощо. Спершу я закинув проєкт через війну. Роки два тому повернувся, але тепер відчуваю, що хоч і зможу завершити все сам, це буде довго. Технології тут розвиваються, а я не встигаю рухатися за ними.
Є багато сфер, які мене зараз цікавлять. Знаю веброзробку, вмію писати сайти. Створював ігри, писав «Ардуїнку». Деколи відчуваю, ніби мене розхитує в різні боки і не знаю, де варто спинитися. Гадаю, в найближчі роки мої зацікавлення й навчання стосуватимуться саме штучного інтелекту. Це найважчий напрям за математичним спрямуванням, але водночас найперспективніший.