Zašto je hardverskom startupu potreban softverski hackathon?

Prošlog prosinca održali smo vlastiti startup hackathon sa šest drugih Skolkovo kompanija. Bez korporativnih sponzora ili bilo kakve vanjske potpore okupili smo dvjestotinjak sudionika iz 20 gradova Rusije kroz napore programerske zajednice. U nastavku ću vam reći kako smo u tome uspjeli, na koje smo zamke nailazili na tom putu i zašto smo odmah počeli surađivati ​​s jednim od pobjedničkih timova.

Zašto je hardverskom startupu potreban softverski hackathon?Sučelje aplikacije koja kontrolira Watts Battery module iz finalista pjesme, “Mokra kosa”

poduzeće

Naša tvrtka Watts Battery stvara modularne prijenosne elektrane. Proizvod je prijenosna elektrana 46x36x11 cm, koja može isporučiti od 1,5 do 15 kilovata na sat. Četiri takva modula mogu osigurati potrošnju energije male seoske kuće za dva dana.

Iako smo prošle godine počeli isporučivati ​​proizvodne uzorke, po svemu sudeći Watts Battery je startup. Tvrtka je osnovana 2016. godine i od iste godine je rezident Klastera energetski učinkovitih tehnologija Skolkovo. Danas imamo 15 zaposlenih i ogroman zaostatak stvari koje bismo htjeli napraviti u nekoj fazi, ali trenutno nema vrijeme za to.

Ovo također uključuje čisto softverske zadatke. Zašto?

Glavna zadaća modula je osigurati nesmetanu, uravnoteženu opskrbu energijom uz optimalnu cijenu. Ako dođe do nestanka struje zbog razloga koji su izvan vaše kontrole, uvijek biste trebali imati rezervu kako biste u potpunosti napajali potrebno opterećenje mreže za vrijeme trajanja prekida. A kada je opskrba električnom energijom dobra, možete koristiti solarnu energiju kako biste uštedjeli novac.

Najjednostavnija opcija je da preko dana možete napuniti bateriju od sunca i koristiti je navečer, ali točno do razine koja je potrebna da u slučaju nestanka struje ne ostanete bez struje. Dakle, nikada se nećete naći u situaciji da ste cijelu večer napajali rasvjetu na bateriju (jer je jeftinije), a noću vam je nestalo struje i hladnjak vam se odledio.

Jasno je da osoba rijetko može s velikom točnošću predvidjeti količinu električne energije koja mu je potrebna, ali sustav naoružan prediktivnim modelom može. Stoga je strojno učenje kao takvo jedno od naših prioritetnih područja. Samo što smo trenutno fokusirani na razvoj hardvera i ne možemo izdvojiti dovoljno resursa za te zadatke, što nas je i dovelo na Startup Hackathon.

Priprema, podaci, infrastruktura

Kao rezultat toga, krenuli smo u dva smjera: analitiku podataka i sustav upravljanja. Osim naših, bilo je još sedam pjesama kolega.

Dok format hackathona nije bio određen, razmišljali smo o stvaranju “vlastite atmosfere”, s bodovnim sustavom: sudionici rade neke stvari koje se nama čine teškima i zanimljivima, dobivajući za to bodove. Imali smo puno zadataka. Ali kako smo izgradili strukturu hackathona, drugi organizatori su tražili da sve dovedemo u zajedničku formu, što smo i učinili.

Onda smo došli do sljedeće sheme: dečki naprave model na temelju svojih podataka, zatim dobiju naše podatke, koje model prije nije vidio, uči i počinje predviđati. Pretpostavljalo se da se sve to može napraviti u 48 sati, ali nama je ovo bio prvi hackathon na našim podacima i možda smo precijenili vremenske resurse ili stupanj spremnosti podataka. Na specijaliziranim hackathonima za strojno učenje takva bi vremenska linija bila norma, ali naš nije bio takav.

Maksimalno smo rasteretili softver i hardver modula i napravili verziju našeg uređaja posebno za hackathon, s vrlo jednostavnim i razumljivim internim sučeljem koje svaki programer može podržati.

Za stazu temeljenu na sustavu upravljanja postojala je mogućnost izrade mobilne aplikacije. Kako sudionici ne bi razbijali glavu o tome kako bi to trebalo izgledati i gubili dodatno vrijeme, dali smo im dizajnerski izgled aplikacije, super lagan, kako bi oni koji to žele mogli jednostavno na njega “razvući” funkcije koje su im potrebne . Iskreno govoreći, nismo očekivali nikakve moralne dileme, ali jedan od timova je to shvatio tako da smo im ograničili polet mašte, htjeli smo besplatno dobiti gotovo rješenje, a ne testirati ih u praksi. I poletjeli su.

Drugi tim odlučio je napraviti potpuno drugačiju aplikaciju od nule i sve je uspjelo. Nismo inzistirali da aplikacija bude upravo ovakva, samo smo trebali sadržavati neke elemente koji pokazuju tehničku razinu rješenja: grafikone, analitiku itd. Nagovještaj je bio i gotov dizajn.

Budući da bi analiza live Watts Battery modula na hackathonu oduzimala previše vremena, sudionicima smo dali gotov isječak podataka za mjesec dana preuzet iz stvarnih modula naših klijenata (koje smo prethodno pažljivo anonimizirali). Budući da je bio lipanj, nije bilo ničega što bi uključilo sezonske promjene u analizu. Ali u budućnosti ćemo im dodati vanjske podatke, kao što su sezonske i klimatske značajke (danas je to industrijski standard).

Nismo željeli stvarati nerealna očekivanja kod sudionika, pa smo u najavi hackathona izravno rekli: rad će biti što sličniji terenskom radu: bučni, prljavi podaci, koje nitko nije posebno pripremao. No, to je imalo i pozitivnu stranu: u duhu agilnosti bili smo u stalnom kontaktu sa polaznicima, te smo promptno mijenjali zadatak i uvjete upisa (više o tome u nastavku).

Osim toga, sudionicima smo dali pristup Amazon AWS-u (toliko aktivno da nam je Amazon blokirao jednu regiju, smislit ćemo što učiniti u vezi s tim). Tamo možete postaviti infrastrukturu za Internet stvari i, čak i na temelju jednostavnih Amazonovih predložaka, stvoriti potpuno rješenje u roku od jednog dana. No, na kraju je apsolutno svatko krenuo svojim putem, maksimalno radeći sve po svome. Pritom su neki uspjeli ispoštovati rok, drugi nisu. Jedan tim, Nubble, koristio je Yandex.cloud, netko ga je podigao na svom hostingu. Čak smo bili spremni dati domene (imamo ih registrirane), ali nisu bile od koristi.

Kako bismo odredili pobjednike u analitičkom nizu, planirali smo usporediti rezultate, za što smo pripremili numeričku metriku. Ali na kraju to nije bilo potrebno učiniti jer iz raznih razloga tri od četiri sudionika nisu stigla do finala.

Što se tiče kućne infrastrukture, Tehnopark Skolkovo je tu pomogao tako što nam je (besplatno) ustupio jednu od svojih udobnih modularnih prostorija s video zidom za prezentacije i nekoliko manjih prostorija za rekreacijski prostor i za organizaciju cateringa.

Analitika

Zadatak: samoučeći sustav koji identificira anomalije u potrošnji i radu modula na temelju kontrolnih podataka. Namjerno smo zadržali formulacije što je moguće općenitije kako bi sudionici mogli zajedno s nama razmišljati o tome što bi se moglo učiniti na temelju dostupnih podataka.

Specifičnost: Složeniji od dva zapisa. Industrijski podaci imaju neke razlike od podataka u zatvorenim sustavima (na primjer, digitalni marketing). Ovdje morate razumjeti fizičku prirodu parametara koje pokušavate analizirati; gledanje na sve kao na apstraktne nizove brojeva neće funkcionirati. Na primjer, raspodjela potrošnje električne energije tijekom dana. To je poput rituala: električni brijač se uključuje ujutro radnim danom, a mikser se uključuje vikendom. Zatim bit samih anomalija. I ne zaboravite da je Watts baterija namijenjena osobnoj upotrebi, tako da će svaki klijent imati svoje rituale, a jedan univerzalni model neće raditi. Pronalaženje poznatih anomalija u podacima nije čak ni zadatak; stvaranje sustava koji autonomno traži neoznačene anomalije je druga stvar. Uostalom, sve može biti anomalija, uključujući i podmukli ljudski faktor. Na primjer, u našim testnim podacima bio je slučaj u kojem je korisnik prisilno prebacio sustav u način rada na baterije. Korisnici to ponekad rade bez ikakvog razloga (napravit ću rezervaciju da ovaj korisnik testira modul umjesto nas i iz tog razloga ima pristup ručnom upravljanju modovima; za ostale korisnike kontrola je potpuno automatska). Kao što je lako predvidjeti, u takvoj situaciji baterija se prazni prilično aktivno, a ako je opterećenje veliko, punjenje će završiti prije izlaska sunca ili pojave drugog izvora energije. U takvim slučajevima očekujemo da ćemo vidjeti neku vrstu obavijesti da je ponašanje sustava odstupilo od normalnog. Ili je osoba otišla i zaboravila isključiti pećnicu. Sustav vidi da je obično u ovo doba dana potrošnja 500 vata, ali danas - 3,5 tisuća - anomalija! Kao Denis Matsuev u avionu: "Ne razumijem se u avionske motore, ali na putu do tamo motor je zvučao drugačije."

Zašto je hardverskom startupu potreban softverski hackathon?Grafikon prediktivnog modela na neuronskoj mreži otvorenog koda Yandex CatBoost

Što tvrtka zapravo treba?: sustav samodijagnostike unutar uređaja, prediktivna analitika, uključujući i bez mrežne infrastrukture (kao što praksa pokazuje, nisu svi naši klijenti u žurbi spajati baterije na Internet - za većinu je dovoljno da sve samo radi pouzdano), prepoznavanje anomalija čiju prirodu još ne znamo, samoučeći sustav bez učitelja, klasteriranje, neuronske mreže i cijeli arsenal modernih analitičkih metoda. Moramo shvatiti da se sustav počeo ponašati drugačije, čak i ako ne znamo što se točno promijenilo. Na samom hackathonu bilo nam je jako važno vidjeti da postoje dečki koji su spremni zakoračiti u industrijsku analitiku ili su već u njoj, te traže nova područja primjene svojih sposobnosti. Najprije me iznenadilo toliko prijavljenih: ipak je riječ o vrlo specifičnoj kuhinji, no postupno su od četiri sudionika otpali svi osim jednoga, pa je donekle sve sjelo na svoje mjesto.

Zašto to nije izvedivo u ovoj fazi?: Glavni problem sa zadacima rudarenja podataka je nedostatak dovoljno podataka. Danas diljem svijeta radi nekoliko desetaka Watts Battery uređaja, ali mnogi od njih nisu povezani s mrežom, tako da naši podaci još nisu vrlo raznoliki. Jedva smo riješili dvije anomalije - i one su se dogodile na prototipovima; industrijska Watts baterija radi prilično stabilno. Da imamo internog inženjera za strojno učenje i znamo - da, to se može izvući iz ovih podataka, ali želimo dobiti bolju kvalitetu predviđanja - to bi bila jedna priča. Ali do ove točke nismo učinili ništa s tim podacima. Osim toga, to bi zahtijevalo duboko uranjanje sudionika u specifičnosti rada našeg proizvoda, dan i pol za to nije dovoljno.

Kako ste se odlučili?: Nisu odmah postavili točan konačni zadatak. Umjesto toga, svih 48 sati vodili smo dijalog sa sudionicima, promptno saznavajući što mogu dobiti, a što ne. Na temelju toga, u duhu kompromisa, zadatak je finaliziran.

Što ste dobili kao rezultat?: pobjednici staze mogli su očistiti podatke (istodobno su pronašli "značajke" izračunavanja nekih parametara koje mi sami prije nismo primijetili, budući da neke od podataka nismo upotrijebili za rješavanje problema) , istaknuti odstupanja od očekivanog ponašanja modula Watts Battery i postaviti prediktivni model koji može predvidjeti potrošnju energije s visokim stupnjem točnosti. Da, ovo je samo faza izvedivosti razvoja industrijskog rješenja; tada će biti potrebni tjedni mukotrpnog tehničkog rada, ali čak i ovaj prototip, kreiran izravno tijekom hackathona, može činiti osnovu pravog industrijskog rješenja, što je rijetkost.

glavni zaključak: Na temelju podataka koje imamo, moguće je postaviti prediktivnu analitiku, to smo pretpostavili, ali nismo imali resurse za provjeru. Sudionici hackathona testirali su i potvrdili našu hipotezu, a mi ćemo nastaviti raditi s pobjednicima staza na ovom zadatku.

Zašto je hardverskom startupu potreban softverski hackathon?Grafikon prediktivnog modela na opensource neuronskoj mreži Facebook Prophet

Savjet za budućnost: kada sastavljate zadatak, morate gledati ne samo na plan proizvodnje, već i na interes sudionika. Budući da naš hackathon nema novčanih nagrada, igramo na prirodnu znatiželju podatkovnih znanstvenika i želju za rješavanjem novih, zanimljivih problema u kojima još nitko ništa nije pokazao ili gdje se mogu pokazati boljim od postojećih rezultata. Ako odmah uzmete u obzir faktor interesa, usput nećete morati mijenjati fokus.

Управление

Zadatak: (aplikacija) koja upravlja mrežom modula Watts Battery, s osobnim računom, pohranom podataka u oblaku i praćenjem statusa.

Specifičnost: u ovoj stazi nismo tražili neko novo tehničko rješenje; mi, naravno, imamo vlastito korisničko sučelje. Odabrali smo ga za hackathon kako bismo demonstrirali mogućnosti našeg sustava, uživjeli se u njega i provjerili zanima li zajednicu tema razvoja pametnih sustava i alternativne energije. Mobilnu aplikaciju pozicionirali smo kao opciju, možete je učiniti ili ne učiniti po vlastitom nahođenju. No, po našem mišljenju, dobro pokazuje kako su ljudi uspjeli organizirati pohranu podataka u oblaku, s pristupom iz nekoliko različitih izvora odjednom.

Što tvrtka zapravo treba?: zajednica programera koji će smišljati poslovne ideje, testirati hipoteze i kreirati radne alate za njihovu implementaciju.

Zašto to nije izvedivo u ovoj fazi?: Opseg tržišta je još uvijek premalen za organsko formiranje takve zajednice.

Kako ste se odlučili?: Kao dio hackathona, proveli smo neku vrstu fizikalne studije kako bismo vidjeli je li moguće osmisliti ne samo značajke, već i potpune poslovne modele oko našeg vrlo specifičnog proizvoda. Štoviše, da bi ljudi koji su sposobni implementirati prototip mogli ovo, uostalom, ovdje - ne želim nikoga uvrijediti - to nije razina programiranja treptajuće LED diode na Arduinu (iako se to može učiniti s inovacijama) , ovdje su potrebne prilično specifične vještine: razvoj backend i frontend sustava, razumijevanje principa izgradnje skalabilnih sustava Internet of Things.

*Govor pobjednika drugog kolosijeka*

Što ste dobili kao rezultat?: dva tima predložila su cjelovite poslovne ideje za svoj rad: jedan se više fokusirao na ruski segment, drugi na strani. Odnosno, u finalu nisu samo ispričali kako su došli do aplikacije, već su u biti došli poslovati oko Wattsa. Dečki su opisali kako vide korištenje Wattsa u nekoliko poslovnih modela, pružili su statistike, pokazali koje regije imaju kakve probleme, koji se zakoni gdje donose, ocrtali globalni trend: nije moderno rudariti bitcoine, moderno je rudariti kilovate. Namjerno su došli do alternativne energije, što nam se jako svidjelo. Činjenica da su sudionici, uz to, uspjeli izraditi radno tehničko rješenje govori da mogu samostalno pokrenuti startup.

glavni zaključak: Postoje timovi spremni uzeti Watts Battery kao temelj svog poslovnog modela, razviti ga i postati partneri/suputnici tvrtke. Neki od njih čak znaju kako prepoznati MVP poslovne ideje i prvo raditi na njemu, nešto što danas nedostaje posvuda u industriji. Ljudi ne razumiju kada stati, kada pustiti rješenje na tržište, iako rano, ali djelotvorno. Zapravo, faza brušenja rješenja često ne završava, tehnički rješenje prelazi granicu razumne složenosti, izlazi na tržište preopterećeno, više nije jasno što je bila izvorna ideja, što je ciljanje korisnika, koji su poslovni modeli. uključeno. Kao u onom vicu o Akunjinu koji je napisao drugu knjigu dok je nekome potpisivao prethodnu. Ali ovdje je to učinjeno u svom najčišćem obliku: ovdje je grafikon, ovdje je brojač, ovdje su indikatori, ovdje je predviđanje - to je sve, ništa drugo nije potrebno za pokretanje. S tim možete otići do investitora i dobiti novac za pokretanje posla. Oni koji su pronašli ovu ravnotežu izašli su sa staze kao pobjednici.

Savjet za budućnost: na sljedećem hackathonu (planiramo ga u ožujku ove godine), možda ima smisla eksperimentirati s hardverom. Imamo vlastiti razvoj hardvera (jedna od prednosti Wattsa), u potpunosti kontroliramo proizvodnju i testiranje svega što radimo, ali nemamo dovoljno resursa za testiranje nekih “hardverskih” hipoteza. Vrlo je moguće da u zajednici programera sistemskih i niskih razina i programera hardvera postoje oni koji će nam u tome pomoći i u budućnosti postati naš partner u ovom području.

Ljudi

Na hackathonu smo očekivali one koji se žele okušati u novom polju (primjerice, diplomante raznih škola programiranja) nego one koji su se specijalizirali za ovakav razvoj. No, ipak smo očekivali da će prije hackathona napraviti malo pripremnih radova, pročitati kako se uopće predviđa potrošnja energije i kako funkcioniraju sustavi Internet of Things. Tako da svi dolaze ne samo radi zabave, tražeći zanimljive podatke i zadatke, već i s preliminarnim uranjanjem u predmetno područje. S naše strane, razumijemo da je za to potrebno unaprijed objaviti dostupne podatke, njihov opis i preciznije zahtjeve za rezultat, objaviti API module itd.

Svi su imali približno istu tehnološku razinu, plus-minus iste sposobnosti. U tom kontekstu, razina harmonije nije bila posljednji čimbenik. Jedan broj timova nije pucao jer se nisu mogli jasno podijeliti po područjima rada. Bilo je i onih u kojima je jedna osoba radila sav razvoj, ostali su bili zaokupljeni pripremom prezentacije, u drugima je netko dobio zadatke koje je radio, vjerojatno prvi put u životu.

Većina sudionika bili su mladi, što ne znači da među njima nije bilo jakih inženjera i programera strojnog učenja. Većina je došla u timovima, pojedinaca praktički nije bilo. Svi su sanjali o pobjedi, netko je želio naći posao u budućnosti, oko 20% ga je već našlo, mislim da će ta brojka rasti.

Nismo imali dovoljno hardverskih štrebera, ali nadamo se da ćemo to nadoknaditi na drugom hackathonu.

Napredak hackathona

Kao što sam gore napisao, veći dio 48 sati hackathona bili smo sa sudionicima i, prateći njihove uspjehe na kontrolnim točkama, nastojali prilagoditi zadatak i uvjete za prihvaćanje prve, analitičke staze, tako da, s jedne strane, sudionici su ga mogli završiti u preostalom vremenu, a s druge strane, to nam je bilo zanimljivo.

Zadnje razjašnjenje zadatka bilo je negdje oko zadnje kontrolne točke, u subotu poslijepodne (finale je bilo na rasporedu u nedjelju navečer). Sve smo još malo pojednostavili: uklonili smo zahtjev za ponovnim izračunom modela na novim podacima, ostavljajući podatke s kojima su timovi već radili. Usporedba metrike nam više nije dala ništa, već su imali gotove rezultate na temelju dostupnih podataka, a drugi dan dečki su već bili umorni. Stoga smo ih odlučili manje mučiti.

Međutim, tri od četiri sudionika nisu stigla do finala. Jedan tim je već u startu shvatio da ih više zanima staza naših kolega, drugi je neposredno prije finala shvatio da su tijekom obrade prije vremena isfiltrirali potrebne podatke i odbio prezentirati svoj rad.

Ekipa “21 (Efekt mokre kose)” sudjelovala je u obje naše staze do samog kraja. Htjeli su pokriti sve odjednom: strojno učenje, razvoj, aplikaciju i web stranicu. Dok im u zadnji čas nismo zaprijetili povlačenjem, vjerovali su da sve rade na vrijeme, iako je već na drugoj kontrolnoj točki bilo očito da s onim glavnim – strojnim učenjem – ne mogu značajnije napredovati: uglavnom su se nosili s drugi blok, ali nisu mogli predvidjeti potrošnju električne energije nisu bili spremni. Kao rezultat toga, kada smo odredili minimalni zadatak za kvalifikacije za prvi, oni su ipak odabrali drugi kolosijek.

Fit-predict je imao uravnotežen sastav prilagođen za analizu podataka, tako da su uspjeli nadvladati sve. Bilo je vidljivo da su dečki bili zainteresirani za "dodirivanje" stvarnih industrijskih podataka. Odmah su se koncentrirali na ono glavno: analiziranje, čišćenje podataka, rješavanje svake anomalije. Činjenica da su tijekom hackathona uspjeli izgraditi radni model veliko je postignuće. U radnoj praksi to obično traje tjednima: dok se podaci očiste, dok se u njih udubi. Stoga ćemo svakako surađivati ​​s njima.

U drugom kolosijeku (menadžment) očekivali smo da će svi sve napraviti u pola dana i doći tražiti da otežamo zadatak. U praksi smo jedva imali vremena izvršiti osnovni zadatak. Radili smo na JS-u i Pythonu, što odražava trenutno stanje u industriji.

I ovdje su rezultate ostvarile uigrane ekipe u kojima je bila izgrađena podjela poslova, vidjelo se tko što radi.

Treći tim, FSociety, činilo se da ima rješenje, ali na kraju su odlučili ne prikazati svoj razvoj, rekli su da ne smatraju da funkcionira. Mi to poštujemo i nismo se svađali.

Pobijedila je ekipa “Striptizete iz Bakua” koja se uspjela zaustaviti, ne juriti za “drangulijama”, već stvoriti MVP-a kojeg se ne srami pokazati i za kojeg je jasno da se može dalje razvijati i skalirati. Odmah smo im rekli da nas dodatne mogućnosti ne zanimaju previše. Ako žele registraciju preko QR koda, prepoznavanje lica, neka prvo naprave grafove u aplikaciji, a onda se bave neobaveznim.

U ovoj pjesmi “Mokra kosa” je samouvjereno ušla u finale, a s njima i “Hustlersima” razgovarali smo o daljnjoj suradnji. Potonje smo već upoznali u novoj godini.

Nadam se da će sve uspjeti i veselimo se vidjeti sve na drugom hackathonu u ožujku!

Izvor: www.habr.com

Dodajte komentar