Anda di halaman 1dari 8

FINETE STATE AUTOMATA

KELOMPOK II:

TIARA JUSRAN (2204411772)

ARYA IRENA (2204411791)

TIARA (2204411776)

ANDRE ARDYANSA (2204411782)

PROGRAM STUDI INFORMATIKA


FAKULTAS TEKNIK KOMPUTER
UNIVERSITAS COKROAMINOTO PALOPO TAHUN AJARAN 2023
BAB II
FINETE STATE AUTOMATA

1. Pengertian Finete State Automata


Finite State Automata dapat didefinisikan sebagai model matematika untuk sistem apa pun
yang memiliki jumlah state kondisional terbatas.Contoh nyata dari finite state automata adalah
sekumpulan tombol pada console video game yang terhubung ke serangkaian tindakan tertentu di
dalam game. Ketika pengguna menekan tombol tertentu, sistem tahu untuk mengimplementasikan
tindakan yang sesuai. Finite State Automata juga memiliki 5 elemen yaitu
input, output, himpunan state, relasi state, dan relasi output.
Perlu diketahui bahwa sistem Finite State Automata hanya dapat mengingat state terkini
karena tidak memiliki tempat penyimpanan/memory Finite State Automata pada dasarnya
digunakan untuk mengenali pola. Dibutuhkan string simbol sebagai input dan statusnya berubah
sesuai dengan input tersebut. Ketika ditemukan simbol input yang diinginkan, maka terjadi
transisi.
Pada saat transisi, automata dapat berpindah ke keadaan berikutnya atau tetap dalam
keadaan yang sama. Finite State Automata memiliki dua status, status Terima atau status Tolak.
Ketika string input berhasil diproses, dan automata mencapai state akhir, maka statusnya adalah
Terima, demikian juga sebaliknya.

Finite State Automata dapat didefinisikan dengan persamaan berikut:

M = (Q , Σ , δ , S , F )
Q = himpunan state
Σ = himpunan simbol input
δ = fungsi transisi δ : Q × Σ
S = state awal / initial state , S ∈ Q
F = state akhir, F ⊆ Q
a. Arti Bentuk (Simbol) Pada Graph Transisi Fsa

Mesin Automata pengecek parity ganjil


Biasa disebut graph transisi

Keterangan:
 Initial state ditandai dengan busur tanpa asal state

 lingkaran menyatakan state

 label pada lingkaran adalah state

 busur menyatakan transisi

 label pada busur adalah simbol input lingkaran ganda adalah final state

 lingkaran ganda adalah final state

2. Karakteristik FSA
a. Setiap Finite Automata memiliki keadaan dan transisi yang terbatas.
b. Transisi dari suatu keadaan ke keadaan lainnya dapat bersifat deterministic atau non-
deterministik.
c. Setiap Finite Automata selalu memiliki keadaan awal.
d. Finite Automata dapat memiliki lebih dari suatu keadaan akhir.
e. Jika setelah pemrosesan seluruh string, keadaan akhir dicapai, artinya automata
menerima string tersebut.
Setiap FSA memiliki:
1) Himpunan berhingga (finite) status (state)
a) Satu buah status sebagai status awal (initial state), biasa dinyatakan q0.
b) Beberapa buah status sebagai status akhir (final state).
2) Himpunan berhingga simbol masukan.
3) Fungsi transisi , menentukan status berikutnya dari setiap pasang status dan
sebuah simbol masukan.
Conroh 1 FSA:
Mesin Automata pengecek pariti ganjil
System akan menerima jika jumlah bit 1 adalah ganjil

Maka dapat dituliskan


Q = {GENAP,GANJIL)
Σ = {0,1}
S = GENAP
F = {GANJIL}
δ (GENAP,0) = GENAP
δ (GENAP,1) = GANJIL
δ (GANJIL,0) = GANJIL
δ (GANJIL,1) = GENAP
contoh 2 FSA:

ketika mendapat input 1101, maka urutan state yang terjadi adalah
GENAP 1 GANJIL 1 GENAP 0 GENAP 1 GANJIL
Berakhir pada state ganjil, berarti 1101 diterima oleh mesin
Contoh 3 FSA:

ketika mendapat input 101, maka urutan state yang terjadi adalah
GENAP 1 GANJIL 0 GENAP 1 GENAP
Berakhir pada state genap, berarti 101 ditolak oleh mesin
3. Jenis-jenis FSA
Ada dua jenis Finite State Automata yaitu:
a. Deterministic Finite Automata (DFA)
Dalam Deterministic Finite Automata (DFA), untuk karakter input tertentu, mesin
hanya dapat menuju satu state dan fungsi transisi dipakai pada setiap state untuk setiap
simbol input.
Selain itu, pada DFA, perpindahan state null (atau ε) tidak diperbolehkan, artinya,
DFA tidak dapat mengubah state tanpa karakter input sama sekali.
Sebagai contoh berikut adalah DFA Σ = {0, 1}yang menerima semua string yang
diakhiri dengan 0..

Satu hal penting yang perlu diperhatikan pada jenis DFA adalah terdapat banyak
kemungkinan pada sebuah pola. Namun secara umum, DFA dengan jumlah state
minimum cenderung lebih baik
Contoh 1 DFA:

Q = {q0, q1, q2)


Σ = {a,b}
S = q0
F = {q2}

δ (q0,a) = q0
δ (q0,b) = q1
δ (q1,a) = q1
δ (q1,b) = q2
δ (q2,a) = q1
δ (q2,b) = q2

b. Non-deterministic Finite Automata (NFA)


NFA hampir sama seperti DFA, namun yang membedakan adalah pada beberapa hal
berikut:
1) Diperbolehkan terjadi perpindahan null (or ε), yang berarti NFA dapat berpindah
ke state berikutnya tanpa membaca simbol input.
2) NFA dapat mengirimkan beberapa state untuk input tertentu.
Berikut adalah contoh dari NFA:

Satu hal penting yang perlu diperhatikan pada NFA adalah jika ada jalur untuk
string input yang mengarah ke state akhir, maka string input diterima. Misalnya, di
NFA di atas, ada beberapa jalur untuk string input "00". Karena salah satu jalur
mengarah ke state akhir, "00" diterima oleh NFA.

Perbedaan DFA dan NFA:


1) Deterministic Finite Automata (DFA)
a) Transisi dari 1 state ke state yang lain (transisi tunggal)
b) Tidak ada transisi kosong
c) String diterima jika berakhir difinal state
2) Non-deterministic Finite Automata (NFA)
a) Multi transisi dari 1 state ke state yang lain
b) Boleh terdapat transisi kosong
c) String diterima jika setidaknya 1 dari semua kemungkinan transisi berakhir
pada sebuah final state.
4. Cara Kerja Finite State Automata
Finite State Automata bekerja dengan cara mesin membaca memori masukan
berupa tape yaitu 1 karakter tiap saat (dari kiri ke kanan) menggunakan head baca yang
dikendalikan oleh kotak kendali state berhingga dimana pada mesin terdapat sejumlah
state berhingga.
Finite Automata selalu dalam kondisi yang disebut state awal (initial state) pada
saat Finite Automata mulai membaca tape. Perubahan state terjadi pada mesin ketika
sebuah karakter berikutnya dibaca.
Jadi dapat di simpulkan cara kerja Finite State Automata adalah sebagai berikut:
a. Menerima input string,
b. Membaca (menyerap substring) karakter awal dengan kontrol berada pada state awal,
c. Dengan kontrol dan karakter awal yang telah dibaca, state akan berpindah
ke state baru,
d. Proses berlanjut sampai semua string terserap habis

Anda mungkin juga menyukai