Senin, 31 Mei 2021
Berpikir Komputasional (Tematis)
Pengetahuan Dasar Computational Thinking
Kemampuan berpikir komputasi bukanlah kemampuan membuat program
di komputer, atau kemampuan menggunakan software di komputer walaupun
keahlian ini tetap akan memperkaya kemampuan berpikir komputasi. Metode
inti dalam computational thinking dikategorikan menjadi decomposition dalam
memecah masalah yang lebih besar (kompleks). Hal tersebut menjadi komponenkomponen yang lebih kecil (sederhana), pattern recognition dalam mencari/
menemukan pola/kesamaan antarmasalah maupun dalam masalah tersebut.
Abstraction fokus pada informasi penting saja dan mengabaikan detail yang
kurang relevan.
Mengamati
Amatilah bagian-bagian dan bentuk-bentuk dari pengetahuan dasar computational thinking yang ada di
lingkungan sekolah kalian! Tulis hasil pengamatan kalian di buku tugas! Nilaikan kepada guru!
1. Sejarah Komputasi Modern
Cikal bakal (sejarah) terjadinya komputasi modern hingga menjelang kemunculan ENIAC adalah
sebagai berikut.
a. Tahun 1941, Konrad Zuse’s electromechanical menciptakan mesin bernama Z machine yang
dikenal dengan istilah Z3 sebagai mesin pertama yang menampilkan biner aritmatika, termasuk
aritmatika floating point dan ukuran programmability. Hingga pada tahun 1998, operasional Z3 di
dunia komputer memiliki bentuk mesin Turing secara lengkap.
Gambar Z3 Konrad Zuse’s electromechanical
b. Pada tahun 1941 ditemukan seperangkat tabung hampa yang didasarkan pada perhitungan, angka
biner, dan regeneratif memori kapasitor yang dikenal sebagai nonprogrammable atanasoff (berry
computer). Penggunaan memori regeneratif menjadikannya jauh lebih seragam walaupun masih
berukuran meja besar atau meja kerja.
c. Komputer Colossus yang ditemukan pada tahun 1943 memiliki kemampuan dalam membatasi
kemampuan program tertentu. Komputer ini digunakan untuk memecahkan kode perang
Jerman.
d. Tahun 1944 ditemukan komputer elektromekanis dengan programmability terbatas yang diberi nama The Harvard Mark I
e. Masa berikutnya, US Army’s Ballistic Research Laboratory menemukan ENIAC pada tahun 1946
sebagai unit komputer yang digunakan untuk menghitung desimal aritmatika dan dinyatakan sebagai
komputer elektronik pertama.
2. Klasifikasi Komputasi Modern
Komputasi modern selalu berkaitan erat dengan prosedur
perhitungan menggunakan algoritma tertentu dalam menyelesaikan
berbagai jenis masalah menggunakan komputer. Penerapan
simulasi komputer secara praktis dengan berbagai bentuk komputasi
lainnya untuk menyelesaikan masalah-masalah dalam berbagai
bidang keilmuan. Pada perkembangan selanjutnya, komputasi
digunakan untuk menemukan prinsip-prinsip baru yang mendasar
dalam berbagai disiplin ilmu.
a. Grid computing system
Komputasi grid memiliki beberapa karakteristik.
Karakteristik tersebut di antaranya kemampuan dalam
menggunakan seperangkat komputer yang terpisah secara
geografis, didistribusikan, dan terhubung oleh jaringan
untuk menyelesaikan masalah komputasi berskala besar.
Beberapa daftar yang dapat digunakan untuk mengenali
sistem komputasi grid berupa sistem koordinat sumber daya
komputasi. Sistem tersebut tidak berada di bawah kendali
pusat, sistem menggunakan standard dan protokol yang
terbuka. Sistem ini memiliki kemampuan dalam mencoba
mencapai kualitas pelayanan canggih serta lebih baik di atas
kualitas komponen individu pelayanan komputasi grid.
Beberapa implikasi grid computing, antara lain sebagai
berikut.
1) Big science
Data dan komputasi grid dalam hal ini digunakan untuk membantu proyek laboratorium yang
disponsori oleh pemerintah.
2) CADD (Computer-Aided Drug Discovery)
Implikasi grid computing digunakan untuk membantu penemuan obat, misalnya Molecular
Modelling Laboratory (MML) dari University of North Carolina (UNC).
3) e-Learning
Implikasi grid computing yang dapat membantu dalam membangun infrastruktur untuk memenuhi
kebutuhan dalam pertukaran informasi di bidang pendidikan.
4) Microprosesor design
Implikasi grid computing yang dapat membantu mengurangi penggunaan microprosesor design
cycle serta memudahkan design center dalam membagikan resource secara efisien. Misalnya
Microprosesor Design Group yang digunakan di IBM Austin.
5) Scientific simulation
Implikasi grid computing digunakan untuk simulasi terhadap proses yang kompleks di bidang
fisika, kimia, dan biologi.
b. Cloud computing system
Cloud computing sebagai metode komputasi di mana kapabilitas terkait teknologi informasi
yang disajikan sebagai layanan (as a service). Dengan demikian, pengguna dapat mengaksesnya
lewat internet (“di dalam awan”) tanpa mengetahui apa yang ada di dalamnya, ahli dengannya,
atau memiliki kendali terhadap infrastruktur teknologi yang membantunya. Beberapa jenis layanan
komputasi awan, antara lain Infrastructure as a Service (IaaS), Platform as a Service (PaaS), dan
Software as a Service (SaaS). Dalam hal ini, awan (cloud) sering digambarkan di diagram jaringan
komputer sebagai metafora dari internet, sehingga dalam cloud computing sebagai abstraksi dari
infrastruktur kompleks yang masih disembunyikan. Komputasi cloud yang terukur secara dinamis
dan memiliki sumber daya virtual yang sering digunakan pada layanan internet. Secara mendasar
komputasi cloud digambarkan sebagai pelengkap dalam layanan IT berbasis model dalam internet
dengan melibatkan ketentuan dari keterukuran yang sudah ditentukan.
Gambar komputasi cloud (awan)
c. Mobile computing system (komputasi bergerak)
Kemajuan teknologi ke arah yang lebih dinamis membutuhkan perubahan dari sudut pandang
manusia maupun sudut pandang alat. Beberapa jenis perangkat komputasi bergerak antara lain
GPS, Laptop, PDA, smartphone, UMPC, Wearable computer, dan lain sebagainya. Dalam hal ini,
mobile computing menjadi sebuah kemajuan teknologi komputer dalam berkomunikasi menggunakan
jaringan tanpa kabel dan mudah dibawa atau berpindah tempat, meskipun secara mendasar
berbeda dengan komputasi nirkabel. Beberapa kemampuan mobile computing di antaranya akses
web dalam keadaan bergerak, disconnected operations (mobile agents), entertaintment (network
game groups), information services, location aware services, serta peralatan emergensi untuk
akses ke dunia luar maupun pemantauan dan koordinasi pada kendaraan (GPS).
3. Persoalan Akurasi dalam Komputasi Modern
Peletak dasar konsep komputasi modern pertama kali digagasi oleh seorang ilmuwan bernama
John Von Neumann. Sumbangsihnya dalam bidang matematika, teori kuantum, fisika nuklir, dan ilmu
komputer disalurkan melalui karya-karyanya. Von Neumann juga ahli dalam bidang komputasi dan
diangkat menjadi seorang konsultan pada pengembangan komputer ENIAC, sekaligus merancang
konsep arsitektur komputer yang masih dipakai sampai sekarang.
Gambar komputer ENIAC
Beberapa prinsip dalam memecahkan masalah menggunakan komputasi modern adalah sebagai
berikut.
a. Kompleksitas (Teori big O)
Seorang programmer harus mampu memprediksi jumlah sumber daya yang akan dihabiskan
oleh kode yang ditulisnya. Guna dapat mengukur hal tersebut, seorang programmer harus
mengetahui efisiensi algoritma yang telah ditulis. Pemahaman yang kurang terhadap hal tersebut
dapat menimbulkan kerugian, misalnya tidak bisa menilai dalam kasus apa algoritma berjalan lebih
cepat atau lebih lambat. Selain itu, ketidakmampuan tersebut akan berujung penilaian buruk terhadap
kinerja yang bersangkutan. Kompleksitas komputasi identik dengan cabang dari teori komputasi
dalam ilmu komputer yang berfokus pada mengklasifikasikan masalah komputasi sesuai dengankesulitan inheren mereka. Dalam konteks ini, sebuah masalah komputasi dipahami sebagai tugas
yang pada prinsipnya setuju untuk dipecahkan oleh komputer. Selain itu, kompleksitas sebagai hal
mendasar yang seharusnya dipahami oleh programmer. Dengan demikian, menguasai konsep Big
O menjadi suatu kewajiban jika ingin menjadi programmer yang unggul. Efisiensi algoritma dapat
diukur dengan sebuah notasi yang bernama Big O. Big O adalah sebuah metrik yang digunakan
untuk mengukur kompleksitas suatu algoritma. Kompleksitas dalam konteks ini berkaitan dengan
efisiensi kode. Semakin rendah kompleksitasnya, makin efisien pula kode tersebut.
Gambar Grafik kompleksitas pada teori big O
1) Ukuran kompleksitas
Berbagai bidang ilmu memiliki keterkaitan erat dalam ilmu komputer teoretis berupa analisis
algoritma dan teori computability. Perbedaan utama antara teori kompleksitas komputasi dan
analisis algoritma adalah kondisi akhir ditujukan untuk menganalisis jumlah sumber daya
yang dibutuhkan oleh algoritma tertentu. Adapun kondisi pertama mengajukan pertanyaan
yang lebih umum tentang semua kemungkinan algoritma yang dapat digunakan untuk
memecahkan masalah sejenis. Secara khusus, teori kompleksitas komputasi menentukan
batas-batas praktis tentang apa yang komputer bisa dan tidak bisa lakukan. Oleh sebab itu,
masalah kompleksitas dianggap sebagai sebuah inheren yang sulit jika memecahkan masalah
memerlukan sejumlah besar sumber daya, tetapi hal tersebut tergantung pada algoritma yang
digunakan dalam memecahkan masalah yang bersangkutan. Teori ini bersifat formalizes intuisi
dengan memperkenalkan matematika model komputasi untuk mempelajarinya dan kuantitatif
jumlah sumber daya yang dibutuhkan, seperti waktu dan penyimpanan.
Beberapa komponen ukuran kompleksitas yang digunakan di antaranya jumlah komunikasi
yang digunakan dalam kompleksitas komunikasi, jumlah gerbang dalam rangkaian yang
digunakan dalam rangkaian kompleksitas, dan jumlah prosesor yang digunakan dalam
komputasi paralel. Dalam hal ini, kompleksitas waktu pada sebuah algoritma berisi jumlah
langkah dan ekspresi bilangan yang dibutuhkan sebagai fungsi dari ukuran permasalahan.
Kompleksitas ruang berkaitan dengan sistem memori yang dibutuhkan untuk eksekusi sebuah
program. Dalam hal ini, kompleksitas mencoba untuk mengklasifikasikan masalah yang dapat
atau tidak dapat diselesaikan secara tepat dengan sumber daya terbatas. Pada gilirannya,
memaksakan pembatasan pada sumber daya yang tersedia untuk membedakan kompleksitas
komputasi dari computability teori berkaitan dengan jenis masalah yang dapat diselesaikan
menggunakan prinsip algorithmically. Komputasi modern dirancang untuk menangani masalah
yang kompleks, sehingga diterapkan pada komputer. Dengan menggunakan teori Big O, maka
komputasi modern dapat melakukan perhitungan untuk memecahkan masalah kompleksitas
yang kerap dihadapi. Adapun kelompok algoritma berdasarkan kompleksitas waktu asimptotik
sebagai berikut.
No. Kelompok Algoritma Nama
1. O(1) Konstan
2. O(log n) Logaritmik
3. O(n) Linear
4. O(n log n) N log n
5. O(n2
) Kuadratik
6. O(n3
) Kubik
7. O(2n
) Eksponensial
8. O(n!) Faktorial
2) Implementasi teori Big O
Notasi Big O (dibaca : Big Oh) mengukur kompleksitas algoritma dalam dimensi waktu. Selain
Big O, ada dua notasi lain yang dapat digunakan untuk mengukur kompleksitas waktu sebuah
algoritma, yaitu Big Theta (Θ) dan Big Omega (Ω). Konsep Big Omega (Ω) mirip dengan Big O,
tetapi terdapat perbedaan pada semantiknya. Nilai Big Omega (Ω) menunjukkan batas bawah
kompleksitas waktu suatu algoritma, sedangkan Big O sebaliknya. Jika sebuah algoritma
memiliki nilai batas atas dan batas bawah yang sama, algoritma tersebut dikatakan memenuhi
konsep Big Theta (Θ).
Penggunaan teori Big O pada komputasi modern bertujuan
untuk melakukan perhitungan dalam memecahkan masalah
kompleksitas yang sering dihadapi. Komputasi modern
dirancang untuk menangani masalah yang kompleks dalam
implementasinya menggunakan seperangkat komputer. Notasi
Big O menjadi sebuah notasi matematika untuk menjelaskan
batas atas dari magnitude suatu fungsi dalam fungsi yang
lebih sederhana. Dalam dunia ilmu komputer, notasi ini sering
digunakan dalam analisis kompleksitas algoritma. Notasi Big
O pertama kali diperkenalkan tahun 1894 oleh Paul Bachmann
(pakar teori bilangan Jerman) dengan bukunya yang berjudul
“Analytische Zahlentheorie” edisi kedua. Notasi tersebut juga
dipopulerkan oleh pakar teori bilangan Jerman lainnya yaitu
Edmund Landau yang lebih dikenal sebagai simbol Landau.
Adapun konsep Big O sebagai sesuatu yang abstrak dapat lebih
mudah dipahami dengan menggunakan sebuah analog.
Beberapa jenis runtime yang umum ditemui adalah O(log n), O(n log n), O(n^2), O(2^n), dan
O(n!). Sebuah runtime mungkin saja memiliki lebih dari satu variabel. Misalnya ingin mengecat
dinding kamar. Jika dinding memiliki lebar l dan memerlukan n lapis cat, waktu total yang
diperlukan dapat dirumuskan sebagai O(ln). Atau bisa dilihat pada sebuah harddrive berisi
data penting yang perlu diberikan kepada teman di luar kota secepatnya. Dalam kasus ini,
ada dua alternatif yang dapat dilakukan yaitu sebagai berikut.
a) Memberikan harddrive tersebut kepada yang bersangkutan.
Dengan alasan efisiensi waktu, tentu saja akan memilih alternatif ini karena mengirimkan
harddrive dapat memakan waktu 1 hingga 3 jam.
b) Melakukan transfer data secara digital
Hal ini akan berbeda jika data yang harus dikirimkan sangat besar, misalnya 1 TB, sebab
dengan kecepatan rata-rata internet saat ini (16 Mbps), maka memerlukan waktu lebih dari
satu hari untuk menyelesaikan pengiriman data. Dengan kondisi tersebut, maka alternatif
kedua menjadi pilihan yang tepat. Dalam hal ini, proses transfer data mewakili waktu
eksekusi (runtime) algoritma. Dalam notasi Big O, proses tersebut dapat dideskripsikan
sebagai berikut.
(1) Transfer digital: O(n), di mana n adalah ukuran data. Notasi tersebut menunjukkan
bahwa waktu yang diperlukan untuk transfer data akan bertambah secara linear
mengikuti besar ukuran data.
(2) Transfer fisik: O(1), di mana 1 adalah suatu konstanta. Nilai konstan dalam notasi
tersebut menunjukkan bahwa ukuran data tidak memengaruhi waktu transfer data.
Artinya, data akan selalu sampai dalam rentang waktu 4 – 5 jam, tidak peduli seberapa
besar data yang dikirimkan.
b. Modelling (NN & GA)
Modelling menjadi suatu hal yang penting dalam melakukan perhitungan rumit yang menyebabkan
komputasi modern membutuhkan proses modelling sebelum melakukan perhitungan. Modelling
merupakan asas yang cukup penting dalam pembelajaran CTL sebab melalui modelling tersebut
dapat terhindar dari pembelajaran yang teorestis–abstrak yang dapat memberi peluang terjadinya
verbalisme. Bayangkan saja jika dihadapi dalam suatu masalah perhitungan yang banyak dan
kompleks, tetapi tidak ada model matematika yang dimiliki. Perhitungan akan berjalan tanpa kendali
dan tidak akan mendapatkan hasil yang akurat.
Gambar modeling (NN & GA)
c. Down sizzing (problem volume besar)
Data yang besar membutuhkan cara penyelesaian khusus, karena dapat menjadi masalah jika ada
yang terlewatkan. Oleh karena itu, penggunaan metode down sizzing pada komputasi modern untuk
menangani masalah dengan volume yang besar. Dengan metode ini, data yang besar diparalelkan
dalam pengolahannya, sehingga dapat diorganisir dengan baik.
d. Akurasi (floating point)
Pengertian akurasi sebagai kedekatan antara nilai yang terbaca dari alat ukur dengan nilai
sebenarnya. Akurasi menjadi masalah yang paling penting dalam memecahkan masalah. Karena itu,
pada komputasi modern dilakukan perhitungan yang menghasilkan suatu jawaban yang akurat dari
sebuah masalah. Tentu kita pernah mendengar tipe data floating point yang biasa digunakan untuk
menyimpan data numerik dalam bentuk pecahan. Tipe data tersebut memiliki range penyimpanan
numerik yang besar, sehingga dapat digunakan oleh komputer untuk melakukan komputasi yang
akurat. Akurasi termasuk jenis persoalan paling penting dalam memecahkan masalah. Dalam
kondisi tersebut, tipe data floating point digunakan untuk menyimpan data numerik dalam bentuk pecahan. Tipe data yang bersangkutan memiliki ruang (range) penyimpanan numerik yang cukup
besar, sehingga dapat digunakan oleh komputer untuk melakukan komputasi secara akurat.
e. Kecepatan (Hz)
Secara mendasar, manusia pasti menginginkan masalah dapat diselesaikan dengan cepat, sehingga
perhitungan masalah kecepatan menjadi hal yang sangat krusial. Selain itu, dan harus dilakukan
dalam waktu yang singkat pada saat mengolah suatu data.
4. Tujuan dan Hambatan Komputasi Paralel
Peranan komputasi modern dalam membantu manusia menyelesaikan masalah-masalah yang
kompleks sangat besar, bukan tidak hanya menghitung tetapi
dalam hal program dan jaringan yang dapat diselesaikan dengan
cepat. Komputasi modern dikategorikan menjadi komputasi mobile
(bergerak), komputasi grid, dan komputasi cloud (awan). Mayoritas
permasalahan dalam computational thinking dilakukan pada sisi
manusia, sehingga dapat digunakan dalam berbagai bidang,
yang salah satunya pada dunia computer science. Adapun tujuan
utama penggunaan komputasi paralel adalah mempersingkat
waktu eksekusi program menggunakan komputasi serial.
Beberapa penggunaan komputasi paralel antara lain sebagai berikut.
No. Jenis Penggunaan Keterangan
1. Keterbatasan kapasitas
memori
Pada mesin jenis komputasi serial dan sumber daya nonlokal yang
dapat digunakan melalui jaringan atau internet.
2. Permasalahan besar
Terkadang sumber daya komputasi yang ada sekarang belum cukup
mampu untuk mendukung penyelesaian terhadap permasalahan
tersebut.
3. Penghematan biaya
Dijumpai pada pengadaan perangkat keras dengan menggunakan
beberapa mesin yang murah sebagai alternatif penggunaan satu mesin
yang bagus tapi mahal, walaupun menggunakan n buah prosesor.
Penggunaan komputasi paralel sebagai solusi untuk mempersingkat waktu yang dibutuhkan untuk
eksekusi program memiliki beberapa hambatan. Hambatan-hambatan tersebut antara lain adalah
sebagai berikut.
a. Beban waktu
Hambatan yang terkait dengan beban waktu yang digunakan untuk inisiasi task, terminasi
task, dan sinkronisasi.
b. Beban jaringan
Hambatan yang diakibatkan karena beban jaringan dapat dilihat pada saat eksekusi program
secara paralel. Permasalahan ini muncul karena ketika suatu task membutuhkan data dari task yang
lain. State ini dikirimkan melalui jaringan di mana kecepatan transfer data kurang dari kecepatan
prosesor yang mengeksekusi instruksi task. Adapun jumlah waktu yang dibutuhkan untuk berkomunikasi
melalui jaringan antardua titik adalah jumlah dari startup time, per-hop time, dan per-word transfer time.
c. Percepatan waktu eksekusi program
Nama Amdahl diambil dari nama seorang arsitektur komputer terkenal di perusahaan IBM, Gene
Amdahl yang pertama kali mencetuskan bentuk formulasi ini. Formulasi atau hukum ini banyak
dipakai dalam bidang komputasi paralel untuk meramalkan peningkatan kecepatan maksimum
pemrosesan data (secara teoretis) jika jumlah prosesor di dalam komputer paralel tersebut ditambah.
Hukum Amdahl sebagai percepatan waktu eksekusi program menggunakan komputasi paralel tidak
akan pernah mencapai kesempurnaan karena selalu ada bagian program yang harus dieksekusi
secara serial. Amdahl menyatakan bahwa peningkatan kecepatan secara paralel akan menjadi
linear, melipatgandakan kemampuan proses sebuah komputer dan mengurangi separuh dari waktu
proses yang diperlukan untuk menyelesaikan sebuah masalah.
5. Arsitektur Memori pada Komputer Paralel
Ilmu komputasi juga berkaitan dengan teknik penyelesaian numerik, penyusunan model matematika,
dan penggunaan komputer dalam menganalisis serta memecahkan masalah-masalah sains. Komputasi
modern memudahkan perkembangan teknologi modern dengan sangat pesat. Terdapat dua jenis
arsitektur memori pada komputer paralel, yaitu sebagai berikut.
a. Shared memory
Arsitektur jenis ini menyediakan global addressing sehingga
berbagai prosesor memiliki cara pengaksesan memori yang seragam.
Setiap perubahan pada suatu lokasi memori oleh suatu prosesor
akan selalu terlihat oleh prosesor lain. Terdapat ada dua jenis shared
memory berdasarkan frekuensi akses yaitu Uniform Memory Access
(UMA) untuk setiap prosesor memiliki hak pengaksesan yang seragam
dengan prosesor lain dan Non Uniform Memory Access (NUMA) di
mana tidak semua prosesor memiliki hak yang sama dalam mengakses
memori. Kelebihan dari arsitektur ini antara lain pengaksesan memori
yang user friendly dan performansi dalam penggunaan data bersama
antartask. Adapun kekurangannya antara lain minimnya skalabilitas
pada saat terjadi penambahan prosesor, di mana terjadi peningkatan
traffic antara prosesor ke shared memory dan antara cache coherent
system dengan memori sebenarnya.
b. Distributed memory
Kelebihan dari arsitektur distributed memory adalah terjaganya skalabilitas ketika terjadi
penambahan prosesor. Adapun kekurangannya adalah programmer harus berurusan dengan detail
komunikasi data antara prosesor dan memori nonlokal. Arsitektur jenis ini memiliki karakteristik di
mana setiap prosesor memiliki memorinya masing-masing. Dengan demikian, eksekusi instruksi dapat berjalan secara independen antara satu prosesor
dengan yang lain. Prosesor akan menggunakan jaringan
ketika membutuhkan akses ke memori nonlokal. Akses ini
sepenuhnya menjadi tanggung jawab penulis program.
6. Realisasi dan Dampak Komputasi Modern
Mayoritas komputasi di masa sekarang telah menggunakan
komputer yang lebih dikenal komputasi modern. Komputasi menjadi
salah satu sub bidang dari ilmu komputer dan matematika. Bila
pemrosesan paralel dilakukan dengan tepat, maka performa dari
komputasi modern akan berjalan dengan baik dan maksimal.
Jika arsitektur paralel processing yang digunakan kurang tepat,
maka pemrosesan data juga tidak akan berjalan maksimal dan
baik. Guna melakukan aneka jenis komputasi paralel diperlukan
infrastruktur mesin paralel yang terdiri dari banyak komputer
yang dihubungkan dengan jaringan dan mampu bekerja secara
paralel untuk menyelesaikan satu masalah. Komputasi modern
membantu kita dalam kehidupan sehari-hari mulai mempercepat
waktu pekerjaan sampai meminimalkan pengeluaran untuk
melakukan sebuah proses, dalam sebuah pekerjaan akan sangat
membutuhkan kecepatan dan juga ketepatan, apabila banyak data
yang diproses maka akan membutuhkan waktu. Dengan meminimalisir arsitektur, path, dan biaya, maka
pemrosesan yang dilakukan akan semaksimal mungkin. Oleh sebab itu, diperlukan aneka perangkat
lunak pendukung (middleware) yang berperan mengatur distribusi antarnode dalam satu mesin paralel.
Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi.
Beberapa dampak komputasi modern dalam kehidupan sehari-hari adalah sebagai berikut.
a. Biosensor
Biosensor identik dengan sejenis sensor yang mengombinasikan komponen hayati dengan
komponen elektronik (transduser) dengan mengubah sinyal dari komponen hayati menjadi sinyal
luar yang terukur. Implementasi yang paling umum dari biosensor dapat dilihat pada alat pengukur
gula darah yang menggunakan enzim glukosa oksidase untuk memecah gula darah.
Gambar penggunaan biosensor
b. Biometrik
Komputasi modern dapat membantu manusia dalam menyelesaikan masalah-masalah kompleks
dengan bantuan seperangkat PC, salah satu misalnya adalah biometrik. Menurut garis besarnya,
biometrik bisa diterjemahkan sebagai pengukuran dari analisis statistik pada data biologi yang
mengacu pada teknologi untuk menganalisa karakteristik tubuh secara individu. Beberapa teknik
biometrik di antaranya pembacaan sidik jari/telapak tangan, geometri tangan, pembacaan retina/
iris, pengenalan suara, dan dinamika tanda tangan.
Gambar tren penggunaan biometrik
c. Bidang kesehatan
Beberapa penerapan komputasi modern dalam bidang kesehatan antara lain sebagai berikut.
1) Administrasi
Dengan adanya komputasi modern di dalam dunia administrasi sangat membantu di dalam
penyimpanan, pengelompokan, dan pengolahan data. Tanpa komputasi modern, akan sangat
sulit untuk memeriksa banyaknya data pasien, stok obat, dan data lainnya yang dimiliki oleh
rumah sakit. Namun dengan adanya komputasi modern, proses tersebut lebih mudah untuk
dilakukan.
2) Melihat dan menganalisa organ
Supaya dapat melihat organ tubuh bagian dalam manusia telah ditemukan begitu banyak alat
canggih, namun hampir seluruh alat tersebut masih bergantung pada perangkat komputer
sebagai sarana untuk penyaluran data atau pun gambarnya. Oleh karenanya, komputer
memiliki peranan yang vital juga dalam melihat dan menganalisa organ-organ tubuh manusia
tersebut. Beberapa contoh penggunaan komputasi modern dalam melihat dan menganalisis
organ adalah sebagai berikut.
a) USG (Ultra Sonography) adalah suatu alat dalam dunia kedokteran yang memanfaatkan
gelombang ultrasonik, yaitu gelombang suara yang memiliki frekuensi tinggi (250 kHz –
2000 kHz) yang hasilnya ditampilkan dalam layar monitor berupa gambar dua dimensi
atau tiga dimensi.
b) System Dynamic Spatial Reconstructor (DSR) berguna untuk melihat gambar dari berbagai
sudut organ tubuh secara bergerak.
c) System Computerized Axial Tomography (CAT) berguna untuk menggambar struktur otak
dan mengambil gambar seluruh organ tubuh yang tidak bergerak dengan menggunakan
sinar-X.
d) SPECT (Single Photon Emission Computer Tomography) merupakan sistem komputer yang
mempergunakan gas radiokatif untuk mendeteksi partikel-partikel tubuh yang ditampilkan
dalam bentuk gambar.
e) PET (Position Emission Tomography) merupakan sistem komputer yang menampilkan
gambar yang mempergunakan isotop radioaktif.
f) NMR (Nuclear Magnetic Resonance) yaitu teknik mendiagnosa dengan cara memagnetikkan
nukleus (pusat atom) dari atom hidrogen.
g) Magnetic Resonance Imaging (MRI) adalah alat untuk pemeriksaan organ tubuh secara
komputerisasi, dengan potongan tranversal, koronal, dan sagita.
3) Farmasi
Dalam bidang farmasi dan obat-obatan, komputasi modern juga berperan sangat penting,
misalnya untuk mengelola resep dan dosis serta harga obat-obatan tersebut. Selain itu, dengan
adanya komputasi modern dalam bidang farmasi juga membantu untuk mengelompokkan
macam-macam obat berdasarkan kegunaannya.
4) Rekam medis
Komputasi modern dapat menjadi alat bantu dalam proses rekam medis berbasis komputer
(Computer based patient record) yang digunakan untuk mencatat semua data medis pasien.
Dokter ataupun perawat dapat melihat rekam medis pasien seperti, keluhan dan riwayat
penyakit sebelumnya yang pernah diderita oleh si pasien, tanggal kedatangan pasien terakhir
kali berobat, resep yang pernah diberikan, dan lain sebagainya.
5) Proses Diagnosis
Dengan adanya komputasi modern dalam bidang kesehatan, mendiagnosis suatu penyakit bukan
hal yang sulit lagi. Salah satu contohnya yaitu Mycin. Mycin merupakan contoh sistem pakar
yang digunakan untuk membantu juru medis mendiagnosis penyakit darah yang cepat menular
dan kemudian dapat memberikan saran berupa penggunaan antibiotik yang sesuai.
d. Bioinformatika
Ilmu terapan yang lahir dari perkembangan teknologi informasi di bidang molekular disebut
bioinformatika yang ditemukan pada pertengahan tahun 1980-an. Beberapa aktivitas yang
berhubungan dengan bioinformatika antara lain sebagai berikut.
1) Pangkalan data
Dalam hal ini, penerapan berbagai bidang dalam khasanah bioinformatika dapat dijumpai pada
pembuatan pangkalan data dan pengembangan algoritma untuk analisis sekuens biologi telah
dilakukan sejak tahun 1960an. Kemajuan teknik biologi molekuler dalam mengungkap sekuens
biologi protein dan asam nukleat mengawali perkembangan pangkalan data dan teknik analisis
sekuens biologi dengan sangat pesat. Bahkan pada tahun 1960-an telah mulai dikembangkan
pangkalan data sekuens protein di Amerika Serikat dilanjutnya pengembangan pangkalan
data sekuens DNA di akhir tahun 1970-an. Termasuk di dalamnya Jerman yang berfokus pada
European Molecular Biology Laboratory (Laboratorium Biologi Molekuler kawasan Eropa).
Bioinformatika juga mempelajari penerapan teknik komputasi untuk mengelola dan menganalisis
informasi hayati yang mencakup penerapan metode-metode matematika, statistika, dan
informatika untuk memecahkan masalah-masalah biologi, terutama yang terkait penggunaan
sekuens DNA dan asam amino. Misalnya analisis ekspresi gen, analisis filogenetik, pangkalan
data untuk mengelola informasi hayati, sequence alignment (penyejajaran sekuens), dan
prediksi struktur untuk meramalkan struktur protein dan struktur sekunder RNA. Dalam hal ini,
pangkalan data sekuens biologi berwujud sebagai berikut.
No. Pangkalan Data Keterangan
1. Primer Menyimpan sekuens primer asam nukleat dan protein.
2. Sekunder Menyimpan motif sekuens protein.
3. Struktur Menyimpan data struktur protein dan asam nukleat.
a) Data sekuens biologi
Salah satu jenis piranti bioinformatika yang saling terhubungan dengan penggunaan
pangkalan data sekuens Biologi adalah BLAST (Basic Local Alignment Search Tool). Ada
pun algoritma yang mendasari kerja BLAST adalah penyejajaran sekuens. PDB (Protein
Data Bank) sebagai pangkalan data tunggal yang menyimpan model struktur 3D protein
dan asam nukleat hasil penentuan eksperimental menggunakan dengan kristalografi sinar
X, mikroskopi elektron, dan spectroscopy NMR.
b) Sekuens asam nukleat
Pangkalan data utama untuk sekuens asam nukleat di masa sekarang adalah DDBJ (DNA
Data Bank of Japan) dari Jepang, EMBL (the European Molecular Biology Laboratory)
untuk kawasan Eropa, dan GenBank dari Amerika Serikat. Ketiga pangkalan data tersebut
saling bekerja sama dan bertukar data harian guna menjaga keluasan cakupan masingmasing pangkalan data.
2) Biologi molekular modern
Di bidang bioinformatika ini tidak terlepas dari perkembangan biologi molekular modern, salah
satunya peningkatan pemahaman manusia dalam bidang genomik yang terdapat dalam molekul
DNA. Perkembangan teknologi DNA rekombinan (DNA) memainkan peranan penting dalam
lahirnya bioinformatika. Teknologi tersebut memunculkan pengetahuan baru dalam rekayasa
genetika organisme yang dikenal dengan istilah biotechnology. Kemampuan para peneliti dan ilmuwan dalam memahami dan memanipulasi kode genetik DNA sangat didukung teknologi
informasi melalui perkembangan hardware dan software yang berkaitan dengan produksi
perangkat lunak. Hal ini dapat dilihat pada upaya perusahaan bioteknologi Celera Genomics
(Amerika Serikat) yang melakukan pembacaan sekuen genom manusia yang secara maksimal
memanfaatkan teknologi informasi, sehingga bisa melakukan pekerjaannya dalam waktu
singkat (hanya beberapa tahun).
Tidak ada komentar:
Posting Komentar