Computer science is more than just writing code. So we will take a brief look on some theoretical concepts and problems which scientists study for decades (and maybe never will solve).
1. a taste of computer science
@DonSchado
cologne.rb | 20.11.2013
2. disclaimer
This presentation contains theoretical stuff from about 4
semesters and knowledge of different basic CS courses.
Don‘t feel stupid if you don‘t understand anything.
Nonetheless some details are simplified in interest of the
audience.
Most of the (ugly) slides are in german, because I‘m
reusing them.
4. No! CS means way more than just coding,
so let's kick things off with something simple and have a look on graph theory.
(Because many problems of computer science are either graph-theoretical problems or can be transferred to a graph.)
8. Euler 1736: Gibt es einen Rundweg durch Königsberg, der jede der 7 Brücken genau einmal überquert?
9.
10.
11. Eulerweg, Eulerkreis
jede Kante nur ein mal
Knoten mehrmals
Es existiert ein Eulerweg, wenn die Zahl der Knoten mit ungeradem Grad 0 oder 2 ist
12. Eulerweg, Eulerkreis
jede Kante nur ein mal
Knoten mehrmals
Es existiert ein Eulerweg, wenn die Zahl der Knoten mit ungeradem Grad 0 oder 2 ist
13.
14. Sir William Rowan Hamilton, who was Astronomer Royal of Ireland, invented the puzzle in
1857
15. TSP = Traveling Salesperson Problem
Gesucht:
Die kürzeste Route durch alle
Städte, wobei jede Stadt nur
einmal besucht werden darf
(kürzester Hamiltonkreis)
1,4 Oktilliarden
16. TSP = Traveling Salesperson Problem
Gesucht:
Die kürzeste Route durch alle
Städte, wobei jede Stadt nur
einmal besucht werden darf
(kürzester Hamiltonkreis)
1,4 Oktilliarden
Bei z.B. 42 Städten gäbe es 42!
mögliche Routen. (worst-case)
17. TSP = Traveling Salesperson Problem
Gesucht:
Die kürzeste Route durch alle
Städte, wobei jede Stadt nur
einmal besucht werden darf
(kürzester Hamiltonkreis)
1405006117752879898543142606244511569936384000000000
1,4 Oktilliarden
Bei z.B. 42 Städten gäbe es 42!
mögliche Routen. (worst-case)
18. P vs. NP Problem
Willkommen in der Komplexitätstheorie
ungelöstes Problem der Mathematik und theoretischen Informatik
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
19. P vs. NP Problem
Willkommen in der Komplexitätstheorie
...
R
ungelöstes Problem der Mathematik und theoretischen Informatik
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
Exp
$
= computational difficulty
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
20. P vs. NP Problem
Willkommen in der Komplexitätstheorie
...
R
ungelöstes Problem der Mathematik und theoretischen Informatik
Exp
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
$
P
in polynomiellem Zeitaufwand lösbare Probleme
= computational difficulty
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
21. P vs. NP Problem
Willkommen in der Komplexitätstheorie
...
R
ungelöstes Problem der Mathematik und theoretischen Informatik
Exp
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
NP
P
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
$
= computational difficulty
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
22. ...
P vs. NP Problem
R
Willkommen in der Komplexitätstheorie
ungelöstes Problem der Mathematik und theoretischen Informatik
Exp
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
NP
P
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
$
= computational difficulty
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
23. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
P
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
24. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
P
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind.
Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
25. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
P
Antwort (ja|nein)
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind.
Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
26. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
P
Antwort (ja|nein)
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind.
Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
die benötigte Rechenzeit (m)
nicht stärker als mit einer Polynomfunktion wächst.
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
27. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
P
Antwort (ja|nein)
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
in polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind.
Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
die benötigte Rechenzeit (m)
nicht stärker als mit einer Polynomfunktion wächst.
Alan Turing † 7. Juni 1954
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
28. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
P
Antwort (ja|nein)
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die mit nicht-deterministischen Turingmaschinen
in Polynomialzeit lösbar sind.
in polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind.
Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
die benötigte Rechenzeit (m)
nicht stärker als mit einer Polynomfunktion wächst.
Alan Turing † 7. Juni 1954
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.
29. ...
R
P vs. NP Problem
Willkommen in der Komplexitätstheorie
* Halteproblem !€ R
in endlicher Zeit
ungelöstes Problem der Mathematik und theoretischen Informatik
NP-schwer
P = NP würde unsere Welt verändern
P != NP schwer/nicht zu beweisen
NP
magisches Orakel,
immer die richtige Lösung
(lucky-algorithm)
Antwort (ja|nein)
P
Exp
exponenzieller Zeitaufwand
TSP ist NP-vollständig!
schwerer als alle Probleme aus NP
in nichtdeterministisch polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die mit nicht-deterministischen Turingmaschinen
in Polynomialzeit lösbar sind.
(rein theoretisches Konstrukt)
in polynomiellem Zeitaufwand lösbare Probleme
Entscheidungsprobleme die in Polynomialzeit für deterministische Turingmaschinen lösbar sind.
Diese Problemklasse wird allgemein als die Klasse der „praktisch lösbaren“ Probleme betrachtet.
die benötigte Rechenzeit (m)
nicht stärker als mit einer Polynomfunktion wächst.
Alan Turing † 7. Juni 1954
$
= computational difficulty
1 der 7 Millennium-Probleme
welche im Jahr 2000 vom
Clay Mathematics Institute
mit einem Preisgeld
von einer Million
US-Dollar ausgelobt wurden.