Dışbükey olmayan çokgenlerle Öklid ortamlarındaki en kısa yolu nasıl hesaplayabilirim?


10

Birisi, dışbükey olmayan çokgen içeren Öklid uzaylarında en kısa yolların hesaplanması hakkında makaleler veya algoritmalar önerebilir mi?


Başlangıç ​​noktanız, bitiş noktanız veya başka bir çokgen dışbükey olmayan bir çokgen ile dışbükey gövdesi arasındaki boşlukta değilse, dışbükey olmayan çokgeni karmaşık gövdesi ile değiştirebileceğinizi unutmayın. Sadece dışbükey olmayan bir çokgen ve dışbükey gövdesi çizerek, farktan hangi en kısa yolların geçtiğini düşünerek görmek kolaydır.
MSalters

Yanıtlar:


3

En basit yaklaşım, dışbükey olmayan çokgenleri çoklu dışbükey olanlara dönüştürmek, daha sonra normal dışbükey çarpışma ve yol bulma yapmak (A * veya D * veya herhangi bir şekilde). İlk işleme genellikle hesaplama geometrisinde üçgenleme denir ve bunu yapmanın birkaç yaygın yolu vardır.


3

Bu, sorunuzun tam cevabı olmayabilir, ancak size bu konuda bir yaklaşım önerebilirim.

Aslında probleminiz iki problemin birleşimidir.

  1. En kısa yolları bulma
  2. Çarpışma bulma

Ve ikinci sorun ilk önce gömülü. Önce kör aramayı anlamayı önerebilirim. İşte bununla ilgili çok basit bir sunum: Blind Search

Durum alanını oluşturmak için belgeyi okursanız, durum noktaları oluşturmanız gerekir ve bunlar yasal olmalıdır, yani bu durumlar en kısa yolunuzda olabilir, böylece alanınızdaki herhangi bir nesneyle çarpışmamalıdırlar. Artık Öklid çarpışma algoritmalarıyla devam edebilirsiniz. Durum alanınızı ve çarpışmalarla kısıtlanmış arama ağacınızı oluşturduktan sonra, en kısa yol algoritmalarından birini veya kendinizinkini veya değiştirilmiş karma algoritmaları seçebilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.