Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AlgoMOOC 07.04. Eulero, Hamilton e il commesso viaggiatore

2,589 views

Published on

http://codemooc.org/algomooc/

Published in: Education
  • Be the first to comment

AlgoMOOC 07.04. Eulero, Hamilton e il commesso viaggiatore

  1. 1. Eulero, Hamilton e il commesso viaggiatore alessandro bogliolo http://codemooc.org/algoritmi/ Algo 07.04
  2. 2. Algo 07.04 alessandro.bogliolo@uniurb.it IpontidiKönigsberg
  3. 3. Algo 07.04 alessandro.bogliolo@uniurb.it Eulero1736 A C B D
  4. 4. Algo 07.04 alessandro.bogliolo@uniurb.it Eulero1736 A C B D Un qualsiasi grafo è percorribile una sola volta se e solo se • o ha tutti i nodi di grado pari (in tal caso è possibile percorrerlo ciclicamente), • o due e solo due di essi sono di grado dispari(in tal caso è possibile solo percorrerlo dall’uno all’altro dei due nodi dispari).
  5. 5. Algo 07.04 alessandro.bogliolo@uniurb.it Laleggenda A C B D
  6. 6. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 Ilcamminoeuleriano 31 2 0 4 0-1-2-3-1-4-3-0-4
  7. 7. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 WilliamRowanHamilton 31 2 0 4
  8. 8. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 Ilcamminohamiltoniano 31 2 0 4 0-1-2-3-4 31 2 0 4
  9. 9. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 Cambiamolanumerazione 21 3 0 4
  10. 10. Algo 07.04 alessandro.bogliolo@uniurb.it Strutturadelproblema 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  11. 11. Algo 07.04 alessandro.bogliolo@uniurb.it Soluzioniesistenti 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  12. 12. Algo 07.04 alessandro.bogliolo@uniurb.it Potature 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  13. 13. Algo 07.04 alessandro.bogliolo@uniurb.it Alberopotato 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 0 1 3 4 0 1 2 1 2 0 1 2 0 2 0 1 3 4 1 0 3 2 40 3 2 40 1 2 3 0 1 3 4 20 0 0 0 01 1 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 322 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 4 42
  14. 14. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  15. 15. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  16. 16. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  17. 17. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  18. 18. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  19. 19. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  20. 20. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  21. 21. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  22. 22. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  23. 23. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  24. 24. Algo 07.04 alessandro.bogliolo@uniurb.it Ricercaesaustiva 21 3 0 4 21 3 0 4 0 1 2 4 0 3 2 4 0 1 3 4 1 2 4 1 2 0 1 3 4 0 1 2 1 2 4 1 2 0 1 2 0 1 2 4 2 0 1 3 4 1 0 3 2 40 3 2 4 1 2 4 0 0 3 2 4 1 1 2 3 0 1 3 4 2 0 1 2 4 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 0 3 2 4 1 1 2 3 1 2 3 1 2 3 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 3 4 2 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 2 4 0 1 3 4 2
  25. 25. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 Cambiamolanumerazione 21 4 0 3 Cambiando la numerazione non cambia la struttura dello spazio di ricerca, ma cambiano l’ordine dei tentativi e l’efficacia delle potature
  26. 26. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 Ilcommessoviaggiatore 21 4 0 3 Teniamo conto della lunghezza degli archi e cerchiamo il cammino più breve per visitare tutti i nodi una sola volta 1 1 1 1 1 1 radq(2) radq(2) Non basta più trovare una soluzione, occorre trovare quella ottima!
  27. 27. Algo 07.04 alessandro.bogliolo@uniurb.it 31 2 0 4 Complessità 21 4 0 3 NP – Non Polinomiale 1 1 1 1 1 1 radq(2) radq(2) Forza bruta Algoritmi euristici polinomiali

×