Minggu, 07 Maret 2010

Softcomputing dalam Riset Gempabumi

Riset gempabumi adalah bidang yg masih sangat muda. Teori fundamental yg me-unifikasi beberapa pendapat yg sebelumnya terlihat saling berlawanan, baru ditemukan pada thn 60-an. Yaitu teori tektonik lempeng. Usia yg belia ini membuka peluang yg sangat luas untuk penemuan-penemuan baru yg tidak pernah terduga sebelumnya. Beberapa tahun terakhir ini sejak thn 2000 adalah tahun-tahun penuh kejutan dengan penemuan-penemuan penting yg selalu ada di jurnal-jurnal utama setiap edisinya. Alhamdulillah saya berada di jepang sehingga bisa ikutan sekedar nonton revolusi dalam riset gempabumi. Dan puncaknya yaitu bencana dasyat di Aceh, yg tdk pernah terbayangkan sebelumnya.

Berkaitan dengan GA (Genetic Algorithm). Secara alami proses gempabumi adalah kejadian yg non-linier. Persoalan yg paling sederhana dlm gempabumi yaitu menentukan lokasi gempa sekalipun, merupakan non-linear inversion problem. Solusi untuk “problem
sederhana” tsb. biasanya diselesaikan dgn beberapa alternatif yaitu: grid-search atau dijadikan linear problem dengan constrain.
Sedikit sekali peneliti gempabumi yg mengaplikasikan optimization approach seperti GA, SA (Simulated Annealing) dll.

Mas Anto, seandainya mereka dgn background softcomputing ingin terlibat dalam riset gempabumi, saya yakin hal ini akan memberikan kontribusi signifikan dlm riset gempabumi. Beberapa isu dlm riset gempa yg relevan dgn softcomputing yaitu:
study of earthquake source mechanism
saya masih melihat “celah” dlm bidang ini yg muncul karena problem model simplification. yg solusinya mungkin bisa didapat dengan mengaplikasikan softcomputing.
earthquake simulation
cycle dari gempabumi meliputi multi proses yang rumit dan tentu saja tidak linear. Simulasi yg rutin saat ini terlalu simple. Mereka dengan background softcomputing saya yakin lebih bisa mengenerate simulation yg lebih realistis. Dan ini sangat penting berkaitan dengan penyiapan masyarakat akan munculnya kembali gempabesar.

Sebagai penutup.
Bidang gempabumi mungkin seperti pula SC adalah bidang yg terbuka. Maksudnya tdk ada satu bidang ilmu yg bisa meng-claim bahwa riset gempabumi adalah milik mereka. Semua bidang termasuk geologi, geofisika, kimia, biologi dan SC bisa terlihat dan menjadi bagian dari periset gempabumi. Yg pada akhirnya bisa memperkaya informasi mengenai proses gempabumi yg saat ini masih penuh dengan misteri.

Sumber :http://blog.soft-computing.org/2006/01/27/wawancara-dengan-irwan-meilano-peneliti-gempa-bumi-itbnagoya-university/

Sejarah Komputasi Modern

Konsep dasar arsitektur komputer modern adalah konsep sebuah sistem yang menerima intruksi-intruksi dan menyimpannya dalam sebuah memory. Konsep ini pertama kali digagasi oleh John Von Neumann. Beliau di lahirkan di Budapest, ibukota Hungaria pada 28 Desember 1903 dengan nama Neumann Janos. Karya – karya yang dihasilkan adalah karya dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer. Beliau juga merupakan salah seorang ilmuwan yang sangat berpengaruh dalam pembuatan bom atom di Los Alamos pada Perang Dunia II lalu. Kepiawaian John Von Neumann teletak pada bidang teori game yang melahirkan konsep automata, teknologi bom atom dan komputasi modern yang kemudian melahirkan komputer.

Pengertian : Komputasi sebetulnya bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma. Komputasi merupakan suatu sub-bidang dari ilmu komputer dan matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan menggunakan komputer. Komputasi yang menggunakan komputer inilah yang disebut dengan Komputasi Modern. Komputasi modern menghitung dan mencari solusi dari masalah yang ada, yang menjadi perhitungan dari komputasi modern adalah : 1. Akurasi (bit, Floating poin) 2. Kecepatan (Dalam satuan Hz) 3. Problem volume besar (Down sizing atau paralel) 4. Modeling (NN dan GA) 5. Kompleksitas (Menggunakan teori Big O.

Sumber :
1. http://laksamana-embun.blogspot.com/2010/01/jhon-von-neumann-penggegas-komputasi.html

2. http://id.wikipedia.org/wiki/Komputasi VN:F [1.6.8_931]

Komputasi Modern

Komputasi bisa diartikan sebagai cara untuk menyelesaikan sebuah masalah dari inputan data dengan menggunakan algoritma.


teknologi komputasi adalah aktivitas penggunaan dan pengembangan teknologi komputer, perangkat keras, dan perangkat lunak komputer. Ia merupakan bagian spesifik komputer dari teknologi informasi.

Pencetus dari dasar – dasar komputasi modern pertama kali adalah John Von Neuman. Ia adalah ilmuwan yang meletakkan dasar – dasar komputasi modern. Semasa hidupnya Von Neumann telah menjadi ilmuwan besar abad 21 dengan meningkatkan karya – karyanya tidak hanya dalam bidang matematika, teori kuantum dan game theory, namun juga fisika nuklir dan ilmu komputer. Beliau juga salah seorang ilmuwan yang berpengaruh dalam pembuatan bom atom di Los Alamos pada perang Dunia II.

Sejarah Von Neumann

Von Neumann dilahirkan di Budapest, Hungaria pada 28 Desember 1903 dengan nama Neumann Janos. Dia adalah anak pertama dari pasangan Neumann Miksa dan Kann Margit. Di sana, nama keluarga diletakkan di depan nama asli. Sehingga dalam bahasa Inggris, nama orang tuanya menjadi Max Neumann. Pada saat Max Neumann memperoleh gelar, maka namanya berubah menjadi Von Neumann. Setelah bergelar doktor dalam ilmu hukum, dia menjadi pengacara untuk sebuah bank. Pada tahun 1903, Budapest terkenal sebagai tempat lahirnya para manusia genius dari bidang sains, penulis, seniman dan musisi.

Von Neumann juga belajar di Berlin dan Zurich dan mendapatkan diploma pada bidang teknik kimia pada tahun 1926. Pada tahun yang sama dia mendapatkan gelar doktor pada bidang matematika dari Universitas Budapest. Keahlian Von Neumann terletak pada bidang teori game yang melahirkan konsep seluler automata, teknologi bom atom, dan komputasi modern yang kemudian melahirkan komputer. Kegeniusannya dalam matematika telah terlihat semenjak kecil dengan mampu melakukan pembagian bilangan delapan digit (angka) di dalam kepalanya.

Setelah mengajar di Berlin dan Hamburg, Von Neumann pindah ke Amerika pada tahun 1930 dan bekerja di Universitas Princeton serta menjadi salah satu pendiri Institute for Advanced Studies.

Dipicu ketertarikannya pada hidrodinamika dan kesulitan penyelesaian persamaan diferensial parsial nonlinier yang digunakan, Von Neumann kemudian beralih dalam bidang komputasi. Sebagai konsultan pada pengembangan ENIAC, dia merancang konsep arsitektur komputer yang masih dipakai sampai sekarang. Arsitektur Von Nuemann adalah komputer dengan program yang tersimpan (program dan data disimpan pada memori) dengan pengendali pusat, I/O, dan memori.

berdasarkan beberapa definisi di atas, maka komputasi modern dapat diartikan sebagai suatu pemecahan masalah berdasarkan suatu inputan dengan menggunakan algoritma dimana penerapannya menggunakan berbagai teknologi yang telah berkembang seperti komputer.

Dengan begitu waktu yang diperlukan untuk menemukan solusi atas masalah lebih cepat dan keakuratan dari selousi tersebut lebih tinggi dibandingkan dengan komputasi terdahulu yang umumnya menggunakan pena dan kertas maupun kapur dan batu tulis atau dikerjakan dengan menggunakan bantuan tabel.
Sumber :

http://www.beritanet.com/Education/John-Von-Neumann.html

http://id.wikipedia.org/wiki/Teknologi_komputasi

http://id.wikipedia.org/wiki/Komputasi

Selasa, 15 Desember 2009

Menampilkan Image sebagai matriks pada Matlab

Citra digital merupakan suatu larik dua dimensi atau suatu matriks yang elemen-elemennya menyatakan tingkat keabuan dari elemen gambar. Jadi informasi yang terkandung bersifat diskret. Citra digital tidak selalu merupakan hasil langsung data rekaman suatu sistem. Kadang-kadang hasil rekaman data bersifat kontinu seperti gambar pada monitor televisi, foto sinar-X, dan lain sebagainya. Dengan demikian untuk mendapatkan suatu citra digital diperlukan suatu proses konversi, sehingga citra tersebut selanjutnya dapat diproses dengan komputer.

Pada tulisan kali ini, penulis akan menjelaskan cara menampilkan sebuah citra atau image sebagai matriks menggunakan Matlab. Sebagai contoh penulis akan menggunakan sebuah gambar dengan format jpg.

plus44

Image logo plus44 diatas berukuran 300 x 300 yang berarti image tersebut terdiri dari 300 kolom dan 300 baris pixel. Jadi total keseluruhan image tersebut terdiri dari 90000 pixel, dan tiap pixel tersebut merupakan perpaduan dari 3 warna utama yaitu: Red, Green, Blue yang lebih dikenal dengan istilah RGB.

Untuk menampilkan image tersebut sebagai matriks pada matlab tidaklah sulit, berikut adalah sintaks yang digunakan untuk menampilkan image tersebut sebagai matriks.

>> c=imread(‘plus44.jpg’,’jpg’);
>> asci=uint8(c)

Fungsi imread() digunakan untuk membaca image yang ada pada komputer kita, image kucing itu pun harus sudah ada pada folder work didalam matlab.

C:\Program Files\MATLAB71\work

Fungsi uint8() digunakan untuk mengubah string menjadi bilangan integer.

asciGambar dibawah merupakan hasil dari sintaks “asci=uint8(c)

asci2

Perbandingan Deteksi Tepi Menggunakan Operator Prewitt dan Sobel pada Matlab

Pada tulisan kali ini kita akan mencoba melihat perbandingan deteksi tepi sebuah gambar menggunakan operator prewitt dan sobel. Operator prewitt dan sobel termasuk ke dalam operator gradien pertama.

Operator sobel

Peninjauan pengaturan pixel di sekitar pixelnya (x,y) adalah :

Operator sobel adalah magnitudo dari gradien yang dihitung dengan :

Dimana dalam hal ini turunan parsial dihitung dengan :

Dengan konstanta c = 2. Dalam bentuk mask, sy dan sx dapat dinyatakan sebagai :

Arah tepi dihitung dengan persamaan :

Berikut adalah contoh penggunaan operator sobel . Konvolusi pertama dilakukan terhadap pixel yang bernilai 1 (titik pusat mask) :

Nilai 18 pada citra hasil konvolusi didapatkan dengan perhitungan :

Operator Prewitt

Persamaan gradien pada operator prewitt sama dengan gradien pada operator sobel perbedaannya adalah pada prewitt menggunakan konstanta c = 1

Berikut adalah pengaplikasian kedua algoritma tersebut menggunakan aplikasi matlab. gambar yang penulis gunakan untuk membandingkan kedua operator di atas adalah :

Kemudian ketikkan listing program di bawah ini pada program matlab :

R=imread(‘flower.jpg’);
gray=rgb2gray(R);
BR1 = edge (gray,’prewitt’);
BR2 = edge (gray,’sobel’);
figure, imshow(BR1);
figure, imshow(BR2);

Imread berfungsi untuk membaca gambar dan variabel R adalah variabel untuk menyimpan file gambar ‘water lilies’ . BR1 adalah variabel untuk menyimpan gambar yang telah diproses menggunakan deteksi tepi operator ‘prewitt’ dan BR2 adalah variabel untuk menyimpan gambar yang telah diproses menggunakan deteksi tepi operator ’sobel’. Untuk menampilkan hasil pemrosesan menggunakan perintah ‘figure, imshow(var)’.

Hasil dari kedua deteksi tepi tersebut adalah :

Hasil operator prewitt

Hasil operator sobel

Senin, 14 Desember 2009

Perataan Histogram pada Matlab



gambar=imread(‘gambarkoe.jpg’); %--------membaca file gambar
red=gambar(:,:,1); %memanggil matriks gambar yang hanya berisi piksel warna
merah
green=gambar(:,:,2);% memanggil matriks gambar yang hanya berisi piksel
warna merah
blue=gambar(:,:,3); %memanggil matriks gambar yang hanya berisi piksel
warna merah
merahgray2=0.3*red+0.5*green+0.2*blue ;
imhist(red)
imhist(green)
imhist(blue)
imhist(gray)




Rgb2gray Histogram


[nama_file1,nama_path1]=
uigetfile(... {’*.bmp;*.jpg
’,’File Citra
(*.bmp,*.jpg)’;
’*.bmp’,’ File Bitmap
(*.bmp)’; ... ’*.jpg’,’File
jpeg (*.jpg)’; ’*.*’,’
Semua File (*.*)’},...
’Buka File Citra
Host/Asli’); if ˜isequal(nama_file1,
0)
handles.citra1=imread
(fullfile(nama_path1,nama_file1));
x=rgb2gray(handles.citra1);
guidata(hObject,handles); hold on;
axes(handles.sb_citra_asli);
imshow(x); hold on;
axes(handles.sb_hist_asli);
imhist(x); else
return; end set(handles.text9,
’string’ ,nama_file1);
set(handles.text10,’string’ ,
size(handles.citra1,1));
set(handles.text12,’string’ ,
size(handles.citra1,2));
x=rgb2gray(handles.citra1);
handles.citra2=histeq(x);
guidata(hObject,handles);
hold on;
axes(handles.sb_citra_perataan);
imshow(handles.citra2); hold on;
axes(handles.sb_hist_perataan);
imhist(handles.citra2);

RGB Histogram




uigetfile(...
{’*.bmp;*.jpg’,’File Citra
(*.bmp,*.jpg)’;
’*.bmp’,’File Bitmap
(*.bmp)’; ... ’*.jpg’,’File
jpeg (*.jpg)’;
’*.*’,’Semua File (*.*)’},...
’Buka File Citra
Host/Asli’);
if ˜isequal(nama_file1, 0)
handles.citra1=
imread(fullfile
(nama_path1,nama_file1));
[x,map]=rgb2ind(handles.citra1,256);
guidata(hObject,handles);
hold on; axes(handles.sb_citra_asli);
imshow(handles.citra1);
R=handles.citra1(:,:,1);
hold on;
axes(handles.sb_hist_red);
imhist(R); G=handles.citra1(:,:,2);
hold on;
axes(handles.sb_hist_green);
imhist(G);
B=handles.citra1(:,:,3);
hold on; axes(handles.sb_hist_blue);
imhist(B);
else return; end
set(handles.text10,’string’
,nama_file1);
set(handles.text12,’string’
,size(handles.citra1,1));
set(handles.text14,’string’
,size(handles.citra1,2));