13 votos

¿Qué es un grafo acíclico dirigido (DAG)?

Estoy leyendo este enlace en Wikipedia En él se establece la siguiente definición para un DAG.

Definición: A DAG es un grafo finito y dirigido sin ciclos dirigidos.

La lectura de esta definición me hace pensar que el dígrafo de abajo sería un DAG ya que aquí no hay ciclos dirigidos (hay ciclos del grafo subyacente pero no hay ciclos dirigidos).

enter image description here

Sin embargo, todas las imágenes de Wikipedia muestran ejemplos de DAG con flechas que apuntan en la misma dirección. Por lo tanto, creo que estoy interpretando mal esta definición. En particular, ¿por qué la definición menciona más adelante que una definición equivalente es que debe tener un ordenamiento topológico tal que "cada arista está dirigida de anterior a posterior en la secuencia"? La lectura de la definición anterior me llevaría a creer que el grafo anterior es un DAG, pero luego la definición equivalente me haría pensar lo contrario.

5 votos

Si estás aprendiendo sobre dags, un recurso útil es webgraphviz, que te permite escribir dags utilizando un lenguaje de descripción simple y luego los dibujará para ti en un orden tan cercano a la parte superior a la inferior como sea posible.

1 votos

@EricLippert ¡Gracias! ¡Lo tendré en cuenta!

2 votos

@EricLippert o yEd. lo bonito es que puedes pedirle que anime entre diseños. Así que si dibujas lo que tienes aquí y le pides que haga un diseño jerárquico entonces boom se ve como un gráfico en Wikipedia.

29voto

sewo Puntos 58

El gráfico que muestra es un DAG.

Es convencional a dibujar DAGs con todas las flechas que van aproximadamente en la misma dirección, porque eso suele dar una intuición más clara sobre lo que está pasando en el gráfico.

Pero recuerde que las ubicaciones y direcciones son no forma parte de la definición formal de un gráfico -- son sólo características incidentales de la particular dibujo en el gráfico que estás viendo, y sería el el mismo gráfico si dibujaras los vértices en diferentes lugares del papel.

(Incluso en tu dibujo, todos los bordes van en dirección sureste, o al menos más al sureste que al noroeste, por lo que estás siguiendo la convención).

En particular, ¿por qué la definición menciona más tarde una definición equivalente es que debe tener un ordenamiento topológico tal que "cada arista se dirige de anterior a posterior en la secuencia"?

Porque es otra forma de definir la misma clase de grafos, y a veces (pero no siempre) una forma más productiva de pensar en ellos. Deberías poder demostrar que los grafos finitos dirigidos que no tienen ciclos dirigidos son exactamente los mismos que los grafos finitos dirigidos que tienen un ordenamiento topológico.

2 votos

Otro término es "incrustación": un grafo es un objeto matemático abstracto de nodos y aristas. Un dibujo en un papel que representa un grafo es una incrustación del grafo en un espacio bidimensional.

0 votos

Sin relación: ¿Es "el grafo es un DAG" suficiente y necesario para "el grafo es topológicamente ordenable"? Sospecho que sí.

0 votos

En el ámbito de la visualización (de la información), no es raro referirse a un "gráfico" como el estructura de datos abstracta y subyacente que no sabe nada sobre las posiciones (de los vértices) y las líneas (para las aristas). En este caso, se habla más específicamente de Diagrama de enlace de nodos - a saber, un visual representación de la estructura de datos abstracta. Véase también es.wikipedia.org/wiki/Dibujo_gráfico#Convenios_gráficos

2voto

aleph0 Puntos 58

El gráfico dado es efectivamente un DAG,

La definición equivalente dice que un gráfico $(V, E)$ es un dag si y sólo si se puede encontrar un orden total que extienda el orden dado por $E$ . En términos más sencillos, dejemos que $u_1, \ldots, u_n$ sean los elementos de $V$ (los vértices), entonces $(V, E)$ es un dag si y sólo si puedes encontrar una orden $<$ de manera que si $(u_i, u_k)\in E$ entonces $u_i < u_k$ .

1voto

Las dos respuestas hasta ahora afirman que lo que has dibujado es un DAG. Sin embargo, no es un DAG según una definición de uso común, porque tiene múltiples aristas entre los dos vértices más a la izquierda. Es común definir un grafo dirigido como un par $(V,E)$ donde $V$ es un conjunto, llamado los vértices, y $E \subseteq V \times V$ es un conjunto, llamado los bordes (excluyendo $(v,v)$ para todos $v \in V$ ). Un DAG es entonces un tipo particular de grafo dirigido (que no tiene ciclos dirigidos). En particular, dado que $E$ es un conjunto, no hay forma de expresar que hay dos aristas con los mismos vértices iniciales y finales (eso requeriría un multiset ). Por lo tanto, yo llamaría a lo que has dibujado un "multigrafo acíclico dirigido". Sin embargo, el razonamiento de por qué la forma de dibujarlo no afecta a si es un DAG, como se explica en la respuesta de Henning Makholm, parece haber respondido a la pregunta que realmente querías hacer.

1 votos

Más o menos sí, pero se puede extender el sistema para que las conexiones tengan un nodo extra entre ellas, entonces de nuevo un multigrafo dirigido se convierte en un DAG que cumple esta misma restricción. Por lo tanto, son casi lo mismo.

0 votos

No es cierto que puedas mapear cada par de vértices a una multiplicidad en los naturales. $f:(V×V)\to \mathbb{N}$

0 votos

@RoddyMacPhee Si quieres que los demás entiendan lo que escribes, escribe usando frases. Hay una razón por la que escribí "es común definir un grafo dirigido ...". Fue para reconocer que hay otra posibilidad para la definición. Esto no fue reconocido por ninguna de las otras respuestas en el momento en que escribí la mía.

0voto

Se pueden definir las cosas de muchas maneras como el gráfico acíclico dirigido en: https://en.m.wikipedia.org/wiki/Magma_(álgebra) bajo tipos de espectáculos de magma. Usted puede definir un gráfico de múltiples maneras, Por lo tanto, cualquier tipo de gráfico tiene múltiples definiciones. Su dibujo es un DAG bajo una definición de: un gráfico, cuyos vértices carecen de un gráfico de ciclo, cuando se sigue el camino dirigido ordenado por dirección.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X