Komputer, który nigdy się nie zawiesi
Zawiesił się wam ostatnio komputer? Nie? Spokojnie, wcześniej czy później przypomni sobie o tym, że może wywinąć taki numer. Na szczęście dwóch brytyjskich naukowców wpadło na pomysł, jak oduczyć komputery takiego zachowania.
Oczywiście nie jest to takie proste i wymaga zbudowania całkowicie nowego komputera, którego działanie opierać się będzie na chaosie i losowości, ale to nie znaczy, że nie można czegoś takiego zrobić. Właściwie to taka maszyna już stoi na University College London.
Dzisiejsze komputery mają całkiem sporo zadań do wykonania. Muszą wyciągnąć zmienne z pamięci, obliczyć je, wrzucić wyniki do pamięci, zająć się innym procesem, znowu sięgnąć po dane przechowywane w pamięci i tak dalej. Wszystko to dzieje się bardzo szybko, w związku z czym użytkownikowi wydaje się, że komputer może wykonywać kilka działań jednocześnie ale tak nie jest.
Dla odmiany komputer opracowany przez Petera Bentleya oraz Christosa Sakellariou łączy dane z instrukcjami ich dotyczącymi i dzieli je na osobne systemy. Każdy system posiada pamięć, w której przechowywane są dane zawierające kontekst danej operacji czyli informacje na temat tego z jakimi innymi systemami powinny zachodzić ich interakcje. Zadania nie są wykonywane według wcześniej ustalonej listy zadań, zamiast tego wybierane są przez algorytm generujący liczby pseudolosowe. Systemy wykonują swoje instrukcje jednocześnie i żaden z nich nie ma pierwszeństwa przed innymi.
„Co najważniejsze,” czytamy w New Scientist, „systemowy komputer (bo tak swoje dzieło nazwali Londyńscy naukowcy) zawiera wiele kopii własnych instrukcji, rozproszonych po wielu systemach więc jeśli jeden z systemów zostanie uszkodzony, komputer może wykorzystać inną kopię by naprawić własny kod. W odróżnieniu od konwencjonalnych systemów operacyjnych, które wieszają się jeśli nie mają dostępu do pamięci, systemowy komputer działa dalej ponieważ każdy system posiada swoją własną pamięć”.
Wydawać by się mogło, że tego typu losowe interakcje powinny przełożyć się na mniejszą wydajność takiego urządzenia. Jednak tak nie jest. Bentley twierdzi nawet, że ich komputer działa szybciej niż sami się tego spodziewali. Teraz obaj naukowcy planują zająć się nauczeniem takiej maszyny zmieniania swojego oprogramowania w reakcji na zmieniające się środowisko. Brzmi jak science-fiction ale oni uważają, że coś takiego można osiągnąć, wykorzystując algorytmy maszynowego uczenia się.
Ale jak na razie jesteśmy na etapie komputera, który nigdy się nie zawiesi, co samo w sobie jest ogromnym osiągnięciem. Szkoda tylko, że jeszcze sporo czasu minie zanim w ten sposób konstruowane będą zwykłe maszyny użytkowe.