Metode Simulasi Monte Carlo

dokumen-dokumen yang mirip
METODE MONTE CARLO. Pemodelan & Simulasi TM11

METODE MONTE CARLO. Presented by Muchammad Chusnan Aprianto Dr.KHEZ Muttaqien Istitute of Technology

LAMPIRAN 1 KODE PROGRAM SIMULASI M/M/1. float a,c,x[50001], Z[50001],U[50001],tt[50001];

MODUL 10 PERNYATAAN KONTROL: FOR DAN SWITCH - CASE. Struktur perulangan for biasa digunakan untuk mengulang suatu proses yang

DISTRIBUSI PROBABILITAS

Monte Carlo Sebagai Metode Pencarian Acak. Achmad Basuki

Latihan & Kisi-kisi UTS DASAR PEMROGRAMAN

Contoh Solusi PR 2 Statistika & Probabilitas. 1. Semesta dari kejadian adalah: pemilihan 5 soal dari 10 soal. Jumlah kemungkinannya ( 10 = 252.

Pertemuan 2. Hukum Probabilitas

Antiremed Kelas 12 Matematika

A. TUJUAN PEMBELAJARAN

Soal-Soal dan Pembahasan Matematika IPA SNMPTN 2012 Tanggal Ujian: 13 Juni 2012

Perumusan Probabilitas Kejadian Majemuk S S A B A B Maka banyak anggota himpunan gabungan A dan B adalah : n(a n(a B) = n(a) + n(b) n(a n(a B) Kejadia

Bab IV Simulasi Metode Monte Carlo Mengatasi Masalah dalam Distribusi Data

Soal-Soal dan Pembahasan Matematika IPA SNMPTN 2012 Tanggal Ujian: 13 Juni 2012

Selection / Pemilihan PEMILIHAN

BAB 4 HASIL DAN PEMBAHASAN

BAB 1 PENDAHULUAN. Hampir semua fenomena di dunia ini memiliki beberapa ketidakpastian,

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

Bab II. Prinsip Fundamental Simulasi Monte Carlo

BAB 5 REPETITION / PERULANGAN

Detail Tugas Besar Mata Kuliah Pemodelan dan Simulasi

SATUAN ACARA PERKULIAHAN MATA KULIAH SIMULASI (KB) KODE / SKS : KK / 3 SKS

Probabilitas dan Statistika Variabel Acak dan Fungsi Distribusi Peluang Diskrit. Adam Hendra Brata

Perhitungan Integral Lipat menggunakan Metode Monte Carlo

Pengantar Proses Stokastik

ALGORITMA GENETIKA. Suatu Alternatif Penyelesaian Permasalahan Searching, Optimasi dan Machine Learning

PEMROGRAMAN DAN METODE NUMERIK Semester 2/ 2 sks/ MFF 1024

Pengantar Proses Stokastik

oleh: Tri Budi Santoso Signal Processing Group Electronic Engineering Polytechnic Institute of Surabaya-ITS

Metode Monte Carlo. II. PENGHASIL ANGKA ACAK (RANDOM NUMBER GENERATOR) A. Penjelasan Singkat Mengenai Ketidakteraturan (Randomness) I.

Sequential Search (Linear Search)

Pengantar Proses Stokastik

Simulasi Monte Carlo

BAB 2 Landasan Teori

4. Himpunan penyelesaian dari sistem persamaan linear x + y = 5 dan x - 2y = -4 adalah... A.{ (1, 4) }

UNIVERSITAS BINA NUSANTARA

Kunci Jawaban Soal-soal Olimpiade 2010 SD se Kab. Blitar di SMPN 1 Gandusari Blitar Tahap I

PENGGUNAAN ESTIMATOR JACKKNIFE PADA METODE MONTE CARLO SEBAGAI DETEKSI KEGAGALAN (FAULT DETECTION)

Probabilitas. Tujuan Pembelajaran

nama array untuk menyimpan data jumlah data

BAB II TINJAUAN PUSTAKA

1. Banyaknya pasangan (x, y) dengan x dan y bilangan asli yang memenuhi x 2 = y adalah a. 0 b. 1 c. 2 d. 3

MATERI BAB I RUANG SAMPEL DAN KEJADIAN. A. Pendahuluan Dari jaman dulu sampai sekarang orang sering berhadapan dengan peluang.

Hidup penuh dengan ketidakpastian

Statistika Farmasi

Model dan Simulasi Universitas Indo Global Mandiri

OMITS 12. Soal Babak Penyisihan Olimpiade Matematika ITS (OMITS) Tahun 2012 Tingkat SMP dan Sederajat MATEMATIKA ING NGARSA SUNG TULADHA

PENS. Probability and Random Process. Topik 4. Variabel Acak dan Distribusi Probabilitas. Prima Kristalina April 2015

Pertemuan Ke-1 BAB I PROBABILITAS

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

adalah x

Daftar kelompok Kelas Mahasiswa Angkatan 52 Program Pendidikan Kompetensi Umum Institut Pertanian Bogor

Pengantar Proses Stokastik

Modul Dasar dasar C. 1. Struktur Program di C++

MATEMATIKA SMK Negeri 2 Wonogiri Page 1

SOAL DAN PEMBAHASAN UJIAN NASIONAL SMA/MA IPA TAHUN PELAJARAN 2004/2005

OBYEK GRAFIK 2 DIMENSI

VARIABEL & TIPE DATA PEMROGRAMAN C++

Fungsi DASAR PEMROGRAMAN

Pertemuan 06. Dasar Pemrograman Komputer [TKL-4002] 2010

BAB V PENUTUP ( ( ) )

SOAL PELUANG KELAS XI MATEMATIKANET.COM 1.! B. 4 2 C. 2 2 D. E. 2 2 A. 840 B. 504 C. 162 D. 84 E. 168

Deteksi dan Menghitung Jumlah Obyek Gambar Menggunakan Simulated Annealing

BAB 1 PENDAHULUAN. sangat pesat. Sangat cepatnya perkembangan tersebut tidak lepas karena dukungan dari

SOAL BRILLIANT COMPETITION 2013

KOMPETISI MATEMATIKA 2017 TINGKAT SMP SE-MANADO SOAL BABAK PENYISIHAN Rabu, 22 Februari 2017

Berapa Peluang anda. meninggal? selesai S-1? menjadi menteri? menjadi presiden?

25/09/2013. Semua kemungkinan nilai yang muncul S={123456} S={1,2,3,4,5,6} Semua kemungkinan nilai yang muncul S={G, A}

METODE MONTE CARLO DAN PENERAPANNYA. Monte Carlo Method and Its Applications. Noor Cholis Basjaruddin POLBAN

Abstrak data tipe. Struktur data-arita witanti ozzy suria Ganjil 2017

BAB V HITUNG INTEGRAL

PERMUTASI, KOMBINASI DAN PELUANG. Kaidah pencacahan membantu dalam memecahkan masalah untuk menghitung

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Pertemuan ke Nilai Harapan (Mean atau Rata rata) dan Varians Distribusi Kontinu

MI, KA-D3, SIA, SIB. ADI, S.Kom.

Modul Praktikum Simulasi Fisika, PRAKTIKUM 1 SIMULASI GERAK JATUH BEBAS

PENDAHULUAN TEORI PROBABILITAS ATA /12/2013 MMA frekuensi H frekuensi T. Probabilitas hujan = 18 / 30?

4. BILANGAN ACAK dan Pembangkitannya

BAB 3 PEMBANGUNAN MODEL SIMULASI MONTE CARLO. Simulasi Monte Carlo merupakan salah satu metode simulasi sederhana yang

TEKNIK SIMULASI MONTERCARLO STUDI KASUS DAN PENYELESAIAN. Prepared by Hanna Lestari, M.Eng

IT234 - Algoritma dan Struktur Data. Ramos Somya

Pembahasan Seleksi Nasional Masuk Perguruan Tinggi Negeri (SNMPTN)

PEMECAHAN MASALAH DALAM MATEMATIKA

PEMODELAN SIMULASI KOMPUTER UNTUK MEMBANTU PENGAMBILAN KEPUTUSAN

TEORI PROBABILITAS. a. Ruang Contoh. Definisi : Ruang contoh adalah himpunan semua kemungkinan hasil suatu percobaan, dan dilambangkan dengan S.

Soal-soal dan Pembahasan UN Matematika SMP/MTs Tahun Pelajaran 2011/2012

PERBANDINGAN BEBERAPA METODE NUMERIK DALAM MENGHITUNG NILAI PI

SOAL MATEMATIKA SMP OLIMPIADE SAINS NASIONAL

Analisis Model dan Simulasi. Hanna Lestari, M.Eng

Evaluasi Belajar Tahap Akhir Nasional TAHUN 1990 Matematika

PE P L E U L A U N A G N

SOAL PM MATEMATIKA SMA NEGERI 29 JAKARTA

IT234 - Algoritma dan Struktur Data. Ramos Somya

Fungsi 2 DASAR PEMROGRAMAN

LEMBAR PENGESAHAN LEMBAR PERNYATAAN ABSTRAK KATA PENGANTAR UCAPAN TERIMA KASIH DAFTAR ISI DAFTAR TABEL DAFTAR GAMBAR DAFTAR LAMPIRAN

BAB 6. FUNGSI. Tujuan penggunaan fungsi : 1. Program menjadi terstruktur 2. Dapat mengurangi pengulangan kode program.

BAB II DASAR TEORI 2.1 Pengertian Tata Guna/Tutupan Lahan

Tipe Data Dasar. Berdasarkan jenisnya, data dapat dibagi menjadi lima kelompok dinamakan tipe data dasar, yaitu:

LAMPIRAN IV KARTU SOAL DAN JAWABAN PERSAMAAN GARIS SINGGUNG KURVA DAN FUNGSI NAIK DAN TURUN. Diketahui: g x = dan titik (, 0)

Transkripsi:

Metode Simulasi Monte Carlo Review Algoritma Probabilitas pelemparan coin Tunggal Probabilitas pelemparan coin Ganda Nilai π Nilai Integral Kasus nilai f(x) = xsin(x) Oleh: Tri Budi Santoso Achmad Basuki Miftahul Huda EEPIS-ITS ITS 1

Review Algoritma Monte Carlo Merupakan dasar dari semua algoritma untuk metode simulasi Didasari pada pemikiran penyelesaian suatu masalah untuk mendapatkan hasil lebih baik dengan cara memberi alternatif nilai sebanyak-banyaknya banyaknya (nilai terbangkit) untuk mendapatkan tingkat ketelitian yang lebih tinggi Misal untuk memperoleh tingkat ketelitian sampai 0,01 maka diperlukan pembangkitan nilai sebanyak 10000, dsb. Teknik pembuatan program bersifat bebas hampir tidak ada rule yang terlalu 2 mengikat

Setiap masalah simulasi dapat didekati dengan metode Monte Carlo? Dengan catatan kunci: - Mampu memformulasikan masalah - Membuat Overview Sistem - Penyederhanaan sistem menuju algorithma - Menyusun algoritma - Pembuatan Program 3

Probabilitas pelemparan coin Tunggal Sebuah pelemparan coin sebanyak 100 kali diperoleh hasil 45 kali keluar muka dan 55 kali keluar belakang. Dari data ini didapat nilai probabilitas untuk keluarnya - muka sebagai p(m) = N(M)/N_total - belakang sebagai p(b) = N(B)/N_total Dari model diatas susun algorithma dan program untuk kasus pelemparan sebanyak 1000 kali 2000 kali dsb sampai dengan 10000 kali. Apa yang terjadi? 4

Algorithma M B 1. Bangkitkan nilai 0/1 sebanyak 1000 kali (N=1000) dengan cara: n =(int)rand()%2 2. Klasifikasi Jika n=0, maka M=M+1 Jika n=1, maka B=B+1 3. Hitung probabilitas M dengan cara M/N dan probabilitas B dengan cara B/N 5

#include<stdio.h> #include<stdlib.h> #define N 1001 int nn=n-1; int x[n]; void bangkit() { for (int i=0;i<nn; i++) { x[i]=(int)rand()%2; //printf("\n x[%d]: %d",i,x[i]); void klasfikasi() { double M=0.0,B=0.0; for (int i=0;i<nn; i++) { if(x[i]==0) M=M+1; else B=B+1; printf("\n Nilai Terbangkit"); printf("\n M=%f \t B=%f",M,B); printf("\n\n Probabilitas"); printf("\n p(m)=%f \t p(b)=%f",m/nn,b/nn); void main() { bangkit(); klasfikasi(); 6

Probabilitas pelemparan coin Ganda Coin 1 Coin 2 M B M B Dari teori peluang akan muncul: MM ¼ MB atau BM ½ BB ¼ Dengan metode Monte Carlo dapatkan tingkat ketelitian sampai 0.01 untuk menyelesaikan kasus tersebut. 7

Model Sistem menuju Algoritma Untuk mendapatkan ketelitian sampai 0,01 maka harus dilakukan pelemparan sebanyak 1000 (N_total) kali. Dari hasil pelemparan catat keluarnya angka-angka: N( MM ) N( MB) N( BB) = = ( MM ) ( MB) = ( BB) = = =... kali... kali... kali Dari hasil diatas hitung peluang dengan cara: P(MM) = N(MM)/N_total P(MB) = N(MB)/N_total P(BB) = N(BB)/N_total 8

Algorithma 1. Bangkitkan nilai 0/1 sebanyak 1000 kali (N=1000) dengan cara: n1 =(int)rand()%2 dan n2 =(int)rand()%2 2. Klasifikasi Jika n1=0 dan n2=0, maka MM=MM+1 Jika n1=0 dan n2=1 atau n1=1 dan n2=0 maka MB=MB+1 Jika n1=1 dan n2=1, maka BB=BB+1 3. Hitung probabilitas MM dengan cara N(MM)/N dan probabilitas untuk nilai MB serta BB 9

Metode Monte Carlo Untuk Menghitung Nilai π Suatu lingkaran berjari-jari 1 diletakkan ke kotak bujursangkar bersisi 2. 1 Dari gambar disamping didapatkan perbandingan: Luas lingkaran / Luas bujur sangkar = πr 2 / (2x2) 2 Asumsikan bahwa r =1, dan lanjutkan dengan mengambil satu kotak serta seperempat lingkaran sehingga gambarnya menjadi: Maka perbandingan luas menjadi ¼πr 2 / 1x1 = ¼ πr 2 10

Anda lemparkan sebuah kelereng kecil secara bebas ke dalam kotak sebanyak 4 kali, maka kemungkinan kelereng akan jatuh di dalam lingaran atau diluar lingkaran. Tetapi tetap dalam kotak tersebut.. Bayangkan bila anda melakukan pelemparan kelereng sebanyak 1000 kali (N=1000). Kemudian kita tetapkan bahwa posisi kelereng berada dalam lingkaran terjadi sebanyak M kali Sehingga: π = N 4M Banyaknya nilai M dibanding total pelemparan N akan senilai dengan perbandingan luas seperempat lingkaran dibanding 1 kotak atau N/M = ¼ π 11

Algorithma 1. Buat inisialisasi m =1, N=1000 2. Bangkitkan nilai x secara random yang memiliki nilai 0~1 3. Bangkitkan nilai y secara random yang memiliki nilai 0~1 4. Hitung r_2 =x*x + y*y 5. Jika nilai r<1, maka m=m+1, Jika tidak, maka m=m 6. Lakukan proses looping ini sampai 1000 kali. 7. Setelah proses looping selesai, hitung nilai p = 4*m/N. 12

Menghitung Nilai Integral Mencari nilai integral dalam hal ini dengan suatu fungsi f(x) =2x Luas: Luas = x2 Secara matematis didapatkan sebagai: 2 = x1 f ( x) dx 2xdx 0 y Luas = x 2 2 0 = 4 x 13

y Menghitung dengan Metode Monte Carlo Luas area dicari = yang berwarna atau daerah dibawah garis fungsi f(x) = 2x x Dengan dasar pemikiran tersebut diperoleh suatu perbandingan: Luas area diarsir Luas total kotak = luas yang dicari luas ( 2 4) BIla kita melakukan pelemparan coin sebanyak N kali, dan coin jatuh di bawah garis f(x) =2x sebanyak M kali. Maka: luas yang dicari = 8 M N 14

Algorithma Bangkitkan 2 bilangan acak x(0~2) dan y(0~4) sebanyak N =1000 Bila y<f(x f(x) maka x diterima, bila tidak ditolak Ulangi langkah (2) dan (3), dan hitung banyaknya titik yang diterima. Luas atau integral f(x) adalah hasil perbandingan (banyaknya titik yang diterima dengan banyaknya bilangan terbangkit) dikalikan luas kotak 15

#include<stdio.h> #include<math.h> #include<stdlib.h> #define N 1001 int nn=n-1; double pi; void monte_carlo() //program untuk nilai pi { double R,x,y,m=0.0; for (int i=1;i<=nn;i++) { x=(double)rand()/(rand_max); y=(double)rand()/(rand_max); R = x*x + y*y; if(r<1.0) { m=m+1.0; else m=m; pi=4*m/(nn); printf("\nsimulated Annealing menghasilkan pi= %f",pi); void main() { monte_carlo(); 16