Minimização do comprimento da fiação


10

Meu problema é assim:

  1. Eu tenho um layout físico representado como um gráfico. Os nós representam ganchos / dutos onde um fio pode ancorar e as arestas são a conexão possível entre 2 nós de onde o fio pode ir.

  2. Existem alguns nós especiais, chamados divisores, nos quais um único fio pode ser dividido em 2 ou mais até k. O k pode ser considerado constante por enquanto, mas varia de nó para nó. Nem todos os nós são divisores.

  3. Existe uma fonte de energia de onde um fio emergirá. É a fonte. O fio deve ser levado para n pias.

  4. Uma aresta pode levar qualquer número de fios que a atravessem em qualquer direção.

  5. O comprimento total do fio deve ser minimizado.

  6. A natureza do gráfico, planar ou euclidiana não é conhecida.

Exemplo : Abaixo está uma rede de amostra. Os nós são nomeados como números e as arestas são fornecidas com pesos iguais de 1. A origem é Nó1 e os Pias são Nó5, Nó9 e Nó13. No caso 1 Nó6 é o nó Divisor. No caso 2 Nó6 e Nó4 são nós divisores. O nó divisor é k = 3, ou seja, pode receber um fio e dividi-lo em 3 fios.

Caso 1 . Apenas um nó divisor. Faz sentido dividir no Nó6. insira a descrição da imagem aqui

Caso 2 . Nó de dois divisores. Faz sentido dividir no Nó4 em vez do Nó6. insira a descrição da imagem aqui

Estou procurando estratégias diferentes para descobrir uma solução genérica para esse problema. O gráfico apresentado aqui é de menor escala em comparação com o problema em questão. O gráfico é estático e não pode ser alterado (a solução não deve sugerir nenhuma nova aresta ou propor uma nova localização do divisor). Qualquer referência a trabalhos de pesquisa publicados sobre esse tipo de problema também é bem-vinda.

Caso 3 . Nó de dois divisores. Faz sentido dividir no Nó4 e Nó14. Observe que este gabinete possui pesos de borda alterados para o Edge 8-12, 6-10 e 10-11. O importante neste caso é refazer um fio depois de ser dividido do Nó14.

insira a descrição da imagem aqui

Respostas:


7

Esse problema é difícil de NP.

Suponha que todo vértice é um divisor que pode ser dividido em qualquer número de graus; então, seu problema é precisamente o problema da árvore Steiner em um gráfico , onde o conjunto de vértices de origem e de afundamento são os vértices necessários.


2

iki

A simplificação é que você pode eliminar todos os nós intermediários (quadrados). Crie um gráfico apenas com o nó de origem, os nós do coletor e os nós do divisor.

  1. No gráfico original, encontre o caminho mais curto do nó de origem para cada nó divisor e adicione uma aresta no novo gráfico do nó de origem ao nó divisor com esse comprimento.

  2. ijijij

  3. ijijij

Niki

ki


Se você deseja que apenas um subconjunto do gráfico seja conectado, esse é o problema da árvore Steiner.
Chao Xu

0

@Chao Xu, também achei Steiner a aproximação mais próxima do meu problema. Estou explorando sistemas baseados em Ant para resolver esse problema.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.