• Sonuç bulunamadı

Sezgisel-Bilgili Arama (Heuristic-Informed Search)

N/A
N/A
Protected

Academic year: 2022

Share "Sezgisel-Bilgili Arama (Heuristic-Informed Search)"

Copied!
70
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Sezgisel-Bilgili Arama

(Heuristic-Informed Search)

(2)

Sezgisel-Bilgili Arama

(Heuristic-Informed Search)

• Kör arama yöntemleri basittir, fakat çoğu zaman pratik değildir.

• Kör arama yöntemleri bilgisiz yöntemlerdir. Yani, bu yöntemlerle arama, durum uzayı hakkında bilgi olmadan gerçekleştirilir.

• Sezgisel arama yöntemleri , önce en umut verici yolu incelemekle aramanın etkisini yükseltir.

2

(3)

SEZGİSEL YAKLAŞIM (Heuristic Approach)

• Sezgisellik, gerçeğin deneye veya akla vurmadan, doğrudan doğruya kavranmasıdır.

• Sezgisellik (sezgisel kurallar, sezgisel yöntem) problemin

durum uzayı çok büyük olduğunda çözümün aranmasını kesin

biçimde sınırlayan herhangi kural, strateji, hile, sadeleştirme

ve diğer etmenler kullanımıdır.

(4)

SEZGİSEL YAKLAŞIM (Heuristic Approach)

• Sezgisellik, problem karmaşıklık içerdiğinde, çözüm için yolun bulunmasındaki yardımcı anahtardır.

• İyi seçilmiş anahtarla tek bir kapıyı açıp amaca ulaşmak mümkün olduğu gibi, kötü seçilmiş anahtarlarla bu yolu zora sokmak da mümkündür.

4

(5)

SEZGİSEL YAKLAŞIM (Heuristic Approach)

• Yuri Gagarin, 1961’ de uzaya giden ilk insan olduktan sonra İngiltere Kraliçesi Elizabeth II tarafından kabul edilmiştir. Yemek sırasında masaya 5 çatal, 5 kaşık ve 5 bıçak getirilmiştir. Bir köylü çocuğu olan kozmonot rastgele aldığı çatal ve bıçaklarla yemeye başlamış ve sonunda ilginç bir durumla karşılaşmıştır. Yemek sonunda çay karıştırmak için kaşıklardan en büyüğü kalmıştır.

• Menü önceden bilinseydi, olay algoritmik özellik taşıyacaktı.

• Öte yandan yemek süresinin sınırlı olması deneme yapmaya imkan vermemektedir.

• Fakat tekrar benzeri durumla karşılaşıldığında tecrübeye göre en iyi yaklaşım yapılmaktadır.

• Yine de kötü bir tahmin rol oynayabilir.

(6)

SEZGİSEL PROBLEM ÇÖZÜMLEME (Heuristic Problem Solution)

• Sezgisel algoritmalar sonucun doğruluğunun kanıtlanabilir olup olmadığını önemsememektedir fakat genelde iyiye yakın çözüm yolları elde eder.

• Sezgisel algoritmalar en iyi sonucu bulacaklarını garanti etmezler fakat en iyi çözümü aramaktan vazgeçerek makul bir süre içerisinde bir çözüm elde edeceklerini garanti ederler.

• Genellikle en iyiye yakın olan çözüm yoluna hızlı ve kolay bir şekilde ulaşırlar.

6

(7)

SEZGİSEL PROBLEM ÇÖZÜMLEME (Heuristic Problem Solution)

• Sezgisel Algoritmaların kullanım yerleri :

Rota bulma

Network paketlerinin yönlendirilmesi sırasında izleyeceği en uygun yolun belirlenmesi

Oyunlarda karakterin hedefe doğru izleyeceği yolların tespiti

Gezgin satıcı probleminin çözümü

Labirentten en kısa çıkışı bulma

• En kısa yolu bulma işlemi, düğüm ve kenar sayısına bağlı olarak çok fazla zaman alabilir.

Bu sebeple, en kısa yolu bulduğundan emin olunan algoritmalar değil de, sezgisel algoritmalar daha çok kullanılır.

• Sezgisel algoritmalar ile hesaplanan yol gerçekte en kısa ve optimum yol olmayabilir ama bulunan yolun hesaplaması diğer algoritmalara göre çok daha kısa sürer.

(8)

SEZGİSEL PROBLEM ÇÖZÜMLEME (Heuristic Problem Solution)

• Sezgisellik bir tahmindir, fakat aramayı gerçekleştirmek için yararlı bir yoldur.

• Temel düşünce…

• Tüm mümkün arama yollarını denemek yerine , hedefe/amaca yaklaştırdığı düşünülen yolların denenmesi.

8

(9)

SEZGİSEL PROBLEM ÇÖZÜMLEME (Heuristic Problem Solution)

• Örneğin, arama uzayında kentler arasındaki kuş uçuşu mesafeleri sezgisel değerlendirme için kullanılabilir.

• Üstünlük verilen yollar SG’ye daha yakın olan yollardır.

SG’ye kuş uçuşu yolların uzunlukları

SG

3 7 4

6 6

11 7

6 8 1

1

8

L CS

A R

FA

SR S

SC

W

CG

(10)

Sezgisel Arama Stratejileri

(Heuristic-Informed Search Strategies)

• En İyi Öncelikli Arama Algoritması (Best-First Search – BFS)

• Aç gözlü Arama Algoritması (Gready Search- GBFS)

• A Yıldız Arama Algoritması(A* Search)

• Tepe Tırmanma Arama Algoritması (Hill Climbing Search - HCS)

10

(11)

En İyi Öncelikli Arama Algoritması (Best-First Search)

1. Her durum-düğüm için, o durumun-düğümün istenebilirliğini (desirability) tarif edecek bir tahmin fonksiyonu f(n) kullanılır.

Bu fonksiyon hedef/amaç durumuna yakınlığı değerlendirmek için arama ağacında düğümleri inceler.

1. En çok istenen-arzu edilen düğüm genişletilir.

2. Düğümler istenebilirlikleri azalacak şekilde sıralanır.

(12)

En İyi Öncelikli Arama Algoritması (Best-First Search)

• Bazı hallerde amaca doğru her hangi bir yolun bulunması yeterli olsa da, bazı zamanlarda en iyi yolun bulunması gerekebilir.

• En hızlı, en düşük maliyetle ve en kolay yolla amaca ulaşılması için optimal arama yapılmalıdır.

• Mantıklı bir zaman diliminde en iyi çözümün bulunması yöntemleri:

• Aç gözlü Arama (Greedy Search- GBFS)

• A Yıldız Arama (A* Search)

12

(13)

Aç Gözlü Arama (Greedy Search)

• Değerlendirme fonksiyonu, f(n) = h(n)

• f(n): n. düğümden hedef düğüme kadar hesaplanmış sezgisel fonksiyon.

• h(n) : sezgisel tahmin n. düğümden hedef düğüme kadar.

• Örn., h(n) = İki şehir arası kuş uçuşu mesafesi, gerçek yol maliyetinin tahmin edilmesinde bir sezgisel (heuristic) bilgi olarak kullanılabilir.

• Algoritma, amaca en yakın olduğu tahmin edilen/düşünülen düğüme doğru genişleme yapar.

• Varsayım : h(n) = 0 ise n hedef düğümdür.

(14)

Aç Gözlü Arama (Greedy Search)

• Bütünlük : Yok. (Bir döngüye saplanıp kalabilir. Tekrarlı bir alanda sınırlı arama yapar.)

• Zaman Karmaşıklığı : O(bm) , iyi bir sezgisel ile yeterli ölçüde gelişme sağlanabilir

• Alan Karmaşıklığı : O(bm) (Bütün düğümleri bellekte tutar.)

• Optimallik : Yok

14

(15)

Aç Gözlü Arama (Greedy Search)

• Algoritma öncelikle düğümlerden ve ağırlıklı kenarlardan oluşan bir graf oluşturur ve bu grafdaki kenarları ağırlıklarına göre sıralar.

• Daha sonra algoritma hedefe kuş uçuşu en kısa kenarı seçerek işlemeye devam eder; bu sırada da döngülerin oluşmasını önler.

• Greedy algoritması makul zamanda çözüm üretmektedir

ancak her zaman iyi sonuçlar verememektedir.

(16)

Aç Gözlü Arama (Greedy Search) Örnek

16

S başlangıç, G hedef durumdur.

(17)

Aç Gözlü Arama (Greedy Search) Örnek

S başlangıç, G hedef durumdur.

(18)

18

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(19)

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(20)

20

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(21)

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(22)

22

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(23)

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(24)

24

Aç Gözlü Arama (Greedy Search) Örnek-1

Start

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Goal 97

101 118 75

111

140

(25)

Aç Gözlü Arama (Greedy Search) Örnek-1

111

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

140

(26)

26

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(27)

Aç Gözlü Arama (Greedy Search) Örnek-1

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

(28)

28

Aç Gözlü Arama (Greedy Search) Örnek-1

A Start

(29)

Aç Gözlü Arama (Greedy Search) Örnek-1

A C B

E

Start 118 75

140 [374]

[329]

[253]

(30)

30

Aç Gözlü Arama (Greedy Search) Örnek-1

A C B

E

F 99

G

80

Start 118 75

140 [374]

[329]

[253]

[193] [178]

(31)

Aç Gözlü Arama (Greedy Search) Örnek-1

A C B

E

F

I 99

211 G

80

Start

Goal 118 75

140 [374]

[329]

[253]

[193] [178]

[0]

(32)

32

Aç Gözlü Arama (Greedy Search) Örnek-1

A C B

E

F

I 99

211 G

80

Start

Goal 118 75

140 [374]

[329]

[253]

[193] [178]

Yol maliyeti (Path cost) [0]

(A-E-F-I) = 253 + 178 + 0 = 431 Mesafe (Distance)

(A-E-F-I) = 140 + 99 + 211 = 450

(33)

Örnek-1 Optimum Çözüm

Start

f(n) = h (n) = sezgisel kuş uçuşu mesafesi State Heuristic: h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Goal 97

101 118 75

111

140

Yol maliyeti (Path cost)

(A-E-G-H-I) = 253+193 +98+0 = 544 Mesafe (Distance)

(34)

Aç Gözlü Arama (Greedy Search)

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

34

(35)

Aç Gözlü Arama (Greedy Search)

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(36)

Aç Gözlü Arama (Greedy Search)

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

36

(37)

Aç Gözlü Arama (Greedy Search)

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(38)

Aç Gözlü Arama (Greedy Search)

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

38

(39)

Aç Gözlü Arama (Greedy Search) Çözümü

Mesafe (Distance)

(Arad - Sibiu - Fagaras - Bucharest) = 140+99+211 = 450

Optimum Çözüm Mesafe (Distance)

(Arad - Sibiu - Rimnicu Vilcea – Pitesti -

Aç Gözlü Arama (Greedy Search)

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(40)

A Yıldız Arama Algoritması (A* Search Algorithm)

• Ağırlıklı olarak "nesnelerin hedefledikleri noktaya olan en kısa yollarını bulması" amacıyla kullanılmaktadır.

• Örneğin seyyar tüccar problemi (travelling salesman problem) gibi bir problemin çözümünde kullanılabilir.

• Benzer şekilde oyun programlamada, oyunda bulunan oyuncuların en kısa yolu bularak hedefe gitmeleri için de sıklıkla kullanılan algoritmadır.

• Kısaca bir düğümden hedef bir düğüme en kısa hangi düğümler üzerinden gidileceğini bulmaya yarayan bir algoritmadır.

40

(41)

A Yıldız Arama Algoritması (A* Search Algorithm)

Başlangıç düğümünden n. düğüme kadar olan yolu g(n) ile n. düğümden ise hedef düğümüne olan yol değeri h(n) ile ifade edilirse bu algoritma için aşağıdaki bağıntı elde edilir.

f(n) = g(n) + h(n)

f(n) : n. düğümden hedef düğüme kadar hesaplama yapan sezgisel (heuristic) fonksiyon.

g(n) : Başlangıç düğümünden mevcut düğüme kadar olan gerçek mesafe.

h(n) : Mevcut düğümden hedef düğüme varmak için tahmin edilen mesafe (sezgisel mesafe).

f(n) fonksiyonunun sezgisel olma sebebi, bu fonksiyon içerisinde bulunan ve tahmine dayalı olan h(n) sezgisel fonksiyonudur.

(42)

A Yıldız Arama Algoritması (A* Search Algorithm)

• Maliyeti fazla olan yolların genişletilmesini engeller, sadece en faydalı olabilecek yolları genişletir.

• Veri yapısı olarak bir öncelik sırası (priority queue) kullanan algoritmada, en öncelikli olan düğüm f(n) değeri en düşük olan düğümdür.

42

(43)

A Yıldız Arama Algoritması (A* Search Algorithm)

• Tamlık-Bütünlük (Completeness):Tam bir algoritmadır. Sonuçta, çözüm varsa bulunur.

• Zaman Karmaşıklığı (Time Complexity): çok büyük graflar için kötüdür. üstel bd

• Alan Karmaşıklığı (Space Complexity): çok büyük graflar için kötüdür.

üstel bd

• Eniyileme (Optimality): Evet

• Zaman ve alan karmaşıklıkları kötü olsa da iyi bir sezgi ile, düzelecektir.

(44)

A Yıldız Arama Algoritması (A* Search Algorithm)

Algoritmanın çalışması:

1. Öncelikle kök düğüm kuyruğa atılır. Kök düğümün komşularına ait f(n) sezgisel fonksiyon değerleri hesaplanır.

2. Algoritma, her adımda f(n) değeri düşük düğüme gider ve bu düğümü kuyruktan (queue) çıkarır. Daha sonra döngü oluşturmayan komşu düğümler kuyruğa eklenir ve bu düğümlerin de f(n) sezgisel fonksiyon değerleri hesaplanır.

3. Hedef duruma ulaşılana kadar f(n) değeri en az olan düğümün seçilmesi ve alt düğümlerinin kuyruğa eklenilmesine devam edilir.

44

(45)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

• Verilen grafın A düğümünden, G düğümüne gidilmek isteniyor.

• Sezgisel fonksiyon olarak, bir düğümün hedefe olan kuş uçuşu mesafesi alınır.

• Sezgisel mesafe, örneğin iki düğüm arasındaki mesafenin cetvel ile ölçülen değeri olarak kabul edilebilir.

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

h (n) = sezgisel kuş uçuşu mesafesi

(46)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

• Başlangıç düğümünden başlayarak komşu iki düğümün değeri hesaplanırsa:

• C düğümü için h(n) = 9 ve g(n) = 4

• B düğümü için h(n) = 8 ve g(n) = 3

• f(C) = h(n)+g(n)=9+4 = 13

• f(B) = h(n)+g(n)=8 +3 = 11

• olarak bulunmaktadır.

• Algoritma bu seçimler arasından değeri küçük olan B düğümüne gitmeyi tercih eder.

46

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

(47)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

Bu anda kuyrukta (queue) iki düğüm bulunmakta (C ve E)

B düğümünün komşusu E düğümün değeri hesaplanırsa:

f(E) = h(n)+g(n)=7 +4 = 11 f(C) = h(n)+g(n)=9+4 = 13 olarak bulunmaktadır.

Algoritma bu seçimler arasından değeri küçük olan E düğümüne gitmeyi tercih eder.

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

f(C) =9+4 = 13 f(E) =7+4 = 11

(48)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

Bu anda kuyrukta (queue) iki düğüm bulunmakta (C ve F)

E düğümünün komşusu F düğümün değeri hesaplanırsa:

f(F) = h(n)+g(n)=13 +8 = 21 f(C) = h(n)+g(n)=9+4 = 13 olarak bulunmaktadır.

Algoritma bu aşamada geldiği yoldan vaz geçerek en kısa yolun C düğümü olabileceğini düşünür ve bu düğüme gitmeyi tercih eder.

48

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

f(C) =9+4 = 13

f(F) =13+8 = 21

(49)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

Bu anda kuyrukta (queue) iki düğüm bulunmakta (F ve D)

C düğümünün komşusu D düğümün değeri hesaplanırsa:

f(D) = h(n)+g(n)=10 +4 = 14 f(F) = h(n)+g(n)=13+8 = 21 olarak bulunmaktadır.

Algoritma bu seçimler arasından değeri küçük olan D düğümüne gitmeyi tercih eder.

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

f(D) =10+4 = 14

f(F) =13+8 = 21

(50)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

Bu anda kuyrukta (queue) iki düğüm bulunmakta (F ve G)

D düğümünün komşusu G düğümün değeri hesaplanırsa:

f(G) = h(n)+g(n)=14 + 0 = 14 f(F) = h(n)+g(n)=13+8 = 21 olarak bulunmaktadır.

Algoritma bu seçimler arasından değeri küçük olan G düğümüne gitmeyi tercih eder.

50

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

f(F) =13+8 = 21

f(G) =14+0 = 14

(51)

A Yıldız Arama Algoritması (A* Search Algorithm) Örnek-1

• Son durumda hedefe ulaşılmış ve A-C-D-G yolu kullanılmıştır.

• Sonuçta ulaşım için mesafe toplandığında; 4+6+4=14 mesafesi (A-C-D-G yolu) , diğer alternatif olan 3+4+6+8 =21 değerine göre daha kısadır.

• A* algoritması sezgisel bir algoritma olduğu için bu durumu bilmemektedir.

A B

D

C E

F

G Start

Goal 4

6 3

4 6

8

4

State Heuristic:

h(n)

A -

B 8

C 9

D 4

E 4

F 8

G 0

f(F) =13+8 = 21

(52)

52

A Yıldız Arama Algoritması (A* Search Algorithm)

Örnek-2

h (n) = sezgisel kuş uçuşu mesafesi State Heuristic:

h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

f(n)= g(n)+h(n)

f(C)= 118+329 = 447 f(E)= 140+253 = 393 f(B)= 75 +374 = 449

Algoritma değeri küçük olan E düğümüne gitmeyi tercih eder.

(53)

A Yıldız Arama Algoritması (A* Search Algorithm)

Örnek-2

h (n) = sezgisel kuş uçuşu mesafesi State Heuristic:

h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

f(C)= 118+329 = 447 f(B)= 75 +374 = 449 f(G)= 220 +193 = 413 f(F)= 239 +178 = 417

Algoritma değeri küçük olan G düğümüne gitmeyi tercih eder.

(54)

54

A Yıldız Arama Algoritması (A* Search Algorithm)

Örnek-2

h (n) = sezgisel kuş uçuşu mesafesi State Heuristic:

h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

f(C)= 118+329 = 447 f(B)= 75 +374 = 449 f(F)= 239 +178 = 417 f(H)= 317+98 = 415

Algoritma değeri küçük olan H düğümüne gitmeyi tercih eder.

(55)

A Yıldız Arama Algoritması (A* Search Algorithm)

Örnek-2

h (n) = sezgisel kuş uçuşu mesafesi State Heuristic:

h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

f(C)= 118+329 = 447 f(B)= 75 +374 = 449 f(F)= 239 +178 = 417 f(I)= 418+0 = 418

A* arama algoritması bu aşamada geldiği yoldan vaz geçerek en kısa yolun F

düğümünden devam

edebileceğini düşünür ve bu yola gitmeyi tercih eder.

(56)

56

A Yıldız Arama Algoritması (A* Search Algorithm)

Örnek-2

h (n) = sezgisel kuş uçuşu mesafesi State Heuristic:

h(n)

A 366

B 374

C 329

D 244

E 253

F 178

G 193

H 98

I 0

A

B

D

C

E

F

I

99

211 G

H

80

Start

Goal 97

101 118 75

111

140

f(C)= 118+329 = 447 f(B)= 75 +374 = 449 f(I)= 418+0 = 418 f(I1)= 450 +0 = 450

A* arama algoritması bu aşamada geldiği yoldan vaz geçerek en kısa yolun I

düğümünden devam

edebileceğini düşünür ve hedefe ulaşılır.

(57)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(58)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

58

(59)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(60)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

60

(61)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(62)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

62

(63)

A

*

Arama

Romanya Haritası, Amaç: Arad’dan Bükreş’e gitmek

(64)

Şekil-2 Farklı şehirlerin G şehrine olan kuş uçuşu uzaklığı (sezgisel değer) Hedef  S şehrinden G şehrine gitmek

Şekil-1  Farklı şehirler arasındaki yol bağlantısı.

Bağlantılardaki değerler  Şehirler arasındaki gerçek mesafe

64

Hedef: S şehrinden G şehrine gitmek

(65)

Arama ağacı Durum uzayı

Hedef: S şehrinden G şehrine gitmek

(66)

[S]

[A1,D2] [D2,B3,D4] [B3,D4,A5,E6] [D4,A5,E6,C7,E8] [A5,E6,C7,E8,E9] [E6,C7,E8,E9,B10] [C7,E8,E9,B10,B11,F12] [E8,E9,B10,B11,F12] [E9,B10,B11,F12,D13,F14] [B10,B11,F12,D13,F14,B15,F16] [B11,F12,D13,F14,B15,F16,C17,E18] [F12,D13,F14, B15,F16,C17,E18,A19,C20] [D13,F14, B15,F16,C17,E18,A19,C20,G21] [F14,B15,F16,C17,E18,A19,C20,G21] [B15,F16,C17,E18,A19,C20,G21,G22] [F16,C17,E18,A19,C20,G21,G22,C23] [C17,E18,A19,C20,G21,G22,C23,G24] [E18,A19,C20,G21,G22,C23,G24] [A19,C20,G21,G22,C23,G24] [C20,G21,G22,C23,G24,F25] [G21,G22,C23,G24,F25]

BFS={S,D,E,F,G}

Enine Öncelikli Arama (Breadth-First Search)

Harflerin altlarındaki sayılar, indisleri göstermektedir. 66

Hedef: S şehrinden G şehrine gitmek

(67)

[S]

[A1,D2] [B3,D4,D2,]

[C7,E8,D4,D2] [E8,D4,D2]

[D13,F14,D4,D2] [F14,D4,D2] [G22,D4,D2]

DFS={S,A,B,E,F,G}

Derinine Öncelikli Arama (Depth-first search)

Harflerin altlarındaki sayılar, indisleri göstermektedir.

Hedef: S şehrinden G şehrine gitmek

(68)

Düşük Maliyetli Arama (Uniform Cost Search)

[S0] [A3,D4] [D4,B7,D8] [E6,B7,D8,A9] [B7, D8,A9,F10,B11] [D8,A9,F10,B11,C11,E12] [A9,F10,E10,B11,C11,E12] [F10, E10,B11,C11,E12,B13] [E10,B11,C11,E12,B13,G13] [B11,C11,E12,B13,G13,F14,B15] [C11,E12,B13,G13,F14,B15,A15,C15] [E12,B13,G13,F14,B15,A15,C15] [B13,G13,F14,D14, B15,A15,C15,F16] [G13, F14,D14, B15,A15,C15,F16,C17,E18]

UCS={S,D,E,F,G}

Harflerin altlarındaki sayılar, S’den uzaklıklarını göstermektedir.

68

Hedef: S şehrinden G şehrine gitmek

(69)

A* Arama f(n)=g(n)+h(n)

[S0]

[D12.9,A13.4]

[E12.9,A13.4,A19.4]

[F13.0,A13.4,B17.7,A19.4] [G13.0,A13.4,B17.7,A19.4] A*={S,D,E,F,G}

Hedef: S şehrinden G şehrine gitmek

(70)

S 11+0 SA A 10.4+3

SD D 8.9+4 SA

A 10.4+3

SDS S 11+8

SDA A 10.4+9

SDE E 6.9+9 SDS

S 11+8

SDA A 10.4+9

SDE E 6.9+9

SAS S 11+6

SAD D 8.9+8

SAB B 6.7+7 SDS

S 11+8

SDA A 10.4+9

SDE E 6.9+9

SAS S 11+6

SAD D 8.9+8

SABA A 10.4+11

SABE E 6.9+8

SABC C 4+11 SDS

S 11+8

SDA A 10.4+9

SDE E 6.9+9

SAS S 11+6

SAD D 8.9+8

SABA A 10.4+11

SABC C 4+11

SABED D 8.9+13

SABEB B 6.7+9

SABEF F 3+12 SDS

S 11+8

SDA A 10.4+9

SDE E 6.9+9

SAS S 11+6

SAD D 8.9+8

SABA A 10.4+11

SABED D 8.9+13

SABEB B 6.7+9

SABEF F 3+12

SABCB B 6.7+15 SDS

S 11+8

SDA A 10.4+9

SDE E 6.9+9

SAS S 11+6

SAD D 8.9+8

SABA A 10.4+11

SABCB B 6.7+15

SABED D 8.9+13

SABEB B 6.7+9

SABEFE E 6.9+16

SABEFG G 0+15

70

Hedef: S şehrinden G şehrine gitmek A* Arama

Referanslar

Benzer Belgeler

Data obtained as a result of individual interviews and observations were divided into four categories and evaluated; (1) new investment- depopulation, a circuit

Kamış türü bitkiler doğanın insanlara sunduğu bedava ürünlerdendir. Genellikle ekilmiş sulak alan çalışmalarında kullanılan bu bitkiler ekonomik olarak

Swollen liquid crystals (SLCs) are the class of lyotropic liquid crystals (LLCs) that are usually formed by a quaternary mixture of aqueous phase (brine or metallic salts etc.),

Combining these two techniques, a conductor-backed (CB) CPW-fed loop slot (formed on quartz substrate) sourcing a microfabricated patch antenna on 3-D thick structural SU-8 layers

Katılma reaksiyonlarında, kalkonun 3 konumunda fenil halkası olduğunda 1,4-katılma ürünleri izole edildi, furan halkası olduğunda direkt olarak halkalaşma

Salt kesme gerilmeleri beton yapılarda çoğunlukla görülememesine rağmen betonun kırılması genel olarak kayma ve normal gerilme kombinasyonu sonucu meydana gelmektedir.

2014-2016 ve 2015-2017 Dönemi Orta Vadeli Program’da “GAP, DAP, KOP ve DOKAP bölgelerinde eylem planları kapsamında; özel sektör yatırımlarını destekleyecek ekonomik

Abstract Initial value problem in general relativity is often solved numerically; with only a few exceptions one of which is the “model” solution of Bowen and York where an analyt-