Polskie Towarzystwo Informatyczne
NUMER ARCHIWALNY:     1 / 69 rok VII | styczeń 1988
Archiwum
Menu chronologiczne Menu tematyczne


Polskie Towarzystwo Informatyczne

 
James Hardy Wilkinson i niezawodne obliczenia
 
                Prawie rok temu, 5 października 1986, zmarł w wieku 67 lat James Hardy Wilkinson, jeden z twórców współczesnej analizy numerycznej.
                JHW (tak niektórzy autorzy cytują Go w swych pracach) rozpoczął studia matematyczne w Trinity College w Cambridge na krótko przed wybuchem II wojny światowej. Studiował bardzo dobrze, skierowano go więc do pracy związanej z badaniami wspierającymi wysiłek wojenny Wielkiej Brytanii. Najpierw w Cambridge Mathematical Laboratory, a następnie w Fort Halstead zajmował się problemami balistyki oraz termodynamiki wybuchów. Zetknął się przy tej okazji z metodami numerycznymi. Po wojnie rozpoczął pracę w dziale matematycznym National Physical Laboratory w Teddington koło Londynu.
                James Hardy Wilkinson brał udział w projektowaniu komputera ACE, jednego z pierwszych na świecie. Dalsza praca jego dotyczyła zastosowań komputerów do rozwiązywania zadań naukowych. Zajmował się konstrukcją i analizą algorytmów numerycznych. Rozwinął m. in. specjalną metodykę analizy błędów zaokrągleń, występujących w obliczeniach numerycznych. Analiza ta pozwalała na wyjaśnienie przyczyn niepowodzeń niektórych algorytmów oraz na uzasadnienie przydatności innych. W ten sposób powstały podstawy konstrukcji godnych zaufania algorytmów numerycznych. Z bezpośrednim udziałem JHW lub pod ogromnym Jego wpływem powstały najlepsze współczesne pakiety i biblioteki programów numerycznych, takie jak Eispack, Linpack, NAG–Library.
                W początku lipca br. odbyła się w Teddington konferencja na temat “On reliable computation” dedykowana pamięci J. H. Wilkinsona. Jego przyjaciele, współpracownicy i uczniowie z wielu krajów przedstawili swoje poglądy na stan współczesnej wiedzy i umiejętności w zakresie efektywnych i niezawodnych obliczeń numerycznych. Warto podkreślić, że większość uczestników konferencji nie ograniczała się do sławienia zasług Wilkinsona, lecz starała się wychodzić ku przyszłości.
                Z licznych wątków podjętych w tych wystąpieniach wspomnę tutaj tylko jeden, bliżej wiążący się z problemami informatyki. Otóż okazuje się, że istnieją zasadnicze trudności dotyczące przenoszenia oprogramowania numerycznego na inne typy komputerów czy nawet na nowe wydania kompilatorów. Celowe w niektórych algorytmach bezpieczniki typu if x + y = x then… else… w szczególnych realizacjach bywają deformowane, co może powodować wadliwe działanie algorytmu. Również nie ujednolicona strona sprzętowa arytmometrów i rozmaite realizacje funkcji standardowych powodują istotnie odmienne przebiegi tego samego algorytmu w odmiennych komputerach. Wszystko to owocuje powstawaniem szczególnych specjalności zawodowych typu: “numeryk dla komputerów IBM, Fortran H” lub “numeryk dla komputerów DEC” itp.
                Rozsądną alternatywą byłoby wprowadzenie “standardu numerycznego”, dotyczącego zarówno sprzętu, jak i oprogramowania. Pojawiają się już pierwsze tego typu propozycje. Należy do nich np. projekt przedstawiony w następującym raporcie jednej z grup roboczych komitetu standardów (dla mikroprocesorów) towarzystwa IEEE (Computer Society): W. J. Cody et al.: A proposed radix– and word–length–independent standard for floating–point arithmetic. IEEE Micro 4, 4, Aug. 1984, s. 86–100.
                Są to ciągle jeszcze projekty poddane dyskusji. Nadal brak uzgodnionych postulatów dotyczących standardu funkcji elementarnych, ograniczenia ingerencji tzw. myślących kompilatorów itd., itp.
                Wszystko to wydaje się być istotne dla zwiększenia niezawodności obliczeń w standardowej arytmetyce zmiennopozycyjnej (przy zachowaniu ich dotychczasowej efektywności).
                Warto tu może także wspomnieć o istotnie odmiennej koncepcji zapewnienia niezawodności obliczeń numerycznych przez wprowadzenie (fragmentarycznie) arytmetyk dużej dokładności oraz arytmetyk przedziałowych. Por. np. U. Kulisch, W. L. Miranker (eds.): A new approach to scientific computation. Academic Press, New York 1983.
                Zwolennicy tej drogi (mającej m. in. uwolnić użytkownika od 99% trosk o zachowanie dokładności) nie byli wprawdzie reprezentowani na konferencji w Teddington, ale w niektórych wystąpieniach nawiązywano do faktu pojawienia się na rynku oprogramowania numerycznego pakietu IBM ACRITH, realizującego opisaną koncepcję. Por. High–accuracy arithmetic, subroutine library, General Information Manual, IBM Program Number 5664-185-1982.
                Dotychczasowe doświadczenia z tym pakietem wskazują, że — przynajmniej jeszcze dwa lata temu — wymagał on istotnych poprawek. Gwarantowaną dokładność wyników uzyskuje się w tego typu obliczeniach kosztem wielokroć większym niż korzystając tylko z arytmetyki standardowej. Por. np. W. Kahan, E. Le Blanc: Anomalies in the IBM ACRITH package. Proc. 7–th IEEE Symposium on Computer Arithmetic. Urbana, Ill., 1985, s. 322–331.
                Cele obu kierunków poszukiwań są oczywiście w znacznym stopniu zgodne: zwiększyć niezawodność obliczeń numerycznych, zwiększyć ich dostępność dla szerokiego kręgu użytkowników.
Andrzej Kiełbasiński

Warszawa

Archiwum PTI Ewa Łukasik ( elukasik@cs.put.poznan.pl) Grzegorz Przybył ( grzegorz.przybyl@wp.pl ) www.pti.org.pl Kontakt PTI ( pti@pti.org.pl )
Tutorial


Tutorial

Wyszukiwanie

Całość
tylko prodialog
tylko biuletyny
tylko konferencje
tylko multimedia
tylko sprawozdania
tylko uchwały
tylko zawody
tylko zjazdy
pozostałe treści

Rodzaj przeszukiwania
Słowa kluczowe
Pełen tekst

pelen zakres dat
ograniczony zakres
od:

do:




Kontakty

Instytut Informatyki

Polskie Towarzystwo Informatyczne

Nasz Skrzynka Pocztowa

+ - D A