• Nie Znaleziono Wyników

Znajdowanie najkrotszych drog najnizszych drzew

N/A
N/A
Protected

Academic year: 2021

Share "Znajdowanie najkrotszych drog najnizszych drzew"

Copied!
26
0
0

Pełen tekst

(1)
(2)

ZNAJDOWANIE NAJKRÓTSZYCH DRÓG oraz

NAJNIŻSZYCH i NAJKRÓTSZYCH DRZEW

WSTĘP DO OBLICZEŃ NA GRAFACH

Maciej M. Sysło

Uniwersytet Wrocławski Uniwersytet UMK w Toruniu

syslo@ii.uni.wroc.pl

2

(3)

Algorytm, algorytmika

Algorytm

– opis rozwiązania krok po kroku postawionego

problemu lub sposobu osiągnięcia jakiegoś celu

Pierwszy algorytm –

algorytm Euklidesa

300 p.n.e

algorytm

od

Muhammad

ibn Musa al-Chorezmi

IX w.

Algorytmika

– dziedzina zajmująca się algorytmami i ich

własnościami

(4)

Algorytmy a informatyka

Informatyka –

jedna z definicji:

dziedzina wiedzy i działalności

zajmująca się algorytmami

Donald E. Knuth:

Mówi się często, że człowiek dotąd nie zrozumie czegoś,

zanim nie nauczy tego – kogoś innego.

W rzeczywistości,

człowiek nie zrozumie czegoś (algorytmu) naprawdę,

zanim nie zdoła nauczyć tego – komputera.

Ralf Gomory (IBM):

Najlepszym sposobem przyspieszania komputerów

jest obarczanie ich mniejszą liczbą działań (szybszymi algorytmami)

(5)

Grafy i algorytmy

Plan:

• Przykłady pojawiania się grafów

– siatki wielościanów

– mosty królewieckie – figury jednobieżne – malowanie map

– drzewa w informatyce – sieci dróg

– cykle Hamilton

• Przykłady trudnych problemów

– szukanie trasy objazdu

• Problemy, które mają efektywne algorytmy

– szukanie najniższych drzew – krótkich kodów – komputerowe reprezentacje grafów

– problemy najkrótszych dróg – problem najkrótszego drzewa

(6)

Grafy – przykłady występowania – wielościany

informatyka +

6

Leonhard Euler (1707-1783) – Ojciec Teorii Grafów:

Podał zależność między liczbą wierzchołków. krawędzi i ścian w wielościanach Spłaszczony sześcian Ściany Krawędzie Wierzchołki Sześcian Wzór Eulera:

Liczba wierzchołków + liczba ścian = 2 + liczba krawędzi

(7)

Grafy – przykłady występowania – grafy Eulera, 1

informatyka +

7

Leonhard Euler (1707-1783) – Ojciec Teorii Grafów:

1736: Problem mostów Królewieckich

Czy istnieje droga, która zawiera każdy most (każdą krawędź) dokładnie raz? Do każdego wierzchołka, z wyjątkiem dwóch, tyle samo razy musimy wyjść, ile razy wchodzimy

(8)

Grafy – przykłady występowania – grafy Eulera, 2

informatyka +

8

Leonhard Euler (1707-1783) – Ojciec Teorii Grafów:

1736: Problem mostów Królewieckich

Figury unikursalne, jednobieżne

(9)

Kolorowanie map

informatyka +

9

Problem czterech kolorów (1852):

Czy każdą mapę można pomalować 4 kolorami?

1976: K. Appel. W. Haken i J. Koch (programista)

Pierwszy dowód – z wykorzystaniem komputera

(10)

Drzewa w informatyce

informatyka +

10

Drzewa – grafy spójne bez cykli

Drzewa obliczeń

Drzewo algorytmu

(6 + 3)*(5 – 3*4) (x2+ y2)/(a – b)

Zastosowanie: ONP

Odwrotna Notacja Polska Jan Łukasiewicz (1920)

(11)

Drzewa w algorytmice – wyłanianie zwycięzcy

informatyka +

11

Bartek Romek Bolek Witek Tome k

Zenek Tolek Felek

Bartek Witek Tome

k Tolek

Bartek Tome

k Tome

k

Porównania – mecze Ośmiu zawodników: 7 meczy

(12)

A jak znaleźć drugiego najlepszego zawodnika w

turnieju?

informatyka +

12

Bartek Romek Bolek Witek Tome k

Zenek Tolek Felek

Bartek Witek Tome

k Tolek

Bartek Tome

k Tome

k

Czy jest nim Bartek? Bo przegrał z

Tomkiem?

Ale Bartek nie grał z drugą połową!

???

???

Tylko dwa

(13)

Sieci dróg samochodowych, kolejowych, lotniczych …

(14)

Grafy Hamiltona

informatyka +

14

William R. Hamilton (1805-1865):

1859: cykl Hamiltona – przechodzi przez każdy wierzchołek dokładnie raz

Dwunastościan foremny

Siatka (graf)

(15)

Zastosowanie – najkrótsza trasa premiera, 1

Problem: Znajdź najkrótszą trasę dla Premiera przez wszystkie

miasta wojewódzkie.

informatyka +

15

Rozwiązanie: Premier zaczyna w Stolicy a inne miasta może

odwiedzać w dowolnej kolejności. Tych możliwości jest:

15*14*13*12*11*…*2*1 = 15! (

15 silnia

)

W 1990 roku było: 48*47*46*…*2*1 = 48! (

48 silnia

)

(16)

Zastosowanie – najkrótsza trasa premiera, 2

informatyka +

16

Na superkomputerze o mocy 1 PFlops – ile trwa obliczanie n!

15! = 1307674368000/10

15

sek. = ok.

0.01 sek.

48! = 1,2413915592536072670862289047373*10

61

/10

15

=

3*10

38

lat

25! = 15511210043330985984000000/10

15

sek. = 15511210043 sek. =

= 179528 dni =

491 lat

Wartości funkcji n!

Rosną BARDZO SZYBKO

Prezydent Stanów

Zjednoczonych ma problem

ze znalezieniem najkrótszej

trasy objazdu Stanów.

(17)

Zastosowanie – najkrótsza trasa premiera, 3

informatyka +

17

Algorytmy przybliżone szukania rozwiązań:

1.Metoda zachłanna – najbliższy sąsiad – mogą być bardzo złe

2.Meta-heurystyki:

algorytmy genetyczne – krzyżowanie i mutowanie rozwiązań

algorytmy mrówkowe – modelowanie feromonów

Trudno sprawdzić, jak

dobre jest to rozwiązanie w stosunku do najlepszego, bo go nie znamy.

(18)

01110100111101100111010

Kody: ASCII

a:

01100001

b:

01100010

d:

01101100

k:

01101011

r:

01110010

Huffman

0

1110

110

1111

10

88 znaków 24 znaki 18

Krótkie kody – kompresja

(19)

Algorytm Huffmana:

Powtarzaj, aż zostanie jedna liczba:

Wybierz dwie najmniejsze częstości i dodaj ich sumę do ciągu

Litery i ich częstości

M.M. Sysło 19

Krótkie kody – kompresja

Kody

Krótsze dla często występujących liter

(20)

M.M. Sysło 20

(21)

M.M. Sysło 21

(22)

M.M. Sysło 22

(23)

Najlepszym sposobem przyspieszania komputerów

jest obarczanie ich mniejszą liczbą działań

(

szybszymi algorytmami

)

[Ralf Gomory, IBM]

23

(24)

Pokrewne zajęcia w Projekcie Informatyka +

Wykład+Warsztaty (Wszechnica Poranna):

• Wprowadzenie do algorytmiki i programowania – wyszukiwanie i porządkowanie informacji

• Proste rachunki wykonywane za pomocą komputera.

• Techniki algorytmiczne – przybliżone (heurystyczne) i dokładne.

Wykłady (Wszechnica Popołudniowa):

• Czy wszystko można policzyć na komputerze?

• Porządek wśród informacji kluczem do szybkiego wyszukiwania. • Dlaczego możemy się czuć bezpieczni w sieci, czyli o szyfrowaniu

informacji.

• Znajdowanie najkrótszych dróg, najniższych drzew, najlepszych małżeństw

(25)

Pokrewne zajęcia w Projekcie Informatyka +

Kursy (24 godz.) – Wszechnica na Kołach:

• Algorytmy poszukiwania i porządkowania. Elementy języka programowania

• Różnorodne algorytmy obliczeń i ich komputerowe realizacje • Grafy, algorytmy grafowe i ich komputerowe realizacje

Kursy (24 godz.) – Kuźnia Informatycznych Talentów – KIT dla Orłów:

• Przegląd podstawowych algorytmów • Struktury danych i ich wykorzystanie • Zaawansowane algorytmy

Tendencje – Wykłady

• Algorytmy w Internecie, K. Diks

• Czy P = NP, czyli jak wygrać milion dolarów w Sudoku, J. Grytczuk • Między przeszłością a przyszłość informatyki, M.M Sysło

(26)

Obraz

Mapa województw Graf województw Pomalowany graf

Cytaty

Powiązane dokumenty

W pierwszym przypadku segment na podstawie czegoś kwalifikowałby się jako for- malny wykładnik jedynie części znaczenia predykatu (fragment innej, samodzielnej jednostki), a w

Podstawą procesu edukacyjnego jest komunikacja w relacji nauczyciel – – student i to ona będzie przedmiotem dalszych rozważań, uporządkowa- nych za pomocą metafory

„Must”, „mustn’t” oraz „can” to czasowniki modelne: maja taką samą formę dla wszystkich osób, nie przyjmują końcówek, a po nich czasownik jest w formie

Zakażenia o tej etologii pojawiają się jednak na oddziałach ginekologicznych i położniczych, i powinny podlegać nad- zorowi w ramach kontroli zakażeń ze względu

„Córciu, nie mówi się waser tylko woda...” Dziecko przyzwyczaiło się do nowej matki.. Dostało nowe

Companies [need to] collaborate with academia and government to build up a large, sharable and reusable database of keen test panelists (by offering incentives whenever

The methodological approach of the analysis in terms of theory is based on general semiotic theory (Eco, Lotman), cultural semiotics (Barthes), literary theory and literary

Następnie przejdę do rzeczy natury, a wyłożywszy Wam przyczynę wszystkich jej zmian, różnorodność jej jakości oraz czym dusza roślin i zwierząt różni się od naszej,