Zrozumienie potencjału i ograniczeń algorytmów w zakresie rozwiązywania formuł logicznych
Głównym przedmiotem prac w ramach inicjatywy UTHOTP było zaprojektowanie i zbadanie skutecznych algorytmów, gdzie jakość algorytmu jest mierzona na podstawie zmiany czasu uruchamiania wraz ze wzrostem rozmiaru danych wejściowych. Koordynator projektu prof. Jakob Nordstrom wyjaśnia: „Gdyby algorytm miał być rezultatem, jaki biegacz osiąga podczas zawodów, to idealnie byłoby, gdyby długość trasy nie miała znaczenia. Bez względu na to, czy chodzi o bieg na 100 metrów, czy maraton – dobry algorytm powinien biec szybko na wszystkich dystansach”. Szczególnie interesującym wyzwaniem algorytmicznym są tzw. problemy NP-zupełne. Do tej klasy zaliczają się bardzo trudne problemy związane z optymalizacją kombinatoryczną, które w praktyce często dają się jednak rozwiązywać zaskakująco dobrze. Naukowcy nie rozumieją jeszcze, kiedy i dlaczego algorytmy dla tych problemów działają tak dobrze. W ramach projektu badano najlepsze znane dziś algorytmy i stosowane w nich metody wnioskowania. Udowodniając twierdzenia matematyczne, poprzez określenie ich potencjału i ograniczeń, zespół mógł dokładniej zrozumieć, jak działają te algorytmy Znaczenie problemów NP-zupełnych Badania z zakresu teorii złożoności obliczeniowej skupiają się na problemach na granicy tego, co można rozwiązać. Wiele z tych problemów ma pewną intrygującą cechę: choć są bardzo trudne do rozwiązania, to po zaproponowaniu rozwiązania jest ono łatwe do sprawdzenia. Własność tę posiada wiele zadań w nauce i inżynierii, dlatego też badania z dziedziny teorii złożoności obliczeniowej skupiają się na problemach o takiej cesze i próbują zrozumieć ich trudność. Co zaskakujące, okazuje się, że aby rozwiązać jakikolwiek problem obliczeniowy posiadający taką własność (tzw. problem NP-zupełny), wystarczą skuteczne algorytmy do rozwiązywania formuł logicznych. Stąd badania z zakresu teorii złożoności obliczeniowej koncentrują się na tym problemie, znanym jako problem spełnialności Boole’a (SAT) – dzięki temu naukowcy mogą lepiej zrozumieć działanie skutecznych algorytmów. W ramach projektu UTHOTP badano algorytmy do rozwiązywania problemu SAT – tzw. solwery SAT – skupiając się w szczególności na bardziej zaawansowanych matematycznych metodach wnioskowania, które są znacznie skuteczniejsze niż powszechnie stosowane obecnie metody. Projektując i badając nowe algorytmy oraz udowadniając dotyczące ich twierdzenia matematyczne, projekt rzucił światło na ich potencjał. Zespół eksperymentalnie ocenił również nowe algorytmy, które opracował, ale jak dotąd tylko w „wyidealizowanych, laboratoryjnych warunkach”. Opracowano formuły wzorcowe, mające na celu uwidocznienie mocnych i słabych stron różnych metod rozwiązywania problemu SAT. Prace te przyniosły całkiem obiecujące rezultaty, a prof. Nordstrom mówi: „Jeśli te nowe metody sprawdziłyby się równie dobrze w przypadku formuł występujących w rzeczywistych problemach, mogłoby to mieć ogromny wpływ na wiele obszarów przemysłu, które wykorzystują rozwiązania SAT, takich jak projektowanie sprzętu komputerowego i oprogramowania”. Łączenie teorii i praktyki Kiedy teoretycy i praktycy z różnych dziedzin badają te same problemy, ich odmienne perspektywy mogą często powodować niemal nierozwiązywalne problemy w komunikacji – naukowcy z różnych obszarów nie mają nawet wspólnego języka technicznego. Jak wyjaśnia prof. Nordstrom, „była to jedna z barier utrudniających zaprojektowanie i zrozumienie naprawdę skutecznych algorytmów dla problemu SAT. Chociaż SAT jest intensywnie badany od lat 60-tych, mieliśmy do czynienia z bardzo ograniczoną interakcją między teorią a praktyką. Obecnie zaczyna się to zmieniać i uważam, że ważną częścią tego procesu jest seria międzynarodowych warsztatów, które organizuję od 2014 r., korzystając z dotacji ERBN”. Aktualnie zespół poszukuje możliwości zastosowania tego podejścia do praktycznej wydajności algorytmów w pokrewnych dziedzinach, takich jak programowanie z ograniczeniami i mieszane programowanie liniowe całkowitoliczbowe.
Słowa kluczowe
UTHOTP, algorytm, formuła, komputery, logika, matematyka, rozumowanie, obliczenia, problemy, algebra, geometria