Si modela su problema con gráficos, su problema es como el problema de Steiner Tree :
Vea aquí la definición más simple posible.
Dado un gráfico ponderado en el que un subconjunto de vértices se identifican como terminales, encuentre un subgráfico conectado de peso mínimo que incluya todos los terminales.
Como puede ver, es NPC en general, pero en su caso su gráfico es un gráfico de cuadrícula, puede encontrar una buena solución para él, pero para su ejemplo actual (cuando los terminales están en el límite) puede ver el árbol Steiner en el papel de gráficos de cuadrícula .
De todos modos, existen excelentes heurísticas para el problema de Steiner Tree, puede aplicar un enfoque similar a su problema.
PD: puede suponer que los vecinos 1 son nodos conectados, después de eso puede contraer sus bordes para hacer un nuevo gráfico, su nuevo gráfico creado es plano, y si pudiera resolver el Árbol Steiner, puede resolver su problema, pero puede ser Hay una buena solución para su problema que es independiente de Steiner Tree.