Skirtumų skaičiavimo mašina

Skirtumų skaičiavimo mašinaČ. Babidžo suprojektuota sistema, skirta polinomų reikšmių lentelių sudarymui automatizuoti. Ji rėmėsi baigtinių skirtumų metodu. Ją galima laikyti pirmuoju kompiuterio pagal dabartine sampratą prototipu. Ji nuo kitų to meto skaičiuotuvų skyrėsi tuo, kad savo mechanizme turėjo užprogramuotas matematikos taisykles.

Prielaidos redaguoti

XIX a. pradžioje matematines lenteles (logaritmų ir trigonometrinių funkcijų) sudarinėjo ištisos matematikų komandos naudodamos primityvias priemones. Kadangi tie žmonės atlikdavo skaičiavimus, juos vadino „kompiuteriais“ (angl. computer). Šiuo terminu įvardijama pareigybė vis dar egzistavo ir XX a. penktajame dešimtmetyje.

Problema buvo ne tik rutininio darbo apimtis, bet ir daugybė klaidų lentelėse. Tad buvo stengiamasi kažkiek automatizuoti tą veiklą. Šikardo, B. Paskalio ir G. Leibnico sukurti prietaisai nelabai tiko praktiniam panaudojimui.

Sukūrimo istorija redaguoti

 
Kopija Londono mokslo muziejuje

Skirtumų mašinos paskirtis buvo apskaičiuoti ir sudaryti polinominių funkcijų reikšmių lenteles, nes jomis galima aproksimuoti logaritmus ir trigonometrines funkcijas. Pirminė Skirtumų mašinos idėja 1786 m. kilo J. H. Mueller'iui. Tačiau ji buvo užmiršta.

Ją atgaivino Č. Babidžas Karališkajai astronomijos draugijai nusiuntęs straipsnį „Pastaba apie mechanizacijos pritaikymą labai didelių matematinių lentelių skaičiavimams.“ Vyriausybė skyrė lėšų šiam projektui. Č. Babidžas mašinai konstruoti pasamdė J. Klemensą. 1832 m. viena mašinos dalis buvo baigta. Ją sudarė apie 2000 detalių.

Tačiau 1833 m. darbai nutrūko Klemensui reikalaujant kompensuoti persikėlimo išlaidas. 1834 m. Č. Babidžui kilo Analitinės mašinos idėja. Vėliau jis vėl grįžo prie skirtumų mašinos ir pagerino jos konstrukciją (18471849 m.). Įkvėptas Č. Babidžo idėjų, Georgas Scheutzas sukonstravo kelias skirtumų mašinas, kurių vieną 1859 m. pardavė Britanijos vyriausybei. Vėliau jų konstrukciją patobulino Martinas Wibergas, tačiau naudojo tik logaritmų lentelėms sudarinėti. O 1876 m. Filadelfijos parodoje inžinierius George’as Bernardas Grantas demonstravo savo konstrukcijos skirtumų mašiną. Ji buvo 8 pėdų pločio, 5 pėdų aukščio ir turėjo 15 tūkst. judančių detalių.

Veikimo principas redaguoti

Skirtumų mašinos veikimo principas rėmėsi Niutono pasiūlytu baigtinių skirtumų metodu. Paimkime polinomą:

 

Mums reikia paskaičiuoti polinomo reikšmes: p(0,1), p(0,2), p(0,3), p(0,4). Sudarykime lentelę, kurios pirmas stulpelis yra polinomo reikšmės, antras stulpelis – tos ir prieš ją esančios eilutės polinomų reikšmių skirtumai, o trečias – tų skirtumų skirtumas.

x p(x) = 2x² − 3x + 2 diff1(x) = (p(x+0.1) - p(x)) diff2(x) = (diff1(x+0.1) - diff1(x))
0.00 2.00 -0.28 0.04
0.10 1.72 -0.24 0.04
0.20 1.48 -0.20 0.04
0.30 1.28 -0.16
0.40 1.12

Pastebime, kad trečio stulpelio reikšmė yra pastovi. Tai yra dėsningumas, – bet kuriam n laipsnio polinomui taip sudarytai lentelei n + 1 stulpelio reikšmė bus konstanta. Tai ir buvo panaudota mašinai konstruoti. Pabandykime paskaičiuoti naują polinomo reikšmę, p(0,5) imdami lentelės reikšmes iš dešinės į kairę. Iš trečiojo stulpelio paimame 0,04. Tada antrajame stulpelyje atimame 0,16–0,04 = 0,12. Tad polinomo reikšmė p(0,5) bus 1,12–0,12 = 1,00

Kaip matome, polinomo reikšmėms skaičiuoti nėra naudojama daugybos, o tik atimties operacija. Mašinai pakanka įsiminti tik n skaičių n - ojo laipsnio polinomo reikšmėms skaičiuoti.

Atkūrimas redaguoti

19891991 m. Londono mokslo muziejuje, 200-ųjų Č. Babidžo gimimo metinių progai, skirtumų mašina buvo sukonstruota pagal pradinius patobulintos versijos Č. Babidžo brėžinius. Juose rasta keletas netikslumų, kuriuos reikėjo pataisyti. Ją sudaro apie 4000 detalių iš plieno, geležies ir bronzos. Ji sveria 2,6 tonos, yra 10 pėdų pločio ir 6,5 pėdų aukščio. Ji gali skaičiuoti 7-ojo laipsnio polinomus, kurių reikšmių skaičiavimus atlieka 31 skaitmens tikslumu. Tačiau skaičiavimams atlikti rankeną reikia pasukti šimtus arba net tūkstančius kartų. 2000 m. buvo sukonstruotas ir Č. Babidžo sumanytas spausdintuvas, skirtas skirtumų mašinos skaičiavimo rezultatams spausdinti.

Nuorodos redaguoti