53
4 Feb 2004 CS 3243 - Constraint Satisfaction 1 Kısıtlamalı Sorunlar Constraint Satisfaction Problems

Kısıtlamalı Sorunlar Constraint Satisfaction Problems

  • Upload
    caraf

  • View
    61

  • Download
    3

Embed Size (px)

DESCRIPTION

Kısıtlamalı Sorunlar Constraint Satisfaction Problems. Konular. kısıtlamalı Sorunlar (CSP) CSP’ler için geriye izlemeli arama-( Backtracking search ) CSP’ler için yerel arama. CSP - Biçimsel İfadesi. X1, X2,….Xn değişkenler kümesi C1,C2,…Cm kısıtlamalar kümesi - PowerPoint PPT Presentation

Citation preview

Page 1: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 1

Kısıtlamalı Sorunlar Constraint Satisfaction Problems

Page 2: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 2

Konular

kısıtlamalı Sorunlar (CSP) CSP’ler için geriye izlemeli arama-

(Backtracking search) CSP’ler için yerel arama

Page 3: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 3

CSP - Biçimsel İfadesi

X1, X2,….Xn değişkenler kümesi C1,C2,…Cm kısıtlamalar kümesi Her bir Xi için mümkün değerler alanı

Di Değerlerin değişkenlere atanması

Page 4: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 4

Kısıtlamalı sorunlar(CSPs)

Standart arama sorunu: Durum- ardıl fonksiyonunu, sezgisellik

fonksiyonunu ve amaç denemesini destekleyen veri yapısı

CSP: Durum Di alanından değerler alan Xi

değişkenleri ile tanımlanır Standart arama algoritmalarından daha

güçlü olan genel amaçlı algoritmalar oluşturulmasına olanak sağlar

Page 5: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 5

Atama

Hiçbir kısıtlamayı bozmayan atamaya uyumlu veya legal atama denir

Tam atamada tüm değişkenler kullanılmış oluyor

CSP’nin çözümü- Tüm kısıtlamaları tatmineden tam atama

Page 6: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 6

CSP-arama sorunu Başlangıç Durum: boş atama {}; hiçbir değişkene değer

atanmamış Ardıl işlev: değer atanmamış her hangi değişkene, önceki

atamalarla uyuşmazlık oluşturmayan değer atana bilir Amaç Denemesi: atama tamdır ve kısıtlamalar

sağlanmıştır Yol Değeri: her bir adım için değer (=1)

N değişkenli sorun için her bir çözüm n’ci derinlikte meydana çıkıyor derinine arama yöntemini kullanmalı

Page 7: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 7

Örnek: Harita renkleme Deişkenker WA, NT, Q, NSW, V,

SA, T Alanlar Di = {kırmızı,yeşil,mavi} Sınırlamalar: komşu bölgeler

farklı renklerle boyanmalıdır

Yani WA ≠ NT, veya (WA,NT) için {(kırmızı,yeşil),(kırmızı,mavi),(yeşil,kırmızı),(yeşil,mavi),(mavi,kırmızı), (mavi, yeşil)} kümeleri yolverilendir

WANT

SAQ

NSWV

T

Birden fazla mümkün çözümler mevcuttur:

{WA=kırmızı, NT=yeşil, Q=kırmızı, NSW=yeşil, V=kırmızı, SA=mavi, T=kırmızı}

Page 8: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 8

Örnek: Harita renkleme (çözüm)

Çözümler tam ve atamalar uyumludur (kısıtlamalar bozulmuyor);

WA = kırmızı, NT = yeşil, Q = kırmızı, NSW = yeşil, V = kırmızı, SA = mavi,T = yeşil

Page 9: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 9

Kısıtlamalar Grafı

NT

WA

SA

Q

NSW

W

T

Düğümler: değişkenler

Kenarlar: kısıtlamalar

Page 10: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 10

CSP türleri

En basiti: Değişkenler diskret ve sonlu alanlıdır Sonlu alan: n değişken

Her bir değişkenin max alan boyutu d ; Mümkün tam atamalar sayısı O(dn)

İkili CSP’ler’de değişkenler “doğru” veya “yanlış” değer alıyor

Sonsuz alan: Tam sayılar, satır değişkenleri ve s. Görev planlama- değişkenler her bir görevin başlama ve bitiş

günleridir Sınırlama dili gerekmektedir: StartJob1 + 5 ≤ StartJob3

sürekli değişkenler Teleskopla gözlemlerin başlanması/ bitmesi zamanları

Page 11: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 11

kısıtlamaların Türleri

Tek terimli (Unary) kısıtlamalar tek değişkeni kapsar SA ≠ green(Güney Avustraliya ’nın rengi yeşil olmamalıdır)

İkili (binary) kısıtlamalar değişkenler çiftini kapsar SA ≠ WA

Yüksek dereceli kısıtlamalar 3 veya daha çok değişkeni kapsar Şifreli aritmetik sorunlar (cryptarithmetic column

constraints)

Page 12: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 12

kısıtlamaların Türleri (devamı)

Mutlak (absolute) kısıtlamalar- bu kısıtlamanın bozulması potansiyel çözümü engeller

Tercih (preference) kıstlamaları -hangi kısıtlamanın öncelikli olacağı gösteriliyor

Ders programında hocaların isteklerinin dikkate alınması

Sınırlamalara belirli ağırlıklar verile bilir

Page 13: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 13

Gerçek dünya CSP sorunları

Atama sorunları Hangi öğretmenler hangi sınıfta

Zaman paylaşımı sorunları Hangi sınıf ne zaman ve nerede

Nakliyat sorunları İmalat planlama

Gerçek dünya sorunlarının büyük kısmı gerçek değerli değişkenlidir

Page 14: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 14

Örnek: Cryptarithmetic

Değişkenler: F T U W R O X1 X2 X3

alanlar: {0,1,2,3,4,5,6,7,8,9} Sınırlamalar: Alldiff (F,T,U,W,R,O)

X3 = F, T ≠ 0, F ≠ 0

O + O = R + 10 · X1 X1 + W + W = U + 10 · X2 X2 + T + T = O + 10 · X3

Kareler, uygun değişkenler arasındaki kısıtlamaları gösteriyor

Page 15: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 15

CSP sorunlarının çözümü:

Her bir arama algoritması ile bu sorunu çözmek mümkündür.

enine aramada en üst seviyede dallanma etkeni nd (n değerler,d değişkenler sayısıdır)

n!d -yapraklı ağaç (tüm mümkün tam atamalar sayısı d )

Sırabağımsızlık (commutativity)-hareketler kümesinin uygulanma ardışıklığı sonucu etkilemez

Değerleri değişkenlere atamakla , atama sırasına bağlı olmadan aynı kısmı atamalara ulaşıla biliyor

n n

Page 16: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 16

Geriye İzleme

Tüm CSP arama algoritmaları, arama ağacında düğümün ardıllarını, tek bir değişkene mümkün atamaları gözden geçirmekle üretiyor Örneğin, kök düğümde SA=kırmızı,SA=yeşil veya

SA=mavi arasında seçim yapa bileriz. Geriye İzlemeli Arama- Derinine arama Geriye izleme yönteminde her adımda yalnız

bir değişken seçilir ve değişkene atanacak legal değer bulunmadıkta geriye dönüş yapılıyor

Page 17: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 17

Geriye İzleme (devamı) Değişken atamaları

sırabağımsızdır, yani“[ WA = kırmızı ise o zaman NT

= yeşil]” ile “[ NT = yeşil ise o zaman WA = kırmızı ]” aynıdır

Her bir düğümde yalnız bir değişkene atama dikkate alınıyor

Tek değerli atamalı CSP’ler için derinine arama yöntemine geriye izlemeli arama denir

Geriye izlemeli arama CSP’ler için temel bilgisiz algoritmadır

Page 18: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 18

Geriye İzleme algoritması

Page 19: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 19

Geriye izleme örneği

Page 20: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 20

Geriye izleme örneği

Page 21: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 21

Geriye izleme örneği

Page 22: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 22

Geriye izleme örneği

Page 23: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 23

Sorunlar:

Sonraki atama hangi değişkene yapılmalıdır; değerlerin sınanması sırası nasıl olmalıdır?

Güncel değişkene yapılmış atama, henüz atama yapılmamış diğer değişkenler için ne gibi sonuçlar doğurur?

Değişkene atana bilecek hiçbir legal değerin bulunmadığı durum oluşmuşsa, sonraki arama sürecinde bu hatanın tekrarlanmasından kaçınmak mümkün mü?

Kaçınılmaz başarısızlıkları önceden farketmek mümkün mü?

Page 24: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 24

CSP sezgisel algoritmaları

En az kalmış değerler (minimum remaining values) –MRV

Bilginin kısıtlamalar boyunca yayılması

Kısıtlamaların Yayılması En az çelişki

Page 25: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 25

Değişkenlerin ve değerlerin sırası

var<-Select-Unassigned_Variable(Variable(csp),assignment,csp)

Geriye izleme algoritmasında sonraki atanmamış değişken variable(csp) listesinden rastgele seçiliyor. Bu ise her zaman etkili değildir.

Variable(WA,NT,Q,SA,NSW,V,T)

Page 26: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 26

En az kalan değerler -minimum remaining values(MRV)

En az “legal” değeri kalmış değişkenin seçilmesi

Eğer X değişkeninin sıfır sayıda legal değeri kalmışsa, MRV sezgiseli X’i seçecek ve başarısızlığı fark edecek. X’in seçilmesi, başarısız çözüme götürecek diğer değişkenlere atamaları engelleyecek

Page 27: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 27

En az kalan değerler

En az mümkün değerli değişkeni seç

Örn., WA=kırmızı ve NT=yeşil atamalarından sonra SA için yalnız mavi renk seçimi kalıyor. Bu anlamda, Q’ye atama yapılmadan önce SA=mavi ataması yapılması daha etkili olurdu. Bundan sonra, Q, NSW ve V için de atamalar kolaylaşır

Ana fikir: en az mümkün değerleri bulunan değişkeni seçmeli

Page 28: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 28

Derece sezgiselliği

MRV sezgiseli ilk hangi değişkenin seçileceğini belirleyemez.

Örn., Haritada her bölge için başlangıçta 3 renk vardır ve bu bölgelerden hangisinin seçilmesi sorundur

Bu halde derece sezgiselliği kullanıla bilir. Diğer atanmamış değişkenlerle oranda daha çok sayıda sınırlamaları bulunan değişken seçile bilir.

SA için derece 5, T için 0, diğerleri için 2 veya 3’tür

(örnekte: sınırlama derecesi- komşu ülkeler sayısı

Page 29: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 29

Derece sezgiselliği

Yüksek derece sezgiselliği bulunan değişkenin seçilmesi ile sonraki adımlarda dallanmaların sayısını azaltmak mümkündür

Page 30: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 30

Değerlerin Sırasının Seçilmesi

Değişken seçildikten sonra atanacak değerlerin sırası belirlenmelidir

Bunun için en az kısıtlayıcı değer sezgiseli seçile bilir.

Bu sezgisele göre, kısıtlamalar grafında komşu değişkenler için en az seçim durumuna yol açmayacak değer seçilir

Seçilen değer, kalan değişkenlerde en az değer kalmasını engeller

Sonraki atamalarda esneklik sağlar

Page 31: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 31

En az kısıtlayıcı değer

Örn., WA=kırmızı ve NT=yeşil kısmı atamalarından sonra, bir sonraki seçimin Q için yapılacağını varsayalım. “mavi” kötü seçim olacak, çünkü o, Q’nün komşusu SA için son mümkün değeri de eleyecek. En az kısıtlayıcı değer sezgiseli “kırmızı”yı tercih edecektir.

Bu sezgiselliklerin birleşimi ile 1000 vezir sorununu çözmek mümkündür

Page 32: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 32

İleriyi yoklama-forward checking

X değişkenine atama yapıldığı zaman, onunla komşu olan tüm Y değişkenlerine de göz atılacak.

Y’lerin değer alanlarından, X için seçilmiş değer ile tutarsızlık oluşturan tüm değerler silinecektir

Page 33: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 33

İleriyi yoklama

Ana fikir: Atanmamış değişkenler için

kalan legal değerlerin yolunu hafızada saklamalı (kaydetmeli)

Değişkenlerden her hangi birisinin legal değeri kalmamışsa arama işlemini kesmeli

Page 34: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 34

İleriyi Yoklama

Ana fikir: Atanmamış değişkenler için kalan legal

değerlerin yolunu kaydetmeli (saklamalı) Her hangi değişkenin legal değeri yoksa

arama işlemini kesmeli

Wa=kırmızı oldukta NT ve SA için 2 renk kalıyor

Page 35: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 35

İleriyi Yoklama

Ana fikir: Atanmamış değişkenler için kalan legal

değerlerin yolunu kaydetmeli (saklamalı) Here hangi değişkenin legal değeri yoksa

arama işlemini kesmeli

Q=yeşil oldukta NT ve SA için bir değer (mavi) kalıyor

WA ve Q’den bilgiyi yaymakla NT ve SA’nın dallanmalarını tamamen elemiş oluruz

Page 36: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 36

İleriyi yoklama Ana fikir:

Atanmamış değişkenler için kalan legal değerlerin yolunu kaydetmeli (saklamalı)

Her hangi değişkenin legal değeri yoksa arama işlemini kesmeli

V= mavi olursa SA için değerler kümesi boş olacak

İleriyi yoklama sezgiseli “WA=kırmızı,Q=yeşil,V=mavi” kısmı atamasının tutarsız olduğunu meydana çıkaracak ve anında geriye izleme yapılacaktır

Page 37: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 37

kısıtlamaların yayılması-Constraint propagation

İleriyi yoklama sezgiseli bilgiyi atama yapılmış değişkenlerden atama yapılmamış değişkenlere yayıyor. Ama tüm başarısızlıkların erken farkedilmesini sağlamaz:

Örnek: WA=kırmızı ve Q=yeşıl olması , NT ve SA’nın mavi olmasını zorunlu kılıyor

NT ve SA her ikisi mavi olamaz! kısıtlamaların yayılması , bir değişkene

sınırlamanın etkilerinin diğer değişkenlere de yayılmasını sağlar

Page 38: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 38

Kısıtlamaların yayılması

kısıtlamaların yayılması sezgiseli bir değişken için kısıtlamaları diğer değişkenlere de yayacak. Yayılma WA ve Q’den NT ve SA üzerine gerçekleştiriliyor (ileriyi yoklama). Sonra ise yayılma, tutarsızlığı meydana çıkarmak için NT ve SA arasındaki sınırlama üzerine aktarılıyor

Page 39: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 39

Kenarların tutarlılığı-arc consistency

Yayılmanın en basit biçimi her kenarın tutarlı yapılmasıdır

Eğer X’teki her bir x değeri için Y’de her hangi yolverilen y değeri varsa X Y kenarı tutarlıdır

SA{mavi} NSW{mavi, kırmızı}

SA->NSW tutarlıdır

Page 40: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 40

Kenarların tutarlılığı

Yayılmanın en basit biçimi her kenarın tutarlı yapılmasıdır

Eğer X’teki her bir x değeri için Y’de her hangi yolverilen y değeri varsa X Y kenarı tutarlıdır

SA{mavi} NSW{mavi, kırmızı}NSW ->SA tutarsızdır

Page 41: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 41

Kenarların tutarlılığı Yayılmanın en basit biçimi her kenarın tutarlı

yapılmasıdır Eğer X’teki her bir x değeri için Y’de her

hangi yolverilen y değeri varsa X Y kenarı tutarlıdır

V{kırmızı,yeşil,mavi} NSW{mavi, kırmızı} V->NSW tutarlıdır; her renk ile komşunun en

az bir rengi tutarlıdır

Page 42: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 42

Kenarların tutarlılığı Yayılmanın en basit biçimi her kenarın tutarlı

yapılmasıdır Eğer X’teki her bir x değeri için Y’de her

hangi yolverilen y değeri varsa X Y kenarı tutarlıdır

Kenarların tutarlılığı, ileriyi yoklama yönteminden daha önce başarısızlığı fark ede bilir

İşlemlerden önce veya her atamadan sonra çalıştırıla bilir

Page 43: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 43

Kenarların tutarsızlığı

SA->NSW tutarlıdır (SA{mavi} NSW{mavi, kırmızı})

NSW->SA tutarsızdır;NSW alanından “mavi” çıkarılmalı

SA->NT’ye arama sürecinde kenarların tutarlılığı uygulana biler. Her ikisinin alanı “mavi”. Tutarsızlığı önlemek için SA’dan “mavi” çıkarılırsa alan boş olacak ve tutarsızlık erken fark edilecek

Page 44: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 44

Tutarlı Kenarlar algoritması- AC-3

Zaman karmaşıklığı: O(n2d3)

Page 45: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 45

CSP için yerel arama

• Pek çok CSP sorunu için yerel arama etkilidir

•Tam-durum (complete-state) ifadesi kullanılıyor: başlangıç durumda her değişkene değer atanıyor. Ardıl fonksiyonu olarak her adımda bir değişkenin değerinin değiştirilmesi kullanılıyor

•8 vezir sorununda

• başlangıç durum: her vezirin rasgele olarak bir sütunda yerleştirilmesi

•Ardıl fonksiyonu: her hangi bir vezirin kendi sütununda yerini değiştirmesi

Page 46: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 46

CSP’ler için yerel arama (devamı)

Yerel arama yönteminin CSP’ye uygulanması: Tatmin etmeyen kısıtlamalı durumlara izin veriliyor İşlem yapmakla değişkenlere değerler yeniden atanıyor

Değişken seçimi: her hangi çelişkili değişkenin rasgele seçimi

En az çelişki sezgiseli ile değer seçimi: Sınırlamaları en az bozan değeri seçmeli

Page 47: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 47

En az çelişki (MIN-CONFLICTS) Sezgiseli

Değişkene yeni değer atamak için bir yol, diğer değişkenlerle en az sayıda çelişki oluşturacak değerin seçilmesidir -en az çelişki sezgiseli

Sezgisel, özellikle başlangıç durum verildikte çok etkilidir-Sorunun boyutuna bağlı değil

Başlangıç durum verildikte milyon vezir sorununu ortalama 50 adımda çözmek mümkündür

Page 48: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 48

Yerel arama için MinConflicts algoritması

Function MIN-CONFLİCTS(csp,max-steps) returns çözüm, veya başarısız sonuç

inputs csp, kısıtlamaları tatmineden sorun max-steps, csp için tam atamanın

yapılmasını sağlayan adımlar sayısıFor i=1 to max-steps doIf current cp için çözüm ise then return currentvar- VARİABLE[csp]’den tesadüfi seçilmiş çelişki

(conflicted) değişkenValue- CONFLİCTS(var,v, current,csp) fonksiyonunu

minimalleştiren var değişkeninin değeri set var=value in currentreturn failure

Page 49: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 49

8 Vezir Sorunu

1

2

1

3

2

2

2

2

Page 50: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 50

8 Vezir Sorunu

Page 51: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 51

8 Vezir Sorunu

2

1

2

2

1

2

3

2

Page 52: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

8 vezir sorunu-demo

http://www.animatedrecursion.com/advanced/the_eight_queens_problem.html

4 Feb 2004CS 3243 - Constraint

Satisfaction 52

Page 53: Kısıtlamalı   Sorunlar  Constraint  Satisfaction Problems

4 Feb 2004CS 3243 - Constraint

Satisfaction 53

Özet CSP’ler aşağıdaki sorunların özel türüdür:

Durumlar, belirlenmiş değişkenler kümesinin değerleri ile tanımlanır

Amaç denemesi, değişkenin değerlerine koyulan sınırlamalarla tanımlanır

Geri izleme = her düğümde bir değişkene değer atamakla derinine arama

Değişkenlerin sırasını ve değer seçimini sezgisel yöntemlerle gerçekleştirmek çözüme yardım eder

İleriyi yoklama, sonradan oluşa bilecek başarısızlıklara neden olacak atamaları önler

kısıtlamaların yayılması (kenarların tutarlığı) değerleri sınırlamağa ve tutarsızlıkları ortaya çıkarmağa yardım eder

İteratif en az zıtlık (min-conflicts) pratik olarak etkilidir