Prečo hardvérový startup potrebuje softvérový hackathon?

Vlani v decembri sme spolu so šiestimi ďalšími školkovskými spoločnosťami uskutočnili vlastný startupový hackathon. Bez firemných sponzorov alebo akejkoľvek externej podpory sme zhromaždili dvesto účastníkov z 20 miest v Rusku prostredníctvom úsilia programátorskej komunity. Nižšie vám prezradím, ako sa nám to podarilo, aké nástrahy nás na ceste stretli a prečo sme okamžite začali spolupracovať s jedným z víťazných tímov.

Prečo hardvérový startup potrebuje softvérový hackathon?Rozhranie aplikácie, ktorá ovláda moduly Watts Battery od finalistov trate „Wet Hair“

spoločnosť

Naša spoločnosť Watts Battery vytvára modulárne prenosné elektrárne. Produkt je prenosná elektráreň 46x36x11 cm, schopná dodávať od 1,5 do 15 kilowattov za hodinu. Štyri takéto moduly dokážu zabezpečiť spotrebu energie malého vidieckeho domu na dva dni.

Hoci sme vzorky výroby začali dodávať minulý rok, podľa všetkého je Watts Battery startup. Spoločnosť bola založená v roku 2016 a od toho istého roku je rezidentom klastra Energy Efficient Technologies Cluster Skolkovo. Dnes máme 15 zamestnancov a obrovské množstvo vecí, ktoré by sme chceli v určitej fáze urobiť, ale momentálne nemáme čas na to.

To zahŕňa aj čisto softvérové ​​úlohy. prečo?

Hlavnou úlohou modulu je zabezpečiť neprerušovanú, vyváženú dodávku energie za optimálnu cenu. Ak dôjde k výpadku prúdu z dôvodov, ktoré nemôžete ovplyvniť, vždy by ste mali mať rezervu, aby ste mohli počas výpadku plne napájať požadovanú záťaž siete. A keď je napájanie dobré, môžete použiť solárnu energiu, aby ste ušetrili peniaze.

Najjednoduchšia možnosť je, že cez deň môžete batériu nabiť zo slnka a večer používať, no presne na úroveň, ktorá je potrebná, aby ste v prípade výpadku elektriny nezostali bez elektriny. Takže sa už nikdy neocitnete v situácii, že by ste celý večer napájali osvetlenie z batérie (lebo je to lacnejšie), no v noci vypadla elektrina a vaša chladnička sa odmrazila.

Je jasné, že človek je zriedka schopný predpovedať s veľkou presnosťou množstvo elektriny, ktorú potrebuje, ale systém vyzbrojený prediktívnym modelom to dokáže. Preto je strojové učenie ako také jednou z našich prioritných oblastí. Ide len o to, že sa momentálne zameriavame na vývoj hardvéru a nedokážeme na tieto úlohy vyčleniť dostatok zdrojov, čo nás priviedlo k Startup Hackathonu.

Príprava, dáta, infraštruktúra

V dôsledku toho sme sa vydali na dve cesty: analýzu údajov a systém správy. Okrem našich tam bolo ešte sedem skladieb od kolegov.

Zatiaľ čo formát hackathonu nebol určený, uvažovali sme o vytvorení „vlastnej atmosféry“ s bodovým systémom: účastníci robia niektoré veci, ktoré sa nám zdajú ťažké a zaujímavé a získavajú za to body. Mali sme veľa úloh. Ale keď sme budovali štruktúru hackathonu, ostatní organizátori žiadali všetko doviesť do spoločnej podoby, čo sa aj podarilo.

Potom sme sa dostali k nasledujúcej schéme: chlapci vytvoria model na základe svojich údajov, potom dostanú naše údaje, ktoré model predtým nevidel, naučí sa a začne predpovedať. Predpokladalo sa, že sa to všetko dá stihnúť za 48 hodín, no pre nás to bol prvý hackathon na našich dátach a možno sme precenili časové zdroje či stupeň pripravenosti dát. Na špecializovaných hackathonoch strojového učenia by takáto časová os bola normou, ale tá naša nebola.

Softvér a hardvér modulu sme čo najviac odložili a vytvorili sme verziu nášho zariadenia špeciálne pre hackathon s veľmi jednoduchým a zrozumiteľným vnútorným rozhraním, ktoré by mohol podporovať každý vývojár.

Pre trať založenú na riadiacom systéme bola možnosť spraviť si mobilnú aplikáciu. Aby si účastníci nelámali hlavu nad tým, ako by mala vyzerať, a nestrácali čas navyše, dali sme im dizajnové rozloženie aplikácie, super ľahké, takže tí, ktorí ju chcú, si do nej jednoducho „natiahnu“ funkcie, ktoré potrebujú. . Aby som bol úprimný, nečakali sme tu žiadne morálne dilemy, ale jeden z tímov to zobral tak, že sme obmedzovali ich fantáziu, chceli sme zadarmo dostať hotové riešenie a nie ich testovať v praxi. A vzlietli.

Iný tím sa rozhodol vytvoriť úplne inú aplikáciu od začiatku a všetko fungovalo. Netrvali sme na tom, aby aplikácia bola presne takáto, len sme potrebovali, aby obsahovala nejaké prvky, ktoré demonštrujú technickú úroveň riešenia: grafy, analytiky atď. Nápovedou bolo aj hotové rozloženie dizajnu.

Keďže analýza živého modulu Watts Battery na hackathone by bola príliš časovo náročná, poskytli sme účastníkom hotovú časť údajov za mesiac prevzatú zo skutočných modulov našich klientov (ktoré sme vopred starostlivo anonymizovali). Keďže bol jún, do analýzy nebolo možné zahrnúť sezónne zmeny. Ale v budúcnosti k nim pridáme externé údaje, ako sú sezónne a klimatické vlastnosti (dnes je to priemyselný štandard).

Nechceli sme medzi účastníkmi vytvárať nereálne očakávania, preto sme v oznámení o hackathone priamo povedali: práca bude čo najbližšie k práci v teréne: hlučné, špinavé dáta, ktoré nikto špeciálne nepripravil. Malo to však aj pozitívnu stránku: v duchu agilnosti sme boli neustále v kontakte s účastníkmi a promptne sme zmenili úlohu a podmienky prijatia (viac o tom nižšie).

Okrem toho sme účastníkom umožnili prístup k Amazon AWS (tak aktívne, že nám Amazon zablokoval jeden región, prídeme na to, čo s tým robiť). Tam môžete nasadiť infraštruktúru pre internet vecí a aj na základe jednoduchých šablón Amazonu si do jedného dňa vytvoriť plnohodnotné riešenie. Ale nakoniec išiel úplne každý svojou cestou, všetko si robil na maximum. Niektorým sa zároveň podarilo stihnúť časový limit, iným nie. Jeden tím, Nubble, používal Yandex.cloud, niekto ho zvýšil na svojom hosťovaní. Boli sme dokonca pripravení dať domény (máme ich zaregistrované), ale neboli užitočné.

Na určenie víťazov v analytickej dráhe sme plánovali porovnávať výsledky, pre ktoré sme pripravili numerické metriky. Nakoniec to však nebolo potrebné, pretože traja zo štyroch účastníkov sa z rôznych dôvodov nedostali do finále.

Čo sa týka infraštruktúry domácností, tu nám pomohol Technopark Skolkovo, ktorý nám (zdarma) poskytol jednu zo svojich útulných modulárnych miestností s video stenou na prezentácie a pár menších miestností pre oddychovú zónu a organizáciu stravovania.

Analytika

Úloha: samoučiaci sa systém, ktorý na základe kontrolných údajov identifikuje anomálie v spotrebe a prevádzke modulu. Zámerne sme ponechali formuláciu čo najvšeobecnejšiu, aby účastníci mohli spolu s nami premýšľať o tom, čo by sa dalo urobiť na základe dostupných údajov.

Špecifickosť: Zložitejšia z dvoch skladieb. Priemyselné údaje majú určité rozdiely od údajov v uzavretých systémoch (napríklad digitálny marketing). Tu musíte pochopiť fyzickú povahu parametrov, ktoré sa pokúšate analyzovať; pozerať sa na všetko ako na abstraktné číselné rady nebude fungovať. Napríklad rozloženie spotreby elektriny počas dňa. Je to ako rituály: elektrický holiaci strojček sa zapne ráno vo všedné dni a mixér sa zapne cez víkendy. Potom podstata samotných anomálií. A nezabudnite, že batéria Watts je určená na osobné použitie, takže každý klient bude mať svoje vlastné rituály a jeden univerzálny model nebude fungovať. Hľadanie známych anomálií v dátach ani nie je úlohou, iná vec je vytvorenie systému, ktorý autonómne vyhľadáva neoznačené anomálie. Anomáliou môže byť totiž čokoľvek, vrátane zákerného ľudského faktora. Napríklad v našich testovacích údajoch sa vyskytol prípad, keď bol systém používateľom nútený prejsť do režimu batérie. Používatelia to niekedy robia bezdôvodne (urobím si výhradu, že tento používateľ pre nás testuje modul a práve z tohto dôvodu má prístup k manuálnemu ovládaniu režimov, pre ostatných používateľov je ovládanie úplne automatické). Ako sa dá ľahko predvídať, v takejto situácii sa batéria vybíja pomerne aktívne a ak je zaťaženie veľké, nabíjanie sa skončí skôr, ako vyjde slnko alebo sa objaví iný zdroj energie. V takýchto prípadoch očakávame, že uvidíme nejaký druh upozornenia, že sa správanie systému odchyľuje od bežného. Alebo osoba odišla a zabudla vypnúť rúru. Systém vidí, že zvyčajne v tomto čase je spotreba 500 wattov, ale dnes - 3,5 tisíc - anomália! Ako Denis Matsuev v lietadle: "Nerozumiem ničomu o leteckých motoroch, ale na ceste tam motor znel inak."

Prečo hardvérový startup potrebuje softvérový hackathon?Graf prediktívneho modelu na opensource neurónovej sieti Yandex CatBoost

Čo spoločnosť skutočne potrebuje?: samodiagnostický systém vo vnútri zariadenia, prediktívna analytika aj bez sieťovej infraštruktúry (ako ukazuje prax, nie všetci naši klienti sa ponáhľajú s pripojením batérií k internetu – väčšine stačí, aby všetko spoľahlivo fungovalo), identifikácia anomálií, ktorých podstatu zatiaľ nepoznáme, samoučiaci sa systém bez učiteľa, klastrovanie, neurónové siete a celý arzenál moderných analytických metód. Musíme pochopiť, že systém sa začal správať inak, aj keď nevieme, čo presne sa zmenilo. Na samotnom hackathone bolo pre nás veľmi dôležité vidieť, že sú tu ľudia, ktorí sú pripravení vkročiť do priemyselnej analytiky alebo už v nej sú a hľadajú nové oblasti, kde by mohli uplatniť svoje schopnosti. Najprv ma prekvapilo, že je toľko záujemcov: ide predsa o veľmi špecifickú kuchyňu, no postupne zo štyroch účastníkov až na jedného vypadli všetci, takže do istej miery všetko zapadlo.

Prečo to v tejto fáze nie je možné?: Hlavným problémom úloh dolovania údajov je nedostatok údajov. Vo svete je dnes v prevádzke niekoľko desiatok zariadení s batériou Watts Battery, no mnohé z nich nie sú pripojené k sieti, takže naše dáta ešte nie sú veľmi rôznorodé. Sotva sme zoškrabali dve anomálie - a tie sa vyskytli na prototypoch; priemyselné batérie Watts fungujú celkom stabilne. Ak by sme mali interného inžiniera strojového učenia a vedeli by sme – áno, toto sa dá vytlačiť z týchto údajov, ale chceme získať lepšiu kvalitu predpovedí – bol by to jeden príbeh. Ale až do tohto bodu sme s týmito údajmi nič neurobili. Okrem toho by si to vyžadovalo hlboké ponorenie účastníkov do špecifík fungovania nášho produktu, na to nestačí deň a pol.

ako ste sa rozhodli?: Nestanovili okamžite presnú konečnú úlohu. Namiesto toho sme počas celých 48 hodín viedli s účastníkmi dialóg a rýchlo sme zisťovali, čo môžu získať a čo nie. Na základe toho v duchu kompromisu bola úloha finalizovaná.

Čo ste dosiahli ako výsledok?: víťazi trate dokázali vyčistiť dáta (zároveň našli „vlastnosti“ výpočtu niektorých parametrov, ktoré sme si predtým sami nevšimli, keďže sme niektoré dáta nepoužili na riešenie našich problémov) , zdôrazniť odchýlky od očakávaného správania modulov Watts Battery a vytvoriť prediktívny model, ktorý dokáže predpovedať spotrebu energie s vysokou presnosťou. Áno, toto je len fáza uskutočniteľnosti vývoja priemyselného riešenia, potom budú potrebné týždne usilovnej technickej práce, ale aj tento prototyp, vytvorený priamo počas hackathonu, môže tvoriť základ skutočného priemyselného riešenia, čo je zriedkavé.

hlavný záver: Na základe údajov, ktoré máme, je možné nastaviť prediktívnu analytiku, predpokladali sme to, ale nemali sme prostriedky na kontrolu. Účastníci hackathonu otestovali a potvrdili našu hypotézu a s víťazmi tratí budeme na tejto úlohe pokračovať.

Prečo hardvérový startup potrebuje softvérový hackathon?Graf prediktívneho modelu na opensource neurónovej sieti Facebook Prophet

Rada do budúcna: pri zostavovaní úlohy sa musíte pozerať nielen na plán výroby, ale aj na záujem účastníkov. Keďže náš hackathon nemá žiadne peňažné odmeny, hráme na prirodzenú zvedavosť dátových vedcov a túžbu riešiť nové, zaujímavé problémy, v ktorých ešte nikto nič neukázal alebo kde sa vedia ukázať lepšie ako doterajšie výsledky. Ak okamžite zoberiete do úvahy faktor záujmu, nebudete musieť počas toho presúvať svoju pozornosť.

management

Úloha: (aplikácia), ktorá spravuje sieť modulov Watts Battery s osobným účtom, ukladaním dát v cloude a monitorovaním stavu.

Špecifickosť: v tejto stope sme nehľadali nejaké nové technické riešenie, samozrejme máme vlastné spotrebiteľské rozhranie. Vybrali sme si ho na hackathon, aby predviedol možnosti nášho systému, ponoril sa do neho a preveril, či sa komunita zaujíma o tému vývoja inteligentných systémov a alternatívnej energie. Mobilnú aplikáciu sme umiestnili ako voliteľnú možnosť, môžete to urobiť alebo nie podľa vlastného uváženia. Ale podľa nás dobre ukazuje, ako sa ľuďom podarilo zorganizovať ukladanie dát v cloude, s prístupom z niekoľkých rôznych zdrojov naraz.

Čo spoločnosť skutočne potrebuje?: komunita vývojárov, ktorí budú prichádzať s podnikateľskými nápadmi, testovať hypotézy a vytvárať pracovné nástroje na ich realizáciu.

Prečo to v tejto fáze nie je možné?: Objem trhu je stále príliš malý na organické vytvorenie takejto komunity.

ako ste sa rozhodli?: V rámci hackathonu sme uskutočnili akúsi štúdiu fyzickosti, aby sme zistili, či je možné vymyslieť nielen funkcie, ale aj plnohodnotné obchodné modely okolo nášho veľmi špecifického produktu. Navyše, aby to dokázali ľudia schopní implementovať prototyp, koniec koncov, tu - nechcem nikoho uraziť - toto nie je úroveň programovania blikajúcej LED na Arduine (aj keď sa to dá urobiť pomocou inovácií) , tu sa vyžadujú skôr špecifické zručnosti: vývoj backendových a frontendových systémov, pochopenie princípov budovania škálovateľných systémov internetu vecí.

*Prejav víťazov druhej skladby*

Čo ste dosiahli ako výsledok?: dva tímy navrhli pre svoju prácu plnohodnotné podnikateľské nápady: jeden sa zameriaval viac na ruský segment, druhý na zahraničný. To znamená, že vo finále nielen povedali, ako prišli s aplikáciou, ale v podstate začali podnikať okolo Wattsa. Chalani načrtli, ako vidia využitie Wattov vo viacerých biznis modeloch, poskytli štatistiky, ukázali, ktoré regióny majú aké problémy, aké zákony sa kde prijímajú, načrtli celosvetový trend: ťažiť bitcoiny je nemoderné, je módne ťažiť kilowatty. Schválne prišli na alternatívnu energiu, čo sa nám veľmi páčilo. Skutočnosť, že účastníci okrem toho dokázali vytvoriť funkčné technické riešenie, naznačuje, že môžu samostatne spustiť startup.

hlavný záver: Existujú tímy pripravené vziať Watts Battery ako základ svojho obchodného modelu, rozvíjať ho a stať sa partnermi/spoločníkmi spoločnosti. Niektorí z nich dokonca vedia identifikovať MVP podnikateľského nápadu a najskôr na ňom pracovať, čo dnes v tomto odvetví všade chýba. Ľudia nerozumejú, kedy prestať, kedy uviesť na trh riešenie, aj keď skoro, ale fungujúce. V skutočnosti fáza leštenia riešenia často nekončí, technicky riešenie prekročí hranicu primeranej zložitosti, na trh vstupuje preťažené, už nie je jasné, aká bola pôvodná myšlienka, aké je zacielenie na zákazníka, aké sú obchodné modely zahrnuté. Ako vo vtipe o Akuninovi, ktorý napísal ďalšiu knihu, keď niekomu podpísal tú predchádzajúcu. Ale tu to bolo urobené vo svojej najčistejšej forme: tu je graf, tu je počítadlo, tu sú ukazovatele, tu je predpoveď - to je všetko, na spustenie nie je potrebné nič iné. S týmto môžete ísť k investorovi a získať peniaze na začatie podnikania. Tí, ktorí našli túto rovnováhu, vyšli z trate ako víťazi.

Rada do budúcna: na ďalšom hackathone (plánujeme v marci tohto roku), možno má zmysel experimentovať s hardvérom. Máme vlastný vývoj hardvéru (jedna z výhod Watts), výrobu a testovanie všetkého, čo robíme, plne kontrolujeme, no nemáme dostatok zdrojov na testovanie niektorých „hardvérových“ hypotéz. Pokojne sa môže stať, že v komunite systémových a nízkoúrovňových programátorov a hardvérových vývojárov sa nájdu takí, ktorí nám s tým pomôžu a v budúcnosti sa stanú naším partnerom v tejto oblasti.

Ľudia

Na hackathone sme očakávali skôr tých, ktorí sa chcú vyskúšať v novom odbore (napríklad absolventov rôznych programátorských škôl), ako tých, ktorí sa na tento druh vývoja špecializujú. Napriek tomu sme očakávali, že pred hackathonom urobia malú prípravnú prácu, prečítajú si o tom, ako sa všeobecne predpovedá spotreba energie a ako fungujú systémy internetu vecí. Aby každý prišiel nielen za zábavou, hľadaním zaujímavých údajov a úloh, ale aj s predbežným ponorom do predmetu. Z našej strany chápeme, že na to je potrebné vopred zverejniť dostupné údaje, ich popis a presnejšie požiadavky na výsledok, zverejniť API moduly atď.

Každý mal približne rovnakú technologickú úroveň, plus mínus rovnaké schopnosti. Na tomto pozadí nebola úroveň harmónie posledným faktorom. Viaceré tímy nestrieľali, pretože sa nevedeli jasne rozdeliť do oblastí práce. Boli aj také, v ktorých celý vývoj robil jeden človek, ostatní boli zaneprázdnení prípravou prezentácie, v iných niekto dostal úlohy, ktoré robil, zrejme prvýkrát v živote.

Väčšina účastníkov bola mladá, to neznamená, že medzi nimi neboli silní inžinieri a vývojári strojového učenia. Väčšina prišla v tímoch, jednotlivci prakticky neboli. Každý sníval o výhre, niekto si chcel v budúcnosti nájsť prácu, asi 20 % si ju už našlo, myslím si, že toto číslo bude rásť.

Nemali sme dostatok hardvérových geekov, ale dúfame, že si to vynahradíme na druhom hackathone.

Pokrok v hackathone

Ako som písal vyššie, väčšinu 48 hodín hackathonu sme boli s účastníkmi a pri sledovaní ich úspechov na kontrolných bodoch sme sa snažili prispôsobiť úlohu a podmienky prijatia prvej, analytickej stopy tak, aby na jednej strane účastníci ho mohli absolvovať v zostávajúcom čase a na druhej strane nás to zaujímalo.

Posledné upresnenie úlohy bolo urobené niekde okolo posledného checkpointu, v sobotu popoludní (finále bolo naplánované na nedeľu večer). Všetko sme ešte trochu zjednodušili: odstránili sme požiadavku prepočítať model na nové dáta a ponechali sme dáta, s ktorými tímy už pracovali. Porovnávanie metrík nám už nič nedalo, na základe dostupných dát už mali hotové výsledky a na druhý deň už boli chalani unavení. Preto sme sa rozhodli, že ich budeme mučiť menej.

Traja zo štyroch účastníkov sa však do finále nedostali. Jeden tím si už pri štarte uvedomil, že ho viac zaujíma trať našich kolegov, druhý si tesne pred finále uvedomil, že v procese spracovania si vopred odfiltroval potrebné dáta a odmietol svoju prácu prezentovať.

Tím “21 (Wet Hair Effect)” sa zúčastnil oboch našich tratí až do úplného konca. Chceli pokryť všetko naraz: strojové učenie, vývoj, aplikáciu a webovú stránku. Kým sme im na poslednú chvíľu nepohrozili stiahnutím sa, verili, že všetko robia včas, hoci už pri druhom kontrolnom bode bolo zrejmé, že s tým hlavným – strojovým učením – nemôžu výrazne pokročiť: vo všeobecnosti si poradili s druhý blok, ale nevedeli predpovedať spotrebu elektriny neboli pripravené. Výsledkom bolo, že keď sme určili minimálnu úlohu na kvalifikáciu do prvej, aj tak zvolili druhú trať.

Fit-predict mal vyváženú kompozíciu šitú na mieru pre analýzu dát, takže dokázali prekonať všetko. Bolo zrejmé, že chlapci mali záujem „dotýkať sa“ skutočných priemyselných údajov. Okamžite sa sústredili na to hlavné: analyzovať, čistiť dáta, riešiť každú anomáliu. Skutočnosť, že počas hackathonu dokázali postaviť funkčný model, je veľký úspech. V pracovnej praxi to zvyčajne trvá týždne: kým sa dáta čistia, kým sa do nich ponoria. Preto s nimi určite budeme spolupracovať.

V druhej dráhe (manažment) sme očakávali, že každý urobí všetko za pol dňa a príde sa opýtať, aby si úlohu sťažil. V praxi sme sotva stihli dokončiť základnú úlohu. Pracovali sme na JS a Pythone, čo odráža súčasný stav v odvetví.

Aj tu dosahovali výsledky zohraté tímy, v ktorých bola vybudovaná deľba práce, bolo jasné, kto čo robí.

Tretí tím, FSociety, vyzeral, že má riešenie, ale nakoniec sa rozhodli svoj vývoj neukázať, povedali, že to nepovažujú za fungujúce. Rešpektujeme to a nehádali sme sa.

Víťazom sa stal tím “Strippers from Baku”, ktorý sa dokázal zastaviť nie preto, aby sa hnal za “cetkami”, ale vytvoril MVP, ktoré sa nehanbí ukázať a je jasné, že sa dá ďalej rozvíjať a škálovať. Hneď sme im povedali, že ďalšie príležitosti nás príliš nezaujímajú. Ak chcú registráciu cez QR kód, rozpoznávanie tváre, nech si najskôr urobia grafy v aplikácii, a potom si zoberú tie nepovinné.

V tejto skladbe „Wet Hair“ s istotou vstúpili do finále a diskutovali sme s nimi a „Hustlers“ o ďalšej spolupráci. Toho posledného sme už spoznali v novom roku.

Dúfam, že všetko klapne a tešíme sa na všetkých na druhom marcovom hackathone!

Zdroj: hab.com

Pridať komentár