Teoria de grafs de Leonhard Euler
La teoria de grafs com es coneix avui en dia no va aparèixer fins al segle XX quan Dénes Kőnig va escriure el primer llibre que en parlava l'any 1936. Euler no parlava de grafs, ell parlava de problemes de geometria de posició. Ell va impulsar l'estudi dels grafs però no els va inventar. El precursor de la teoria de grafs fou Leonhard Euler, que la va iniciar tot intentant resoldre el problema dels set ponts de Königsberg i el problema del cavall.
Problema dels ponts de Königsberg
[modifica]El problema dels ponts de Königsberg va sorgir d'una pregunta popular inofensiva. Königsberg, l'actual Kaliningrad, és una ciutat russa per la qual passa el riu Pregolya. Enmig del riu, dues grans illes estaven connectades entre elles i a les voreres mitjançant una estructura de set ponts en total.
Els habitants de la ciutat es plantejaven si era possible recórrer els set ponts de manera que només es passés per cadascun d'ells un sol cop.
Euler va resoldre aquest problema donant la primera demostració l'any 1736. Ell no va mencionar en cap moment les paraules graf, vèrtex, aresta o grau.
El primer que va fer Euler en veure aquest problema va ser pensar que realment el que deia Leibniz en el seu Geometriam situs era cert. És a dir, que existia una branca de la geometria en la qual hi havia unes propietats de posició però no propietats de distàncies. Euler no va trobar això llegint Leibniz sinó parlant amb Johann Bernoulli. Ell abans de començar va dir que semblava un problema geomètric però que no depenia de la mesura de distàncies.
A continuació Euler va descriure el problema de la següent manera.Com podem veure a la Fig. 1. Va denotar els ponts com a; a, b, c, d, e, f i g i les àrees de terra com A, B, C i D. Es va formular la pregunta; com algú pot organitzar una ruta passant una vegada per cada pont? Sense tenir en compte si acabava al mateix punt que començava. Ell va dir que primer buscaria tots els resultats i després buscaria la solució particular de començar i acabar al mateix punt.
Va posar exemples de la notació que utilitzaria per representar els recorreguts. Per exemple AB és el pas de l'àrea de terra A a la B utilitzant qualsevol dels ponts. No obstant això, si volia especificar el pont pel qual passava l'escrivia així AbB, Recorregut de A a B passant pel pont b.
Aleshores va plantejar que un recorregut seria per exemple ABCD, començant en A, passant per B i C, per acabar en D. Ell va veure que no era una solució del problema però va deduir que la solució del problema necessitaria vuit lletres, ja que hi ha set ponts. Per tant, la solució del problema romania en trobar un recorregut de vuit lletres.
També va veure que hi havia d'haver certes restriccions en el recorregut, ja que de l'àrea de terra A a l'àrea de terra C hi havia dos ponts, per tant A i C havien de sortir correlatives dues vegades. Euler va preguntar-se si això era possible i va afirmar que si no era possible trobar un recorregut amb aquestes característiques, aleshores era impossible trobar una solució al problema perquè aquest no en tenia.
Posteriorment, va buscar un problema més senzill per trobar regles que confirmessin o no que existia aquesta seqüència de lletres. A la Fig. 2 podem veure com va plantejar un problema amb els ponts a, b, c, d, etc. amb dues àrees de terra A i B.
Euler va veure que si hi havia un sol pont, llavors la lletra A apareixia només una vegada sense que comencés i acabés en A, si hi havia tres ponts, llavors la lletra A apareixia dues vegades, si hi havia cinc ponts, la lletra A apareixia tres vegades. Per tant, en general, si hi ha un nombre imparell de ponts, llavors, el nombre de vegades que apareix la lletra A a la seqüència és la meitat més u del nombre de ponts.
Aplicant això al cas dels ponts de Königsberg, la lletra A hauria d'aparèixer tres vegades perquè hi ha cinc ponts fins a l'àrea A. Llavors les lletres B, C i D haurien d'aparèixer dues vegades cada una perquè hi ha tres ponts fins a cada una de les àrees. Això vol dir que el nombre de lletres de la seqüència per obtenir un resultat, si existeix, és la suma de les vegades que haurien d'aparèixer les lletres. És a dir, 3+2+2+2=9. Però només hi ha set ponts, llavors, una seqüència de lletres per la que només es passa una vegada per cada pont hauria de ser de 8 lletres. Per tant no existeix aquesta solució.
Posteriorment, Euler intenta generalitzar aquest resultat per a qualsevol problema amb diferents nombres d'àrees i qualsevol nombre de ponts sigui parell o imparell. Ho veiem tot seguit.
Resolució als problemes tipus anterior
[modifica]Fins ara Euler només havia trobat solucions per a un nombre imparell de ponts. Euler va notar que si treballava amb un nombre parell de ponts les vegades que apareixia, A una àrea de terra, depenia de si el recorregut començava o no en A.
Si el recorregut començava en A i hi havia dos ponts, aleshores, A apareixia dues vegades. Però si el recorregut no començava en A i hi havia dos ponts, aleshores, A apareixia només una vegada. Va fer les comprovacions per quatre i cinc ponts obtenint resultats semblants. Generalitzant aquests casos va trobar finalment que amb un nombre parell de ponts si el recorregut començava en A, obtenia exactament que A apareixia la meitat del nombre de ponts a la seqüència. En canvi si el recorregut no començava en A, obtenia que A apareixia la meitat del nombre de ponts més u a la seqüència.
Euler va prendre un problema on apareixien aquests dos resultats a la vegada, amb nombres de ponts parells i nombres de ponts imparells, per tal de descriure un algoritme per determinar si la solució anterior existia o no. És a dir, buscava un algoritme per veure si es podia passar només una vegada per cada pont.
Com podem veure a la graella següent va fer una taula amb les àrees de terra i el nombre de ponts que sortia de cada una d'elles. Va afegir una columna amb el mínim nombre de vegades que aquella àrea de terra apareixia a la solució. Per exemple, aquest seria l'algoritme del problema dels ponts de Königsberg.
Àrees | Ponts | Mínim |
---|---|---|
A | 5 | 3 |
B | 3 | 2 |
C | 3 | 2 |
D | 3 | 2 |
Posava un asterisc a la lletra que tenia un nombre parell de ponts però en aquest exemple no n'hi ha cap. Va sumar els nombres de la tercera columna i es pot comprovar que la suma és més de vuit i per tant la solució és impossible.
Euler va proposar un nou exemple, Fig. 3. Implicant dues illes A i B amb quatre rius. No estava estudiant cap lloc real, simplement feia proves imaginàries.
L'algoritme corresponent a aquest exemple és el següent.
Àrees | Ponts | Mínim |
---|---|---|
- | - | 16 |
A* | 8 | 4 |
B* | 4 | 2 |
C* | 4 | 2 |
D | 3 | 2 |
E | 5 | 3 |
F* | 6 | 3 |
- | - | 16 |
Com que el nombre de la suma és setze al final de la tercera columna i no és inferior al mínim nombre necessari de lletres que trobem al principi de la columna. Euler va concloure que existia una solució. Euler aquí va confondre les condicions necessàries per les condicions suficients. Ell sense saber-ho suposava que el graf era connex.
Euler va veure que el camí o recorregut no podia començar en cap de les regions que tenia un asterisc. Per tant, no podia començar en cap àrea amb un nombre parell de ponts. Ja que si no aquell símbol havia d'aparèixer una vegada més, i la seqüència no era prou llarga. Euler va proposar la següent solució: EaFbBcFdAeFfCgAhCiDkAmEnApBoElD en aquesta notació descriu les àrees i els ponts utilitzats. La seqüència de lletres seria EFBFAFCACDAEABED.
A continuació, va fer algunes observacions més. En primer lloc, la suma dels ponts de la segona columna és el doble dels ponts totals que apareixen en el problema, ja que cada pont està comptat dues vegades. Per tant, el nombre total de ponts ha de ser parell per tant això és impossible si un nombre és imparell, o tres nombres són imparells, etc. Llavors el nombre d'àrees amb un nombre imparell de ponts ha de ser parell.
Per exemple, en el problema de Königsberg on la suma del nombre d'àrees imparelles A, B, C i F és el nombre parell quatre. I en la figura tres la suma del nombre d'àrees imparelles D i F és dos.
En segon lloc, en el cas que els nombres de la segona columna són parells, Euler va deduir que una de les lletres havia d'aparèixer tant al principi com al final del recorregut per tal que es pogués utilitzar cada una de les lletres. Euler va veure que si el problema tractés de creuar cada pont dues vegades, sempre tindria solució, ja que estaríem davant de casos on hi hauria nombres parells de ponts sempre.
També va observar que si dos dels nombres de la segona columna són imparells, llavors, el recorregut comença en una d'aquestes dues àrees amb nombre imparell de ponts i acaba a l'altre amb l'ordre adequat per tenir una successió possible de lletres. Finalment, si més de dos nombres són imparells, llavors no hi ha una seqüència amb prou lletres per creuar cada pont i el problema no té solució. Euler va enumerar aquests arguments amb una llista de tres regles, depenen de les regions amb nombres imparells de ponts:
1. Si més de dues àrees tenen un nombre de ponts senar, aleshores no existeix una seqüència de lletres que recorri tots els ponts i acabi on ha començat.
2. Si hi ha dues àrees amb nombre de ponts senar, llavors una seqüència de lletres que recorri tots els ponts existeix sempre que comenci i acabi a les dues àrees amb un nombre de ponts senar.
3. Si totes les àrees tenen un nombre de ponts parell, es pot aconseguir una seqüència de lletres que comenci i acabi a la mateixa àrea des de qualsevol àrea i recorri tots els ponts.
Finalment, Euler resol la qüestió de trobar realment el camí, un cop sap que existeix. Si dues regions estan connectades per dos o més ponts, suggereix mentalment l'eliminació d'ells, de dos en dos, i resoldre el problema utilitzant els ponts restants. Després la solució s'estén fàcilment a una solució completa.
Però aquest no va ser l'únic treball d'Euler pel que fa als grafs. També va resoldre un problema conegut com el problema del cavall. Ell el va anomenar Solution d'une question curieuse que ne paroit soumise à aucune analyse.
El problema del cavall
[modifica]Un dia a una empresa en la qual, amb motiu d'un joc dels escacs, alguna persona va proposar aquesta pregunta: Es pot moure un cavall (amb el seu moviment de la L) a través de totes les caselles d'un tauler d'escacs, sense haver de passar dues vegades a la mateixa casella, i començant amb un quadrat donat?
Avui en dia es coneix aquest problema com el cicle del cavall.
Euler per fer aquesta pregunta una mica més clara, va mostrar una ruta on, es començava, en una cantonada del tauler d'escacs i el cavall es mou a través de totes les places. De manera que va marcat els números per l'ordre que el cavall trepitjava cada casella. En aquest exemple de la taula, el cavall començava a la cantonada inferior esquerra, i acabava a la casella just a la dreta del punt de partida.
42 | 59 | 44 | 9 | 40 | 21 | 46 | 7 |
61 | 10 | 41 | 58 | 46 | 8 | 39 | 20 |
12 | 45 | 60 | 55 | 22 | 57 | 6 | 47 |
53 | 62 | 11 | 30 | 25 | 28 | 19 | 38 |
32 | 13 | 54 | 27 | 56 | 23 | 48 | 5 |
63 | 52 | 31 | 24 | 29 | 26 | 37 | 18 |
14 | 33 | 2 | 51 | 16 | 35 | 4 | 49 |
1 | 64 | 15 | 34 | 3 | 50 | 17 | 36 |
Euler va observar que des de la seva posició final no es podia arribar a la inicial directament. Per tant, aquest camí o recorregut segons Euler no era “reentrant” sobre si mateix. És a dir, no es podia reiterar sense passar per una casella ja utilitzada. Euler va seguir donant un exemple d'un recorregut que era “reentrant” sobre si mateix, i assenyalava que això li donava una gran quantitat de recorreguts equivalents, a partir d'aquest circuit en qualsevol casella, i seguint els números sigui cap endavant o cap enrere.
42 | 57 | 44 | 9 | 40 | 21 | 46 | 7 |
55 | 10 | 41 | 58 | 45 | 8 | 39 | 20 |
12 | 43 | 56 | 61 | 22 | 59 | 6 | 47 |
63 | 54 | 11 | 30 | 25 | 28 | 19 | 38 |
32 | 13 | 62 | 27 | 60 | 23 | 48 | 5 |
53 | 64 | 31 | 24 | 29 | 26 | 37 | 18 |
14 | 33 | 2 | 51 | 16 | 35 | 4 | 49 |
1 | 52 | 15 | 34 | 3 | 50 | 17 | 36 |
Després d'aquests comentaris introductoris i exemples, el document es pot dividir en diverses parts. En els paràgrafs del 9 al 14, mostra com els nous recorreguts es podien fer dels vells per una tècnica que torna a connectar alguns dels passos en el camí. Aquesta és probablement la tècnica que havia après de Bertrand.
Ens explicava, per exemple, que si el cavall partia de la casella on hi ha el 25 el recorregut seria el següent: 25,26,...,64,1,...,24.
És a dir, partiria de la casella 25 i seguiria el recorregut previst fins a la casella 64, aleshores seguiria per la 1 i continuaria el recorregut previst fins a la 24 podent tornar a la 25 sense cap problema. Igual passa amb les altres caselles.
En els paràgrafs del 15 al 17 es va dedicar a la utilització de la tècnica de tornar a connectar les caselles. És a dir, partia d'una ruta que no passava per totes les caselles i buscava la manera de connectar-les per estendre la ruta a un circuit.
Des del resultat anterior, que semblava que sempre quedava obert, en els paràgrafs del 18 al 24 mostrava com tornar a connectar un recorregut obert per convertir-lo en un recorregut tancat.
Al paràgraf 25, Euler buscava circuits amb certs tipus de simetries, com visitar primer la meitat de la taula, a continuació, l'altra meitat.
Als paràgrafs del 35 al 41 considerava recorreguts en taulers d'escacs que no eren de 8x8 però eren quadrats.
Als paràgrafs 42 i 43 mirava taulers rectangulars i al seu últim paràgraf, el 44, ens donava exemples de quatre circuits en taulers amb forma de creus.
Per tenir una idea de la tècnica principal del document, en lloc de mirar els paràgrafs més específics per casos particulars, anem a veure com Euler completa un recorregut incomplet.
Euler va triar l'exemple de la taula, començant a la cantonada inferior esquerra i acabant en l'etapa 62, amb la falta dels quadrats marcats a i b.
34 | 21 | 54 | 9 | 32 | 19 | 48 | 7 |
55 | 10 | 33 | 20 | 53 | 8 | 31 | 18 |
22 | 35 | 62 | a | 40 | 49 | 6 | 47 |
11 | 56 | 41 | 50 | 59 | 52 | 17 | 30 |
36 | 23 | 58 | 61 | 42 | 39 | 46 | 5 |
57 | 12 | 25 | 38 | 51 | 60 | 29 | 16 |
24 | 37 | 2 | 43 | 14 | 27 | 4 | 45 |
1 | b | 13 | 26 | 3 | 44 | 15 | 28 |
En primer lloc, va fer una llista de les caselles a les quals es pot arribar des de l'última plaça, el nombre 62: 9, 53, 59, 61, 23, 11, 55 i 21.
També va fer una llista de les caselles a què es pot arribar des de la casella a que falta: 32, 8, 52, 42, 58, 56, 10 i 54. Podem veure que hi ha algunes caselles a la primera llista que el seu pas següent apareix a la segona, 9 i 10, 53 i 54, i 55 i 56. Euler podria haver triat qualsevol d'aquests parells, però ell pren el parell 9 i 10 per tornar a connectar el camí.
Euler canvia la trajectòria de la següent manera. En lloc d'anar de 9 a 10, va de 9 a 62. Després es travessa el camí cap enrere fins que arriba a la plaça 10, i des d'allà es pot arribar a la plaça a que falta. Ell va escriure la nova ruta com: 41, ..., 9-62, ..., 10-a.
Això deixava b encara fora del circuit. Euler no ens deia per què, però no intenta connectar b al començament de la gira. Des de b podia arribar a les caselles 57, 25 i 43, i de l'1 podia arribar només al 2 i el 12, i cap dels parells resultants són consecutius.
Així, Euler va fer dues llistes de nou totes les caselles a què es pot arribar des de l'última nova casella a: 32, 8, 52, 42, 58, 56, 10 i 54.
Les caselles a les quals es podia aconseguir connectar b són 57, 25 i 43, i de nou va obtenir un parell de caselles consecutives, 58 en la primera llista, que és seguit per 57 a la segona llista.
La nova ruta que Euler va escriure va ser 1,...,9-62,...,10-a, en aquest camí, 9 i 10 no haurien estat consecutiu, però 9 i 62 si ho són.
Així, Euler fa una altra transformació. Va desconnectar la plaça 58 de la plaça 57, i en el seu lloc va connectar a la plaça a.
Després va seguir la trajectòria de a a 57 en la direcció oposada, i va connectar 57 a la casella que faltava b. Escrivint així, aquest nou camí com: 1,...,9-62,...,58-a-10,...,57-b.
A partir d'aquí Euler havia completat un circuit obert, a continuació ens va mostrar com transformar el recorregut obert en un recorregut tancat.
El seu primer pas va ser tornar a numerar les caselles en el seu "ordre natural", que és l'ordre en què aquest circuit recorre les caselles en lloc de l'ordre en què van ser recorregudes abans de completar el circuit obert.
Euler va seguir fent una llista de les caselles en què es pot arribar des de la casella 64: 63, 31 i 49.
La transposició al 64 no donava lloc a un nou recorregut, de manera que va crear dues noves gires per transposició 64 primer amb 31 i després amb 49. Les gires I i II, i els va escriure:
I.1,...,31-64,...,32.
II.1,...,49-64,...,50.
Seguidament va invertir aquestes rutes, no canviar els seus noms, però les va descriure com:
I.32,...,64-31,...,1.
II.50,...,64-49,...,1.
Ara l'última casella, 1, es connecta a 2 i 18. Per tant, la transposició en 2 no canvia res, així que transposa als 18 i obté dos nous recorreguts:
A. 32,...,64-31,...,18-1,...,17.
B.50,...,64-49,...,18-1,...,17.
Tots dos recorreguts acaben a la casella 17, que, al seu torn, es connecta a les caselles 16, 10, 14 i 18.
Euler va fer quatre transposicions que no canviaven res, i va aconseguir nous recorreguts C, D, E i F, a partir de les caselles 32 o 50, i acabant a la 11 o 15. Ell va fer totes les transformacions possibles a la casella 11 i va obtenir els recorreguts G, H, I, K, L, M, N, O, P i Q, i també totes les transformacions a la casella 15 per obtenir els recorreguts g, h, i, k, l, m, n, o, p, q, r i s. Finalment, es troba que una de les transformacions que es deriven del recorregut G porta a un recorregut tancat, i ell troba el recorregut tancat: 32,...,42-47,...,64-31,...,18-1,...,10-17,...,11-46,...,43.
40 | 27 | 60 | 9 | 38 | 25 | 54 | 7 |
61 | 16 | 39 | 26 | 59 | 8 | 37 | 24 |
28 | 41 | 10 | 15 | 46 | 55 | 6 | 53 |
17 | 62 | 47 | 56 | 13 | 58 | 23 | 36 |
42 | 29 | 14 | 11 | 48 | 45 | 52 | 5 |
63 | 18 | 31 | 44 | 57 | 12 | 35 | 22 |
30 | 43 | 2 | 49 | 20 | 33 | 4 | 51 |
1 | 64 | 19 | 32 | 3 | 50 | 21 | 34 |
Euler va tornar a escriure el recorregut començant per la casella 1, obtenint la forma final del circuit tancat: 1,...,10-17,...,11-46,...,43-32,...,42-47,...,64-31,...,18.
Terminologia actual i resum de les conclusions d'Euler
[modifica]Un graf és un parell ordenat G:=(V, E) que comprèn un conjunt V de vèrtexs o nodes juntament amb un conjunt E d'arestes o línies, les quals són conjunts de dos elements de V. Els grafs poden ser no dirigits, és a dir sense fer distinció entre els dos vèrtexs associats a cada aresta, o dirigits, les arestes dels quals van d'un vèrtex a un altre; en aquest cas, les arestes s'anomenen arcs. El grau d'un vèrtex és el nombre d'arestes que hi incideixen.
Un camí eulerià és aquell camí que recorre tots els vèrtexs (nodes) d'un graf passant una i només una vegada per cada arc (aresta) del graf. Un cicle eulerià és un camí eulerià que comença i acaba al mateix vèrtex.
Un camí hamiltonià és un camí en un graf no dirigit que passa per cada vèrtex del graf exactament un cop. Un cicle hamiltonià (o circuit hamiltonià) és un camí hamiltonià que retorna al vèrtex de sortida.
Quan expressem les conclusions d'Euler d'abans per una xarxa qualsevol d'aquest tipus en terminologia moderna de teoria de grafs, tenim:
1. Si més de dos vèrtexs tenen grau senar, aleshores no és possible un camí Eulerià.
2. Si exactament dos vèrtexs tenen grau senar, llavors un camí Eulerià és possible sempre, si comença en qualsevol dels dos territoris representats per vèrtex de grau senar i finalitza en l'altre.
3. Si tots els vèrtexs tenen grau parell, llavors es pot aconseguir el cicle Eulerià començant des de qualsevol vèrtex.
També tenim que quan resolia el problema del cavall treballava amb cicles hamiltonians.
Euler també va trobar el Teorema de la característica que diu:
(Vèrtex)+(Cares)=(Arestes)+2
Obtenint d'aquí posteriorment la fórmula d'Euler per grafs que diu que la suma dels graus dels vèrtexs és igual al doble del nombre arestes.
Vegeu també
[modifica]Bibliografia
[modifica] Aquest article té bibliografia, però no se sap quina referència verifica cada part. Podeu millorar aquest article assignant cadascuna d'aquestes obres a frases o paràgrafs concrets. |
- MAA. How Euler did it? C.Edward Sandifer. ISBN 9780883855638; 256 pg. 2007. Series: Spectrum.
- MAA Graph theory 1736-1936: N.L.Biggs, E.K.Lloyd, R.J.Wilson; 239 pg. 1976. Oxford. (Clarendon Press).