Atinxibilidade (teoría de grafos)

Na teoría de grafos, a atinxilidade ou accesibilidade ou alcanzabilidade refírese á capacidade de pasar dun vértice a outro nun grafo. Dicimos que un vértice s {\displaystyle s} pode chegar a outro vértice t {\displaystyle t} (ou que t {\displaystyle t} é atinxíbel desde s {\displaystyle s} ) se hai unha secuencia de vértices adxacentes (por exemplo, un camiño) que comezan por s {\displaystyle s} e terminan con t {\displaystyle t}.
Nun grafo non orientado, abonda con identificar só as compoñentes conexas, xa que calquera par de vértices deste gráfo pódese alcanzar se e só se pertencen á mesma compoñente conexa. As compoñentes conexas dun grafo pódense identificar en tempo linear. Lembrámos que este artigo céntrase na atinxibilidade na configuración de grafos orientados. Definición
Para un grafo orientado G
( V, E ) {\displaystyle G
(V, E)}, onde V {\displaystyle V} é o conxunto de vértices e E {\displaystyle E} o conxunto de arestas, a relación de atinxibilidade de G {\displaystyle G} é o peche transitivo de E {\displaystyle E}, é dicir, o conxunto de pares ordenados ( s, t ) {\displaystyle (s, t)} con vértices en V {\displaystyle V} para os que existe unha secuencia de vértices v 0
s, v 1, v 2, .. ., v k
t {\displaystyle v_{0}
s, v_{1}, v_{2}, .. ., v_{k}
t} do mesmo xeito que a aresta ( v i − 1, v i ) {\displaystyle (v_{i-1}, v_{i})} está en E {\displaystyle E} para todo 1 ≤ i ≤ k {\displaystyle 1\leq i\leq k}. Algoritmos
Os algoritmos para determinar a atinxibilidade divídense en dúas clases: os que requiren preprocesamento e os que non.
Algoritmo de Floyd-Warshall
O algoritmo de Floyd-Warshall pódese usar para calcular o peche transitivo de calquera grafo orientado.
Este algoritmo non está unicamente interesadona atinxibilidade senón que tamén computa o camiño mais curto entre tódolos pares de vértices.
Algoritmo de Thorup
Para un grafo plano, un método moito máis rápido está dispoñíbel, como o descrito por Mikkel Thorup en 2004.
O enfoque global consiste en asociar a cada vértice un conxunto relativamente pequeno de chamados "camiños separadores" de tal xeito que calquera camiño que deixe un vértice v a calquera outro vértice w debe ir polo menos a un dos separadores asociados con v ou w.
Algoritmo de Kameda
Un método aínda máis rápido para o preprocesamento, debido a T. Kameda en 1975
pode usarse se o grafo é plano, acíclico e tamén presenta as seguintes propiedades adicionais: todos os vértices con grao 0 de entrada e todos os de grao 0 de saída aparecen na mesma cara (compoñente conexo disxunto que a miúdo asúmese que é a cara exterior), e é posíbel particionar a fronteira desa cara nas partes de entrada e de saída. Problemas relacionados
Un problema relacionado é a resolución de consultas de atinxibilidade cun número k {\displaystyle k} de fallas de vértices. Por exemplo: "O vértice u {\displaystyle u} aínda consegue chegar ao vértice v {\displaystyle v} aínda que os vértices s 1, s 2, .. ., s k {\displaystyle s_{1}, s_{2}, .. ., s_{k}} fallaron e xa non se poden usar? " Un problema similar pode considerar a falla de aresta en lugar de falla de vértice, ou unha mestura dos dous. A busca en amplitude funciona igual que esas consultas, mais construír un oráculo eficiente é máis difícil.
Outro problema relacionado coas consultas de atinxibilidade é recalcular rapidamente as mudanzas na relación de atinxibilidade cando muda algunha parte do grafo. Por exemplo, este é un interese relevante para o recolector de lixo que precisa equilibrar a solicitude de memoria (para que poida ser reasignada) co interese de rendemento da aplicación en execución.