En las matemáticas , en particular la teoría de grafos , y la informática , un gráfico acíclico dirigido ( DAG o dag / d æ ɡ / ( escuchar ) ) es un finito gráfico dirigido con no hay ciclos dirigidos . Es decir, consiste en finitos vértices y aristas (también llamados arcos ), con cada arista dirigida de un vértice a otro, de modo que no hay forma de comenzar en ningún vértice vy siga una secuencia de bordes constantemente dirigida que eventualmente regresa a v nuevamente. De manera equivalente, un DAG es un gráfico dirigido que tiene un orden topológico , una secuencia de los vértices de tal manera que cada borde se dirige de principio a fin en la secuencia.
Los DAG pueden modelar muchos tipos diferentes de información. Por ejemplo, una hoja de cálculo se puede modelar como un DAG, con un vértice para cada celda y un borde siempre que la fórmula en una celda use el valor de otra; Se puede usar un orden topológico de este DAG para actualizar todos los valores de celda cuando se cambia la hoja de cálculo. Del mismo modo, los ordenamientos topológicos de los DAG se pueden utilizar para ordenar las operaciones de compilación en un archivo MAKE . La técnica de evaluación y revisión del programa (PERT) utiliza DAG para modelar los hitos y actividades de grandes proyectos humanos, y programar estos proyectos para usar el menor tiempo total posible. Bloques lógicos combinacionales en el diseño de circuitos electrónicos y las operaciones en la programación del flujo de datos.idiomas, implican redes acíclicas de elementos de procesamiento. Los DAG también pueden representar colecciones de eventos y su influencia entre sí, ya sea en una estructura probabilística como una red bayesiana o como un registro de datos históricos como árboles genealógicos o las historias de versiones de sistemas de control de revisión distribuidos . Los DAG también se pueden usar como una representación compacta de datos de secuencia, como la representación gráfica de palabras acíclicas dirigidas de una colección de cadenas, o la representación del diagrama de decisión binario de secuencias de elecciones binarias. Más abstractamente, la relación de accesibilidad en un DAG forma un orden parcial, y cualquier orden parcial finito puede ser representado por un DAG usando accesibilidad.
Los problemas computacionales importantes del tiempo polinómico en los DAG incluyen la clasificación topológica (cálculo de un orden topológico), la construcción del cierre transitivo y la reducción transitiva (los DAG más grandes y más pequeños con la misma relación de accesibilidad, respectivamente) de conjuntos, y el problema de cierre , en el que el El objetivo es encontrar un subconjunto de vértices de peso mínimo sin bordes que los conecten con el resto del gráfico. Transformar un gráfico dirigido con ciclos en un DAG eliminando la menor cantidad posible de vértices o bordes (el problema del conjunto de vértices de retroalimentación y el conjunto de bordes de retroalimentación , respectivamente) es un NP-hardproblema, pero cualquier gráfico dirigido puede convertirse en un DAG (su condensación ) al contraer cada componente fuertemente conectado en un solo supervertex. Los problemas de encontrar rutas más cortas y más largas se pueden resolver en DAG en tiempo lineal , en contraste con los gráficos arbitrarios para los que los algoritmos de ruta más corta son más lentos y los problemas de ruta más largos son NP-hard.
El concepto correspondiente para gráficos no dirigidos es un bosque , un gráfico no dirigido sin ciclos. Elegir una orientación para un bosque produce un tipo especial de gráfico acíclico dirigido llamado polytree . Sin embargo, hay muchos otros tipos de gráficos acíclicos dirigidos que no se forman orientando los bordes de un gráfico acíclico no dirigido. Además, cada gráfico no dirigido tiene una orientación acíclica , una asignación de una dirección para sus bordes que lo convierte en un gráfico acíclico dirigido. Para enfatizar que los DAG no son lo mismo que las versiones dirigidas de gráficos acíclicos no dirigidos, algunos autores los llaman gráficos dirigidos acíclicos [1] o dígrafos acíclicos .
Thanks
ResponderEliminarPERT CPM