Sonlu Durum Otomatları
Download
Report
Transcript Sonlu Durum Otomatları
SONLU DURUM OTOMATLARI
Yılmaz Kılıçaslan
Sunum Planı
Kısa Tarihçe
Sonlu Durum Otomatlarına Formel Olmayan Giriş
Deterministik Sonlu Durum Otomatı
Deterministik Olmayan Sonlu Durum Otomatı
Boş Geçişli Sonlu Durum Otomatı
Çift Yönlü Sonlu Durum Otomatı
Eş Güçte Sonlu Durum Otomatları
2
Kısa Tarihçe
1930’lar – Turing Makinesi – Karar Problemi
1940’lar
Sonlu Durum Otomatları
1950’ler
Formel Gramerler
1960’lar – ‘Tractability’ Problemi
3
NEHRİN KARŞI YAKASINA GEÇME PROBLEMİ
wgcM
gM→
w c
1.Adım
gM→
w c
2.Adım
←M
g
w
3.Adım
cM→
g
w
4.Adım
←gM
c
g
5.Adım
wM →
c
g
6.Adım
←M
w
c
7.Adım
gM→
w gc M
c
m
m
g
Start
MWGC-Ø
WC-GM
MWC-G
m
g
w
w
c
c
C-MWG
g
W-CMG
g
CMG-W
g
Ø-MWGC
g
c
GM-WC
g
m
m
g
g
WMG-C
c
w
w
G-MWC
w
Açma/Kapama Düğmesi
13
‘then’ Sözcüğünün Tanınması
14
Deterministik Sonlu Durum Otomatı
15
Geçiş Diyagramı
16
‘01’ dizilimlerini içeren katarları tanıyan
deterministik sonlu durum otomatı
17
Çift sayıda 0 ve çift sayıda 1 içeren
sembol katarlarını tanıyan otomat
18
Deterministik Olmayan Sonlu
Durum Otomatları
19
‘01’ ile biten bütün dizilimleri tanıyan
deterministik olmayan sonlu durum otomatı
δ(q0, 0) = {q0, q1}
δ(q0, 1) = {q0}
δ(q1, 0) = {}
δ(q1, 1) = {q1}
δ(q2, 0) = {}
δ(q2, 1) = {}
20
‘web’ ve ‘ebay’ sözcüklerini arayan otomat
21
Problemlerin Çözüm Düzeyi Açısından
Determinizm
a
c
b
q1
c
a
q3
a
c
a
q0
q5
b a
c
b
b
q2
b
c
a
q4
c
b
‘abc’ ve ‘bac’ altdizgilerinden en az birini, en az bir kez
içeren arayan deterministik otomat
a
q0
a
q1
a
b
b
q3
c
q4
b
b
c
q2
a
c
‘abc’ ve ‘bac’ altdizgilerinden en az birini, en az bir kez
içeren arayan deterministik olmayan otomat
Deterministik
olmayan
sonlu durum otomatları,
deterministik sonlu durum
otomatlarına
göre
problemlere daha soyut
düzeyde ve daha kolay
modellenebilir
çözümler
sunabilirler.
Not: Örnekler Prof. Dr.
Ünal
Yarımağan’ın
Özdevinirler Kuramı ve
Biçimsel Diller kitabından
alınmıştır.
22
Boş Geçişli Sonlu Durum Otomatları
23
Sözcük tanımada boş geçiş kullanımı
24
Eş Güçte Sonlu Durum Otomatları
Aşağıdaki otomat türleri tanıyabilecekleri /
üretebilecekleri diller açısından eş güçtedirler:
–
–
–
–
Deterministik Sonlu Durum Otomatları
Deterministik Olmayan Sonlu Durum Otomatları
Boş Geçişli Sonlu Durum Otomatları
Çift Yönlü Sonlu Durum Otomatları
25
Kaynaklar
Hopcroft, J.E, Motwani, R. and J.D. Ullman
(2001), Introduction to Automata Theory,
Languages and Computation, Addison-Wesley.
26