27 Mart 2017 Pazartesi

Yol Bulma


Problem Oyuncu verilen yollar içerisinden en kıza olan yolu bulması gerekmektedir.
Yol Bulma Algoritması
En etkin şekilde en az maliyetle en güzel yolu bulma
Etkinlik
Yolun Durumuna Bak
Çevrenin Durumuna Bak
Noktaları Kullan.




Pseudocode


Add starting node to open_list

while (not_empty(open_list)) {
    current_node := node from open_list with lowest cost
    if (current_node==goal_node) {
        path complete
    } else {
        move current_node to closed_list
        for each node adjacent to current_node {
            if ((node is not in open_list) && (node is not in closed_list)) {
                move node to open_list
                assign cost to node
            }
        }
   }
}




Yolu Nasıl Kat Edeceğiz


Add starting node to open_list

while (not_empty(open_list)) {
    current_node := node from open_list with lowest cost
    if (current_node==goal_node) {
        path complete
    } else {
        move current_node to closed_list
        for each node adjacent to current_node {
            if ((node is not in open_list) && (node is not in closed_list)) {
                move node to open_list
                assign cost to node
            }
        }
   }
}

Yolun Tamamlanması yada yolda bir yer katedildiğinde hangi kodların çalışacağı liste içerisinde nasıl kullanılacağı verilmiştir.


Maliyeti Nasıl Belirleyeceğiz?


Maliiyet = Başlangıç Maliyeti + Sezgisel

Başlangıç Maliyeti= Başlangıç Noktasında olan maliyet

Sezgisel = Hedef Düz bir çizgi gibi ulaşılabiliyormu?


Örnek-1

Örnek Devam

Örnek  2


 Graph Yol Bulma


Maze tarzı Bir oyunda Yolbulma.




 Bir Graf oluştur.
Düyümler Sistem İçerisinde Tanımanmış Olmalı

 Her Birinin Belli Bir Maliyet Hesabı Olmalı.



Graph En Kısa Yol (En Kısa Yolu Bulma Algoritması)