Panel používateľa
Späť

Softvér CyberCalc na výpočet uzamykacích systémov - keď zámky navrhuje umelá inteligencia

Pridané: 24.3.2020 10:53:24 Počet zobrazení: 82

24 Marec 2020

Navrhnúť zámok a kľúč, ktorý k nemu pasuje, znie banálne. Lenže keď ide o budovu so stovkami dverí a s množstvom užívateľov, ktorí nemajú mať možnosť dostať sa úplne všade, je úloha pre výrobcu zámkov oveľa zložitejšia. Tzv. systémy generálnych a hlavných kľúčov, kde má každý užívateľ jediný kľúč, ktorý otvára len presne definovanú podmnožinu zámkov a táto podmnožina môže byť pre každého užívateľa iná, sú na trhu dostupné už dlho. Navrhnúť ich ale nie je vôbec jednoduché. Kombinácií je také obrovské množstvo, že k tým správnym sa nedá dopočítať hrubou silou – teda tak, že sa počítačom preženú všetky možnosti.

Uspokojivé softvérové riešenie pre túto oblasť prakticky neexistovalo – kým tím výskumníkov z ČVUT vedený prof. Filipom Železným nevyvinul softvér CyberCalc, ktorý si s úlohami, ktoré predtým zabrali návrhárom uzamykacích systémov celé dni, poradí hravo za pár minút. Tím za neho získal cenu Wernera von Siemens v kategórii Najvýznamnejší výsledok vývoja/inovácie. „Hlavná cena v takejto súťaži je samozrejme skvelé prekvapenie, ale od začiatku som vedel, že naša prihláška je silná a že máme dobré šance,“ hovorí prof. Filip Železný.

Čím si myslíte, že Vaša práca hodnotiteľov zaujala?

To samozrejme neviem, ale keby som to posudzoval ja, očarilo by ma, ako elegantne si v projekte našli cestu do výrobnej praxe niektoré koncepty a princípy z kombinatoriky, teórie grafov a z výrokovej logiky. A nepotrebovali sme k tomu grantovú podporu, všetko platil zákazník.

Ako dlho trval vývoj softvéru CyberCalc? A aké boli najväčšie problémy, na ktoré ste v priebehu vývoja s tímom narážali?

Začali sme v lete 2012. Oslovili nás z rychnovskej pobočky Assa Abloy, či by ČVUT bolo schopné vyriešiť problém automatického návrhu uzamykacích systémov. Tento problém sa zdal byť podobný úlohám kombinatorického prehľadávania, ktoré na katedre počítačov riešime v kontexte symbolického strojového učenia, tak sme onedlho podpísali prvú zmluvu. Všetko riziko ale ostalo na nás, cena mala byť zaplatená až keď softvér vypočíta dosť náročné testovacie príklady Assa Abloy. Vtedy sme boli pomerne sebavedomí, pretože problém vyzeral na prvý pohľad kryštalicky čisto, čo je v reálnych aplikáciách nezvyčajné. Ide o to, navrhnúť výšky zubov na všetkých kľúčoch a množinu rezov na všetkých pozíciách každého zámku tak, aby správne kľúče otvárali správne zámky. Každý kľúč môže vo všeobecnosti odomykať akúkoľvek podmnožinu zámkov – túto reláciu odomykania definuje užívateľ. Zadanie je klasickým príkladom tzv. constraint satisfaction úlohy (úlohy s obmedzeniami), ktorá je pod drobnohľadom veľkej výskumnej komunity a pre ktorú existuje veľké množstvo open-source knižníc. Skoro som mal pocit, že to bude hotové za týždeň. Lenže sa ukázalo, že reálne inštancie problému svojou zložitosťou rádovo presahujú možností dostupných algoritmov.

A Vám neostávalo nič iné, len začať „na zelenej lúke“...

Presne tak. Našťastie sa nám asi behom roka plného frustrácie podarilo vymyslieť účinnú problémovo-špecifickú heuristiku, čo sú nejaké hrubé odhady nádejnosti jednotlivých rozpracovaných ciest na riešenie inštancie problému. S ich pomocou a pomocou techniky tzv. znáhodnených reštartov boli vyriešené testovacie príklady, prototyp softvéru CyberCalc bol na svete a my sme podpísali ďalšiu zmluvu na finálnu implementáciu. Súčasťou druhej fázy bola okrem reimplementácie aj požiadavka, aby CyberCalc vedel nielen navrhovať nové systémy, ale aj rozširovať už navrhnuté systémy o nové zámky a kľúče. Zdalo sa nám, že to bude vyžadovať len malú úpravu jadra kódu, ale tu sme sa dopustili ďalšieho zásadného podcenenia obtiažnosti zadania. V záujme rozširovacej schopnosti sme museli nakoniec vyvinúť úplne nové riešenie založené okrem heuristického prehľadávania na teórii grafov a prevodov na iný kombinatorický problém. K úspechu nám najviac pomohlo, že sme opakovane podcenili obtiažnosť zadania od zákazníka. Ináč by sme sa do toho s vidinou všetkých rizík asi ani nepustili. A pritom to stálo za to – dnes sa už v Rychnove vyrábajú kľúče a zámky navrhnuté našim CyberCalcom.

Ako ste zvládli pri lámaní si hláv nad výskumnou úlohou zachovať v tíme zmysel pre humor? Bolo ťažké udržiavať dobrú náladu „posádky“?

Dnes to celé vyzerá ako ružový príbeh úspechu, ale podstatná časť vývoja sa pohybovala niekde na hranici medzi frustráciou a zúfalstvom. Podobné okamihy nás určite čakajú aj v ďalšom vývoji. Humor, hoci aj čierny, je v týchto situáciách potrebný, pretože všetko zrelativizuje a človek si pripomenie, že vlastne o nič podstatné nejde.

Ako CyberCalc funguje? Ide o program, do ktorého jednoducho zadám niekoľko vstupných údajov, ako počet kľúčov, zámkov, dverí a akú množinu zámkov majú ktoré kľúče otvárať a program mi na ich základe „vypľuje“ požadovaný návrh fyzickej podoby všetkých týchto kľúčov a zámkov?

Predstavujete si to zhruba správne. CyberCalc je zložitý pod kapotou, ale jeho užívateľské rozhranie je jednoduché. Umožňuje užívateľovi načítať a skontrolovať incidenčnú maticu kľúčov a zámkov (tzv. lock chart) a nastaviť hodnoty niektorých parametrov určujúcich ďalšie požiadavky na tvar kľúča. Výsledok, teda štruktúra kľúčov a zámkov, je potom vyexportovaný vo forme umožňujúcej ďalšie spracovanie.

Je CyberCalc využiteľný len pre potrebu návrhu sústav kľúčov a zámkov alebo má aj ďalšie možnosti využitia?

CyberCalc je špecializovaný a to dokonca tak, že jeho využitie pre odlišné uzamykacie systémy vyžaduje dosť podstatné úpravy a do istej miery aj ďalšiu výskumnú prácu. V súčasnosti jednáme so zástupcami európskeho koncernu Assa Abloy ako celku o vytvorení generickej verzie CyberCalcu, ktorá by sa ľahko prispôsobila odlišnostiam výroby v jednotlivých národných pobočkách. Princípy a techniky použité v CyberCalcu pravdepodobne využijeme v problémoch na prvý pohľad nesúvisiacich, ale analogických z matematického pohľadu.

Ako Vás potešilo, že ste cenu získali? Bude mať pre prácu Vášho tímu okrem dobrého pocitu aj iný prínos?

Osobne som z výhry doslova nadšený a udelenie ceny CyberCalcu plánujem využiť. Čakajú nás jednania o prevzatí riešenia na úrovni celého koncernu Assa Abloy a dám si pozor, aby pri týchto jednaniach bolo jasné, že sa nebavíme o hocijakom produkte, ale o produkte ocenenom hlavnou cenou Siemens za inováciu.

Ako si vybrať bezpečnostnú vložku

 

 

Posledné prezerané

Prihlásenie