Komórka zamiast superkomputera

| Technologia
Bernard Goldbach, CC-BY

Rosnąca moc obliczeniowa superkomputerów pozwala na rozwiązywanie coraz bardziej złożonych problemów inżynieryjnych. Rosnące w siłę procesory domowych pecetów oraz technologie takie jak CUDA, które wykorzystują potęgę obliczeniową kart graficznych, przenoszą te możliwości do domów i biur. Co jednak, kiedy istnieje potrzeba takich obliczeń w terenie i to natychmiast? Sytuacja wydaje się bez wyjścia, moc najlepszych smartfonów jeszcze przez długie lata nie wystarczy do takich zastosowań. Ale inżynierowie amerykańskiego Massachusetts Institute of Technology są naprawdę smart (ang. sprytni) i zademonstrowali technologię, która pozwoli w terenie posłużyć się smartfonem, zamiast superkomputera. Nie, nie jest to przełom w konstruowaniu procesorów, lecz przełom w podejściu do problemu.

Przykłady zastosowań, które wymagają dużej mocy komputerów, to obliczenie wpływu pęknięć na trwałość budynku, stabilność konstrukcji, przepływ płynu przez kanał o nieregularnym kształcie. Wzory matematyczne nie są bardzo złożone, ale wymagają tylu obliczeń, że nawet superkomputerom może to zająć przynajmniej godziny. Nie każdy jednak ma dostęp do klastrów obliczeniowych, nie zawsze jest na to czas.

David Knezevic i Phuong Huynh (MIT) oraz Anthony T. Patera i John Peterson (Texas Advanced Computer Center) zaproponowali obejście problemu mocy obliczeniowej. Można to wyjaśnić na przykładzie obliczania przepływu wody w kanale z umieszczoną w środku przeszkodą. Wynik obliczeń zależy od jednego tylko parametru: średnicy przeszkody, ale znalezienie tego wyniku to i tak praca dla dużej mocy komputera. Autorzy wyszli z założenia, że w warunkach ważniejsza jest szybkość niż precyzja. Napisana przez nich aplikacja posiada matematyczny model takiego przypadku obliczeniowego, pozwalający ustawić wielkość parametru (w tym przypadku: rozmiar przeszkody) z pewną określoną dokładnością, przykładowo wybrać spośród dostępnych 50 wielkości. W ciągu najdalej sekund otrzymujemy przybliżony, ale wiarygodny wynik, znając jednocześnie maksymalny margines błędu. Oczywiście ustawianych parametrów może być więcej. Demonstracyjna aplikacja posiada na razie ten jeden model, ale docelowo posiadać będzie przynajmniej kilka takich gotowych modeli dla różnych przypadków inżynieryjnych. A jeśli naszego przypadku nie ma w bazie danych aplikacji? Łączymy się z bazą projektów w internecie i ściągamy projekt odpowiedni dla naszych potrzeb.

W zastosowaniach inżynieryjnych często wiemy, że rozwiązane naszego problemu jest zależne od pewnej liczby parametrów - mówi Knezevic - ale zanim nie wyjdziemy w teren, nie wiemy, jakie te parametry będą.

 

Druga strona aplikacji

 

Ty dochodzimy do drugiego elementu: potrzebnych, gotowych modeli matematycznych. Te uzyskuje się tradycyjnie: dzięki superkomputerom. Tak, nadal są nam one potrzebne, ale tylko raz: przygotowane „szablony" są dostępne bez ograniczeń. Kiedy dla jakiegoś problemu nie ma gotowego modelu, każdy może go przygotować i umieścić w ogólnodostępnej bazie danych.

Nie byłoby to jednak możliwe bez kluczowej technologii, nad którą Anthony T. Patera pracował ponad dziesięć lat. To metoda analitycznego oceniania stopnia błędu w obliczeniach przybliżonych. Dzięki temu wiadomo, jakimi parametrami i jak rozłożonymi trzeba „nakarmić" stworzony matematyczny model, żeby umożliwić sukcesywne zmniejszanie marginesu błędu. Podawanie marginesu błędu to ważna cecha stworzonej mobilnej aplikacji. Dla każdego wybranego zestawu parametrów znany jest możliwy błąd, który jest ceną za szybkość.

To jednak nie wszystkie możliwości, które oferuje metoda „gotowych modeli". Poza zadaniami obliczania efektów założonego zestawu parametrów istnieją problemy odwrotne: znamy skutek, a potrzebne nam obliczenie przyczyn, które do niego prowadzą. Odwołując się do przykładu z przepływem wody: znamy parametry płynącej wody u ujścia kanału i musimy z nich wyliczyć rozmiar przeszkody. Do tego celu naukowcy z MIT napisali drugą, bliźniaczą aplikację dla smartfonów. Przykładowo, policzenie zadania dla trzydziestu parametrów, które superkomputerowi zajęłoby trzydzieści godzin, na przeciętnym smartfonie z aplikacją napisaną przez inżynierów MIT zajmie trzydzieści sekund oferując zadowalającą dokładność.

Podobne podejście do obliczania skomplikowanych problemów sprawdziłoby się, zdaniem autorów rozwiązania, również w wielu innych dziedzinach: autonomicznych robotów, które muszą szybko reagować na zmieniające się warunki środowiskowe, automatycznych systemów sterowania itp. Na razie gotowa jest demonstracyjna aplikacja z przykładowym modelem przepływu wody wokół przeszkody, ale rozwinięcie idei w działający system nie powinno być trudne, jeśli będzie nim zainteresowana wystarczająca grupa podmiotów.

smartfony obliczenia inżynieryjne parametryzacja problemów David Knezevic Phuong Huynh Anthony T. Patera John Peterson Texas Advanced Computer Center Massachusetts Institute of Technology