Professional Documents
Culture Documents
Kubale
EA 251
lp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
idx 119318 119423 109886 119430 119373 119448 119510 119283 119482 119317 119415 119473 113284 119393 119263 119320 119334 119343 119419 119374 119269 119435 119476 119486
grp I-- 3 I-- 2 I-- 7 I-- 2 I-- 5 I-- 7 I-- 7 I-- 2 I-- 5 I-- 3 I-- 6 I-- 7 I-- 5 I-- 5 I-- 1 I-- 3 I-- 3 I-- 4 I-- 6 I-- 5 I-- 4 I-- 3 I-- 6 I-- 7
kol1 78 85 78 78 65 88 52 52 54 73 49 84 34 60 64 18 35 62 55 38 52 64 49 23
kol2 96 95 96 86 70 61 65 71 26 61 37 45 12 68 47 52 43 61 61 46 64 54 54 44
dod 31 19 10 4 20 2 4 16 2 1 13 2 1 10 2 2 3 9 1 4 2 12 1
cz1
cz2
suma 205 199 184 168 155 151 149 139 137 135 134 131 129 128 127 127 126 126 125 124 120 120 115 115
kol4
0 80 0 0 80 70 73 81 10 77
0 0 81 72 48 26 0 0 0 35
70
Okres przedkomputerowy
- rok 300 pne. algorytm Euklidesa NWP - rok 100 - rok 1900 - rok 1936 chiskie twierdzenie o resztach David Hilbert (23) Alan Turing
Okres komputerowy
- rok 1971 Steven Cook - rok 1979 Leonid Chaczijan PL - rok 2000 Clay Institute (7) - rok 2004 Manindra Agrawal i in. Powyszy rys historyczny uwypukla najwaniejsze osignicia teoretyczne a nie praktyczne.
Przez wieki nie byo zgodnoci wrd autorw rnych ksiek o algorytmach oraz badaczy algorytmw co do formalnej definicji algorytmu. Mimo to od czasw Euklidesa, nie martwiono si tym specjalnie, tylko tworzono opisy rozwizywania rnych problemw i dzisiaj nazywamy je algorytmami. Jak wspominaem, na przeomie XIX i XX wieku matematykw zainteresowao udzielenie odpowiedzi na do oglne pytanie: Co mona obliczy, jakie funkcje s obliczalne, dla jakich problemw istniej algorytmy, i oglniej czy wszystkie twierdzenia mona udowodni??
Formalizacj poj algorytmu i obliczalnoci zajo si w pierwszej poowie ubiegego stulecia wielu matematykw. Wprowadzono wiele rnych definicji oblicze, przy czym wikszo z nich jest rwnowana midzy sob w tym sensie, e definiuje t sam klas funkcji obliczalnych. Do najpopularniejszych naley formalizm wprowadzony przez A. Turinga, zwany dzisiaj maszyn Turinga. Obecnie maszyn Turinga przyjmuje si za precyzyjn definicj pojcia algorytmu. Zatem nie ma algorytmu dla takiego problemu, ktrego nie mona rozwiza za pomoc maszyny Turinga.
Problemy z dziedziny optymalizacji dyskretnej mona podzieli z punktu widzenia dugoci wyjcia, jak i z punktu widzenia zoonoci obliczeniowej. Zgodnie z pierwsz kategoryzacj wyrniamy: 1. Problemy decyzyjne - s to problemy, ktre wyraamy pytaniami oglnymi, zaczynajcymi si od sowa czy. Odpowiedzi na nie jest sowo tak lub nie. Innymi sowy, algorytm ma zdecydowa, czy dane wejciowe speniaj okrelon wasno. Przykadem jest problem stopu. 2. Problemy optymalizacyjne - w tym przypadku algorytm ma znale obiekt matematyczny speniajcy zadan wasno, np. najlepsze posunicie w danym stadium gry w szachy.
Eternity puzzle
Z drugiej strony, wszystkie problemy z dziedziny optymalizacji dyskretnej mona podzieli na pi klas. 1. Problemy niealgorytmiczne - problemy takie nie mog by rozwizane za pomoc algorytmw o skoczonym czasie dziaania. Przykadem jest problem stopu lub problem kafelkowania .
Kafelkowanie c.d.
REP TILES NISKIEGO RZDU poczone tworz wiksze kopie samych siebie.
2. Problemy przypuszczalnie niealgorytmiczne - dla problemw tych nie udao si dotychczas poda algorytmu skoczonego, ale brak te dowodu, e taki algorytm nie istnieje. Przykady: problem rwna diofantycznych (x2+y2=z2), problem "pomn przez 3 i dodaj 1", zwany te problemem liczb gradowych, lub problemem Collatza . Jeszcze innym przykadem takiego problemu jest synna hipoteza C. Goldbacha z roku 1742. Gosi ona, e kada liczba parzysta wiksza od 2 jest sum dwch liczb pierwszych.
x3 + y3 + z3 = 30
Czy ma rozwizanie?
x3 + y3 + z3 = 33
Czy ma rozwizanie?
Nie wiadomo
Problem Collatza
Poczynajc od pewnego naturalnego k, gdy k jest parzyste, podstawiamy k := k/2, w przeciwnym razie k := 3k + 1. Dziaania te kontynuujemy dopki k 1. Czy taki proces obliczeniowy zatrzymuje si dla kadej naturalnej wartoci k?? Mimo usilnych stara wielu matematykw zajmujcych si teori liczb nie znamy odpowiedzi na to pytanie. Procedura Collatza zatrzymuje si dla k < 258 tj. 2.8823 1017 (luty 2004), jednak dla oglnego przypadku problem nadal pozostaje nierozstrzygnity.
procedure Collatz; begin read(k); repeat if even(k) then k := k/2 else k := 3k + 1; until k = 1 end;
Zaczynajc od k = 6 mamy: 6, 3, 10, 5, 16, 8, 4, 2, 1 Zaczynajc od k = 11 mamy: 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1. Zaczynajc od k = 27 mamy: 27, 82, 41, 124, 62, 31, 94, 47, 142, 71, 214, 107, 322, 161, 484, 242, 121, 364, 182, 91, 274, 137, 412, 206, 103, 310, 155, 466, 233, 700, 350, 175, 526, 263, 790, 395, 1186, 593, 1780, 890, 445, 1336, 668, 334, 167, 502, 251, 754, 377, 1132, 566, 283, 850, 425, 1276, 638, 319, 958, 479, 1438, 719, 2158, 1079, 3238, 1619, 4858, 2429, 7288, 3644, 1822, 911, 2734, 1367, 4102, 2051, 6154, 3077, 9232, 4616, 2308, 1154, 577, 1732, 866, 433, 1300, 650, 325, 976, 488, 244, 122, 61, 184, 92, 46, 23, 70, 35, 106, 53, 160, 80, 40, 20, 10, 5, 16, 8, 4, 2, 1;
Liczba
Liczba jest niewymierna i przestpna. Aktualnie znamy z dokadnoci do 10 bilionw cyfr dziesitnych. Przypumy, e interesuje nas pojawienie si 100 kolejnych zer w rozwiniciu dziesitnym tej liczby. W 10 bilionach cyfr takiego cigu nie ma. Ale to nie znaczy, e nie ma go w ogle. Obecnie nie znamy adnej procedury sucej temu celowi z wyjtkiem generowania coraz duszego rozwinicia oraz zliczania zer. A nawet, gdyby okazao si, e taki cig istnieje, to moglibymy zamieni nasz problem na 1000 kolejnych dziewitek, na przykad. Na marginesie, na pozycji 762 jest podwjny szatan, czyli 6 dziewitek. Miejsce to jest nazywane punktem Feynmana.
Rozwinicie liczby
3. Problemy wykadnicze - problemy te nie maj algorytmw dziaajcych w czasie ograniczonym przez wielomian zmiennej rozmiaru problemu. Przykadem takiego problemu jest zadanie wygenerowania wszystkich ustawie cigu n elementw. Innym przykadem tego typu jest synny problem wie w Hanoi, ktrego zoono siga 2n 1.
Zadanie polega na przeniesieniu n krkw z pierwszej paeczki na trzeci przy ograniczeniu, e w jednym kroku przenosimy tylko jeden krek i nie wolno ka krka o wikszej rednicy na krek o mniejszej rednicy. Druga paeczka spenia rol pomocnicz.
4. Problemy przypuszczalnie wykadnicze - dla problemw tych nie udao si dotychczas poda algorytmu wielomianowego, ale brak te dowodu, e taki algorytm nie istnieje. Przykadem takiego problemu jest faktoryzacja, czyli znalezienie rozkadu danej liczby na czynniki pierwsze. Najwiksz znan (co nie oznacza, e kolejn) liczb pierwsz jest 48. liczba typu Mersennea, mianowicie: 257885161 1
Liczba Cyfry Rok Odkrywca Metoda 217 1 6 1588 CATALDI Trial division 219 1 6 1588 CATALDI Trial division 231 1 10 1772 EULER Trial division++ (259 1)/179951 13 1867 LANDRY Trial division++ 2127 1 39 1876 LUCAS Lucas sequences (2148 + 1)/17 44 1951 FERRIER Proths theorem Tabela 1.1 Rekordy uzyskiwane przed er komputerow
Lp. 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Liczba 2521 1 2607 1 21279 1 22203 1 22281 1 23217 1 24253 1 24423 1 29689 1 29941 1 211213 1 219937 1 221701 1 223209 1 244497 1 286243 1 2110503 1 2132049 1
Rok 1952 1952 1952 1952 1952 1957 1961 1961 1963 1963 1963 1971 1978 1979 1979 1982 1982 1983
Udowadniajcy Robinson (Jan 30) Robinson (Jan 30) Robinson (June 25) Robinson (Oct 7) Robinson (Oct 9) Riesel Hurwitz Hurwitz Gillies Gillies Gillies Tuckerman Noll & Nickel Noll Nelson & Slowinski Slowinski Colquitt & Welsh Slowinski
Podstawy analizy algorytmw Lp. 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 Liczba 2216091 1 2756839 1 2859433 1 21257787 1 21398269 1 22976221 1 23021377 1 26972593 1 213466917 1 220996011 1 224036583 1 225964951 1 230402457 1 232582657 1 237156667 1 242643801 1 243112609 1 257885161 1 Rok 1985 1992 1994 1996 1996 1997 1998 1999 2001 2003 2004 2005 2005 2006 2008 2009 2008 2013 Odkrywca Slowinski Slowinski & Gage et al. (notes) Slowinski & Gage Slowinski & Gage Armengaud, Woltman, et al. [GIMPS] Spence, Woltman, et al. [GIMPS] Clarkson, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Hajratwala, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Cameron, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Shafer, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Findley, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Nowak, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Cooper, Boone, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Cooper, Boone, Woltman, Kurowski, et al. [GIMPS, PrimeNet] E_Smith, Woltman, Kurowski, et al. [GIMPS, PrimeNet] E_Smith, Woltman, Kurowski, et al. [GIMPS, PrimeNet] E_Smith, Woltman, Kurowski, et al. [GIMPS, PrimeNet] Cooper, Boone, Woltman, Kurowski, et al. [GIMPS, PrimeNet]
Innym przykadem problemu przypuszczalnie wykadniczego jest znany problem komiwojaera. W problemie tym dane jest n miast i odlego midzy kad ich par. Zadanie polega na znalezieniu najkrtszej trasy zamknitej przechodzcej jednokrotnie przez kade z miast.
W roku 1998 uczeni z Rice University (USA) opracowali program, ktry znalaz optymaln tras dla wszystkich 13 509 miast amerykaskich o liczbie mieszkacw powyej p tysica. Obliczenia na sieci komputerw duej mocy trway okoo 3 miesice. Obecnie najwiksz optymalnie rozwizan instancj jest przypadek 25 000 miast i wsi w Szwecji.
5. Problemy wielomianowe - problemy te maj algorytmy rozwizujce je w czasie ograniczonym wielomianem zmiennej rozmiaru problemu. Najlepszym przykadem takiego problemu jest zagadnienie sortowania. Cig n liczb mona uporzdkowa rosnco, na przykad metod przestawiania ssiednich par. Wwczas maksymalna liczba porwna nie przekracza n2/2. Ale istniej jeszcze lepsze, bardziej wydajne algorytmy sortowania. Wbrew pozorom nie naley do nich metoda Quicksort, ktra w najgorszym przypadku wymaga rwnie czasu kwadratowego, cho w przypadku rednim jej liczba operacji jest proporcjonalna do nlogn.
Notices
of the American Mathematical Society
Sortowanie
Sortowanie szybkie
KONIEC