Penulis:
Yandra Arkeman
Nisa Zahra
1
KATA PENGANTAR
Puji dan syukur kami panjatkan pada Allah Tuhan Yang Maha Berilmu.
Dengan karunia dan izin-Nya-lah kami dapat menulis dan berbagi
pengetahuan tentang teori dan dasar optimasi untuk fungsi nonlinier. Tiada
ilmu bagi kita kecuali apa yang telah diajarkan-Nya kepada kita.
Dengan bahasa yang ringan dan mudah, buku ini mencoba membahas
tentang berbagai teknik optimasi dasar yang dikhususkan bagi problema
nonlinier. Buku ini ditujukan kepada pembaca umum yang ingin mendalami
teori optimasi untuk fungsi nonlinier dan disusun berdasarkan berbagai
referensi penunjang. Secara lebih rinci, bahasan yang akan dilakukan
diantaranya: ruang lingkup dan falsafah teknik optimasi, persamaan
nonlinier, optimasi fungsi satu variabel tanpa kendala, optimasi fungsi
multivariabel tanpa kendala, optimasi fungsi dengan kendala persamaan
dan pertidaksamaan, dan ulasan ringkas mengenai program Matlab.
Beberapa contoh soal dan latihan soal pada setiap bab disajikan untuk
mendukung pemahaman pembaca terhadap materi yang diberikan.
2
Setelah memahami buku ini, pembaca diharapkan dapat memahami teori
dan model teknik optimasi, serta mampu menerapkannya dalam berbagai
permasalahan di dunia bisnis maupun industri, khususnya agroindustri. Tak
lupa penulis mengucapkan terima kasih yang sebesar-besarnya kepada para
asisten responsi Mata KuliahTeknik Optimasi di Departemen Teknologi
Industri Pertanian (TIN), Institut Pertanian Bogor angkatan 46: Rizky Amelia,
Devina Kurniati, Elisabeth Yan Vivi, Lianitha Kurniawati, serta para asisten
responsi Teknik Optimasi TIN angkatan 45, 44, dan 43 yang telah turut
membantu penulisan buku ini sehingga dapat tersaji kepada pembaca
secara luas.
Penulis
3
1. PENDAHULUAN
Optimasi merupakan upaya pencarian hasil terbaik, dalam hal ini yang
paling optimal, baik itu berupa usaha meminimumkan atau
memaksimumkan, dari pilihan hasil yang ada. Proses optimasi ini biasanya
dibatasi oleh keterbatasan sumber daya atau kondisi, disebut sebagai
kendala. Sebagai contoh, berapa unit produk sepatu dan tas berbahan kulit
lembu yang harus diproduksi untuk memaksimumkan keuntungan, dengan
memperhitungkan keterbatasan bahan baku kulit lembu dan keterbatasan
jam tenaga kerja per minggunya. Teknik optimasi merupakan berbagai
metode dan teknik yang digunakan untuk memecahkan masalah optimasi
baik itu linier maupun nonlinier. Pada umumnya, berbagai teknik optimasi
tersebut menghendaki perumusan masalah yang dihadapi ke dalam sebuah
model matematis, dalam hal ini dapat berupa fungsi, baik linier maupun
tidak linier (nonlinier) tergantung dari masing-masing permasalahan
optimasi tersebut. Untuk selanjutnya, model matematis permasalahan
tersebut dapat dicari nilai optimumnya dengan menggunakan bantuan
program komputer.
Teknik optimasi nonlinier merupakan salah satu cabang ilmu yang banyak
digunakan di berbagai bidang saat ini dan di masa depan. Para insinyur,
ilmuwan dan praktisi di bidang mesin, elektronika, bioproses, kedokteran
sipil, teknik fisika, ketahanan pangan, bisnis dan agroindustri banyak
menghadapi masalah-masalah optimasi yang kompleks, tidak linier
(nonlinier) dan berskala besar dalam kehidupan mereka sehari-hari.
4
Masalah-masalah optimasi yang rumit seperti di atas tentu saja tidak dapat
dipecahkan dengan teknik optimasi konvensional. Hal ini disebabkan karena
teknik optimasi konvensional umumnya bersifat linier dan hanya bisa
digunakan dengan berbagai asumsi yang tidak fleksibel.
Buku ini membahas secara ringkas tentang teori dan aplikasi teknik
optimasi nonlinier. Pemahaman mengenai teori dan praktek optimasi
penting dimiliki agar dapat melakukan proses optimasi secara efektif.
Beberapa teknik optimasi nonlinier yang berpotensi menawarkan hasil yang
dapat dipercaya tersaji pada buku ini. Pemahaman terhadap teknik
optimasi sesungguhnya tidak memerlukan pengetahuan matematika yang
kompleks. Beberapa rumus dari kalkulus dan aljabar linear merupakan
persyaratan dasar dalam memahami teori, teknik komputasi dan
pemahaman mengenai bagaimana teknik optimasi dapat bekerja. Sebagai
langkah awal, formulasi permasalahan (problem formulation) memiliki
pengaruh yang besar terhadap kemudahan penyelesaian masalah. Adapun
komponen penting dalam permasalahan optimasi antara lain:
5
Fungsi tujuan (objective function) adalah fungsi yang menggambarkan
tujuan sasaran di dalam permasalahan linier programming maupun non
linier programming yang berkaitan dengan pengaturan secara optimal
sumberdaya-sumberdaya, misalnya, untuk memperoleh keuntungan
maksimal atau biaya minimal. Pada umumnya nilai yang akan dioptimalkan
dinyatakan sebagai 𝒁.Fungsi tujuan merepresentasikan keuntungan (profit),
biaya (cost), energi, yield, dll, dalam kaitannya dengan variabel dari proses
yang sedang dianalisa. Proses model dan constraints menggambarkan
hubungan antara variabel kunci.
6
linier adalah dengan metode simplex. Beberapa program komputer yang
dapat digunakan untuk memecahkan masalah linear programming
diantaranya POM, MATLAB, Ms. Excel, dan lain-lain.
Di bidang bisnis dan agroindustri, hasil dari upaya optimasi menjadi sangat
penting karena dapat mempengaruhi besarnya laba, tingkat efisiensi
produksi, maupun menjadi bahan pertimbangan penting dalam
pengambilan berbagai keputusan. Sebagai contoh, penentuan lokasi
sumber daya, lokasi pemasok, kapasitas gudang dan jalur distribusi suatu
produk hasil pertanian untuk meminimumkan biaya transportasi
merupakan upaya optimasi di bidang Supply Chain Management (SCM).
7
Contoh lain kegiatan optimasi yang dapat diterapkan dalam berbagai
proyek, diantaranya:
1. Analitik
Metode analitik merupakan metode menghitung titik optimum
(titik ekstrim) menggunakan syarat perlu fungsi dan perhitungan
turunan fungsi. Metode ini disebut sebagai metode indirect
(metode tak langsung), karena secara tak langsung mencari titik
optimum dari sebuah fungsi, yaitu dengan cara menurunkan fungsi
tersebut (memanfaatkan turunan fungsi/metode derivative).
Metode analitik mudah digunakan dalam memecahkan
permasalahan optimasi sederhana, namun sulit digunakan untuk
menyelesaikan masalah dengan fungsi tujuan nonlinear yang
memiliki lebih dari satu variabel.
8
2. Numerik
Dengan berkembangnya ilmu komputer modern, pencarian titik
optimum pada sebuah fungsi yang lebih kompleks dapat
diselesaikan secara iterative (berulang-ulang), atau numeric
(metode pencarian titik ekstremum dengan menggunakan
penyelesaian fungsi dan terkadang juga menggunakan turunan
fungsi)
Metode ini dapat disebut sebagai metode direct (metode langsung),
karena secara langsung mencari titik optimum pada suatu fungsi
dengan pencarian titik per titik 𝑥, secara berulang.
3. Heuristik
Metode ini mengacu pada experience-based techniques untuk
pemecahan masalah, termasuk penyelesaian masalah optimasi.
Metode ini mencari titik optimum atau yang mendekati optimum
dengan aturan (rules) tertentu. Metode heuristik biasanya
digunakan untuk menyelesaikan fungsi yang kompleks.
9
2. KONSEP DASAR OPTIMASI
Sebuah fungsi dengan satu variabel x disebut kontinu pada sebuah titik 𝑥0 ,
jika:
𝑓 𝑥0 𝑎𝑑𝑎
10
𝑓(𝑥1 ) 𝑓(𝑥2 )
𝑥1 𝑥2
Kasus A Kasus B
Fungsi unimodal merupakan fungsi 𝑓(𝑥) yang memiliki satu titik ekstremum
(minimum atau maksimum), sedangkan fungsi multimodal merupakan
fungsi yang memiliki dua atau lebih titik ekstremum (Gambar 2 dan Gambar
3).
11
𝑓(𝑥)
𝑥1 𝑥2 𝑥∗ 𝑥3
Gambar 2. Fungsi unimodal
𝑓(𝑥)
𝑥1 𝑥2 𝑥3 𝑥4 𝑥5 𝑥6 𝑥7 x
Jika turunan pertama fungsi 𝑓(𝑥), yaitu 𝑓′(𝑥)sama dengan nol (𝑓′ 𝑥 = 0)
pada titik ekstremum, maka titik tersebut itu disebut sebagai titik stasioner
(dan bisa jadi merupakan titik minimum atau maksimum ataupun titik
belok/titik pelana/saddle point). Fungsi multimodal memiliki beberapa titik
stasioner. Global ekstremum merupakan titik paling tinggi atau paling
rendah di antara sekumpulan titik ekstremum. Lokal ekstremum
merupakan semua titik ekstremum yang terdapat pada fungsi. Perbedaan
kedua jenis ekstremum ini sangat berpengaruh pada saat pemecahan
masalah optimasi fungsi nonlinier. Pencarian titik optimum dengan
12
beberapa metode numerik biasanya berhenti pada titik ekstremum lokal,
padahal mungkin bukan titik tersebut yang sebenarnya dicari.
𝑓(𝑥) 𝑓(𝑥)
𝑥 𝑥
𝑥1 𝑥2 𝑥1 𝑥2
Jika nilai 𝑓 𝑥 pada garis lurus (pada Gambar 4 digambarkan sebagai garis
lurus putus-putus) yang menghubungkan setiap 𝑓(𝑥1 ) dan 𝑓(𝑥2 ) untuk
setiap pasang 𝑥1 dan 𝑥2 terletak pada atau di bawah nilai fungsinya sendiri,
maka fungsi tersebut pada range 𝑥1 hingga 𝑥2 adalah concave (cekung
terhadap sumbu 𝒙 ). Jika nilai 𝑓 𝑥 pada garis lurus antara 𝑓(𝑥1 ) dan
𝑓(𝑥2 )terletak pada atau di atas nilai fungsinya sendiri, maka fungsi tersebut
13
pada range 𝑥1 hingga 𝑥2 adalah fungsi convex (cembung terhadap sumbu 𝒙)
(Edgar & Himmelblau 1989).
𝑓′(𝑥) 𝑓′(𝑥)
0 𝑥 0 𝑥
𝑓′′(𝑥) 𝑓′′(𝑥)
0 𝑥 0 𝑥
14
Dalam pencarian titik optimasi, digunakan turunan pertama
fungsi𝒇(𝒙)yang disebut denganvektor gradien 𝛁𝒇(𝒙). Turunan kedua dari
fungsi 𝑓(𝑥) adalah ∇2 𝑓(𝑥) jika 𝑥 sebuah vektor. ∇2 𝑓(𝑥) disebut Hessian
Matrix (matriks Hess) dan sering dinotasikan dengan simbol H(𝑥)atau H.
Jika nilai vektor gradien sama dengan nol ( ∇𝑓(𝑥) = 0 ) pada titik 𝑥 ∗ tertentu,
maka titik tersebut disebut sebagai titik stasioner (di mana bisa jadi tercapai
titik ekstremum, yaitu bisa titik minimum, titik maksimum, atau bukan
keduanya; yaitu titik pelana/titik sadel/saddle point).
Jika terdapat suatu fungsi 𝑓(𝑥) dengan variabel sejumlah 𝑛, maka vektor
gradiennya:
𝜕𝑓 𝑥1 , 𝑥2 , … 𝑥𝑛
𝜕𝑥1
𝜕𝑓 𝑥1 , 𝑥2 , … 𝑥𝑛
𝜕𝑥2
∇𝑓 𝑥1 , 𝑥2 , … 𝑥𝑛 = ..
..
..
𝜕𝑓 𝑥1 , 𝑥2 , . . 𝑥𝑛
𝜕𝑥𝑛
15
𝜕 2 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 )
…
𝜕 2 𝑥1 𝜕𝑥1 𝜕𝑥2 𝜕𝑥1 𝜕𝑥𝑛
2 2 2
𝜕 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 ) 𝜕 𝑓 𝑥1 , 𝑥2 , . . 𝑥𝑛 𝜕 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 )
…
𝜕𝑥2 𝜕𝑥1 𝜕 2 𝑥2 𝜕𝑥2 𝜕𝑥𝑛
H𝑥 = ..
..
..
𝜕 2 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 ) 𝜕 2 𝑓 𝑥1 , 𝑥2 , . . 𝑥𝑛 … 𝜕 2 𝑓(𝑥1 , 𝑥2 , . . 𝑥𝑛 )
𝜕𝑥𝑛 𝜕𝑥1 𝜕𝑥𝑛 𝜕𝑥2 𝜕 2 𝑥𝑛
Contoh Soal 2. 1
𝑓 𝑥, y = 6𝑥 2 + 𝑦 3 + 8𝑥𝑦 + 3𝑦 2
Jawab :
𝜕𝑓(𝑥, 𝑦)
𝜕𝑥 12𝑥 + 8𝑦
∇𝑓 𝑥, 𝑦 = 𝜕𝑓(𝑥, 𝑦) =
3𝑦 2 + 8𝑥 + 6𝑦
𝜕𝑦
𝜕 2 𝑓(𝑥, 𝑦) 𝜕 2 𝑓(𝑥, 𝑦)
𝜕2 𝑥 𝜕𝑥𝜕𝑦 12 8
H𝑥 = 2 =
2
𝜕 𝑓(𝑥, 𝑦) 𝜕 𝑓(𝑥, 𝑦) 8 6𝑦 +6
𝜕𝑦𝜕𝑥 𝜕2 𝑦
16
------------------------------------------------------------------------------------------
Contoh Soal 2. 2
𝑓 𝑥1 , 𝑥2 = −5𝑥1 2 + 𝑥2 2 − 6𝑥1 + 6
Jawab :
𝜕𝑓(𝑥1 , 𝑥2 )
𝜕𝑥1 −10𝑥1 − 6
∇𝑓 𝑥1 , 𝑥2 = =
𝜕𝑓(𝑥1 , 𝑥2 ) 2𝑥2
𝜕𝑥2
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 −10 0
H𝑥 = 2 2 =
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 𝑓(𝑥1 , 𝑥2 ) 0 2
𝜕𝑥2 𝜕𝑥1 𝜕 2 𝑥2
------------------------------------------------------------------------------------------
Contoh Soal 2. 3
Jawab :
17
𝜕𝑓(𝑥1 , 𝑥2 , 𝑥3 )
𝜕𝑥1
𝜕𝑓(𝑥1 , 𝑥2 , 𝑥3 ) 6𝑥1 + 6𝑥2 + 6
∇𝑓 𝑥1 , 𝑥2 , 𝑥3 = = 2𝑥2 + 6𝑥1 + 𝑥3 + 1
𝜕𝑥2 4𝑥3 + 𝑥2 + 1
𝜕𝑓(𝑥1 , 𝑥2 , 𝑥3 )
𝜕𝑥3
------------------------------------------------------------------------------------------
Contoh Soal 2. 4
𝑓 𝑥1 , 𝑥2 = 𝑎0 𝑥1 + 𝑎1 𝑥2 +𝑎2 𝑥1 2 +𝑎3 𝑥2 2 + 𝑎4 𝑥1 𝑥2
Jawab :
𝜕𝑓(𝑥1 , 𝑥2 )
𝜕𝑥1 𝑎 + 2𝑎2 𝑥1 + 𝑎4 𝑥2
∇𝑓 𝑥1 , 𝑥2 = = 0
𝜕𝑓(𝑥1 , 𝑥2 ) 𝑎1 + 2𝑎3 𝑥2 + 𝑎4 𝑥1
𝜕𝑥2
18
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 2𝑎2 𝑎4
H𝑥 = 2 =
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝑎4 2𝑎3
𝜕𝑥2 𝜕𝑥1 𝜕 2 𝑥2
------------------------------------------------------------------------------------------
Dari Gambar 6 dapat dilihat bahwa, jika nilai 𝑓" 𝑥 pada batas 𝑎 ≤ 𝑥 ≤ 𝑏
adalah negatif atau nol, maka fungsi 𝑓(𝑥) adalah concave (fungsi dengan
titik maksimum/cekung terhadap sumbu 𝑥). Dan jika nilai 𝑓”(𝑥) pada batas
𝑎 ≤ 𝑥 ≤ 𝑏 adalah positif atau nol, maka fungsi 𝑓(𝑥) adalah convex
(fungsi dengan titik minimum/cembung terhadap sumbu 𝑥). Strictly concave
berarti bahwa 𝑓”(𝑥) selalu negatif, dan strictly convex berarti 𝑓”(𝑥) selalu
positif pada batas 𝑥 tertentu.
19
Untuk fungsi convex (fungsi dengan titik minimum): Semua nilai
eigen H(𝑥) adalah positif (>0).
Untuk fungsi concave (fungsi dengan titik maksimum): Semua nilai
eigen H(𝑥) adalah negatif.
Bila terdapat hasil test matriks Hess suatu fungsi tidak tergolong aturan di
atas, maka besar kemungkinan pada titik 𝑥 ∗ tertentu pada fungsi tersebut
adalah titik pelana/titik balik/saddle point.
Jika sebuah fungsi memiliki titik stasioner dengan matriks Hess-nya memiliki
nilai eigen dengan tanda berbeda-beda, maka fungsi tersebut tidaklah
cembung (convex) dan tidak juga cekung (concave).
20
Misalkan sebuah fungsi dengan dua variabel memiliki elemen diagonal
matriks Hess positif, namun setelah dianalisa determinan principal minor-
nya menghasilkan :
Det M1 positif
Der M2 negatif
Suatu fungsi mungkin saja memiliki beberapa titik stasioner, yaitu saat
∇𝑓(𝑥) = 0, dengan titik minimum global dan lokal, titik maksimum dan titik
pelana sekaligus (Gambar 7).
𝑓(𝑥)
𝑥
𝑎 𝑏 𝑐 𝑑 𝑒
21
Gambar 7. Fungsi dengan beberapa titik stasioner
Contoh Soal 2. 5
Jawab :
𝜕𝑓(𝑥1 , 𝑥2 )
𝜕𝑥1 4𝑥1 + 3𝑥2
∇𝑓 𝑥1 , 𝑥2 = =
𝜕𝑓(𝑥1 , 𝑥2 ) 3𝑥1 + 4𝑥2
𝜕𝑥2
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 4 3
H𝑥 = 2 2 =
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 𝑓(𝑥1 , 𝑥2 ) 3 4
𝜕𝑥2 𝜕𝑥1 2
𝜕 𝑥2
M1 (order 1) = 4
M2 (order 2) = 7
Det M1 = 4 > 0
Det M1 = 7 > 0
22
H(𝑥) positif definit →𝑓(𝑥) pasti cembung (convex), yaitu fungsi dengan
titik minimum.
4−𝛼 3
Menentukan nilai eigen H(𝑥) → H − 𝛼𝐼 =
3 4−𝛼
4−𝛼 3
Det = 4−𝛼 4−𝛼 − 3 3 =0
3 4−𝛼
𝛼 2 − 8𝛼 + 16 = 0
𝛼1 = 4 dan 𝛼2 = 4
------------------------------------------------------------------------------------------
Pencarian nilai 𝑥1 dan 𝑥2 (dalam contoh soal di atas, mencari nilai 𝛼1 dan
𝛼2 ) dapat menggunakan rumus persamaan kuadrat:
−𝑏 ± 𝑏 2 − 4𝑎𝑐
𝑥=
2𝑎
------------------------------------------------------------------------------------------
Contoh Soal 2. 6
Periksa apakah titik [2,1] merupakan titik minimum lokal pada fungsi
Jawab
23
𝜕𝑓(𝑥1 , 𝑥2 )
𝜕𝑥1 4𝑥1 − 2𝑥2 − 6
∇𝑓 𝑥1 , 𝑥2 = =
𝜕𝑓(𝑥1 , 𝑥2 ) −2𝑥1 + 4𝑥2
𝜕𝑥2
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 4 −2
H𝑥 = 2 2 =
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 𝑓(𝑥1 , 𝑥2 ) −2 4
𝜕𝑥2 𝜕𝑥1 2
𝜕 𝑥2
M1 (order 1) = 4
M2 (order 2) = 12
Det M1 = 4 > 0
Det M1 = 12 > 0
𝜕𝑓 (𝑥 1 ,𝑥 2 )
𝜕𝑥 1 4𝑥1 − 2𝑥2 − 6
∇𝑓 𝑥1 , 𝑥2 = = =0
𝜕𝑓 (𝑥 1 ,𝑥 2 ) −2𝑥1 + 4𝑥2
𝜕𝑥 2
24
4(2) − 2(1) − 6 0
∇𝑓 2,1 = =
−2(2) + 4(1) 0
--------------------
Contoh Soal 2. 7
Jawab
𝜕𝑓(𝑥1 , 𝑥2 )
𝜕𝑥1 2𝑥1 + 2
∇𝑓 𝑥1 , 𝑥2 = =
𝜕𝑓(𝑥1 , 𝑥2 ) 6𝑥2 + 6
𝜕𝑥2
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 2 0
H𝑥 = 2 =
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 ) 0 6
𝜕𝑥2 𝜕𝑥1 𝜕 2 𝑥2
Det 1 x 1 = 2 > 0
25
Menentukan titik (-1,-1) sebagai titik minimum:
2𝑥1 + 2 0
∇𝑓 −1, −1 = =
6𝑥2 + 6 0
--------------------
Contoh Soal 2. 8
Jawab :
𝜕𝑓(𝑥, 𝑦)
𝜕𝑥 8𝑥 − 12𝑦 − 6
∇𝑓 𝑥, 𝑦 = 𝜕𝑓(𝑥, 𝑦) =
12𝑦 − 12𝑥 + 12
𝜕𝑦
𝜕 2 𝑓(𝑥, 𝑦) 𝜕 2 𝑓(𝑥, 𝑦)
𝜕2 𝑥 𝜕𝑥𝜕𝑦 8 −12
H𝑥 = 2 2 =
𝜕 𝑓(𝑥, 𝑦) 𝜕 𝑓(𝑥, 𝑦) −12 12
𝜕𝑦𝜕𝑥 𝜕2 𝑦
Det M1 = 8 > 0
26
Det M2= det H = 8 x 12 – (-12) x (-12) = -48 < 0
8−𝛼 −12
Menentukan nilai eigen H(𝑥) → 𝐻 − 𝛼𝐼 =
−12 12 − 𝛼
8−𝛼 −12
Det = 8 − 𝛼 12 − 𝛼 − −12 −12 = 0
−12 12 − 𝛼
𝛼 2 − 20𝛼 + 48 = 0
nilai eigen berbeda tanda yang berarti fungsi 𝑓 bukan fungsi cembung
ataupun cekung namun merupakan fungsi stasioner dengan titik pelana.
𝜕𝑓 (𝑥,𝑦)
𝜕𝑥 8𝑥 − 12𝑦 − 6 0
∇𝑓 𝑥, 𝑦 = = =
𝜕𝑓 (𝑥,𝑦) 12𝑦 − 12𝑥 + 12 0
𝜕𝑦
8𝑥 – 12 𝑦 – 6 = 0 dan 12 𝑦 − 12𝑥 + 12 = 0
3 1
Maka titik stasioner ada pada (𝑥, 𝑦) dengan 𝑥 = dan 𝑦 =
2 2
--------------------
Contoh Soal 2. 9
Jawab
27
𝜕𝑓(𝑥, 𝑦)
𝜕𝑥 2𝑥
∇𝑓 𝑥, 𝑦 = 𝜕𝑓(𝑥, 𝑦) =
−2𝑦
𝜕𝑦
𝜕 2 𝑓(𝑥, 𝑦) 𝜕 2 𝑓(𝑥, 𝑦)
𝜕2 𝑥 𝜕𝑥𝜕𝑦 2 0
H𝑥 = 2 2 =
𝜕 𝑓(𝑥, 𝑦) 𝜕 𝑓(𝑥, 𝑦) 0 −2
𝜕𝑦𝜕𝑥 2
𝜕 𝑦
Det M1 = 2, 2>0
Det M2 = -4 < 0
28
𝑔𝑗 (𝑥) ≤ 0 adalah fungsi konveks, maka fungsi membentuk sebuah area
konveks.
--------------------
1. Tentukan nilai vektor gradien dan H untuk fungsi berikut, pada titik (𝑥, 𝑦)
= (2,2):
1
𝑓 𝑥, 𝑦 = 2𝑥 2 + 𝑦 2 +
2𝑥 2 + 𝑦2
𝑓 𝑥, 𝑦, 𝑧 = 𝑥 3 + 12𝑥𝑦 2 + 2𝑦 2 + 5𝑧 2 + 𝑥𝑧 4
𝑍 = 𝑉𝑃 − 𝐶𝑓 − 𝑉𝐶𝑣
di mana 𝑉 adalah jumlah penjualan pakaian desain baru per bulan, 𝑃 adalah
price/harga pakaian desain baru, 𝐶𝑓 adalah biaya tetap (fixed cost), dan
𝐶𝑣 adalah biaya tidak tetap (variable cost).
Untuk memproduksi pakaian jenis itu dibutuhkan biaya tetap (fixed cost)
sebesar $10.000 per bulannya, dan biaya tidak tetap (variable cost) sebesar
29
$8 per unit pakaian. Harga pakaian desain baru (price) memiliki hubungan
matematis dengan jumlah penjualan pakaian desain baru (volume), yaitu=
𝑉 = 1.500 − 24,6𝑃
𝑍 = 𝑉𝑃 − 𝐶𝑓 − 𝑉𝐶𝑣
30
di mana 𝑉 adalah jumlah penjualan pakaian desain baru per bulan, 𝑃 adalah
price/harga pakaian desain baru, 𝐶𝑓 adalah biaya tetap (fixed cost), dan
𝐶𝑣 adalah biaya tidak tetap (variable cost).
d. Buatlah kurva fungsi keuntungan (profit), dan tandai titik optimum harga
dan keuntungan maksimumnya!
a. 𝑓 𝑥, 𝑦 = 2𝑥 + 𝑥 2 + 2𝑦 2
b. 𝑓 𝑥, 𝑦 = 2𝑥 + 𝑥 2 − 2𝑦 2
c. 𝑓 𝑥, 𝑦 = −2𝑥 − 𝑥 2 − 2𝑦 2
5. Jelaskan mengapa vektor gradien (∇𝑓(𝑥)) dan matriks Hess [H𝑥] suatu
fungsi perlu dianalisa?
31
3. OPTIMASI FUNGSI SATU VARIABEL TANPA
KENDALA
Sebelum memasuki bahasan mengenai metode numerik pada bab ini dan
bab-bab selanjutnya, berikut ulasan terhadap metode yang telah dipelajari
maupun yang akan dipelajari selanjutnya.
32
fungsi) dengan mengujicoba serangkaian titik 𝑥 (𝑥1 , 𝑥2 , 𝑥3 , … . )
pada fungsi 𝑓(𝑥) dan terkadang juga menggunakan cara turunan
fungsi. Cara ini dilakukan secara berulang-ulang (iterative) terhadap
sejumlah titik 𝑥 yang diujicobakan untuk mendapatkan nilai 𝑓(𝑥)
ekstremum, sehingga tak heran, metode ini berkembang seiring
dengan perkembangan teknologi komputer. Metode ini dapat
menyelesaikan masalah optimasi pada fungsi yang tidak kontinu,
atau yang memiliki titik akhir (end points) (Edgar & Himmelblau
1989).
Dalam pelaksanaannya, untuk menggunakan metode numerik
diperlukan titik 𝑥0 , yaitu titik 𝑥 awal pencarian.
fungsi: 𝑓 𝑥 = 4𝑥 2 − 8𝑥 + 4
Mulai
f(x) pencarian
Metode iterasi:
Titik x* perkiraan
kedua
Metode analitis
dengan turunan:
𝜕𝑓 𝑥
=0 Metode iterasi:
𝜕𝑥
∗
𝑥 Titik x* perkiraan
pertama
(x)
33
Gambar 8. Metode iterasi vs analitis dalam pencarian titik minimum
X -2 -1 0 1 2 3 4 5 6
f(x) 45 11 5 3 29 155 501 1235 2573
34
Dari nilai fungsi 𝑓(𝑥) yang dihasilkan dengan memasukan sejumlah nilai 𝑥
sembarang tersebut tampak kecenderungan bahwa fungsi menurun pada
titik 𝑥 = −1 dan naik pada 𝑥 = 2 . Dari ilustrasi ini, dalam upaya
menemukan titik minimum dengan metode iteratif -idealnya nilai 𝑥0
diambil kira-kira pada nilai antara𝑥 = 0atau 𝑥 = 2.
Terdapat tiga prosedur dasar dalam pencarian sebuah titik ekstremum dari
fungsi dengan satu variabel (Edgar & Himmelblau 1989), yaitu:
1. Newton’s method
2. Finite difference approximation of Newton’s method (FDAD)
3. Secant Method
𝑓 ′ (𝑥 𝑘 )
𝑥 𝑘+1 = 𝑥 𝑘 −
𝑓"(𝑥 𝑘 )
35
dan tidak ada beda antara nilai fungsi 𝑓(𝑥) hasil iterasi yang satu dengan
yang selanjutnya. Pada kondisi ini dapat dikatakan bahwa 𝑥 ∗ yang diperoleh
merupakan 𝑥 ∗ optimum (Edgar & Himmelblau 1989).
f ’(x)
f ’(x)
Tangen f ’(x) pada xk
x*
xk x
xk+1
36
Contoh Soal 3. 1
Jawab :
𝑓 ′ (𝑥 𝑛−1 )
𝑥 𝑛 = 𝑥 𝑛−1 −
𝑓 " (𝑥 𝑛−1 )
6
𝑥1 = 3 − =0
2
0
𝑥2 = 0 − =0
2
𝑥3 = 0
𝑓 0 = −8
37
f(x)2
1
0
-4 -2 -1 0 2 4x
-2 x0 = 3
-3
-4
-5
-6 x*= 0
-7
-8
-9
------------------------------------------------------------------------------------------
38
Untuk memperdalam pemahaman mengenai rumus metoda newton,
berikut disajikan Contoh Soal 3. 2, dengan kasus serupa dengan contoh soal
sebelumnya, namun titik awal pencarian 𝑥0 = −4.
Contoh Soal 3. 2
Jawab :
𝑓 ′ (𝑥 𝑛−1 )
𝑥 𝑛 = 𝑥 𝑛−1 −
𝑓 " (𝑥 𝑛−1 )
−8
𝑥 1 = −4 − =0
2
0
𝑥2 = 0 − =0
2
𝑥3 = 0 − 0 = 0
𝑓 0 = −8
------------------------------------------------------------------------------------------
39
menggunakan Metode Newton dengan titik awal 𝑥0 = 3 akan
menghasilkan titik optimum 𝑥 ∗ yang sama bila pencarian dilakukan dengan
titik awal 𝑥0 = −4. Hal ini terjadi pada fungsi yang memiliki satu nilai titik
ekstremum (unimodal).
Contoh Soal 3. 3
Jawab :
𝑓 𝑥 = 𝑥 + 3 𝑥 + 1 𝑥 − 2 = 𝑥 3 + 2𝑥 2 − 5𝑥 − 6 , maka 𝑓 ′ 𝑥 =
3𝑥 2 + 4𝑥 − 5 dan 𝑓 " 𝑥 = 6𝑥 + 4.
𝑓 ′ (𝑥 𝑛−1 )
𝑥 𝑛 = 𝑥 𝑛−1 −
𝑓 " (𝑥 𝑛−1 )
𝑓′ 𝑥 0 10
𝑥1 = 𝑥 0 − 𝑓 " 𝑥0
= −3 − −14 = −2.28571 𝑓 𝑥1 = 3,9386
1.530612
𝑥 2 = −2.28571 − −9.71429 = −2.12815 𝑓 𝑥2 = 4,060356
0.074478
𝑥 3 = −2.12815 − −8.76891 = −2.11966 𝑓 𝑥3 = 4,060673
0.000216
𝑥 4 = −2.11966 − = −2.11963 𝑓 𝑥4 = 4,060673
−8.71795
𝑥 5 = −2.11963 𝑓 𝑥5 = 4,060673
𝑥 6 = −2.11963 𝑓 𝑥6 = 4,060673
𝑥 7 = −2.11963 𝑓 𝑥7 = 4,060673
40
Nilai 𝑥 5 = 𝑥 6 = 𝑥 7 = −2.11963 dengan menggunakan metode
newton; maka fungsi 𝑓(𝑥) optimum pada 𝑥 = −2.11963 dengan
𝑓(𝑥) = 4.060673. Karena nilai 𝑥 ∗ meningkat selama iterasi, maka nilai 𝑥 ∗
merupakan titik maksimum.
------------------------------------------------------------------------------------------
Contoh Soal 3. 4
Jawab :
𝑓 𝑥 = 𝑥 + 3 𝑥 + 1 𝑥 − 2 = 𝑥 3 + 2 𝑥 2 − 5𝑥 − 6 ,
𝑓 ′ (𝑥 𝑛−1 )
𝑥 𝑛 = 𝑥 𝑛−1 −
𝑓 " (𝑥 𝑛−1 )
𝑓′ 𝑥 0 2
𝑥1 = 𝑥 0 − 𝑓 " 𝑥0
= 1 − 10 = 0.8 𝑓 𝑥1 = −8
0.12
𝑥 2 = 0.8 − 8.8
= 0.786364 𝑓 𝑥2 = −8,208
0.000558
𝑥 3 = 0.786364 − 8.718182 = 0.7863 𝑓 𝑥3 = −8,20882
𝑥 4 = 0.7863 𝑓 𝑥4 = −8,20882
𝑥 5 = 0.7863 𝑓 𝑥5 = −8,20882
41
−8.20882 . Karena nilai 𝑥 ∗ menurun selama iterasi, maka nilai 𝑥 ∗
merupakan titik minimum.
------------------------------------------------------------------------------------------
Perhatikan bahwa titik 𝑥 ∗ optimum dari fungsi yang sama namun dicari dari
titik awal pencarian 𝑥0 yang berbeda ternyata menghasilkan nilai
𝑥 ∗ optimum serta 𝑓(𝑥) optimum yang berbeda (Contoh Soal 3. 3 dan
Contoh Soal 3.4). Hal ini terjadi karena fungsi 𝑓 𝑥 = 𝑥 + 3 𝑥 + 1 (𝑥 −
2) merupakan fungsi multimodal yang memiliki dua esktremum (titik
maksimum dan titik minimum).
6
f(x)
(-2.12, 4.061)
4
0
x
-4 -3 -2 -1 0 1 2 3
-2
-4
-6
-8
42
Karenanya untuk kasus minimasi fungsi, pastikan bahwa nilai 𝑓(𝑥 𝑘+1 ) <
𝑓(𝑥 𝑘 ), dan sebaliknya, untuk kasus maksimasi fungsi, pastikan bahwa nilai
𝑓(𝑥 𝑘+1 ) > 𝑓(𝑥 𝑘 ).
Jika fungsi 𝑓(𝑥) tidak diberikan dengan formula, atau formula fungsi terlalu
kompleks sehingga sulit diturunkan, rumus pada metode sebelumnya dapat
diganti dengan persamaan FDAD sebagai berikut:
𝑓 𝑥 + − 𝑓(𝑥 − ) /2
𝑥 𝑘+1 = 𝑥 𝑘 −
𝑓 𝑥 + − 2𝑓 𝑥 + 𝑓(𝑥 − ) /2
Atau
𝑓 𝑥 + − 𝑓(𝑥 − )
𝑥 𝑘+1 = 𝑥 𝑘 −
𝑓 𝑥 + − 2𝑓 𝑥 + 𝑓(𝑥 − ) 2
Contoh Soal 3. 5
Jawab :
𝑓 𝑥 + − 𝑓(𝑥 − ) /2
𝑥 𝑘+1 = 𝑥 𝑘 −
𝑓 𝑥 + − 2𝑓 𝑥 + 𝑓(𝑥 − ) /2
43
Atau
𝑓 𝑥 + − 𝑓(𝑥 − )
𝑥 𝑘+1 = 𝑥 𝑘 −
𝑓 𝑥 + − 2𝑓 𝑥 + 𝑓(𝑥 − ) 2
0
𝑥2 = 0 − =0
2
𝑥3 = 0
------------------------------------------------------------------------------------------
𝑓 ′ (𝑥 𝑞 )
𝑥∗ = 𝑥𝑞 −
𝑓 ′ 𝑥𝑞 − 𝑓 ′ 𝑥 𝑝 /(𝑥 𝑞 − 𝑥 𝑝 )
Kemiringan = m
𝑓 ′ (𝑥)
𝑥∗
44
𝑥𝑝
𝑥∗ 𝑥𝑞 𝑥
Gambar 12.Metode secant untuk penyelesaian 𝑓’(𝑥) = 0
Metode secant dimulai dari penggunaan dua titik 𝑥 𝑝 dan 𝑥 𝑞 pada garis
interval 𝑥 . Kedua titik tersebut memiliki nilai 𝑓’(𝑥 𝑝 ) dan 𝑓’(𝑥 𝑞 ) yang
masing-masingnya berbeda tanda; yaitu negatif atau positif (- atau +),
sehingga titik optimum 𝑥 ∗ dengan nilai 𝑓’(𝑥) = 0 (titik stasioner) akan
selalu berada di antara titik 𝑥 𝑝 dan 𝑥 𝑞 .
Nilai 𝑥 hasil perhitungan satu iterasi akan menjadi input bagi iterasi
selanjutnya, entah itu sebagai 𝑥 𝑝 atau 𝑥 𝑞 pada iterasi berikutnya. Cara
menentukan apakah 𝑥 yang dihasilkan akan menggantikan 𝑥 𝑝 atau 𝑥 𝑞 pada
iterasi selanjutnya adalah dengan memastikan bahwa nilai 𝑓’(𝑥) dengan
𝑓’(𝑥 𝑝 ) atau 𝑓’(𝑥 𝑞 )harus berbeda tanda (positif atau negatif-nya), agar nilai
𝑥 ∗ optimum tetap berada pada interval 𝑥 𝑝 dan𝑥 𝑞 di setiap iterasi yang
dilakukan (Edgar & Himmelblau 1989).
Iterasi dihentikan jika nilai 𝑥 antar iterasi memiliki selisih lebih kecil dari
eror yang diinginkan, 𝑥 𝑘+1 – 𝑥 𝑘 ≤ 𝜀
Contoh Soal 3. 6
Jawab :
45
𝑓 𝑥 = 𝑥 2 − 8 , maka 𝑓 ′ 𝑥 = 2𝑥 dan 𝑓′′ 𝑥 = 2 dengan nilai 𝑓”(𝑥)
selalu definit positif.
𝑓 ′ (𝑥 𝑞 )
𝑥∗ = 𝑥𝑞 −
𝑓′ 𝑥𝑞 − 𝑓 ′ 𝑥 𝑝 /(𝑥 𝑞 − 𝑥 𝑝 )
2(4) 8
𝑥1 = 4 − =4− 16 = 0 → 𝑓 ′ 0 = 0 → optimum.
2(4)−2(4)/(4−(−4)
8
f ’(x)
10
𝑥𝑝 2
0
-6 -4 -2 0 2 4 x6
-2
𝑥𝑞
x* opt
-4
-6
-8
-10
46
saling berbeda tanda, yaitu masing-masing 𝑓’(𝑥 𝑝 ) dan 𝑓’(𝑥 𝑞 ) adalah -8 dan
8. Titik optimum tercapai saat 𝑓’(𝑥) = 0, yaitu pada 𝑥 ∗ optimum sama
dengan nol.
------------------------------------------------------------------------------------------
Untuk semua metode numerik pada bagian ini, pada kasus minimasi fungsi,
asumsikan fungsi adalah unimodal, golongkan kemungkinan titik 𝑥
mendekati minimum (bracketing), pilih titik awal pencarian 𝑥0 , gunakan
salah satu rumus dari tiga metoda untuk mendapatkan 𝑥 𝑘−1 (atau 𝑥) dari
𝑥 𝑘 (atau 𝑥 𝑝 dan𝑥 𝑞 ), dan pastikan bahwa 𝑓(𝑥 𝑘+1 ) < 𝑓(𝑥 𝑘 ) pada setiap
iterasi untuk mengetahui bahwa proses iterasi mengarah pada minimum.
Selama nilai 𝑓”(𝑥 𝑘 ) positif, maka nilai 𝑓(𝑥 𝑘 ) menurun. Untuk kasus
maksimasi fungsi, gunakan bentuk minimasi fungsi – 𝒇(𝒙).
Contoh Soal 3. 7
𝑓 𝑥 = 2𝑥 4 − 4𝑥 + 5
Dengan menggunakan
Lakukan iterasi hingga selisih nilai 𝑥 ∗ antar iterasi hanya berbeda pada 10-
7
(tingkat ketelitian 10-7). Gunakan bantuan program MS Excel.
Jawab
a. Metode newton
48
diketahui 𝑓 𝑥 = 2𝑥 4 − 4𝑥 + 5 dengan 𝑥0 = 3
𝑓′ 𝑥 = 8𝑥 3 − 4
𝑓′′ 𝑥 = 24𝑥 2
𝑓 ′ (𝑥 𝑘 )
𝑥 𝑘+1 = 𝑥 𝑘 − 𝑓"(𝑥 𝑘 ),
𝑓 ′ (𝑥0 ) 212
𝑥1 = 𝑥0 − =3− = 2,018519
𝑓"(𝑥0 ) 216
61,79429
𝑥2 = 2,018519 − = 1,386585
97,78900823
iterasi
ke- xk f'x f"x xk+1 f(xk)
0 3 212 216 2.018519 155
1 2.018519 61.79429 97.78600823 1.386585 30.12767
2 1.386585 17.32697 46.14280847 1.011077 6.846574
3 1.011077 4.268808 24.53464911 0.837086 3.045792
4 0.837086 0.692459 16.81711862 0.79591 2.633653
5 0.79591 0.033503 15.20335804 0.793707 2.618935
6 0.793707 9.27E-05 15.11928613 0.793701 2.618898
7 0.793701 7.16E-10 15.1190526 0.793701 2.618898
8 0.793701 0 15.1190526 0.793701 2.618898
9 0.793701 0 15.1190526 0.793701 2.618898
10 0.793701 0 15.1190526 0.793701 2.618898
49
f200
(x)
𝑓 𝑥 = 2𝑥 4 − 4𝑥 + 5
180
x0
160
140
120
100
80
60
40 x1
20
x7
0
-4 -3 -2 -1 0 1 2 3 x4
b. metode FDAD
digunakan persamaan:
50
𝑓 𝑥 + − 𝑓(𝑥 − ) /2
𝑥 𝑘+1 = 𝑥 𝑘 −
𝑓 𝑥 + − 2𝑓 𝑥 + 𝑓(𝑥 − ) /2
iterasi
ke- xk h f(x+h) f(x-h) f(x) xk+1 xk+1-xk
0 3 0.001 155.212 154.78 155 2.018 -0.981
1 2.018 0.001 30.189 30.065 30.127 1.386 -0.632
2 1.386 0.001 6.863 6.829 6.846 1.011 -0.375
3 1.011 0.001 3.050 3.041 3.045 0.837 -0.174
4 0.837 0.001 2.634 2.632 2.633 0.795 -0.041
5 0.795 0.001 2.618 2.618 2.618 0.793 -0.002
6 0.7937 0.001 2.618 2.618 2.618 0.793 -6.13E-06
7 0.7937 0.001 2.618 2.618 2.618 0.793 -4.57E-11
8 0.7937 0.001 2.618 2.618 2.618 0.793 1.46E-14
c. Metode secant
𝑓′ 𝑥 = 8𝑥 3 − 4
𝑓 ′ (𝑥 𝑞 )
𝑥∗ = 𝑥𝑞 −
𝑓 ′ 𝑥𝑞 − 𝑓 ′ 𝑥 𝑝 /(𝑥 𝑞 − 𝑥 𝑝 )
Sehingga:
𝑓 ′ (3)
𝑥1 = 3 − = 0,055556
𝑓 ′ 3 − 𝑓 ′ −3 /(3 − (−3))
51
Cek nilai 𝑥1 = 0,055556 pada persamaan turunan pertama fungsi :
𝑓′ 𝑥 = 8𝑥 3 − 4. Dihasilkan nilai 𝑓 ′ (𝑥1 ) = −3,998628258. Diketahui nilai
𝑥 hasil perhitungan pada suatu iterasi menghasilkan nilai 𝑓’(𝑥) negatif,
sehingga pada iterasi selanjutnya 𝑥 akan menggantikan nilai 𝑥 𝑝 , dan nilai
𝑥 𝑞 = 3 tidak dirubah agar titik ekstremum 𝑓 ′ 𝑥 ∗ = 0 tetap berada di
antara 𝑥 𝑝 dan 𝑥 𝑞 .
f ’(x)
250
xq
200
150
100
50 𝑓 ′ 𝑥 = 8𝑥 3 − 4
0 x
-4 -3 -2 -1 0 1 2 3 4
-50
𝑥 ∗ 𝑜𝑝𝑡 = 0,7937
-100
𝑥1 = 0,055556
-150
-200
xp
-250
------------------------------------------------------------------------------------------
Dari contoh soal sebelumnya, dapat dilihat bahwa penggunaan program MS.
Excel dapat memudahkan pencarian titik optimum. Grafik fungsi 𝑓(𝑥) dan
grafik fungsi turunannya 𝑓 ′ (𝑥) juga dapat dibuat dengan MS. Excel untuk
memudahkan menganalisa fungsi dan memeriksa hasil perhitungan
terhadap titik optimum fungsi satu variabel tanpa kendala.
Contoh Soal 3. 8
𝑓 𝑥 = (𝑥 − 1)4
Dengan menggunakan metode :
a. Newton
b. FDAD
c. Secant
Jawab
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE NEWTON
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE NEWTON');
disp('f(x)=(x-1)^4');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
%x(1)=1;
tol=0.0000001;
for i=1:1000000
x(i+1)=x(i)-(4*(x(i)-1)^3)/(12*(x(i)-1)^2);
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
54
x
a=-20:0.1:20;
b=(a-1).^4;
c=4*(a-1).^3;
d=12*(a-1).^2;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE FDAD
55
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE FDAD');
disp('f(x)=(x-1)^4');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
h=0.01;
tol=0.0000001;
for i=1:1000000
f1=(x(i)-1)^4;
f2=(x(i)+h-1)^4;
f3=(x(i)-h-1)^4;
x(i+1)=x(i)-(((f2-f3)/2*h)*(h/2)/((f2-2*f1+f3)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-3:0.1:3;
b=(a-1).^4;
c=4*(a-1).^3;
d=12*(a-1).^2;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini disave dan di –run, maka hasil yang
keluar terdiri lebih dari 1000 kolom hingga mencapai titik x* optimum (x =
1).
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE SECANT
clc;
56
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE SECANT');
disp('f(x)=(x-1)^4');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xp) : ');
xq=input('MASUKKAN NILAI TEBAKAN ANDA (Xq) : ');
tol=0.0000001;
for i=1:1000000
x(i+1)=xq-((4*(xq-1)^3)*(xq-x(i))/((4*(xq-1)^3)-
(4*(x(i)-1)^3)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-3:0.1:3;
b=(a-1).^4;
c=4*(a-1).^3;
d=12*(a-1).^2;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
x =
1 1
------------------------------------------------------------------------------------------
57
Contoh Soal 3. 9
𝑓 𝑥 = 𝑥 6 + 6𝑥 3 + 3𝑥
Dengan menggunakan metode :
a. Newton
b. FDAD
c. Secant
Jawab
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE NEWTON
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE NEWTON');
disp('f(x)=x^6-6x^3+3x');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
%x(1)=1;
tol=0.0000001;
for i=1:1000000
x(i+1)=x(i)-(6*x(i)^5-18*x(i)^2+3)/(30*x(i)^4-
36*x(i));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-2:0.1:2;
b=a.^6-6*a.^3+3*a;
c=6*a.^5-18*a.^2+3;
d=30*a.^4-36*a;
58
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
x =
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE QUASI NEWTON
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE QUASI NEWTON');
disp('f(x)=x^6-6x^3+3x');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
h=0.01;
tol=0.0000001;
for i=1:1000000
f1=x(i)^6-6*x(i)^3+3*x(i);
f2=(x(i)+h)^6-6*(x(i)+h)^3+3*(x(i)+h);
f3=(x(i)-h)^6-6*(x(i)-h)^3+3*(x(i)-h);
59
x(i+1)=x(i)-(((f2-f3)/2*h)*(h/2)/((f2-2*f1+f3)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-8:0.1:8;
b=a.^6-6*a.^3+3*a;
c=6*a.^5-18*a.^2+3;
d=30*a.^4-36*a;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar mencapai lebih dari seribu kolom nilai mendapatkan nilai x optimum
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE SECANT
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE SECANT');
disp('f(x)=x^6-6x^3+3x');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xp) : ');
xq=input('MASUKKAN NILAI TEBAKAN ANDA (Xq) : ');
tol=0.0000001;
for i=1:1000000
x(i+1)=xq-((6*xq^5-18*xq^2+3)*(xq-x(i))/((6*xq^5-
18*xq^2+3)-(6*x(i)^5-18*x(i)^2+3)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
60
a=-9:0.1:9;
b=a.^6-6*a.^3+3*a;
c=6*a.^5-18*a.^2+3;
d=30*a.^4-36*a;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
x =
Columns 1 through 9
Column 10
0.4131
------------------------------------------------------------------------------------------
Contoh Soal 3. 10
𝑓 𝑥 = 10 + 6𝑥 + 20𝑥 4 − 𝑥 6
61
Dengan menggunakan metode:
a. Newton, dengan 𝑥0 = −3
b. FDAD, dengan 𝑥0 = −3.6, = 0.01
c. Secant, dengan 𝑥𝑝 = −3.6; 𝑥𝑞 = −3.4
Jawab
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE NEWTON
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE NEWTON');
disp('f(x)=10+6x+20x^4-x^6');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
%x(1)=1;
tol=0.0000001;
for i=1:1000000
x(i+1)=x(i)-(6+80*x(i)^3-6*x(i)^5)/(240*x(i)^2-
30*x(i)^4);
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-7:0.1:0;
b=10+6*a+20*a.^4-a.^6;
c=6+80*a.^3-6*a.^5;
d=240*a.^2-30*a.^4;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
62
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
x =
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE FDAD
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE FDAD');
disp('f(x)=10+6x+20x^4-x^6');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
h=0.01;
tol=0.0000001;
for i=1:1000000
f1=10+6*x(i)+20*x(i)^4-x(i)^6;
f2=10+6*(x(i)+h)+20*(x(i)+h)^4-(x(i)+h)^6;
f3=10+6*(x(i)-h)+20*(x(i)-h)^4-(x(i)-h)^6;
x(i+1)=x(i)-(((f2-f3)/2*h)*(h/2)/((f2-2*f1+f3)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-100:10:100;
b=10+6*a+20*a.^4-a.^6;
c=6+80*a.^3-6*a.^5;
d=240*a.^2-30*a.^4;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
63
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar mencapai 1500 kolom nilai 𝑥 untuk mendapatkan nilai 𝑥 optimum
yaitu 𝑥 = −3,6487.
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE SECANT
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE SECANT');
disp('f(x)=10+6x+20x^4-x^6');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xp) : ');
xq=input('MASUKKAN NILAI TEBAKAN ANDA (Xq) : ');
tol=0.0000001;
for i=1:1000000
x(i+1)=xq-((6+80*xq^3-6*xq^5)*(xq-x(i))/((6+80*xq^3-
6*xq^5)-(6+80*x(i)^3-6*x(i)^5)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=-100:10:100;
b=10+6*a+20*a.^4-a.^6;
c=6+80*a.^3-6*a.^5;
d=240*a.^2-30*a.^4;
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
64
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
x =
Columns 1 through 9
Columns 10 through 13
------------------------------------------------------------------------------------------
Contoh Soal 3. 11
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE NEWTON
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE NEWTON');
disp('f(x)=sin(x)+cos(x)');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
%x(1)=1;
tol=0.0000001;
for i=1:1000000
x(i+1)=x(i)-(cos(x(i))-sin(x(i)))/(-sin(x(i))-
cos(x(i)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=0:0.1:7;
b=sin(a)+cos(a);
c=cos(a)-sin(a);
d=-sin(a)-cos(a);
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
x =
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE FDAD
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE FDAD');
disp('f(x)=sin(x)+cos(x)');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xo) : ');
h=0.01;
tol=0.00001;
for i=1:1000000
f1=sin(x)+cos(x);
f2=sin(x+h)+cos(x+h);
f3=sin(x-h)+cos(x-h);
x(i+1)=x(i)-(((f2-f3)/2*h)*(h/2)/((f2-2*f1+f3)));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=0:0.1:7;
b=sin(a)+cos(a);
c=cos(a)-sin(a);
d=-sin(a)-cos(a);
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
67
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar mencapai 540 kolom nilai 𝑥 untuk mendapatkan nilai 𝑥 optimum,
yaitu 0,7804.
%TEKNIK OPTIMASI
%OPTIMASI FUNGSI TANPA KENDALA
%METODE SECANT
clc;
clear all;
disp('OPTIMASI FUNGSI TANPA KENDALA');
disp('METODE SECANT');
disp('f(x)=sin(x)+cos(x)');
x(1)=input('MASUKKAN NILAI TEBAKAN ANDA (Xp) : ');
xq=input('MASUKKAN NILAI TEBAKAN ANDA (Xq) : ');
tol=0.0000001;
for i=1:1000000
x(i+1)=xq-((cos(xq)-sin(xq))*(xq-x(i))/((cos(xq)-
sin(xq))-(cos(x(i))-sin(x(i)))));
if abs(x(i+1)-x(i))<=tol
break;
end;
end;
x
a=0:0.1:7;
b=sin(a)+cos(a);
c=cos(a)-sin(a);
d=-sin(a)-cos(a);
plot(a,b,'b-',a,c,'r-',a,d,'k-')
legend('f(x)','f1(x)','f"(x)',0)
disp('SHOW THE TABLE');
disp(' x f(x) f1(x) f"(x)')
disp([a' b' c' d']);
grid on
disp('THANK YOU');
setelah M-file berisi pengkodean ini di-save dan di –run, maka hasil yang
keluar adalah sebagai berikut:
68
OPTIMASI FUNGSI TANPA KENDALA
METODE SECANT
f(x)=sin(x)+cos(x)
MASUKKAN NILAI TEBAKAN ANDA (Xp) : 1
MASUKKAN NILAI TEBAKAN ANDA (Xq) : 2
x =
Columns 1 through 9
Columns 10 through 15
------------------------------------------------------------------------------------------
69
4. Dengan titik awal 𝑥0 = −3 , optimumkan fungsi 𝑓 𝑥 = 𝑥 3 + 3𝑥 2 −
24𝑥 + 1 dengan menggunakan metode Newton. Bandingkan hasilnya
dengan soal nomor 3, kenapa hal tersebut bisa terjadi? Jelaskan!
𝑓 𝑥 = 𝑥4 − 𝑥 + 1
Dengan menggunakan:
a. 𝑓 𝑥 = 2𝑥 4 − 4𝑥 + 5
b. 𝑓 𝑥 = 2𝑥 8 − 7𝑥 5 + 8𝑥 2 + 9
c. 𝑓 𝑥 = 19 + 2𝑥 2 − 8𝑥 5 − 3𝑥 8
70
d. 𝑓 𝑥 = 9𝑥 7 + 5𝑥 3 − 3𝑥 2 + 20
71
4. OPTIMASI FUNGSI MULTIVARIABEL TANPA
KENDALA
Pada bab ini akan dibahas penyelesaian terhadap masalah optimasi fungsi
tanpa kendala dengan banyak variabel, yaitu:
72
∇𝑓 𝑥 ∗ = 0 (syarat orde pertama);
Titik kritis dari fungsi 𝑓(𝑥) yang bukan merupakan titik maksimum dan
bukan titik minimum dinamakan titik sadel/saddle point/titik pelana dari
fungsi 𝑓(𝑥).
Contoh Soal 4. 1
Jawab
𝜕𝑓 𝑥1 , 𝑥2
= 3𝑥12 − 3𝑥2 = 0
𝜕𝑥1
𝜕𝑓 𝑥1 , 𝑥2
= −3𝑥1 + 3𝑥22 = 0
𝜕𝑥1
𝑥1 = 0 𝑎𝑡𝑎𝑢𝑥1 = 1
𝑥1 = 0 → 𝑥2 = 0
𝑥1 = 1 → 𝑥2 = 1
73
Titik kritis fungsi 𝑓 𝑥 adalah (0,0) dan (1,1). Titik kemudian diuji dengan
matriks Hess.
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 6𝑥1 −3
H𝑥 = 2 =
2
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 𝑓(𝑥1 , 𝑥2 ) −3 6𝑥2
𝜕𝑥2 𝜕𝑥1 2
𝜕 𝑥2
0 −3
H(0,0) = → det 1x1 = 0 dan det 2x2 = -9
−3 0
Jadi (0,0) bukan titik maksimum maupun minimum fungsi 𝑓 𝑥
6 −3
H(1,1) = → det 1x1 = 6 dan det 2x2 = 25; 6 > 0
−3 6
dan 25 > 0.
------------------------------------------------------------------------------------------
Contoh Soal 4. 2
Jawab
𝜕𝑓 𝑥
= −2𝑥1 + 4 = 0
𝜕𝑥1
𝜕𝑓 𝑥
= −6𝑥2 + 24 = 0
𝜕𝑥2
74
𝜕𝑓 𝑥
= −20𝑥3 + 20 = 0
𝜕𝑥3
−6𝑥2 + 24 = 0 −20𝑥3 + 20 = 0
−2𝑥1 + 4 = 0
−6𝑥2 = −24 −20𝑥3 = −20
−2𝑥1 = −4
𝑥2 = 4 𝑥3 = 1
𝑥1 = 2
2 0 0 det H1 = -2 <0
Matriks Hess dari 𝑓 adalahH𝑥 = 0 −6 0 → det H2 = 12 > 0
0 0 −20 det H3 = -240 < 0
------------------------------------------------------------------------------------------
Contoh Soal 4. 3
Jawab
𝜕𝑓 𝑥
= 2𝑥1 + 2 𝑥1 + 𝑥2 + 2(𝑥1 + 𝑥3 ) = 0
𝜕𝑥1
𝜕𝑓 𝑥
= 2 𝑥1 + 𝑥2 = 0
𝜕𝑥2
75
𝜕𝑓 𝑥
= 2(𝑥1 + 𝑥3 ) = 0
𝜕𝑥3
6 2 2 det H1 = 6 >0
Matriks Hess dari 𝑓 adalah H𝑥 = 2 2 0 → det H2 = 12-4= 8> 0
2 0 2 det H3 = 24-8-8= 8 > 0
------------------------------------------------------------------------------------------
Contoh Soal 4. 4
Jawab
𝜕𝑓 𝑥
= 4𝑥13 + 2 𝑥1 + 𝑥2 + 2(𝑥1 + 𝑥3 ) = 0
𝜕𝑥1
𝜕𝑓 𝑥
= 2 𝑥1 + 𝑥2 = 0
𝜕𝑥2
𝜕𝑓 𝑥
𝜕𝑥 3
= 2(𝑥1 + 𝑥3 ) = 0
------------------------------------------------------------------------------------------
76
Contoh Soal 4. 5
Jawab
𝜕𝑓 𝑥1 , 𝑥2
= 𝑥2 −2𝑥1 = 0
𝜕𝑥1
𝜕𝑓 𝑥1 , 𝑥2
= 𝑥1 −2𝑥2 = 0
𝜕𝑥1
𝑥2 −2𝑥1 = 0 𝑥1 −2𝑥2 = 0
𝑥2 = 2𝑥1 𝑥1 = 2𝑥2
𝑥2 = 0 𝑥1 = 0
Titik kritis fungsi 𝑓 𝑥 adalah (0,0). Titik kemudian dianalisa matriks Hess-
nya untuk menentukan tipe titik ekstremnya.
𝜕 2 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 )
𝜕2 𝑥 𝜕𝑥1 𝜕𝑥2 −2 1
H𝑥 = 2 =
𝜕 𝑓(𝑥1 , 𝑥2 ) 𝜕 2 𝑓(𝑥1 , 𝑥2 ) 1 −2
𝜕𝑥2 𝜕𝑥1 2
𝜕 𝑥2
−2 1 det H1 = -2 < 0
𝐻(0,0) = →
1 −2 det H2 = 3 > 0
77
Matriks Hess definit negatif sehingga titik ekstremum fungsi merupakan
titik maksimum.
------------------------------------------------------------------------------------------
Dimulai dari titik awal pencarian yang telah diberikan, ditentukan arah
pencarian dan 𝑓(𝑥) diminimumkan pada arah tersebut.
1. Direct Method
Metode ini tidak membutuhkan penggunaan turunan dalam
menentukan arah pencarian. Pada beberapa kondisi metode ini
dapat digunakan secara efektif untuk memecahkan masalah
optimasi namun dapat menjadi tidak efektif dibandingkan dengan
metode lainnya. Beberapa metode direct diantaranya: Random
search, grid search, univariate search, metode simplex, dll.
78
2. Indirect Method
Metode ini menggunakan turunan fungsi dalam menentukan arah
pencarian untuk optimasi. Arah pencarian yang baik dapat
mengurangi nilai fungsi tujuan (untuk kasus minimasi) sehingga jika
𝑥 0 adalah titik awal dan 𝑥 1 adalah titik baru berikutnya, maka
𝑓 𝑥 1 < 𝑓(𝑥 0 )
Arah pencarian 𝑠 arah menurun untuk kasus minimasi disebut juga
descent direction. Indirect method yang dikaji pada diktat ini adalah
metode gradien dan metode newton.
𝑠 𝑘 = −∇𝑓(𝑥 𝑘 )
Pada steepest descent pada tahap ke-𝑘, perubahan dari titik 𝑥 𝑘 ke titik lain
𝑥 𝑘+1 disajikan pada persamaan berikut:
𝑥 𝑘+1 = 𝑥 𝑘 + ∆𝑥 𝑘
= 𝑥 𝑘 + 𝜆𝑘 𝑠 𝑘
= 𝑥 𝑘 − 𝜆𝑘 ∇𝑓(𝑥 𝑘 )
79
Di mana∆𝑥 𝑘 = vektor dari 𝑥 𝑘 ke 𝑥 𝑘+1
80
Contoh Soal 4. 6
Dengan titik awal 𝑥 0 = (1,1)𝑇 dan lakukan setidaknya dua kali iterasi!
Jawab :
Iterasi 1
𝜕𝑓 𝑥1 , 𝑥2
𝜕𝑥1 2𝑥1 − 2𝑥2
∇𝑓 𝑥1 , 𝑥2 = =
𝜕𝑓 𝑥1 , 𝑥2 −2𝑥1 + 6𝑥2
𝜕𝑥2
0
∇𝑓 𝑥 0 = dan untuk menghitung vektor arah pencarian
4
ditentukan 𝑢1 berupa :
0
𝑢0 = −∇𝑓 𝑥 0 =
−4
1 0 1
𝑥 0 + 𝜆𝑢0 = +𝜆 =
1 −4 −4𝜆 + 1
𝑓 𝜆 = 𝑓(𝑥 0 + 𝜆𝑢0 )
= 48𝜆2 − 16𝜆 + 2
81
𝜕𝐹 1 𝜕2𝐹
Karena𝜕𝜆 = 96𝜆 − 16 = 0 untuk 𝜆0 = 6 dan karena 𝜕𝜆 2 = 96 > 0, maka
𝑥 1 = 𝑥 0 + 𝜆𝑢0
1 0 1
1
= + = 1
1 6 −4
3
4
∇𝑓 𝑥 1 = 3
0
Iterasi 2
−4
𝑢1 = −∇𝑓 𝑥 1 =
3
0
−4
1 −4 𝜆+1
𝑥 1 + 𝜆𝑢1 = 1 + 𝜆 3 = 3
1
3 0
3
𝑓 𝜆 = 𝑓(𝑥 1 + 𝜆𝑢1 )
−4 1 1 −4
= ( 𝜆 + 1)2 + 3( )2 − 2( )( 𝜆 + 1)
3 3 3 3
16 2 16 2
= 𝜆 − 𝜆+
9 9 3
𝜕𝐹 32 16
Karena 𝜕𝜆
= 9
𝜆 + 9
= 0 untuk 𝜆1 = 1/2 dan karena
𝜕2𝐹 32
𝜕𝜆 2
= 9
> 0, maka diperoleh titik
𝑥 2 = 𝑥 1 + 𝜆𝑢1
82
1 1 −4
= 1 +
2 3
3 0
1
2 3
diperoleh 𝑥 = 1
3
------------------------------------------------------------------------------------------
Contoh Soal 4. 7
------------------------------------------------------------------------------------------
Metode indirect berikutnya yang dibahas pada diktat ini adalah metode
newton yang merupakan metode yang memanfaatkan informasi orde
kedua turunan fungsi 𝑓(𝑥) pada 𝑥 𝑘 . Informasi tersebut diperoleh dari
turunan kedua fungsi 𝑓(𝑥) , sehingga bentuk kurva 𝑓(𝑥) dapat turut
ditentukan dan arah pencarian yang diperoleh dapat diidentifikasi dengan
lebih baik dibanding dengan metode gradient.
∇𝑓 𝑥 = ∇𝑓 𝑥 𝑘 + 𝐻 𝑥 𝑘 ∆𝑥 𝑘 = 0
atau
83
−1
𝑥 𝑘+1 − 𝑥 𝑘 = ∆𝑥 𝑘 = − 𝐻 𝑥 𝑘 ∇𝑓(𝑥 𝑘 )
𝐻 𝑥 𝑘 ∆𝑥 𝑘 = −∇𝑓(𝑥 𝑘 )
Jika fungsi 𝑓(𝑥) merupakan fungsi kuadratik, maka hanya satu langkah saja
yang dibutuhkan untuk mencapai minimum. Namun biasanya, untuk fungsi
tujuan nonlinier umumnya, titik minimum 𝑓(𝑥) tidak dapat dicapai hanya
dalam satu langkah, sehingga persamaan kedua di atas dapat dimodifikasi
menjadi persamaan:
−1
𝑥 𝑘+1 − 𝑥 𝑘 = −𝜆𝑘 𝐻 𝑥 𝑘 ∇𝑓(𝑥 𝑘 )
−1
𝑠𝑘 = − 𝐻 𝑥𝑘 ∇𝑓(𝑥 𝑘 )
Contoh Soal 4. 8
84
Minimumkan fungsi 𝑓 𝑥 = 𝑥 2 + 3𝑦 2 − 2𝑥𝑦 , gunakan metode Newton
dengan titik awal [1 1]T.
Jawab :
𝜕𝑓 𝑥, 𝑦
𝜕𝑥 2𝑥 − 2𝑦 0
∇𝑓 𝑥, 𝑦 = = → ∇𝑓 1,1 =
𝜕𝑓 𝑥, 𝑦 6𝑦 − 2𝑥 4
𝜕𝑦
𝜕 2 𝑓(𝑥, 𝑦) 𝜕 2 𝑓(𝑥, 𝑦)
𝜕2 𝑥 𝜕𝑥𝑦 2 −2
𝐻𝑥 = 2 2 =
𝜕 𝑓(𝑥, 𝑦) 𝜕 𝑓(𝑥, 𝑦) −2 6
𝜕𝑦𝑥 𝜕2 𝑦
3 1
𝐻 −1 𝑥 = 4 4
1 1
4 4
Dan
3 1
4 4 0 −1
𝑥 𝑜 = −𝐻 −1 𝑥 0 ∇𝑓 𝑥 0 = − 1 1 = ; dengan 𝜆 =
4 −1
4 4
1 −1 0
𝑥 1 = 𝑥 0 + 𝜆𝑥 𝑜 = +𝜆 =
1 −1 0
0 0
Diperoleh ∇𝑓 =
0 0
0
Titik optimum yang menghasilkan 𝑓(𝑥) minimum adalah 𝑥 1 =
0
85
Permasalahan ini juga dapat diselesaikan denganpersamaan :
𝐻 𝑥 𝑘 𝑥 𝑘 = −∇𝑓 𝑥 𝑘
2 −2 ∆𝑥 𝑜 0
=−
−2 6 ∆𝑦 𝑜 4
------------------------------------------------------------------------------------------
86
4.2 Latihan Soal
87
10. Temukan titik minimum fungsi 𝑓 𝑥 = 𝑥 3 + 3𝑦 2 𝑥 − 27𝑥 − 12𝑦 ,
dengan menggunakan Metode Newton dan titik awal pencarian
𝑥𝑜 = 0 dan 𝑦𝑜 = 0
11. Dengan menggunakan Metode Newton, minimumkan fungsi
𝑓 𝑥 = 4𝑥12 + 𝑥22 − 2𝑥1 𝑥2
Dimulai dari titik awal 𝑥 0 = (1 1)𝑇
12. Dengan menggunakan Metode Newton, minimumkan 𝑓 𝑥 = 𝑥14 +
2𝑥12 𝑥22 + 𝑥24 dengan titik awal 𝑥 0 = (1 1)𝑇 dan kriteria
kekonvergenan ∇𝑓 𝑥 𝑖 < 0.3
13. Dengan menggunakan Metode Newton tentukan minimum dari
1
𝑓 𝑥 = 𝑥12 + 𝑥1 𝑥2 + 𝑥22
2
Dengan titik awal 𝑥 0 = 10 −5 𝑇
dan kriteria kekonvergenan
∇𝑓 𝑥 𝑖 < 0.25
14. Gunakan Metode Newton untuk menentukan titik minimum dari
fungsi berikut:
𝑓 𝑥1 , 𝑥2 = 8𝑥12 + 4𝑥1 𝑥2 − 5𝑥22
Dengan titik awal 𝑥 0 = (10 10)𝑇
15. Tentukan nilai optimum dengan menggunakan Metode Newton
dari persamaan:
𝑓 𝑥1 , 𝑥2 = sin 𝑥1 + 𝑥2 + cos 𝑥1 + 𝑥2 − sin
(𝑥1 𝑥2 )
Dengan 𝑥 0 = (8 8)𝑇
88
5. OPTIMASI FUNGSI DENGAN KENDALA
Minimumkan 𝑓 𝑥 𝑥 = [𝑥1 𝑥2 … … 𝑥𝑛 ]𝑇
persamaan 5. 1
Salah satu metode yang menangani fungsi dengan satu atau dua kendala
persamaan linier ataupun tidak linier adalah dengan mengatasi satu
variabelnya dan mengeliminasi variabel tersebut dari formula
permasalahan dengan cara men-substitusi-nya pada setiap fungsi dan
persamaan dalam permasalahan tersebut. Dalam banyak kasus, metode ini
merupakan cara yang ampuh dalam mencari titik optimum. Misal, terdapat
soal sebagai berikut:
Minimumkan 𝑓 𝑥, 𝑦 = 𝑥 2 + 𝑦 2 persamaan 5. 2
𝑓(𝑥, 𝑦)
𝑓(𝑥, 𝑦) 𝑓(𝑥)
(𝑥, 𝑦)
90
Gambar 16. Optimasi fungsi dua variabel dibatasi kendala satu variabel
𝑦 = 3 − 3𝑥 persamaan 5. 4
𝑓 𝑥, 𝑦 = 𝑥 2 + 𝑦 2
𝑓 𝑥, 𝑦 = 𝑥 2 + (3 − 3𝑥)2
𝑓 𝑥 = 10𝑥 2 − 18𝑥 + 9 persamaan 5. 5
Kini fungsi objektif yang baru (persamaan 5.5) dapat diminimumkan, yaitu
dengan membuat turunan pertama fungsi objektif menjadi nol, dan
mencari nilai optimum untuk 𝑥.
𝜕𝑓 (𝑥) 9
𝜕𝑥
= 20𝑥 − 18 = 0 𝑥 ∗ optimum = 10
Sehingga diperoleh 𝑦 ∗ = 3 − 3𝑥
9
𝑦 ∗ = 3 − 3(10 )
3
𝑦 ∗ optimum = 10
Jika fungsi objektif merupakan fungsi convex (seperti contoh kasus di atas)
dan kendala yang ada membentuk area convex, maka akan terdapat satu
titik stasioner, yang merupakan titik global minimum.
92
5.1.2 Metode: Pengali Lagrange(Edgar & Himmelblau 1989)
Misalnya:
Terhadap kendala 𝑥1 , 𝑥2 = − 𝑒 = 0
Pada optimum berkendala, dua kondisi perlu di bawah ini harus terpenuhi:
𝜕𝑓 𝜕𝑓
𝑑𝑓 = 0 = 𝜕𝑥 𝑑𝑥1 + 𝜕𝑥 2
𝑑𝑥2
1
persamaan 5. 8
𝜕 𝜕
𝑑 = 0 = 𝑑𝑥1 + 𝑑𝑥2
𝜕𝑥 1 𝜕𝑥 2
persamaan 5. 9
93
𝑑 𝑥 = 0 , ada karena kendala (𝑥1 , 𝑥2 ) diasumsikan setara dengan
konstanta.
Pada persamaan 5.8 dan 5.9, dimisalkan 𝑑𝑥1 dan 𝑑𝑥2 merupakan variasi
dari titik optimum 𝑥1∗ dan 𝑥2∗ . Persamaan-persamaan tersebut kemudian
ditulis kembali dalam bentuk persamaan dengan dua variabel yang tidak
dikenal:
Karena sisi kanan kedua persamaan 5.10 dan 5.11 adalah 0, maka baik
penyelesaian trivial (𝑑𝑥1 = 𝑑𝑥2 = 0) maupun penyelesaian nontrivial (non-
unik) dapat dipilih untuk menyelesaikan kasus ini. Pada penyelesaian
nontrivial, determinan dari koefisien matriks (𝑎𝑖𝑗 ) pada persamaan 5.10 dan
5.11 harus nol.
𝑎 11 𝑎 𝑎 11 𝑎
𝑎 21
= 𝑎 12 or 𝑎 12
= 𝑎 21 persamaan 5. 12
22 22
𝐿 𝑥, 𝜔 = 𝑓 𝑥 + 𝜔 𝑥 [𝑐𝑎𝑡𝑎𝑡𝑎𝑛: 𝑥 = 0]
maka persamaan h dapat ditulis dengan cara di bawah ini (untuk dua
variabel 𝑥1 dan 𝑥2 ):
94
𝜕𝑓 𝜕 𝜕𝐿
𝜕𝑥 1
+ 𝜔 𝜕𝑥 = 𝜕𝑥 = 0 persamaan 5. 14
1 1
𝜕𝑓 𝜕 𝜕𝐿
𝜕𝑥 2
+ 𝜔 𝜕𝑥 = 𝜕𝑥 = 0 persamaan 5. 15
2 2
𝜕𝐿(𝑥,𝜔 )
𝜕𝜔
= 𝑥 =0 persamaan 5. 16
Pada kasus maksimasi fungsi, nilai parameter 𝜔 > 0, di mana pada kasus
minimasi fungsi nilai 𝜔 < 0 . Untuk pemecahannya, dapat digunakan
penyelesain terhadap turunan pertama fungsi seperti yang telah diuraikan,
atau dapat diselesaikan dengan membuat kasus tersebut sebagai minimasi
fungsi.
95
Contoh Soal 5. 1
Minimumkan 𝑓 𝑥, 𝑦 = 𝑥 2 + 𝑦 2 (persamaan a)
Jawab
𝜕𝐿(𝑥,𝑦,𝜔)
= 2𝑥 + 3𝜔 = 0 (persamaan d)
𝜕𝑥
𝜕𝐿(𝑥,𝑦,𝜔)
= 2𝑦 + 𝜔 = 0 (persamaan e)
𝜕𝑦
𝜕𝐿(𝑥,𝑦,𝜔)
= 𝑦 + 3𝑥 − 3 = 0 (persamaan f)
𝜕𝜔
Dari persamaan e 2𝑦 + 𝜔 = 0
𝑦 = −𝜔 2
Dari persamaan d 2𝑥 + 3𝜔 = 0
𝑥 = −3 2𝜔
𝑦 + 3𝑥 − 3 = 0
(− 𝜔 2) + 3(− 3 2 𝜔) − 3 = 0
3
𝜔=−
5
96
𝑦 = −𝜔 2
3
(− 5)
𝑦=− 2
3
𝑦=
10
𝑥 = −3 2𝜔
3 3
𝑥 = − 2 (− 5)
9
𝑥 = 10
9 ∗ 3 3
𝑥 ∗ optimum = 𝑦 optimum = dan 𝜔∗ = −
10 10 5
9
Dengan nilai 𝑓 𝑥, 𝑦, 𝜔 = 10
------------------------------------------------------------------------------------------
Contoh Soal 5. 2
Gunakan Metode Pengali Lagrange untuk mengoptimumkan fungsi dua
variabel dengan satu kendala berikut:
𝑓 𝑥, 𝑦 = 𝑥 2 𝑦
Dengan kendala 𝑥 2 + 𝑦 2 = 3
Jawab:
Syarat Perlu:
97
𝜕𝐿
= 2𝑥𝑦 + 2𝜔 = 0
𝜕𝑥
𝜕𝐿
= 𝑥 2 + 2𝜔𝑦 = 0
𝜕𝑦
𝜕𝐿
= 𝑥2 + 𝑦2 − 3 = 0
𝜕𝜔
2𝑥𝑦 + 2𝜔𝑥 = 0
2𝜔𝑥 = −2𝑥𝑦
𝜔 = −𝑦𝑦 = −𝜔
𝑥 2 + 2𝜔𝑦 = 0
𝑥 2 = −2𝜔𝑦
𝑥2 + 𝑦2 − 3 = 0
−2𝜔𝑦 + 𝑦 2 − 3 = 0
−2 −𝑦 (𝑦) + 𝑦 2 − 3 = 0
2𝑦 2 + 𝑦 2 − 3 = 0
3𝑦 2 − 3 = 0
𝑦2 = 1
𝑦 = ±1𝑦 = 1 atau 𝑦 = −1
Untuk 𝑦 = 1
𝜔 = −𝑦
𝜔1 = −1
98
𝑥 2 + 𝑦 2 − 3 = 0
𝑥2 + 1 2
−3=0
𝑥2 − 2 = 0
𝑥 2 = 2 sehingga 𝑥 = ± 2
Untuk 𝑦 = −1
𝜔 = −𝑦
𝜔2 = 1
𝑥 2 + 𝑦 2 − 3 = 0
𝑥 2 + −1 2
−3=0
𝑥2 − 2 = 0
𝑥 2 = 2 sehingga 𝑥 = ± 2
------------------------------------------------------------------------------------------
Contoh Soal 5. 3
Gunakan metode Pengali Lagrange untuk mengoptimumkan fungsi tiga
variabel dengan dua kendala berikut: 𝑓 𝑥 = 3𝑥 − 𝑦 − 3𝑧
𝑥 2 + 2𝑧 2 = 1
Jawab:
99
Fungsi Lagrange:
𝐿 𝑥, 𝑦, 𝑧, 𝜔1 , 𝜔2 = 3𝑥 − 𝑦 − 3𝑧 + 𝜔1 (𝑥 + 𝑦 − 𝑧) + 𝜔2 (𝑥 2 + 2𝑧 2 − 1)
Syarat Perlu:
𝜕𝐿
= 3 + 𝜔1 + 2𝜔2 𝑥 = 0
𝜕𝑥
𝜕𝐿
= −1 + 𝜔1 = 0
𝜕𝑦
𝜕𝐿
= −3 − 𝜔1 + 4𝑧𝜔2 = 0
𝜕𝑧
𝜕𝐿
=𝑥+𝑦−𝑧 = 0
𝜕𝜔1
𝜕𝐿
= 𝑥 2 + 2𝑧 2 − 1 = 0
𝜕𝜔2
−1 + 𝜔1 = 0
𝜔1 = 1
3 + 𝜔1 + 2𝜔2 𝑥 = 1
−2
𝜔2 =
𝑥
−3 − 𝜔1 + 4𝜔2 𝑧 = 0
1
𝜔2 =
𝑧
−2 1
𝜔2 = 𝑥
=𝑧
𝑥
𝑧 = − 2 𝑥 = −2𝑧
𝑥 2 + 2𝑧 2 − 1 = 0
100
(−2𝑧)2 + 2𝑧 2 − 1 = 0
6𝑧 2 = 1
1
𝑧2 =
6
1
𝑧=±
6
1
Untuk 𝑧 = 6
1 2
𝑥 = −2𝑧 = −2 ∙ =−
6 6
𝑥+𝑦−𝑧 =0
𝑦 =𝑧−𝑥
1 2 3
𝑦= + =
6 6 6
2 3 1
Sehingga diperoleh titik kritis (− , , )
6 6 6
dan nilai 𝑓 𝑥, 𝑦, 𝑧 =
−4,89895
1
Untuk 𝑧 = − 6
1 2
𝑥 = −2𝑧 = −2 ∙ − =
6 6
𝑥+𝑦−𝑧 =0
𝑦 =𝑧−𝑥
1 2 3
𝑦=− − =−
6 6 6
2 3 1
Sehingga diperoleh titik kritis ( , − , − ) dan nilai 𝑓 𝑥, 𝑦, 𝑧 =
6 6 6
4,89895
------------------------------------------------------------------------------------------
101
102