of 45 /45
Intelligent Control System (Fuzzy Control) Yusuf Hendrawan STP., M.App.Life Sc., Ph.D

ryo
• Category

## Documents

• view

108

2

description

Intelligent Control System (Fuzzy Control). Yusuf Hendrawan STP., M.App.Life Sc., Ph.D. What is Intelligence???. [1] IF … THEN … [2] Learning Iteration Process [3] Optimization. Logika Fuzzy : memetakan suatu ruang input ke dalam suatu ruang output. Kotak Hitam. Ruang output. - PowerPoint PPT Presentation

### Transcript of Intelligent Control System (Fuzzy Control)

Intelligent Control System(Fuzzy Control)Yusuf Hendrawan STP., M.App.Life Sc., Ph.D

What is Intelligence???[1] IF … THEN … [2] Learning Iteration Process[3] Optimization

Fuzzy

ANN

GA

Logika Fuzzy : memetakan suatu ruang input ke dalam suatu ruang output

Ruang input

Ruang outputKotak

Hitam

Alasan digunakannya Logika Fuzzy:1. Konsep logika fuzzy mudah dimengerti2. Logika fuzzy sangat sederhana3. Logika fuzzy memiliki toleransi terhadap data-data yang tidak

tepat4. Logika fuzzy mampu memodelkan fungsi-fungsi nonlinear

yang sangat kompleks5. Logika fuzzy dapat membangun dan mengaplikasikan

pengalaman-pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan

6. Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara konvensional

7. Logika fuzzy didasarkan pada bahasa alami

4

Fuzzy Applications• Theory of fuzzy sets and fuzzy logic has been applied to

problems in a variety of fields:▫ pattern recognition, decision support, data mining &

information retrieval, medicine, law, taxonomy, topology, linguistics, automata theory, game theory, etc.

• And more recently fuzzy machines have been developed including:▫ automatic train control, tunnel digging machinery,

home appliances: washing machines, air conditioners, etc.

Slow FastSpeed = 0 Speed = 1

bool speed; get the speed if ( speed == 0) {

// speed is slow} else {

// speed is fast}

FUZZY LOGIC REPRESENTATION For every problem

must represent in terms of fuzzy sets.

What are fuzzy sets?

Slowest

Fastest

Slow

Fast

[ 0.0 – 0.25 ]

[ 0.25 – 0.50 ]

[ 0.50 – 0.75 ]

[ 0.75 – 1.00 ]

FUZZY LOGIC REPRESENTATION

Slowest Fastestfloat speed; get the speed if ((speed >= 0.0)&&(speed < 0.25)) {

// speed is slowest} else if ((speed >= 0.25)&&(speed < 0.5)) {

// speed is slow}else if ((speed >= 0.5)&&(speed < 0.75)) {

// speed is fast}else // speed >= 0.75 && speed < 1.0 {

// speed is fastest}

Slow Fast

•How to represent a fuzzy set in a computer ?The membership function must be determined first.

Fuzzy Expert System

Terminology:Crisp or Fuzzy Logic

•Crisp Logic▫A proposition can be true or false only.

• Bob is a student (true)• Smoking is healthy (false)

▫The degree of truth is 0 or 1.•Fuzzy Logic

▫The degree of truth is between 0 and 1.• William is young (0.3 truth) • Ariel is smart (0.9 truth)

Sistem Fuzzya. Variabel Fuzzy

- Merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy, contoh: umur, temperatur, permintaan, dll

b. Himpunan Fuzzy- Merupakan suatu grup yang mewakili suatu kondisi atau

keadaan tertentu dalam suatu variabel fuzzy- Contoh: 1) variabel umur terbagi menjadi 3 himpunan fuzzy:

MUDA, PAROBAYA, TUA ; 2) variabel temperatur terbagi menjadi 5 himpunan fuzzy: DINGIN, SEJUK, NORMAL, HANGAT, PANAS

c. Semesta Pembicaraan- Keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy, senantiasa bertambah (naik) secara monoton dari krii ke kanan. Contoh: 1) variabel umur [0, +∞]; 2) variabel temperatur [0, 40]

d. Domain- Keseluruhan nilai yang diijinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy. Contoh: 1) MUDA [0, 45]; 2) PAROBAYA [35, 55]; 3) TUA [45, +∞]; 4) DINGIN [0, 20]; 5) SEJUK [15, 25]; 6) NORMAL [20, 30]; 7) HANGAT [25, 35]; 8) PANAS [30, 40]

Fungsi Keanggotaan (Membership Function)

Membership function adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya yang memiliki interval antara 0 sampai 1 melalui pendekatan fungsi.

a. Representasi Linear pemetaan input ke derajat keanggotaannya digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik untuk mendekati suatu konsep yang kurang jelas.

0

1

a bdomain

Derajat keanggotaan

µ[x]

Representasi Linear Naik

]=

0

1

25 35temperatur

Derajat keanggotaan

µ[x]

32

0.7

PANAS

0

1

a bdomain

Derajat keanggotaan

µ[x]

Representasi Linear Turun

=0.7

𝜇 [ 𝑥 ]={(𝑏−𝑥 )(𝑏−𝑎)

;𝑎≤ 𝑥≤𝑏

0 ; 𝑥≥𝑏

0

1

15 30temperatur

Derajat keanggotaan

µ[x]

20

0.667=0.667

DINGIN

•b. Representasi Kurva Segitiga Gabungan antara 2 garis (linear).

]=

0

1

a bdomain

Derajat keanggotaan

µ[x]

Kurva Segitiga

c

0

1

15 30

temperatur

Derajat keanggotaan

µ[x]

25

0.8

23

NORMAL

=0.8

• c. Representasi Kurva Trapesium Sama seperti bentuk segitiga, hanya beberapa titik memiliki

nilai keanggotaan 1

]=

0

1

a bdomain

Derajat keanggotaan

µ[x]

Kurva Trapesium

d

0

1

15 35

temperatur

Derajat keanggotaan

µ[x]

27

0.375

24

NORMAL

=0.375

c

32

• d. Representasi Kurva Bentuk Bahu Daerah yang terletak di tengah-tengah suatu variabel yang dipresentasikan

dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik dan turun.

0

1

0 28

temperature

Derajat keanggotaan

µ[x]

40

DINGIN SEJUK NORMALHANGAT PANAS

Bahu Kiri Bahu Kanan

• d. Representasi Kurva S Kurva PERTUMBUHAN dan PENYUSUTAN merupakan kurva-S atau sigmoid

yang berhubungan dengan kenaikan dan penurunan permukaan secara tak linear

0

1

Derajat keanggotaan

µ[x]

domain

Kurva S PERTUMBUHAN

0

1

Derajat keanggotaan

µ[x]

domain

Kurva S PENYUSUTANba x

μ[x]

2

21

abxb

x

ba x

μ[x]

2

2

abxb

x

•1. Operator AND▫ Berhubungan dengan operasi interseksi pada himpunan mengambil nilai

keanggotaan terkecil.▫ Contoh: Misal nilai keanggotaan 27 tahun pada himpunan MUDA adalah 0.6

(µMUDA[27]=0.6); dan nilai keanggotaan Rp. 2 juta pada himpunan penghasilan TINGGI adalah 0.8 (µGAJITINGGI[2x106=0.8]; maka α-predikat untuk usia MUDA dan berpenghasilan TINGGI adalah 0.6

•2. Operator OR▫ Operator ini berhubungan dengan operasi union pada himpunan mengambil

nilai keanggotaan terbesar.▫ Contoh: Pada contoh diatas α-predikat untuk usia MUDA dan berpenghasilan

•3. Operator NOT▫ Berhubungan dengan operasi komplemen pada himpunan▫ Contoh: nilai α-predikat untuk usia TIDAK MUDA adalah ▫ 1- µMUDA[27]=1-0.6= 0.4

Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy

• Metoda penalaran secara monoton digunakan sebagai dasar untuk teknik implikasi fuzzy digunakan untuk penskalaan fuzzy.

• Jika 2 daerah fuzzy direalisasikan dengan implikasi sederhana: IF x is A THEN y is B; transfer fungsinya y=f((x,A),B); maka sistem fuzzy dapat berjalan tanpa harus melalui komposisi dan dekomposisi fuzzy. Nilai output dapat diestimasi langsung dari nilai keanggotaan yang berhubungan dengan antesedennya.

Penalaran MONOTON

0

1

50 100

Light Intensity

75

0.7

0

1

Photosynthesisumol CO2 m-2 s-1

53

0.7

Fuzzy Inference System•Metode Tsukamoto•Metode Mamdani•Metode Sugeno

Metode Tsukamoto•Setiap konsekuen pada aturan yang

berbentuk IF-THEN harus direpresentasikan dengan suatu himpunan fuzzy dengan fungsi keanggotaan yang monoton;

•Output hasil inferensi dari tiap-tiap aturan diberikan secara tegas (crisp) berdasarkan α-predikat (fire strength);

•Hasil akhirnya diperoleh dengan menggunakan rata-rata terbobot.

Contoh•Misalkan ada 2 variabel input, Var-1(x)

dan Var-2(y), serta 1 variabel output, Var-3(z), dimana Var-1 terbagi atas 2 himpunan yaitu A1 dan A2 terbagi atas 2 himpunan B1 dan B2, Var-3 juga terbagi atas 2 himpunan yaitu C1 dan C2 (C1 dan C2 harus monoton). Ada 2 aturan yang digunakan, yaitu:

•[R1] IF (x is A1) AND (y is B2) THEN (z is C1)

•[R2] IF (x is A2) AND (y is B1) THEN (z is C2)

1

0Var-1

μ[x]A1 B2

μ[y]

1

0Var-2

1

0Var-3

μ[z]C1

α1

z1

A2μ[x]

1

0

Var-1

1

0Var-2

μ[y]B1 C2

μ[z]

1

0Var-3

α2

z2

Rata-rata terbobot

21

2211

zzz

Inferensi dengan menggunakan metode Tsukamoto

Contoh 2• Suatu perusahaan makanan akan memproduksi makanan

jenis ABC. Dari data 1 bulan terakhir, permintaan terbesar mencapai 5000 kemasan/hari, dan permintaan terkecil mencapai 1000 kemasan/hari. Persediaan barang di gudang terbanyak mencapai 600 kemasan/hari, dan terkecil pernah mencapai 100 kemasan/hari. Dengan segala keterbatasannya, sampai saat ini, perusahaan baru mampu memproduksi barang maksimum 7000 kemasan/hari, untuk efisiensi mesin dan SDM tiap hari diharapkan perusahaan memproduksi paling tidak 2000 kemasan/hari. Berapa kemasan makanan jenis ABC yang harus diproduksi, jika jumlah permintaan sebanyak 4000 kemasan, dan persediaan di gudang masih 300 kemasan, apabila proses produksi perusahaan tersebut menggunakan 4 aturan fuzzy sebagai berikut:

Rules•[R1] IF permintaan TURUN And

Persedian BANYAK THEN Produksi Barang BERKURANG

•[R2] IF permintaan TURUN And Persedian SEDIKIT THEN Produksi Barang BERKURANG

•[R3] IF permintaan NAIK And Persedian BANYAK THEN Produksi Barang BERTAMBAH

•[R4] IF permintaan NAIK And Persedian SEDIKIT THEN Produksi Barang BERTAMBAH

TURUN NAIK

1000 50004000

0.25

0.75

μ[x]

Permintaan (kemasan/hari)

Permintaan, terdiri atas 2 himpunan fuzzy, yaitu: NAIK dan TURUN

Fungsi keanggotaan variabel Permintaan

1.00

Nilai Keanggotaan:

25.0400040005000]4000[

TURUNPERMINTAAN

75.0400010004000]4000[

NAIKPERMINTAAN

SEDIKIT BANYAK

100 600300

0.40

0.60

μ[x]

Persediaan (kemasan/hari)

Persediaan, terdiri atas 2 himpunan fuzzy, yaitu: SEDIKIT dan BANYAK

Fungsi keanggotaan variabel Persediaan

1.00

Nilai Keanggotaan:

6.0500300600]300[

SEDIKITPERSEDIAAN

4.0500100300]300[

BANYAKPERSEDIAAN

BERKURANG BERTAMBAH

2000 7000

μ[x]

Produksi (kemasan/hari)

Produksi, terdiri atas 2 himpunan fuzzy, yaitu: BERKURANG dan BERTAMBAH

Fungsi keanggotaan variabel Persediaan

1.00

Mencari Nilai z untuk setiap aturan dengan fungsi MIN karena menggunakan And[R1] α1 = min (μ PERMINTAAN TURUN [4000], μ PERSEDIAAN BANYAK [300] min (0.25; 0.4) = 0.25

THEN Produksi Barang BERKURANG (7000-z)/5000 = 0.25 z1 = 5750

[R2] α2 = min (μ PERMINTAAN TURUN [4000], μ PERSEDIAAN SEDIKIT [300] min(0.25; 0.6) = 0.25

THEN Produksi Barang BERKURANG (7000-z)/5000 = 0.25 z2 = 5750

[R3] α3 = min (μ PERMINTAAN NAIK [4000], μ PERSEDIAAN BANYAK [300] min (0.75; 0.4) = 0.4

THEN Produksi Barang BERTAMBAH (z-2000)/5000 = 0.4 z3= 4000

[R4] α4 = min (μ PERMINTAAN NAIK [4000], μ PERSEDIAAN SEDIKIT [300] min (0.75; 0.6) = 0.6

THEN Produksi Barang BERTAMBAH (z-2000)/5000 = 0.6 z4= 5000

0.25

5750

0.4

4000 5000

0.6

Nilai z dapat dicari dengan cara:

4321

44332211

zzzzz

6.04.025.025.05000*6.04000*4.05750*25.05750*25.0

z

49835.1

7475z

Jadi jumlah makanan yang harus diproduksi sebanyak 4983 kemasan

Metode Mamdani•Metode Mamdani sering dikenal sebagai

metode Max-Min, yang diperkenalkan oleh Ebrahim Mamdani tahun 1975;

•Output didapatkan dari 4 tahapan:1) Pembentukan himpunan Fuzzy2) Aplikasi fungsi implikasi (aturan)3) Komposisi aturan4) Penegasan (defuzzy)

1

04000

μ[x]TURUN BANYAK

μ[y]

1

0300

1

0

μ[z]BERKURANG

α1

[R1] IF Permintaan TURUN And Persediaan BANYAK THEN Produksi Barang BERKURANG

Permintaan Persediaan Produksi Barang

1

0

0.25

μ[z]

[R1] α1 = min (μ PERMINTAAN TURUN [4000], μ PERSEDIAAN BANYAK [300] min (0.25; 0.4) = 0.25

0.250.4

1

04000

μ[x]TURUN SEDIKIT

0300

1

0

μ[z]BERKURANG

α2

[R2] IF Permintaan TURUN And Persediaan SEDIKIT THEN Produksi Barang BERKURANG

Permintaan Persediaan Produksi Barang

1

0

0.25

μ[z]

[R2] α2 = min (μ PERMINTAAN TURUN [4000], μ PERSEDIAAN SEDIKIT [300] min (0.25; 0.6) = 0.25

1

μ[y]

0.250.6

[R3] IF Permintaan NAIK And Persediaan BANYAK THEN Produksi Barang BERTAMBAH[R3] α3 = min (μ PERMINTAAN NAIK[4000], μ PERSEDIAAN BANYAK [300] min (0.75; 0.4) = 0.4

04000

BANYAKμ[y]

1

0300

0

Permintaan Persediaan Produksi Barang

1

0

0.4

μ[z]

0.4

NAIKμ[x]

10.75

BERTAMBAHμ[z]

1

α3

[R4] IF Permintaan NAIK And Persediaan SEDIKIT THEN Produksi Barang BERTAMBAH[R4] α4 = min (μ PERMINTAAN NAIK[4000], μ PERSEDIAAN SEDIKIT [300] min (0.75; 0.6) = 0.6

04000 300

0

Permintaan Persediaan Produksi Barang

1

0

0.6

μ[z]NAIKμ[x]

10.75

BERTAMBAHμ[z]

1α4SEDIKIT

1

μ[y]

0

0.6

Komposisi Antar AturanDari hasil aplikasi fungsi implikasi dari tiap aturan, digunakan metoda MAX untuk melakukan komposisi antar semua aturan

(a1-2000)/5000 = 0.25 a1 = 3250(a2-2000)/5000 = 0.6 a2 = 5000

BERKURANG BERTAMBAH

2000 7000

μ[x]1.00

0.25

5000

0.6

3250a1 a2

μ[z] = 0.25; z≤3250

(z-2000)/5000; 3250≤z≤50000.6; z≥5000

Penegasan (Defuzzy)Salah satu metode penegasan yang bisa digunakan adalah metode centroid. Untuk, itu perlu dihitung momen untuk setiap daerah

Kemudian dihitung luas setiap daerah:A1 = 3250*0.25 = 812.5A2 = (0.25+0.6)*(5000-3250)/2 = 743.75A3 = (7000-5000)*0.6 = 1200

μ[z] = 0.25; z≤3250

(z-2000)/5000; 3250≤z≤50000.6; z≥5000

5.1320312125.0)25.0(1 |32500

3250

0

2 zdzzM

625.31875152.0000067.04.00002.05000

)2000(2 |50003250

5000

3250

235000

3250

2

zzdzzzdzzzM

72000003.0)6.0(3 |70005000

7000

5000

2 zdzzM

74.4247120075.7435.8127200000625.31875155.1320312

z

Menghitung Titik Pusat:

Jadi jumlah makanan yang harus diproduksi sebanyak 4248 kemasan

Metode Sugeno•Penalaran SUGENO hampir sama dengan

MAMDANI;•Diperkenalkan oleh Takagi-Sugeno Kang

tahun 1985;•Output sistem tidak berupa himpunan

fuzzy, melainkan berupa konstanta atau persamaan linier.

Metode Sugeno• Model Fuzzy Sugeno Orde Nol

IF (x1 is A1) ο (x2 is A2) ο (x3 is A3) ο … ο (xN is AN) THEN z=k- dengan Ai adalah himpunan fuzzy ke-i sebagai antesenden, dan k adalah suatu konstanta (tegas) sebagai konsekuen.

• Model Fuzzy Sugeno Orde Satu IF (x1 is A1) ο (x2 is A2) ο (x3 is A3) ο … ο (xN is AN) THEN z=p*x1 + … + pN*xN + q- dengan Ai adalah himpunan fuzzy ke-i sebagai antesenden, dan pi adalah suatu konstanta (tegas) ke-i dan q juga merupakan konstanta dalam konsekuen.

Apabila komposisi aturan menggunakan metode SUGENO, maka defuzzy dilakukan dengan cara mencari nilai rata-ratanya.

AND / OR

Modifikasi AturanPersamaan ditentukan oleh User• [R1] IF permintaan TURUN And Persedian BANYAK

▫ THEN Produksi Barang = Permintaan - Persediaan• [R2] IF permintaan TURUN And Persedian SEDIKIT

▫ THEN Produksi Barang = Permintaan• [R3] IF permintaan NAIK And Persedian BANYAK

▫ THEN Produksi Barang = Permintaan• [R4] IF permintaan NAIK And Persedian SEDIKIT

▫ THEN Produksi Barang = (1.25 * Permintaan) - Persediaan

Mencari Nilai α dan nilai z untuk setiap aturan dengan fungsi MIN karena menggunakan And

[R1] α1 = min (μ PERMINTAAN TURUN [4000], μ PERSEDIAAN BANYAK [300] min (0.25; 0.4) = 0.25

THEN Produksi Barang = Permintaan – Persediaan Nilai z1 = 4000-300 = 3700

[R2] α2 = min (μ PERMINTAAN TURUN [4000], μ PERSEDIAAN SEDIKIT [300] min(0.25; 0.6) = 0.25

THEN Produksi Barang = Permintaan Nilai z2 = 4000

[R3] α3 = min (μ PERMINTAAN NAIK [4000], μ PERSEDIAAN BANYAK [300] min (0.75; 0.4) = 0.4

THEN Produksi Barang = Permintaan Nilai z3 = 4000

[R4] α4 = min (μ PERMINTAAN NAIK [4000], μ PERSEDIAAN SEDIKIT [300] min (0.75; 0.6) = 0.6

THEN Produksi Barang = (1.25 * Permintaan) – Persediaan Nilai z4 = (1.25*4000)-300 = 4700

Nilai z:

4321

44332211

zzzzz

6.04.025.025.04700*6.04000*4.04000*25.03700*25.0

z

42305.1

6345z Jadi jumlah makanan yang harus

diproduksi sebanyak 4230 kemasan

41

Fuzzy Controllers•Used to control a physical system

42

Structure of a Fuzzy Controller

Types of Fuzzy Controllers:- Supervisory Control -

Fuzzy Logic Controller Outputs Set Values for Underlying PID Controllers:

Fuzzification Inference Defuzzification

IF temp=lowAND P=highTHEN A=med

IF ...

Set Values

Measured Variables

Plant

PID

PID

PID

Types of Fuzzy Controllers:- PID Adaptation -

Fuzzy Logic Controller Adapts the P, I, and D Parameter of a Conventional PID Controller:

Fuzzification Inference Defuzzification

IF temp=lowAND P=highTHEN A=med

IF ...

P

Measured Variable

PlantPIDID

Set Point Variable

Command Variable

Types of Fuzzy Controllers:- Fuzzy Intervention - Fuzzy Logic Controller and PID Controller in Parallel:

Fuzzification Inference Defuzzification

IF temp=lowAND P=highTHEN A=med

IF ...

Measured Variable

PlantPID

Set Point Variable

Command Variable