Grafos isabel-teixeira
-
Upload
isabel-teixeira -
Category
Education
-
view
32 -
download
0
Transcript of Grafos isabel-teixeira
ESTRUCTURAS DISCRETAS II GRAFOS
1
UNIVERSIDAD “FERMÍN TORO”VICE RECTORADO ACADÉMICO
FACULTAD DE INGENIERAESCUELA DE COMPUTACIÓN
INTEGRANTE: ISABEL C. TEIXEIRA
PORF: EDACIO FREITEZ
Dado un grafo determinar:
a) Matriz de Adyacencia.b) Matriz de Incidencia.c) ¿Es conexo?. Justifique su respuesta.d) ¿Es simple?. Justifique su respuesta.e) ¿Es regular?. Justifique su respuesta.f) ¿Es completo?. Justifique su respuesta.g) Demostrar una cadena simple de grado 6.h) Demostrar un ciclo no simple de grado 5.i) Demostrar árbol generadoraplicando algoritmo de constructor.j) Subgrafo parcial.k) Demostrar si es eulerinano, aplicando el algoritmo de
fleury.l) Demostrar si es hamiltoniano.
Primer Ejercicio
2
1) Para saber si es una matriz de adyacencia, determinaremos si los vértices son
adyacentes mediante las aristas.
Pasos:
a) Crearemos una Tabla con N cantidad de vértices que posee el Grafo,
tanto en las
filas como las columnas.
b) Buscaremos las relaciones adyacentes o incidencias que llegan a un
mismovértice. b.1) Lazos o aristas paralelas tienen valor de 2.
2) Incidencias o relaciones en los vértices tienen valor de 1.
3) Si no hay incidencias ni relación alguna, se coloca el valor de 0.V1 V2 V3 V4 V5 V6 V7 V8
V1 0 1 1 0 0 1 1 1
V2 1 0 1 1 1 0 1 0
V3 1 1 0 1 1 0 1 1
V4 1 0 1 0 1 0 0 1
V5 1 0 1 1 0 1 0 1
V6 1 1 0 0 1 0 1 1
V7 0 1 1 0 0 1 0 1
V8 0 1 1 1 1 1 1 0
3
2) Determinaremos si los vértices son adyacentes, mediante las aristas, para crear una matriz
de incidencia. Pasos:
a)Crearemos una Tabla con N cantidad de vértices y N cantidad de aristas que posee el
grafo. En las filas se colocan los vértices y el columnas se colocan las aristas.
b) Se buscan las relaciones o incidencias entre vértices y aristas.
b.1) Lazos o aristas paralelas con respecto al vértices tienen valor de 1
b.2) Incidencias o relaciones en los vértices y aristas tienen valor de 1.
b.3) Si no hay incidencias ni relación alguna, se coloca el valor de 0.
a1 a 2
a 3
a 4
a 5
a 6
a7 a8 a9 a10 a11 a1 2
a13 a14 a15 a16 a17 a18 a19 a20
V1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
V2 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0
V3 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0
V4 0 0 0 1 0 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0
V5 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 1 0 0
V6 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 1
V7 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1
V8 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 0 1 0
4
3) Para determinar la conectividad, lo haremos gráficamente; sin embargo, ser conexo es cuando
existe un camino entre cualquier par de nodos.
El presente grafo si es conexo, porque del grafo siguiente podemos ubicar varios caminos.
Camino 2:
V1,V4,V3.
Camino 1:
V2,V8,V6,V7
Camino 3:
V1,V3,V2.
5
4) Determinaremos si el grafo es simple, de manera gráfica, puesto que observaremos cuando el grafo no contiene lazos, ni aristas paralelas, ni
aristas dirigidas. El grafo dado no es simple, porque en el grafo contiene aristas paralelas.
Grafo con sus vértices y aristas, muestras deparalelismo.
6
5) Para determinar si el grafo es regular, ubicaremos la tabla de incidencia del grafo, que nos indicará la cantidad de aristas que inciden en cada vértice
para ubicar su grado y se suman todas las aristas correspondiente a cada vértice. El grafo dado, no es regular dado a que los grados sondiferentes.
a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12
a13 a14 a15 a16 a17 a18 a19 a20Grados
V1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5
V2 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 5
V3 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 6
V4 0 0 0 1 0 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 4
V5 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 1 0 0 5
V6 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 1
5
V7 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1
4
V8 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 0 1 0
6
6) El grafo dado no es completo, dado que del mismo se pueden obtener otrossubgrafos.
7
7) Para encontrar una cadena simple de grado 6, ubicamos en la Matriz de Incidencia cadenas de
grado 6: tenemos dos cadenas simples: V3 yV8.
a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a1 2
a13 a14 a15 a16 a17 a18 a19 a20Grados
V1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5
V2 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 5
V3 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 0 0 6
V4 0 0 0 1 0 0 0 0 0 0 1 0 0 1 1 0 0 0 0 0 4
V5 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 1 1 0 0 5
V6 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 1
5
V7 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1
4
V8 0 0 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 0 1 0
6
8
V4
V1
a4
8) Demostrar un ciclo no simple de grado5:
No se puede demostrar, ya que todas las aristas son distintas del grafo. No hay cadenas no simples de ningúngrado.
9) Arbol generador aplicando el algoritmo constructor
Paso 1: Elegir S1=V1, y coloca H1= {V1}
Paso 2: Se elige a a4 que conecta a V1 con V4 y se coloca H2= {V1,V4]
Paso 3: Se elige la arista a15 que conecta V4 con V7 y se colocaH3={V1,V4}.
V4
V1
V7
a15
a4
Paso 4: Se elige la arista a 17 que conecta V7 con V5 y se colocaH4={V1,V4,V7,V5}
a4
V1
a15
V7
V4
a17
V5
a15
V7
a17
Paso 5: Se elige la arista 19 que conecta V5 con V8 y se coloca H5={V1, V4, V7,V5,V8}
V1
a4
V5
V4
a5
V8
Paso 6: Se elige la arista a20 que conecta V8 con V6 y se coloca H6={V1,V4,V7,V5,V8,V6}.
V1
a4
V4
a15
V7
a17
V5
a5
V8
a19
V6
Paso 7: Se elige la arista a10 que conecta V6 con V2 y se coloca H7= {V1, V4, V7, V5, V8, V6,V2}
V1
a4
V4
a15
V7
a17
V8
V5
a19
V6
a19
a10
V2
Paso 8: Se elige la arista a3 que conecta V2 con V3 y se coloca H7= {V1, V4, V7, V5, V8, V6,
V2,V3}. Obteniendo de esta manera el siguiente árbol generador.
a4
V1
V4
V7
V5
V8
V6
V2
a15a17 a19 a19
a10V3
a3
12
Camino 2 : V1,V4,V3.
Camino 1 : V2,V8,V6,V7
Camino 3 : V1,V3,V2.
10) Subgrafos parciales:
13
11) Demostrar si es euleriano, aplicando el algoritmo de fleury.
El grafo no es euleriano, posee vértices de valencia o grados impar.
12) Demostrar si es hamiltoniano: Un grafo es hamiltoniano si todos los vértices tienen valencia
o grado mayor o igual n/2, donde "n" es el número de vértices del grafo. Esta condición es
necesaria pero no suficiente, por lo que si existe al menos un vértice que no cumpla la relación,
no sabemos si el grafo es hamiltoniano.
Para cada vértice "V" comprobamos la relación: grado(V) >= 8/2.
Vértice v1: 5 >= 8/2 = 4.
Vértice v2: 5 >= 8/2 = 4.
Vértice v3: 6 >= 8/2 = 4.
Vértice v7: 4 >= 8/2 = 4.
Vértice v8: 6 >= 8/2 = 4.
Vértice v4: 4 >= 8/2 = 4.
Vértice v6: 5 >= 8/2 = 4.
Vértice v5: 5 >= 8/2 = 4.
EL grafo es hamiltoniano, pues todos los vértices tienen valencia mayor o igual que 4.
14
1) Encontrar matriz de conexión
2) ¿Es simple?. Justifique la respuesta.
3) Encontrar una cadena no simple no
elemental de grado 5
4) Encontrar un ciclo simple.
5) Demostrar si es fuertemente conexo
utilizando la matriz de accesibilidad.
6) Encontrar la distancia de V2 a los
demás vértices utilizando el algoritmo
de dijkstra.
SEGUNDO EJERCICIO
15
1) Encontrar matriz de conexión:
a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14
V1 0 0 0 0 0 0 0 0 1 0 0 0 0 0
V2 1 0 0 0 0 0 0 0 0 1 0 0 0 0
V3 0 1 0 0 1 0 0 0 0 0 0 0 0 0
V4 0 0 1 0 0 0 0 1 0 0 1 0 0 0
V5 0 0 0 0 0 1 1 0 0 0 0 0 0 1
V6 0 0 0 1 0 0 0 0 0 0 0 1 0 0
falla una condición, por2) No es simple, porque en el grafo contiene aristas dirigidas y paralelas,
ende ya es no simple.
16
3) Encontrar una cadena no simple no elemental de grado 5.
a1
a2
a8
No repite
ni vértices ni aristas.
Cadena simple: Es aquella que no repite aristas.
Cadena Elemental: Es aquella que no repite vértices.
Cadena no simple no elemental: Es aquella que repite vértices y artistas. No se puede
ubicar ninguna, ya que no es doblemente dirigidos para realizar en camino para repetir
ambas.
4) Encontrar un ciclo simple: Es el ciclo que a su vez es una cadena simple.
17
5) Demostrar si es fuertemente conexo utilizando la matriz de accesibilidad.
18
6) Encontrar la distancia de V2 a los demás vértices utilizando el algoritmo de dijkstra.
19
Pasos:
1) Ubicar el vértice de inicio.
2) Luego ubicar los vértices mas cercanos al V2 para estudiarlo, lo que este directamente a él.
3) Agregar etiquetas a cada vértice estudiado, la misma se realiza así:
Símbolo de la Iteración o
estudio de distancia.
Ponderación de la arista
+ lo que precede.
(1,1 ) # de la iteración
Vértice Estudiado
20
4)Luego colocar la ponderación de la arista + la ponderación de la etiqueta anterior
que esta directamente al vértice estudiado.
5)Colocara al lado de la etiqueta el numero de iteración que se esta realizando.
6)Luego se estudian las distancias y se escoge la menor, si hay 2 igual se escoge
cualquiera de la dos.
Distancias:
dv2 a v1: 2
dv2 a V3: 3
dv2 a V5: 3
dv2 a v4: 4
dv2 a v6: 3
Aristas a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14
Ponder. 2 3 4 3 2 3 4 1 4 3 2 2 4 3
21
Vista Gráfica[0,](0)
[2,2](1)
[3,2](1)
[3,2](1)
[3,2](1)
[4,2](1)
22