Rabu, 31 Oktober 2007

Membaca Tangan dan Darah


Pengenalan wajah, sidik jari, dan iris kini merupakan favorit biometri. Sebenarnya, ada ciri-ciri lain yang juga dapat digunakan untuk identifikasi.

Pengenalan tangan: Sistem ini mengukur geometri seluruh tangan. Dari panjang jari, lebar sendi, bentuk tangan, dan ciri-ciri lainnya dihasilkan sebuah paket data.

Analisis DNA: Sidik genetis adalah ciri pengenalan yang sangat bagus-saat ini telah digunakan untuk melacak pelaku kejahatan. Pertimbangan etis dan perlindungan data menghalangi penerapan analisis DNA di bidang lainnya.

Pola vena: Pembuluh darah balik (vena) pada tangan juga tidak berubah bentuk seumur hidup-hanya menjadi lebih tebal. Dalam cahaya inframerah, polanya tampak lebih jelas.

Pengenalan suara: Pita suara, tenggorokan, rongga mulut, dan rahang secara bersama-sama menghasilkan pola suara yang dapat digunakan untuk proses verifikasi melalui telepon.

Karena faktor gangguan seperti ketergantungan pada sudut dan cahaya dapat disingkirkan, Busch menganggap metoda 3D ini lebih tepat dibandingkan pengenalan 2D yang biasa. Di samping itu, ada aspek lain yang memperbesar minat pada sistem pengenalan 3D. Dengan data foto 3D sebagai template, wajah orang dalam kerumunan yang menghadap ke suatu arah lebih mudah diidentifikasi.

Sehandal apa sistem tersebut bekerja. Saat ini para ahli sedang meneliti dalam sebuah eksperimen internal di IGD, di mana sekitar seratus peserta berpartisipasi dalam proyek yang disebut 'BioFace V'. "Penuaan manusia sulit kami simulasikan, tetapi kami tidak sabar menunggu hasil eksperimen pada anak-anak kecil," ungkap Ulrich Pinsdorf, salah seorang peneliti di Fraunhofer.


Dr. Christoph Busch, Fraunhofer IGD.
»Pengenalan wajah 3D memungkinkan dibuatnya sistem identifikasi yang handal.

Sistem pengenalan biometrik pada dasarnya memang mengandalkan ciri-ciri yang tidak berubah, tetapi bisa saja dengan berjalannya waktu ciri-ciri tersebut menjadi sulit dikenali. Karena itu, trend bergeser pada penggunaan beberapa metoda sekaligus. Di samping peningkatan keamanan, cara ini juga akan memberikan ketepatan yang lebih tinggi dalam pemakaian yang terus menerus. Setidaknya, salah satu dari beberapa metoda-demikian gagasan di baliknya-sangat mungkin memberi hasil yang jelas.

Dalam sebuah paket biometri kombinasi biasanya terdapat sistem pengenalan sidik jari. Metoda yang telah matang ini digunakan sejak lebih dari 100 tahun dalam dunia kriminologi dan belum lama ini juga diterapkan untuk pemberian akses ke notebook dan PC. Jika sistem lain bekerja dengan algoritma analisis, pengenalan sidik jari biometrik mengandalkan analisis garis Papillar yang telah teruji. Komputer membandingkan titik-titik karakteristik tersebut yang dapat berupa percabangan, awal dan akhir garis, lingkaran, patahan, atau pusaran.

Untuk merekam sidik jari digunakan berbagai sensor yang semuanya menghasilkan gambar hitam-putih berpola garis. Perangkat yang paling populer adalah sensor optik. Di sini jari diletakkan pada sebuah keping kaca, disinari oleh LED melalui sebuah prisma, dan difoto dengan digicam. Pada sensor kapasitif, permukaan sensor dan permukaan jari membentuk sebuah kapasitor yang kapasitasnya berubah sesuai pola permukaan kulit.

Sistem sensor lainnya mengukur medan listrik atau pola panas dari jari. Untuk membedakan jari palsu-misalnya dari silikon-sistem tertentu juga mengukur detak jantung, aliran darah, kandungan oksigen dalam darah, dan suhu jari.

Sayangnya, tak satu pun metoda biometri yang sepenuhnya aman dari pemalsuan. Untuk mencegah orang lain ikut lewat bersama orang yang telah di-scan, petugas perbatasan atau bandara tidak akan tergantikan oleh mesin.

Teknologi Biometrics Persempit Pemalsuan Data

PEMBUATAN paspor dengan sistem foto terpadu berbasis biometrik, mulai diterapkan di Kantor Imigrasi (Kanim) Bandung, Senin (6/2). Pemerintah menganggap penting untuk menerbitkan paspor dengan teknologi itu, mengingat tuntutan perlunya security features canggih dan sulit ditiru, agar paspor RI sulit dipalsukan. Dalam paspor baru dilengkapi pengamanan dengan teknologi biometrik (Pikiran Rakyat, 11/2/06).
SEORANG pemohon paspor melakukan pindai jari tangan saat proses pembuatan paspor dengan sistem foto terpadu berbasis biometrik yang mulai diterapkan di Kantor Imigrasi (Kanim) Bandung sejak Senin (6/2).*M. GELORA SATA/”PR”
Penerapan teknologi biometrik tentu berbeda dengan teknologi sebelumnya yang memisahkan pembuatan foto dan sidik jari. Teknologi biometrik mampu mempersempit proses tersebut dalam beberapa menit yang terhubung secara online dengan kantor pusat sebagai penyimpan data biometrik (wajah dan sidik jari) dan antarkantor imigrasi untuk mencegah perolehan paspor ganda (lebih dari satu) pada orang yang sama karena memiliki dokumen identitas ganda.

Dalam arti lain, sistem personalisasi (pengisian data) berdasarkan Machine Readable Passport (MRP) foto terpadu dengan media stiker/label yang digunakan selama ini, diganti dengan sistem cetak langsung (direct printing) pada halaman data (data page). Dalam aplikasinya, foto dan sidik jari dilakukan secara elektronis dengan imaging system, sehingga tidak mudah dipalsukan atau dikelupas. Sekarang timbul pertanyaan, apakah dengan penggunaan teknologi biometrik data pada paspor itu betul-betul tidak dapat dipalsukan atau hanya mempersempit ruang gerak dunia bisnis pemalsuan paspor?

Menghalau Maling Virtual



Kejahatan internet yang semakin canggih berjalan seiring kemajuan teknologinya. Karenanya, sistem keamanan internet tidak bisa dianggap angin lalu. Berkacalah pada pengalaman.
Internet bagi sebagian kalangan sudah menjadi kebutuhan pokok yang nyaris sama pentingnya dengan makan. Tak heran jika pertumbuhan penggunaan internet terus meningkat. Pernahkah terbayang kehidupan Anda sepuluh atau dua puluh tahun yang akan datang?

Di negeri Paman Sam bayangan itu muncul lewat kartun yang menggambarkan kehidupan seseorang, yang sangat tergantung pada internet. Diceritakan seorang lelaki meninggal dunia, dan ketika sang istri mendengar surat wasiat sang suami, betapa terkejutnya takkala ia hanya diberi warisan berupa web space di dunia maya. Digambarkan lewat kartun lainnya, seorang ibu kebingungan memberi jawaban pada sang anak yang bertanya bagaimana ia bisa berada di dunia ini, “Sebenarnya saya ini dilahirkan atau didownload sih?”

Pengamat dan Praktisi Teknologi Informasi, KRMT Roy Suryo Notodiprojo yang lebih dikenal dengan nama Roy M. Suryo, menyatakan analogi kartun di atas bisa jadi benar adanya. Hal itu, menurut dosen sebuah perguruan tinggi negeri di Yogyakarta, ini adalah sebuah refleksi betapa internet menjadi sama pentingnya dengan sembako, atau yang lebih ekstrim internet sama pentingnya dengan bernafas. “Pertumbuhan internet di dunia sangat luar biasa. Rebutan domain menjadi salah satu indikasinya. Karena itu, seiring pertumbuhan internet yang kian melaju membuat lahirnya paradigma baru dalam kehidupan, terutama e-Economy,” ujar Roy.

Menurut Roy, jika di tahun 1920-an sektor ekonomi pertanian menjadi primadona, sepuluh tahun kemudian, ekonomi industri mulai dilirik. Era berikutnya, orang berubah haluan dengan membangun ekonomi service. Hingga 1980-an, masyarakat dunia mulai bermain di ekonomi global. Sejak awal 1995-an hingga sekarang, ekonomi digital menjadi paradigma baru dalam menjalankan bisnis. Paradigma e-Economy pun akhirnya melahirkan uang digital.

“Saat ini, berbelanja atau melakukan transaksi bisnis lewat internet bukanlah barang baru. Tidak hanya di negara maju, di kawasan Asia pun sering dilakukan. Begitu juga di Indonesia. Hebatnya, meski pengguna internet di Indonesia belum sebanyak negara Asia lainnya, namun berdasarkan riset yang dilakukan oleh badan riset independen AC. Nielsen, Indonesia menempati urutan keempat terbesar dalam belanja lewat internet di kawasan Asia. Sayangnya, prestasi itu bukanlah sesuatu yang patut dibanggakan. Masalahnya, sebagian besar belanja digital dilakukan secara ilegal,” tambah Roy.

Hasil riset juga menyebutkan, dari seluruh total pengguna internet yang pernah berbelanja dan melakukan transaksi lewat internet, tercatat kurang dari 10% yang menggunakan uang ataupun kartu kredit milik sendiri. “Artinya, meski di urutan keempat terbesar, tetapi yang belanja mayoritas adalah penjahat-penjahat,” kata Roy sambil tersenyum.

Adanya lubang dalam sebuah kemajuan tentu dapat dimaklumi. Bukankah hukum dibuat untuk dilanggar, begitu kalimat pelesetan yang sering terdengar. Jadi wajar saja jika internet lahir, maka penjahat di bidang ini pun bermunculan. “Yang sering dilupakan, ketika membangun teknologi dan mengembangkan sistem pengamanannya, orang hanya melihat dari satu sudut pandang saja. Padahal dengan sistem security yang handal, bukan saja akan mencegah terjadinya kejahatan tetapi juga mendongkrak pendapatan sebuah perusahaan yang menggunakan teknologi tersebut,” kata FX. Taro, Pengamat IT Security.

Menurut Taro, yang perlu diperhatikan dalam membangun sistem keamanan di dunia virtual adalah segala aspek yang terkait dengannya. “Bukan saja secara fisik, tetapi juga secara logika. Ini yang sering dilupakan. Sistem security internet membutuhkan perhatian dari berbagai bidang,” tambah Taro.

Meski dianggap penting, sayangnya security system internet di Indonesia kadangkala dianggap angin lalu. Yang sering terjadi ketika sistem sudah dibobol, dengan tergopoh-gopoh sistem keamanan dibangun dan ditingkatkan. Karena itu, walaupun internet baru berkembang sepuluh tahun belakangan ini di Indonesia, namun dalam catatan yang dibuat oleh Roy Suryo sejumlah kejahatan digital telah menelan banyak korban.
“Yang paling banyak adalah carding, yaitu menggunakan kartu kredit milik orang lain untuk berbelanja,” ujar pria yang banyak membantu polisi dalam menangani kejahatan internet ini.

Selain itu, Roy juga memberikan contoh kasus lainnya yang pernah terjadi. Yaitu situs resmi yang berisi tentang jajak pendapat di Timor Timur - ketika akan melepaskan diri dari Indonesia - juga pernah dimasuki tamu tak diundang. Akibatnya, banyak yang meragukan hasil perhitungan jajak pendapat yang berbuntut kerusuhan besar di tanah bekas jajahan Portugis tersebut. Cerita buram tentang pembobol internet juga datang dari negera tetangga, Singapura. Saat itu, Wenas Agusetiawan, bocah asal Indonesia yang memiliki otak encer membobol situs di negeri seribu singa tersebut. Dan contoh kasus yang paling kesohor adalah plesetan situs Klikbca.

Kasus terakhir yang sempat menghebohkan ini diakui oleh Aswin Wirjadi, Deputy President Director BCA. “Untuk kasus klikbca, tak sempat menduga akan terjadi. Pengalaman kami, mulai dari dibuatnya ATM, kartu debit sampai dengan klikbca yang kami bangun bagi nasabah memang kerap kali menemukan kendala. Apapun kami lakukan, mulai dari merangkak, berjalan, sampai berlari. Itu semua kami lakukan satu persatu sampai dengan sekarang ini. Kami melakukan riset di berbagai negara, khususnya Amerika untuk membangun internet banking ini,” kata Aswin panjang lebar.

Menurut Sarjana Teknik Mesin jebolan Universitas Katolik Atmajaya ini, yang perlu menjadi perhatian adalah ketika makin canggih teknologi, maka makin canggih pula kejahatannya. Berdasarkan pengalaman BCA menghadapi itu, ada lima kategori yang dapat diklasifikasikan sebagai kejahatan internet banking.

Seperti yang dipaparkan oleh Aswin, kejahatan yang paling banyak dan seringkali tidak diakui diakui oleh para korban adalah situs palsu. Modusnya sangat sederhana, ada seseorang memfotokopi tampilan klikbca yang seolah-olah milik BCA. Peristiwa yang dilakukan oleh pria asal Bandung ini memang tidak bertujuan membobol rekening para nasabah BCA yang terlanjur masuk dalam situs palsu tersebut. Toh tetap saja, BCA sempat kebakaran jenggot.

Modus lainnya yang juga menggunakan situs palsu adalah penipuan lewat situs-situs tertentu. “Yang pernah terjadi adalah sebuah situs porno Triple X membuat penawaran, jika ingin masuk dan melihat gambar syur yang mampu menaikkan adrenalin silahkan melakukan registrasi dan transfer biaya sebesar Rp. 10.000,- lewat BCA. Herannya banyak yang tanpa sadar melakukan itu, ketika registrasi akhirnya sang korban akan memberikan nomor pin BCA-nya. Akibatnya, dalam waktu sekejap rekeningnya kosong tak bersisa,” terang Aswin.

Masih menurut Aswin, yang bergabung dengan BCA sejak tahun 1990, untuk modus seperti ini telah terjadi 37 kasus. Meskipun BCA berhasil menuntaskan dan menangkap pelakunya, sayangnya tak ada korban yang mau bersaksi karena malu. Padahal UU di Indonesia menyebutkan minimal ada dua saksi yang mau memberi kesaksian agar pelaku dapat masuk ke persidangan.

Jenis kejahatan kedua yang dialami BCA adalah pencurian user ID dan PIN (Personal Identification Number) yang dilakukan oleh seseorang lewat warung internet. PC di warnet juga telah dipasang program untuk merekam user ID dan PIN pengguna yang sedang melakukan transaksi internet banking BCA. Selain di warnet, hal serupa juga pernah dilakukan di beberapa kantor di Jakarta.

Jenis kejahatan berikutnya, biasanya, mengenai orang yang awam internet, yaitu berupa penipuan registrasi. “Padahal kami membuat registrasi begitu mudahnya. Seperti juga ATM, setiap nasabah memiliki PIN. Artinya, setiap nasabah bisa secure kartunya masing-masing. Begitu juga, dengan internet banking sesungguhnya,” kata mantan Direktur di Indomobil ini. Modusnya, selain menggunakan internet, si pelaku kejahatan juga menggunakan SMS. Sebuah SMS yang berisi pesan tentang penerimaan hadiah dan si penerima diwajibkan membayar pajak hadiah lewat BCA.

Bentuk kejahatan lainnya adalah petugas BCA palsu, yang meminta pendaftaran registrasi di internet banking. Terakhir, menurut Aswin, sangat ironi. Karena korban yang berjatuhan adalah kalangan intelektual yang sangat security minded dan berorientasi pada penggunaan teknologi. Kelemahannya adalah, para korban yang berasal dari satu perguruan tinggi terkemuka di Indonesia terlalu sederhana membuat PIN dan user ID-nya.

Dalam dua tahun, sejak dibangunnya internet banking, 381 kejahatan telah dialami bank swasta terbesar nomor satu di Indonesia ini. “Dari seluruh kejahatan tersebut, BCA mengalami kerugian sebesar Rp. 670 juta. Kami anggap itu sebagai uang hilang untuk biaya sekolah,” aku Aswin.

Belajar dari pengalaman, kini BCA melakukan langkah pengamanan agar lembaran hitam tidak kembali terjadi. BCA mencoba menerapkan beberapa langkah strategis agar tidak menjadi bulan-bulanan kejahatan internet banking. “Langkah pertama, kami telah memaksimalkan internet security system yang ada. Secara terus menerus dan optimal kami memberikan pendidikan pada masyarakat dan nasabah. Dan yang terakhir, kami membuat dan menyerahkan sistem keamanan pribadi kepada para nasabah dengan membekali perangkat security berupa key BCA,” ujar Aswin.

Aswin memaparkan, langkah yang dilakukan BCA dalam memaksimalkan internet security system adalah dengan memblokir user ID jika terjadi return email atau bounce email dengan alasan unknown user, e-mail blocked ataupun tak memiliki alasan yang spesifik. BCA juga akan melakukan pemblokiran jika terdapat satu alamat e-mail yang digunakan oleh banyak user ID, yang masuk dalam report fraud control.

Untuk langkah pengamanan lainnya, BCA juga melakukan pemblokiran kepada user ID yang dormant atau tidak melakukan transaksi lebih dari enam bulan lamanya. BCA juga akan menutup user ID nasabah yang tidak melakukan first time log-in selama dua minggu. Selain itu, sebagai langkah antisipasi BCA telah membeli nama-nama domain yang mirip dengan Klikbca, meminta secara resmi penutupan situs palsu dan juga menutup link banner Klikbca yang terdapat pada situs lain.

Walaupun benteng pertahanan telah dibangun, Aswin mengakui internet banking milik BCA bukan berarti aman 100%. “Karena itu, kami terus menerus melakukan perbaikan internet security system. Sehingga jika disimpulkan berdasarkan pengalaman yang dialami BCA, ada tiga hal penting dalam mengimplementasikan internet banking. Yaitu, kita harus kuat dalam membangun bisnis yang ada, kuat dalam investasi dan mempertajam solusi keamanannya, terutama dengan menggunakan sistem keamanan dinamik ,” tutup Aswin.

Menilik apa yang dialami BCA, Roy Suryo menyarankan agar bank tersebut harus memberikan perhatian ekstra untuk memperkuat sistem keamanannya. “Karena, sebagian besar pelakunya bermotif ekonomi, kecuali pelaku yang membuat situs plesetan BCA. Karena sesungguhnya tidak semua kejahatan komputer dan internet bertujuan akhir pada ekonomi,” katanya.

Roy membagi menjadi dua kategori besar jenis kejahatan komputer dan internet. Pertama, fraud by computer manipulation, yaitu si pelaku melakukan manipulasi atas jumlah saldo rekening, jumlah jam kerja, jatah cuti, dan lain sebagainya. Selain itu, jenis kejahatan lainnya adalah computer forgery, biasanya berupa pemalsuan surat-surat penting, pengrusakan data dan program komputer, penyusupan ke sistem komputer, pembajakan program komputer dan masih banyak lagi.

“Untuk itu diperlukan prinsip desain security yang baik. Desain keamanan itu dapat berupa desain yang terbuka, dimana jika sistem memiliki source code, maka kode tersebut harus dibuka sehingga akan meminimalkan kemungkinan terjadinya backdoor. Selain itu, akses ke resource system harus tergantung pada lebih dari satu persyaratan yang harus dipenuhi. Yang lebih baik adalah menggunakan model sekuriti yang memisahkan tingkat pengguna, karena akan memberikan hasil yang lebih memuaskan. Yang juga harus dilakukan adalah user harus memisahkan diri dengan sistem, dan yang terakhir secara psikologi, seseorang harus mampu membuat sistem sekuriti yang mudah digunakan. Sudah saatnya para desainer sistem keamanan memikirkan perilaku penggunanya,” ujar Roy. menambahkan.

Biometrics



Teknologi biometrics adalah teknologi kemanan yang menggunakan bagian tubuh sebagai identitas. Dunia medis mengatakan bahwa ada berapa bagian tubuh kita yang sangat unik. Artinya, tidak dimiliki oleh lebih dari satu individu. Contohnya saja sidik jari atau retina mata. Meskipun bentuk atau warna mata bisa saja sama, namun retina mata belum tentu sama. Begitu juga dengan suara dan struktur wajah. Bagian-bagian unik inilah yang kemudian dikembangkan sebagai atribut keamanan.

Sebagai bagian dari teknologi keamanan, biometrics memiliki dua fungsi sekaligus yang dapat dijalankan terpisah maupun secara bersamaan. Yang pertama sebagai pencatat ID atau sebagai alat verifikasi (password).

Teknologi biometrics hampir dapat diterapkan di mana saja. Mulai untuk melindungi sebuah barang tertentu dari akses yang tidak diinginkan, seperti komputer. Sampai untuk melindungi sebuah ruangan yang ramai dari orang-orang tertentu. Misalnya, untuk mengetahui keberadaan teroris atau penjahat lain di bandara.

Cara kerja teknologi keamanan yang satu ini hampir sama dengan teknologi keamanan lain yang sangat bergantung kepada sensor. Sendor yang digunakan pada teknologi biometrics cenderung mahal dan semakin akurat ketajamannya maka akan semakin mahal.

Selain sensor, bagian yang tidak kalah penting dari biometrics adalah data. Bagaimana Anda menyimpan data pada sebuah sistem sangat penting. Sebab biometrics adalah teknologi yang bergantung kepada data. Bila data yang disimpan tidak aman atau lengkap, kemungkinan adanya penyusup ke system ini akan lebih besar.

Pembagian Biometrics




Tingkat keamanan yang tinggi tidak selalu ditandai oleh jumlah petugas kemanan yang semakin banyak. Justru terletak dari teknologi yang digunakan. Bila petugas keamanan bertambah banyak, tapi penjahat semakin pintar menyamarkan diri dan barang bawaannya, tetap saja dapat terjadi kejahatan.

Menurut sistemnya biometrics sendiri terbagi atas tiga macam, yaitu:

1. Sistem yang menyimpan data langsung pada alat.
Dengan sistem ini, data akan disimpan pada media penyimpanan yang berada dalam alat detektor. Jika sewaktu-waktu mesin harus di-reset atau dikembalikan ke posisi awal, maka data yang ada dapat saja ikut terhapus. Sehingga petugas harus meng-input ulang. Jika data yang dimasukkan sangat banyak tentu akan sangat merepotkan, lain halnya bila data tidak terlalu banyak. Biometrics dengan sistem ini sangat cocok untuk diterapkan pada sebuah alat tertentu yang tidak digunakan oleh banyak orang atau untuk untuk melindungi sebuah ruang khusus, yang juga tidak diakses oleh banyak pengunjungnya.

2. Sistem yang menyimpan data pada jaringan.
Sistem yang kedua memanfaatkan jaringan untuk menyimpan datanya. Sistem yang kedua sangat efektif bagi aplikasi yang memang dipergunakan untuk banyak user. Misalnya saja untuk data absen karyawan atau siswa. Bentuk fisik yang ditampilkan oleh alat juga tidak perlu terlalu besar. Karena data tidak akan diproses langsung pada alat. Melainkan dikirim dahulu ke sebuah jaringan baru kemudian diproses dan disimpan. Sistem ini memang membutuhkan waktu lama.

Tetapi cukup efektif untuk data yang besar. Karena tidak akan terkena risiko data hilang pada saat proses reset pada alat harus dilakukan.

3. Sistem yang menyimpan data pada sebuah chip.
Sistem yang terakhir ini menggunakan media tambahan berupa chip untuk menyimpan data si pemilik ID. Sehingga untuk menggunakannya seseorang harus membawanya. Untuk sistem yang terakhir ini, akan sangat efektif diterapkan untuk yang memiliki pengguna sangat banyak atau bila alatnya hendak diletakkan di tempat umum. Misalnya saja untuk keamanan di mesin ATM atau hanya sekadar sebagai ID masuk dalam sebuah gedung.

Sedangkan bagian tubuh yang saat ini sudah mulai digunakan sebagai ID atau password adalah:

- Sidik Jari

Ini adalah bagian tubuh yang penggunaannya sangat populer baik sebagai ID maupun sebagai password. Sensor yang digunakan untuk men-scan sidik jari sangat bervariasi. Ada sensor yang hanya dapat memeriksa satu sidik jari saja ada yang dapat memeriksa lebih dari satu sidik jari.

Luka pada sidik jari dapat mengakibatkan sidik jari sulit dideteksi. Namun, bukan berarti tidak bisa. Selama luka tersebut tidak terlalu dalam ada beberapa sensor yang masih dapat
mengenalinya. Tentu saja sensor-sensor dengan ketajaman seperti ini akan lebih mahal harganya ketimbang sensor sidik jari dengan ketajaman biasa.

Penerapan sidik jari sebagai bagian dari sistem keamanan kini sudah se makin luas. Bahkan saat ini sudah ada mouse yang penggunaannya membutuhkan sidik jari penggunanya.

- Geometris Tangan
Lain sidik jari lain pula yang dimaksud dengan geometris tangan atau yang dikenal juga dengan bentuk tangan. Nilai-nilai yang menjadi bagian dari datanya adalah, ukuran tangan, bentuk telapak tangan, sampai bentuk dan ukuran masing-masing jari. Sensor yang digunakan untuk mendeteksi geometris tangan berbeda dengan sensor yang digunakan untuk mendeteksi sidik jari. Cara pengambilan sampel juga lebih rumit, karena harus dilakukan dari berbagai perspektif. Oleh sebab itu, biometrics ini dianggap lebih akurat dan lebih sulit untuk dipalsukan datanya. Namun, proses pengaksesan juga akan berjalan lebih lama. Oleh sebab itu, sebaiknya jangan menggunakan sistem ini untuk ruangan yang terbuka atau untuk aplikasi yang dimanfaatkan oleh banyak orang (seperti absensi).

- Mata

Mata manusia sangat unik. Meskipun secara kasat mata, setiap bola mata manusia hampir sama. Ada dua bagian yang kerap menjadi bagian dari biometrics mata, yaitu retina dan iris mata. Iris mata lebih mudah penggunaannya dibandingkan dengan retina mata. Untuk menganalisis retina mata, seorang pengguna harus menatap pada fokus yang telah ditentukan dan proses analisis juga tidak akan dapat dilakukan bila user menggunakan kaca mata.

Lain halnya dengan iris mata. Teknologi dengan iris mata tidak sesulit retina mata. User tidak perlu menatap lurus ke fokus. Dan pengguna kaca mata masih dapat dikenali.

- Bentuk Wajah
Teknologi biometrics yang menganalisis bentuk wajah sudah juga digunakan di beberapa tempat. Salah satunya bandara. Perangkat yang difungsikan sebagai sensor untuk teknologi ini umumnya adalah kamera CCTV biasa. Dan sistem yang digunakan adalah sistem yang datanya disimpan dalam sebuah jaringan. Sedangkan proses kerjanya adalah sebagai berikut. Gambar yang diperoleh oleh kamera CCTV secara otomatis akan diolah oleh komputer yang terhubung langsung dengan data kepolisian. Setiap wajah yang lewat akan dilihat kecocokannya dengan data yang ada pada jaringan. Jika ada kemiripan, maka nyala alarm akan berbunyi dan memberi tahu kepada petugas.

Untuk menggunakan bentuk wajah sebagai bagian dari sistem keamanan, sampel yang diambil harus lengkap, artinya pengambilan sampel harus dilakukan dari berbagai arah. Sama halnya seperti pada penggunaan geometris tangan.

- Suara
Gelombang suara juga dapat dijadikan identitas yang unik. Namun sayangnya, untuk yang satu ini keadaan sekitar sangat mempengaruhi. Sehingga untuk menerapkannya harus benar-benar di ruangan atau lingkungan yang tidak ramai. Dan semakin tinggi toleransi yang dimiliki oleh sebuah sensor akan membuat harga sensor akan semakin tinggi.

Metal Detector
Ini adalah alat yang paling sering ditemui masyarakat belakangan ini sejak merebaknya isu terror bom di Indonesia. Di mana-mana petugas keamanan baik gedung kantor sampai tempat hiburan dan belanja sibuk menenteng-nenteng alat berwarna hitam. Alat ini biasa ditempelkan pada barang bawaan pengunjung. Untuk mengetahui apakah pengunjung membawa barang berbahaya atau tidak. Selain dengan alat semacam pentungan berwarna hitam, kadang pengunjung juga harus melewati sebuah alat yang menyerupai gawang kecil. Bila pengunjung mengantongi perangkat berbahan logam atau metal seperti ponsel, maka alat itu akan berbunyi nyaring sekali. Begitu juga dengan alat berwarna hitam yang
menyerupai pentungan tersebut.

Alat ini dikenal juga dengan sebutan metal detector. Fungsinya adalah untuk mengetahui keberadaan komponen logam atau metal yang berada pada targetnya. Pada tempat-tempat tertentu, keberadaan metal detector memang membantu kemanan gedung. Namun, apa yang diamankan oleh metal detector? Tidak lain adalah semua komponen yang mengandung logam. Mulai dari benda tajam seperti pisau, gunting, penggaris sampai pena, dan ponsel. Semuanya akan memancing bunyi sebuah metal detector.

Jika untuk melindungi sebuah tempat dari pengunjung yang membawa sebuah bom. Alat keamanan ini dapat dikatakan kurang efektif, karena bahan kimia tidak akan dapat terdeteksi oleh alat ini. Dan pada umumnya, bom terbuat dari campuran bahan kimia.

Dalam melakukan proses deteksi, metal detector menggunakan kawat tembaga sebagai pengumpan sinyal. Bila sinyal tersebut bertabrakan dengan logam, maka akan terjadi medan magnet yang menyebabkan echo (gema) yang panjang.

Namun, keberadaan metal detector sendiri kini tidak lagi dapat dijadikan satu-satunya komponen keamanan. Karena sangat sering apa yang dibawa oleh pengujung digeledah. Hal ini tentu saja mengganggu hak privasi seseorang. Oleh sebab itu, bila sebuah institusi ingin menjaga keamanan tempatnya tanpa harus melanggar hak privasi pengunjungnya, maka ia harus menyediakan sebuah alat deteksi lain yang lebih sopan. Salah satu contohnya X-Ray.

Minggu, 28 Oktober 2007

Wiimote - revolusi HCI



Bagi yang sudah bosan “terkungkung” dengan keyboard, mouse, dll sebagai perangkat HCI, perangkat-perangkat baru menjadi selalu menarik.
Ada alat yang bisa mendeteksi seluruh gerakan tubuh kita. Webcam yang bisa mendeteksi gerakan di depannya. Bagi penderita RSI, keyboard & mouse khusus jadi sangat membantu mereka. Ada lagi software text-to-speech, dan kebalikannya, speech-to-text. Dan banyak lagi lainnya.

Tapi yang paling menarik bagi saya (selain brain plug) adalah Wiimote. Sejak pertama kali tersiar kabar mengenai alat yang unik ini, saya yakin bahwa akan ada revolusi besar - paling tidak bagi posisi Nintendo sendiri di pertarungan di arena game console.

Pertama, Wiimote mengusung konsep input yang sangat menarik - motion sensor. Sebetulnya Wiimote bukan yang pertama - beberapa di antaranya telah saya sebutkan di paragraf pertama. Namun, Wiimote sepertinya adalah yang pertama yang sukses secara massal, mudah digunakan, harganya terjangkau, dan universal - tidak hanya di Nintendo Wii, namun kinipun sudah mulai bisa digunakan di PC.

Kedua, Wiimote bukan hanya perangkat input (IR sensor, motion sensor, buttons); namun sekaligus juga adalah perangkat output (force feedback, speaker, LED).

Ketiga, aplikasi Wiimote tidak hanya semata untuk game, berbeda dengan game controllers lainnya; tapi bisa jauh lebih luas lagi dari itu.

Kemarin ini saya berbincang-bincang dengan kawan mengenai potensi Wiimote — software (bukan video) tutorial aerobik, dimana Anda musti menggerak-gerakkan Wiimote sesuai instruksi. Keahlian Anda tidak hanya menjadikan Anda top scorer, namun sekaligus menjadikan badan lebih sehat.
Lalu Wiimote sebagai interface ke dunia virtual seperti SecondLife. Atau, belajar karate dengan Wiimote ? Tidak hanya mendapatkan nilai tinggi dan instant gratification / kepuasan melihat musuh-musuh di layar bertumbangan, Anda juga mendapat keahlian praktis. Dan masih banyak potensi lainnya.

Pertama Kali, Interaksi antara Manusia dan Komputer


Pengertian Interaksi Manusia-Komputer
Ketika komputer pertama kali diperkenalkan secara komersial pada tahun 50-an, mesin ini sangat sulit dipakai dan sangat tidak praktis. Hal demikian karena waktu itu komputer merupakan mesin yang sangat mahal dan besar, hanya dipakai dikalangan tertentu, misalnya para ilmuwan atau ahli-ahli teknik.
Setelah komputer pribadi (PC) diperkenalkan pada tahun 70-an, maka berkembanglah penggunaan teknologi ini secara cepat dan mengagurnkan ke berbagai penjuru kehidupan (pendidikan, perdagangan, pertahanan, perusahaan, dan sebagainya). Kemajuan-kemajuan teknologi tersebut akhirnya juga mempengaruhi rancangan sistem. Sistem rancangan dituntut harus bisa memenuhi kebutuhan pemakai, sistem harus mempunyai kecocokkan dengan kebutuhan pemakai atau suatu sistem yang dirancang harus berorientasi kepada pemakai. Pada awal tahun 70-an ini, juga mulai muncul isu teknik antarmuka pemakai (user interface) yang diketahui sebagai Man-Machine Interaction (MMI) atau Interaksi Manusia-Mesin.
Para peneliti akademis mengatakan suatu rancangan sistem yang berorientasi kepada pemakai, yang memperhatikan kapabilitas dan kelemahan pemakai ataupun sistem (komputer) akan memberi kontribusi kepada interaksi manusia-komputer yang lebih baik. Maka pada pertengahan tahun 80-an diperkenalkanlah istilah Human-Computer Interaction (HCI) atau Interaksi Manusia-Komputer.
http://library.gunadarma.ac.id

CSCR

CSCR merupakan bidang baru terkait riset masyarakat HCI. CSCR merupakan kelanjutan dari pendahulunya, yaitu Computer Supported Collaborative Work (CSCW) dan Computer Supported Collaborative Learning (CSCL). Keduanya ini merupakan subyek riset HCI hampir sepuluh tahun yang lalu.

Gambar berikut menampilkan kedudukan dari ketiganya (merupakan bagian dari HCI)



Gambar CSCR 1

Perbedaan utama antara CSCW dan CSCL yaitu bahwa CSCW dikarakteristikan oleh “kebutuhan akan ruang kerja (workingspace)” sedangkan CSCL membutuhkan ruang kerja dan ruang belajar (learningspace)

Workingspace adalah domain tempat aktivitas-aktivitas berikut berlangsung: communication space, scheduling space, sharing space, dan product space.

Learning space adalah domain yang memuat seluruh aspek workingspace ditambah dengan aktivitas berikut: reflection space, social space, assessment space, tutor space, dan administration space

Perbedaan utama antara CSCR dan CSCL adalah bahwa suatu rekord penuh dari seluruh interaksi antar partisipan merupakan tool penting dan dibutuhkan untuk mengevaluasi kontribusi setiap anggota dalam suatu collaboratiob group yang nanti dapat menentukan “suatu share modal yang adil (a fair capital share) apabila proyek riset berjalan dengan sukses.is successful.

CSCR membutuhkan Workingspace, Learningspace, dan aktivitas-aktivitas berikut: knowledge space, publication space, privacy space, publication space, negotiation space.

Human Computer Interaction - HCI


Interaksi Manusia – Komputer

Komputer dan alat – alat yang terkait dengannya harus didesain dengan mempertimbangkan bahwa manusia, yang memiliki perintah spesifik dalam pikirannya, ingin menggunakan komputer dan alat – alat terkait sedemikian rupa sehingga dapat sepenuhnya membantu pekerjaan keseharian mereka. Untuk dapat melakukan hal tersebut, orang – orang yang mendesain sistem ini harus mengetahui bagaimana caranya memikirkan perintah – perintah yang akan diberikan oleh pengguna nantinya, serta bagaimana caranya menterjemahkan pengetahuan tersebut ke dalam sistem yang dapat diproses. Komputer dan alat – alat yang terkait dengannya harus didesain agar:

1. Sesuai dengan perintah – perintah yang diberikan
2. Mudah digunakan
3. Memberikan umpan balik bagi performansi
4. Menampilkan data dalam format yang sesuai dengan penggunanya
5. Sesuai dengan prinsip – prinsip ergonomi dalam perangkat lunak

Apa yang dimaksud dengan HCI? HCI melibatkan desain, implementasi, dan evaluasi dari sistem interaktif dalam konteks perintah dan pekerjaan pengguna (user)§ Dengan pengguna (user), kita dapat mengartikan pengguna individual, sekelompok pengguna yang bekerja bersama, atau pengguna yang berurutan dalam sebuah organisasi yang masing – masing berhadapan dengan suatu bagian dari pekerjaan atau proses.§ Dengan komputer, kita mendefinisikan setiap teknologi, mulai dari desktop komputer secara umum sampai sistem dalam skala besar dari komputer, sistem pengontrol proses atau sistem yang terbangun di dalamnya. § Dengan interaksi, kita mendefinisikan setiap komunikasi antara pengguna (user) dan komputer, baik secara langsung maupun tidak langsung.

Siapa yang terlibat dalam HCI

*

Ergonomics for the user’s physical capabilities

*

Computer science & engineering to be able to build the necessary technology
*

Business to be able to market it

HCI dapat dipastikan merupakan sebuah subyek yang multidisiplin. Desainer ideal dari sebuah sistem interaktif seharusnya memiliki keahlian dalam berbagai topik: ilmu pengetahuan psikologi dan kognitif,

sosiologi, ilmu dan teknologi komputer, dan lain – lain. Kita ingin mendukung sudutpandang multidisiplin dari HCI, namun kita juga memiliki pendirian sebagai seorang ilmuwan komputer. Tujuannya adalah agar dapat menjadi multidisiplin namun tetap praktis. Kita fokuskan khusus pada ilmu komputer, psikologi, dan keilmuan kognitif sebagai pembahasan utama, dan aplikasi keilmuan – keilmuan tersebut pada desain. Disiplin ilmu yang lain akan dibahas hanya untuk memberikan masukan yang relevan. Teori dan HCI Tidak ada teori secara umum dan khusus mengenai HCI yang dapat disajikan di sini. Ada tiga isu utama yang kita perhatikan: manusia, komputer, dan pekerjaan yang dilaksanakan. Begitu juga dengan HCI, interface yang bagus dan cantik secara artistik akan sangat menyenangkan dan dapat merampungkan pekerjaan yang dibutuhkan, sebuah perkawinan antara seni dan ilmu pengetahuan yang menghasilkan sebuah kesuksesan secara menyeluruh. Fokus utama dari desain:

1. Perbaikan/penentuan yang cepat
2. Berpikir seperti seorang pengguna (user)
3. Berani mencoba
4. Melibatkan pengguna (user)
5. Diulang

Sejarah Kecerdasan Buatan




Pada awal abad 17, René Descartes mengemukakan bahwa tubuh hewan bukanlah apa-apa melainkan hanya mesin-mesin yang rumit. Blaise Pascal menciptakan mesin penghitung digital mekanis pertama pada 1642. Pada 19, Charles Babbage dan Ada Lovelace bekerja pada mesin penghitung mekanis yang dapat diprogram.
Bertrand Russell dan Alfred North Whitehead menerbitkan Principia Mathematica, yang merombak logika formal. Warren McCulloch dan Walter Pitts menerbitkan “Kalkulus Logis Gagasan yang tetap ada dalam Aktivitas ” pada 1943 yang meletakkan pondasi untuk jaringan syaraf.
Tahun 1950-an adalah periode usaha aktif dalam AI. Program AI pertama yang bekerja ditulis pada 1951 untuk menjalankan mesin Ferranti Mark I di University of Manchester (UK): sebuah program permainan naskah yang ditulis oleh Christopher Strachey dan program permainan catur yang ditulis oleh Dietrich Prinz. John McCarthy membuat istilah “kecerdasan buatan ” pada konferensi pertama yang disediakan untuk pokok persoalan ini, pada 1956. Dia juga menemukan bahasa pemrograman Lisp. Alan Turing memperkenalkan “Turing test” sebagai sebuah cara untuk mengoperasionalkan test perilaku cerdas. Joseph Weizenbaum membangun ELIZA, sebuah chatterbot yang menerapkan psikoterapi Rogerian.
Selama tahun 1960-an dan 1970-an, Joel Moses mendemonstrasikan kekuatan pertimbangan simbolis untuk mengintegrasikan masalah di dalam program Macsyma, program berbasis pengetahuan yang sukses pertama kali dalam bidang matematika. Marvin Minsky dan Seymour Papert menerbitkan Perceptrons, yang mendemostrasikan batas jaringan syaraf sederhana dan Alain Colmerauer mengembangkan bahasa komputer Prolog. Ted Shortliffe mendemonstrasikan kekuatan sistem berbasis aturan untuk representasi pengetahuan dan inferensi dalam diagnosa dan terapi medis yang kadangkala disebut sebagai sistem pakar pertama. Hans Moravec mengembangkan kendaraan terkendali komputer pertama untuk mengatasi jalan berintang yang kusut secara mandiri.

Game AI




Game AI adalah aplikasi IB untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak 'ikut bermain' (NPC ~ Non Playable Characters).
[edit]
Karakter Antagonis (Opponent AI)

karakter antagonis adalah karakter yang dalam permainan memiliki tujuan yang sama dengan pemain yaitu memenangkan permainan. untuk mewujudkan tujuan ini karakter tersebut dapat melakukan aksi kepada pemain dan sebaliknya pemain dapat melakukan aksi kepada karakter lawan yang sesuai dengan aturan permainan. contoh sederhana dari karakter antagonis adalah dalam permainan pertarungan (fighting). karakter lawan adalah karakter yang harus 'dikalahkan' oleh pemain dengan melakukan aksi (serangan). fungsi IB pada karakter antagonis adalah melakukan aksi-aksi yang dapat memperbesar peluang karakter tersebut untuk menang.
[edit]
Karakter Pendukung (NPC AI)

karakter pendukung (NPC ~ Non-Playable Characters) merupakan karakter yang terlibat dalam permainan tetapi tidak memiliki tujuan untuk memenangkan permainan melainkan melakukan peran yang mendukung pemain/lawan untuk memenangkan permainan. contoh sederhana dari NPC AI adalah pada game RPG. Karakter NPC pada permainan bergenre RPG pada umumnya memberikan informasi implisit kepada karakter tentang hal-hal yang berkaitan dengan cerita dalam permainan ataupun panduan bagi pemain mengenai tujuan permainan. fungsi IB pada karakter pendukung adalah menentukan dialog dengan pemain sedemikian rupa sehingga seolah-olah karakter tersebut tampak nyata bagi pemain (life-like).
[edit]
IB untuk interaksi

Peranan IB dalam hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang bersifat alami yaitu yang biasa digunakan manusia untuk berinteraksi dengan sesama manusia. contoh-contoh media interaksi antara lain :

* penglihatan (Vision)

Untuk menggunakan informasi penglihatan biasanya menggunakan kamera sebagai perangkat untuk mendapatkan data. data yang ditangkap adalah berupa gambar / citra yang merupakan matriks dua dimensi. matriks tersebut dianalisa sesuai dengan kebutuhan aplikasi sehingga didapatkan informasi yang diinginkan (misal pembentukan wajah, deteksi gerakan, rekonstruksi ruang).

* suara (voice) atau ucapan (speech)

Informasi suara didapatkan dari microphone yang menghasilkan informasi dalam bentuk deretan angka (disebut sebagai sample). Persoalan utama dari suara adalah informasi yang dikandung memiliki variasi yang sangat besar yang disebabkan oleh faktor alat dan faktor manusia (vokal, intonasi, intensitas, dll). Penerapan interaksi dengan menggunakan suara misalnya untuk permainan bergenre RTS (wargames) yang menterjemahkan perintah dari pemain untuk menggerakkan unit. Contoh lainnya adalah permainan balap kendaraan yang menentukan akselerasi dari suara pemain yang menirukan suara mesin.

* gerakan anggota badan (gesture)

Gesture adalah gerakan sebagian anggota badan yang memiliki makna tertentu (disebut juga sebagai body language). Informasi gesture dapat diakuisisi dengan berbagai cara, diantaranya :

*
o dari video (vision)

informasi deretan koordinat (gerakan) dihasilkan dari analisis terhadap rangkaian gambar terurut (video).

*
o sensor jarak (range)

informasi deretan koordinat diukur dengan menggunakan sensor jarak.

*
o sensor posisi yang menempel pada pemain

akhir-akhir ini beberapa produsen konsol memanfaatkan pengendali (controller) yang dapat menghasilkan informasi posisi /perubahan posisi pengendali pada ruang tiga dimensi. Salah satu contoh konsol yang menggunakan ini adalah Nintendo Wii.

Sabtu, 27 Oktober 2007

Aplikasi IB (Intelegenci Buatan) dalam Pengembangan Game



AI (Artificial Intelligence) atau intelejensia buatan (selanjutnya disebut dengan IB) adalah pendekatan komputasi yang sebenarnya memiliki makna yang ambigu. beberapa pendekatan seperti pada (Russel, 2000) mengemukakan empat arahan berbeda dalam hal kecerdasan buatan. walaupun ketiganya memiliki persamaan yaitu memodelkan ke-'manusia'-an melalui teknik komputasi. Arah eksplorasi di bidang kecerdasan buatan diantaranya

* membuat agen yang 'tampak' seperti manusia.
* membuat agen yang 'bekerja' seperti manusia.
* membuat agen yang 'berpikir' seperti manusia.
* membuat agen yang 'menyerupai dan bersifat' seperti manusia.

sederhananya, IB merupakan teknik komputasi yang mampu menyelesaikan persoalan yang memiliki ciri informasi yang tidak lengkap, tidak pasti pada definisi persoalan dan teknik untuk menyelesaikannya.
[edit]
Aplikasi IB dalam Pengembangan Game

persepsi umum dari judul di atas biasanya adalah bagaimana membuat lawan (opponent) yang tampak seperti manusia. istilah 'tampak' di sini adalah yang sesuai dengan tes turing. parameter tampak ditentukan dari seberapa 'percaya' pemain yang menghadapinya. ukuran keberpercayaan ini disebut juga sebagai believable atau immersive. pemodelan karakter yang terlibat dalam permainan yang bukan dikendalikan oleh manusia diistilahkan dengan Game AI (jadi beda antara AI untuk game dengan Game AI). walaupun demikian, IB tidak hanya bisa diaplikasikan untuk memodelkan lawan dalam permainan. Contoh aplikasi lainnya dari IB antara lain :

* memodelkan lawan (Game AI)
* memodelkan objek untuk mendukung 'realisme' situasi permainan (Game AI)
* teknik interaksi dengan pemain.
* optimasi

Artificial Intelligence (AI)



Artificial Intelligence (AI) atau kecerdasan buatan adalah suatu ilmu pengetahuan dan teknologi yang berdasarkan pada disiplin ilmu seperti ilmu komputer, biologi, psikologi, ilmu bahasa, matematika dan teknik.

Artificial Intelligence (AI) memiliki tujuan untuk menciptakan komputer-komputer yang dapat berfikir (dan juga) dapat melihat, mendengar, berjalan, berbicara, dan merasakan.


Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin. Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata.

Penciuman Elektronik Ingin Menggeser Hidung


Perangkat sistem penciuman elektronik buatan Wisnu.

Sebenarnya, tidak gampang merancang sistem penciuman buatan. Pasalnya, hidung yang sarat dengan saraf penciuman itu tergolong organ paling sulit untuk dibuat tiruannya, setelah organ perasa alias lidah. Ini diakui oleh Benyamin Kusumoputro, Ph.D., Kepala Laboratorium Kecerdasan Komputasional Fakultas Ilmu Komputer Universitas Indonesia di Depok.

Meskipun demikian bukan berarti tidak mungkin ditiru. Bisa saja, hanya belum mampu menyamai 100% peran hidung beneran. Maklum, saraf sistem penciuman manusia memang ajaib, sanggup membedakan puluhan ribu aroma berbeda. Lagi pula mekanisme sistem penciuman dari sono-nya amat efektif dalam memilah dan membedakan perlagai aroma. Ibaratnya, bisa mendeteksi satu molekul aroma di antara puluhan ribu molekul di udara!

Apa pun wujud rancangan sistem hidung elektronik itu, yang pasti tersimpan tujuan mulia. Yakni untuk mendeteksi dan mengklasifikasikan aroma secara otomatis. Sadar atau tidak, tersembunyi juga keinginan menggeser peran hidung sebagai pengontrol kualitas dalam industri yang membutuhkan pengenalan aroma, terutama industri minuman, kosmetik, dan minyak wangi.

Ini bukan berarti meremehkan indera penciuman kita sendiri. Masalahnya, sistem penciuman kita amat dipengaruhi kondisi perasaan sesaat dan kesehatan. Artinya, ketelitian dan kontrol kualitas pengenalan aroma bisa terpengaruh. Belum lagi kalau petugas kontrol kualitas aroma mendadak terserang pilek, bisa-bisa indera penciumannya tidak berfungsi dengan baik.



Tidak mirip hidung

Jangan bayangkan sistem penciuman dengan saraf tiruan ini berbentuk serupa hidung. Sesungguhnya yang coba ditiru lebih pada fungsinya. Bahkan secara kasat mata sama sekali berbeda, hanya berupa rangkaian kabel yang ruwet dan program komputer (perangkat lunak).



Gambar ulang: Yds
Skema peralatan sistem penciuman elektronik.



Ada tiga bagian dalam hidung elektronik ala UI ini, yakni sistem sensor, sistem elektronik, dan sistem jaringan neural buatan (JNB). Sistem sensor dan elektroniknya sebagai perangkat kerasnya, dan sistem JNB sebagai perangkat lunaknya. Sistem JNB sebagai perangkat lunak meliputi sistem jaringan neural buatan propagasi balik (JNB-PB), Probabilistic Neural Network (PNN), dan Fuzzy Learning Vector Quantization (FLVQ) sebagai pengklasifikasi.

Semua ini sebetulnya hanya memperbaharui sistem yang pernah dikembangkan di Laboratorium Jaringan Saraf Tiruan, Fakultas Ilmu Komputer Universitas Indonesia, Depok, tahun 1996. Awalnya hanya digunakan empat buah sensor kristal kuarsa terlapis membran dan jaringan saraf buatan propagasi balik sebagai "otak"-nya. Jaringan saraf buatan itu sesungguhnya berupa program komputer. Dalam perkembangan selanjutnya telah dicoba menggunakan delapan buah sensor, yang kemudian dikembangkan dengan 16 buah sensor. Maka terciptalah sistem hidung elektronik dengan sensor 16 buah dan jaringan saraf buatan berbasis PNN.

Sistem sensor yang berjumlah 16 buah itu dibuat dengan frekuensi dasar 20 MHz, meningkat dibandingkan dengan yang terdahulu, yaitu 10 MHz. Perubahan frekuensi ini untuk meningkatkan akurasi dalam mengenali aroma. Lagi pula dengan frekuensi 20 MHz, penurunan frekuensinya bisa dicacah dengan lebih akurat.

Teknologi saraf penciuman pertama kali dibuat oleh Prof. Toyosaka Moriizumi dari Tokyo Institute of Technology pada 1986 yang dipatenkan setahun kemudian. Namun, alat dengan delapan buah sensor itu, menurut Benyamin yang murid Moriizumi, salah konsep. Sebab, sensor dikembangkan mengikuti jenis aromanya sehingga kalau aromanya berubah, sensor harus diganti.

Jumlah sensor, menurut Benyamin, berpengaruh terhadap kemungkinan jumlah jenis aroma dan keakuratan pendeteksiannya. Ketepatan kita dalam mengenali aroma tertentu, seperti halnya mengenali seseorang atau suatu benda, akan lebih tinggi kalau kita memandang dan berusaha mengenali orang atau benda itu lebih dari satu sisi (bahasa matematikanya, dimensi).

KECERDASAN BUATAN DALAM ROBOTIK




Kecerdasan Buatan (Artificial Intelligence) dalam robotik adalah suatu algorithma (yang dipandang) cerdas yang diprogramkan ke dalam kontroler robot. Pengertian cerdas di sini sangat relatif, karena tergantung dari sisi mana sesorang memandang.

Para filsuf diketahui telah mulai ribuan tahun yang lalu mencoba untuk memahami dua pertanyaan mendasar: bagaimanakah pikiran manusia itu bekerja, dan, dapatkah yang bukan-manusia itu berpikir? (Negnevitsky, 2004). Hingga sekarang, tak satupun mampu menjawab dengan tepat dua pertanyaan ini. Pernyataan cerdas yang pada dasarnya digunakan untuk mengukur kemampuan berpikir manusia selalu menjadi perbincangan menarik karena yang melakukan penilaian cerdas atau tidak adalah juga manusia. Sementara itu, manusia tetap bercita-cita untuk menularkan �kecerdasan manusia� kepada mesin.


Dalam literatur, orang pertama yang dianggap sebagai pionir dalam mengembangkan mesin cerdas (intelligence machine) adalah Alan Turing, sorang matematikawan asal Inggris yang memulai karir saintifiknya di awal tahun 1930-an. Di tahun 1937 ia menulis paper tentang konsep mesin universal (universal machine). Kemudian, selama perang dunia ke-2 ia dikenal sebagai pemain kunci dalam penciptaan Enigma, sebuah mesin encoding milik militer Jerman. Setelah perang, Turing membuat �automatic computing engine�. Ia dikenal juga sebagai pencipta pertama program komputer untuk bermain catur, yang kemudian program ini dikembangkan dan dimainkan di komputer milik Manchester University. Karya-karyanya ini, yang kemudian dikenal sebagai Turing Machine, dewasa ini masih dapat ditemukan aplikasi-aplikasinya. Beberapa tulisannya yang berkaitan dengan prediksi perkembangan komputer di masa datang akhirnya juga ada yang terbukti. Misalnya tentang ramalannya bahwa di tahun 2000-an komputer akan mampu melakukan percakapan dengan manusia. Meski tidak ditemukan dalam paper-papernya tentang istilah �resmi�: artificial intelligence, namun para peneliti di bidang ini sepakat untuk menobatkan Turing sebagai orang pertama yang mengembangkan kecerdasan buatan.

Secara saintifik, istilah kecerdasan buatan � untuk selanjutnya disebut sebagai AI (artificial intelligence) � pertama kali diperkenalkan oleh Warren McCulloch, seorang filsuf dan ahli perobatan dari Columbia University, dan Walter Pitts, seorang matematikawan muda pada tahun 1943, (Negnevitsky, 2004). Mereka mengajukan suatu teori tentang jaringan saraf tiruan (artificial neural network, ANN) � untuk selanjutnya disebut sebagai ANN � bahwa setiap neuron dapat dipostulasikan dalam dua keadaan biner, yaitu ON dan OFF. Mereka mencoba menstimulasi model neuron ini secara teori dan eksperimen di laboratorium. Dari percobaan, telah didemonstrasikan bahwa model jaringan saraf yang mereka ajukan mempunyai kemiripan dengan mesin Turing, dan setiap fungsi perhitungan dapat dapat diselesaikan melalui jaringan neuron yang mereka modelkan.

Kendati mereka meraih sukses dalam pembuktian aplikasinya, pada akhirnya melalui eksperimen lanjut diketahui bahwa model ON-OFF pada ANN yang mereka ajukan adalah kurang tepat. Kenyataannya, neuron memiliki karakteristik yang sangat nonlinear yang tidak hanya memiliki keadaan ON-OFF saja dalam aktifitasnya. Walau demikian, McCulloch akhirnya dikenal sebagai orang kedua setelah Turing yang gigih mendalami bidang kecerdasan buatan dan rekayasa mesin cerdas. Perkembangan ANN sempat mengalami masa redup pada tahun 1970-an. Baru kemudian pada pertengahan 1980-an ide ini kembali banyak dikaji oleh para peneliti.

Sementara itu, metoda lain dalam AI yang sama terkenalnya dengan ANN adalah Fuzzy Logic (FL) � untuk selanjutnya ditulis sebagai FL. Kalau ANN didisain berdasarkan kajian cara otak biologis manusia bekerja (dari dalam), maka FL justru merupakan representasi dari cara berfikir manusia yang nampak dari sisi luar. Jika ANN dibuat berdasarkan model biologis teoritis, maka FL dibuat berdasarkan model pragmatis praktis. FL adalah representasi logika berpikir manusia yang tertuang dalam bentuk kata-kata.

Kajian saintifik pertama tentang logika berfikir manusia ini dipublikasikan oleh Lukazewicz, seorang filsuf, sekitar tahun 1930-an. Ia mengajukan beberapa representasi matematik tentang �kekaburan� (fuzziness) logika ketika manusia mengungkapkan atau menyatakan penilaian terhadap tinggi, tua dan panas (tall, old, & hot). Jika logika klasik hanya menyatakan 1 atau 0, ya atau tidak, maka ia mencoba mengembangkan pernyataan ini dengan menambahkan faktor kepercayaan (truth value) di antara 0 dan 1.

Di tahun 1965, Lotfi Zadeh, seorang profesor di University of California, Berkeley US, mempublikasikan papernya yang terkenal, �Fuzzy Sets�. Penelitian-penelitian tentang FL dan fuzzy system dalam AI yang berkembang dewasa ini hampir selalu menyebutkan paper Zadeh itulah sebagai basis pijakannya. Ia mampu menjabarkan FL dengan pernyataan matematik dan visual yang relatif mudah untuk dipahami. Karena basis kajian FL ini kental berkaitan dengan sistem kontrol (Zadeh adalah profesor di bidang teknik elektro) maka pernyataan matematiknya banyak dikembangkan dalam konteks pemrograman komputer.

Metoda AI lain yang juga berkembang adalah algorithma genetik (genetic algorithm, GA) � untuk selanjutnya disebut sebagai GA. Dalam pemrograman komputer, aplikasi GA ini dikenal sebagai pemrograman berbasis teori evolusi (evolutionary computation, EC) � untuk selanjutnya disebut sebagai EC. Konsep EC ini dipublikasikan pertama kali oleh Holland (1975). Ia mengajukan konsep pemrograman berbasis GA yang diilhami oleh teori Darwin. Intinya, alam (nature), seperti manusia, memiliki kemampuan adaptasi dan pembelajaran alami �tanpa perlu dinyatakan: apa yang harus dilakukan�. Dengan kata lain, alam memilih �kromosom yang baik� secara �buta�/alami. Seperti pada ANN, kajian GA juga pernah mengalami masa vakum sebelum akhirnya banyak peneliti memfokuskan kembali perhatiannya pada teori EC.

GA pada dasarnya terdiri dari dua macam mekanisme, yaitu encoding dan evaluation. Davis (1991) mempublikasikan papernya yang berisi tentang beberapa metoda encoding. Dari berbagai literatur diketahui bahwa tidak ada metoda encoding yang mampu menyelesaikan semua permasalahan dengan sama baiknya. Namun demikian, banyak peneliti yang menggunakan metoda bit string dalam kajian-kajian EC dewasa ini.

Aplikasi AI dalam kontrol robotik dapat diilustrasikan sebagai berikut,

Gambar 4.1: Kontrol robot loop tertutup berbasis AI

Penggunaan AI dalam kontroler dilakukan untuk mendapatkan sifat dinamik kontroler �secara cerdas�. Seperti telah dijelaskan di muka, secara klasik, kontrol P, I, D atau kombinasi, tidak dapat melakukan adaptasi terhadap perubahan dinamik sistem selama operasi karena parameter P, I dan D itu secara teoritis hanya mampu memberikan efek kontrol terbaik pada kondisi sistem yang sama ketika parameter tersebut di-tune. Di sinilah kemudian dikatakan bahwa kontrol klasik ini �belum cerdas� karena belum mampu mengakomodasi sifat-sifat nonlinieritas atau perubahan-perubahan dinamik, baik pada sistem robot itu sendiri maupun terhadap perubahan beban atau gangguan lingkungan.

Banyak kajian tentang bagaimana membuat P, I dan D menjadi dinamis, seperti misalnya kontrol adaptif, namun di sini hanya akan dibahas tentang rekayasa bagaimana membuat sistem kontrol bersifat �cerdas� melalui pendekatan-pendekatan AI yang populer, seperti ANN, FL dan EC atau GA.

Gambar 4.1 mengilustrasikan tentang skema AI yang digunakan secara langsung sebagai kontroler sistem robot. Dalam aplikasi lain, AI juga dapat digunakan untuk membantu proses identifikasi model dari sistem robot, model lingkungan atau gangguan, model dari tugas robot (task) seperti membuat rencana trajektori, dan sebagainya. Dalam hal ini konsep AI tidak digunakan secara langsung (direct) ke dalam kontroler, namun lebih bersifat tak langsung (indirect).

Kompilasi ulang PHP5 untuk mendukung OCI8

Langkah-langkah kompilasi PHP5 di Debian 3.1:


1. Install paket-paket yang dibutukan dengan perintah berikut ini:
# apt-get install php5-dev
# apt-get install librecode-dev apache-dev apache2-prefork-dev chrpath debhelper freetds-dev po-debconf libbz2-dev libc-client-dev libcurl3-dev libdb4.4-dev libexpat1-dev libfreetype6-dev libgcrypt11-dev libgd2-xpm-dev libjpeg62-dev libkrb5-dev libldap2-dev libmcal0-dev libmhash-dev libmysqlclient15-dev libncurses5-dev libpam0g-dev libpcre3-dev libpng12-dev libsablot0-dev libsnmp9-dev libt1-dev libtool libwrap0-dev libxmltok1-dev libxml2-dev libxslt1-dev libzzip-dev re2c unixodbc-dev firebird2-dev libmcrypt-dev libpspell-dev libsqlite0-dev libtidy-dev

Catatan: beberapa paket dev diatas mungkin telah obselete, atau merupakan paket virtual. Perhatikan pesan kesalahan yang ditampilkan oleh apt, untuk mengatasi conflict atau paket yang kurang. Saya menggunakan distribusi testing untuk melakukan kompilasi php5 ini.

2. Install Oracle client, jika pada sistem belum ada Oracle, maupun Oracle client. Untuk memudahkan, oracle telah menyediakan repository debian untuk menginstall paket oracle-xe. Cukup tambahkan baris ini:
deb http://oss.oracle.com/debian/ unstable main non-free

di file /etc/apt-source.list lalu jalankan perintah
# apt-get update
Lalu install oracle-xe-client dengan perintah:
# apt-get install libaio oracle-xe-client
Setelah terinstall oracle-xe, jalankan perintah ini:
# . /usr/lib/oracle/xe/app/oracle/product/10.2.0/client/bin/oracle_env.sh (PS: jangan lupa titik di awal).
Jika Anda menginstall oracle client lain, atau oracle server, set ORACLE_HOME dan LD_LIBRARY_PATH sesuai dengan dokumentasi oracle itu.
Set juga variabel berikut ini:
# export LD_PRELOAD=libclntsh.so
Lalu edit file /etc/ld.so.conf, tambahkan baris berikut ini:
/usr/lib/oracle/xe/app/oracle/product/10.2.0/client/lib
Selanjutnya jalankan perintah # ldconfig agar library oracle client diload ke sistem.

3. Download source code php5 dengan perintah
# apt-get source php5
Source code akan didownload ke current direktory saat command dieksekusi.

4. Pindahlah ke direktory hasil ekstract source php5, lalu edit file debian/rules

5. Tambahkan opsi --with-oci8 pada bagian akhir dari COMMON_CONFIG = […].

6. Tambah change log dengan perintah:
$ debchange -i
Isi dengan keterangan yang informatif, misal: kompilasi ulang PHP5 dengan menambahkan --with-oci8.

7. Jalankan
$ dpkg-buildpackage
untuk mengkompile php5

8. Proses kompilasi akan berjalan, tunggu hingga proses ini selesai. Jika masih ada paket dev yang kurang, maka proses kompilasi akan terhenti dan tampil nama paket dev yang dibutuhkan, tapi belun diinstall. Install paket ini, lalu ulangi lagi perintah $ dpkg-buildpackage.

9. Proses kompilasi yang sukses akan menghasilkan file .deb di direktori diatas direktori tempat php5 source berada. Install file deb yang diperlukan dengan perintah seperti biasa:
# dpkg -i namafile.deb
Reload apache setelah selesai melakukan instalasi.

Sekarang pada sistem debian Anda telah terinstall PHP5 dengan dukungan OCI8. Cek melalui perintah pada sebuah halaman php. Temukan bagian OCI8.

Kompilasi Kernel


Pada dasarnya Linux hanyalah sebuah kernel. Sedangkan program-program lain seperti teks editor, browser, kompilator, dan seterusnya melengkapi kernel menjadi suatu paket sistem operasi. Tentunya agar kernel dapat bekerja dengan optimal, perlu dilakukan konfigurasi sesuai dengan hardware yang ada. Biasanya, kompilasi kernel dilakukan saat hendak menambahkan device baru yang belum dikenali sebelumnya atau jika hendak mengaktifkan fitur tertentu pada sistem operasi. Pada proses kompilasi kernel, sangat mungkin terjadi kesalahan. Karena itu, jangan lupa membackup kernel yang lama, dan menyiapkan emergency boot disk. Pada penjelasan berikut, diasumsikan kernel yang digunakan adalah versi 2.6.20 dan komputer menggunakan prosesor Intel.


Beberapa tahapan dalam kompilasi kernel:

1. Mendownload kernel. Ada banyak situs di internet tempat mendownload kernel. Tapi ada baiknya jika anda mengunjungi situs resminya, yaitu "kernel.org". Anda bisa melihat beraneka versi kernel dan patchnya disana. Format penamaan kernel Linux adalah linux-X.YY.ZZ.tar.gz atau linux-X.YY.ZZ.tar.bz2, dimana: X = major number Y = minor number (jika genap berarti sudah stabil, sedangkan jika ganjil berarti masih dalam tahap uji coba) ZZ = revision number Contoh: linux-2.6.20 Angka 2 adalah major number (angka 2 ini jarang berubah dan baru berubah jika sudah terjadi perubahan besar) Angka 6 adalah minor number (karena 6 adalah bilangan genap, berarti kernel ini versi stabil) Angka 20 menunjukkan nomor revisi.
2. Mengekstrak kernel. Source code kernel Anda yang lama bisa dilihat di direktori /usr/src/linux. Supaya source code kernel sebelumnya tidak hilang, ekstraklah kernel yang baru di direktori yang berbeda, misal /usr/src/linux-2.6.20 (tentunya sesuaikan angka-angka tersebut dengan versi kernel yang anda pakai).
3. Kemudian, buat symbolic link.

ln -s linux-2.6.20 linux

4. Konfigurasi kernel. Sebelum proses kompilasi, anda memiliki 2 pilihan, yaitu membuat konfigurasi baru, atau menggunakan konfigurasi kernel sebelumnya. Jika anda ingin membuat konfigurasi baru, maka jalankan perintah: make xconfig (atau make menuconfig) Pada tahap ini, anda mengkonfigurasi kernel sesuai dengan hardware yang ada di komputer anda. Isinya antara lain mengatur jenis prosesor, memory, networking, USB, dsb. Dengan ini, kernel bisa bekerja optimal pada hardware yang ada Setelah berkas configurasi (.config) terbentuk, anda bisa memulai proses kompilasi. Sedangkan jika anda ingin menggunakan konfigurasi kernel yang lama, anda bisa mengcopy berkas .config dari direktori kernel yang lama ke direktori kernel yang baru, lalu menjalankan perintah: make oldconfig
5. Kompilasi. Jalankan perintah "make bzImage". Proses kompilasi kernel bisa memakan waktu cukup lama, dan sangat mungkin terjadi kesalahan disitu. Jika ada kesalahan, coba lakukan lagi konfigurasi kernel. Setelah itu, coba lakukan kompilasi lagi. Jika sukses, terbentuk berkas bzImage di/usr/src/linux-2.6.20/arch/i386/boot. Copy ke direktori /boot dengan perintah:

cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.20

Selanjutnya, kompilasi modul. Jalankan perintah:

make modules

diikuti oleh

make modules_install

Terbentuk berkas System.map. Copylah ke /boot dengan perintah :

cp System.map /boot/System.map-2.6.20

Supaya kernel yang baru bisa digunakan, ubahlah konfigurasi bootloader anda supaya ia mengetahui dimana kernel yang baru berada. Misal jika anda menggunakan Lilo, modifikasi berkas lilo.conf (ada di /etc), atau jika anda menggunakan grub, modifikasi berkas menu.lst (ada di /boot/grub). Khusus jika anda menggunakan lilo, jalankan perintah lilo. Setelah itu, reboot komputer anda.

Visual C++, Bahasa yang Dikompilasi



Visual C++ adalah bahasa pemrograman C++ versi Microsoft. Didasarkan pada bahasa C, C++ adalah versi pembaharuan dari C yang mengambil bahasa C ke evolusi bahasa pemrograman aras berikutnya - yang menyediakan pemrograman berorientasi objek.

Visual C++ adalah bahasa yang dikompilasi. Sebuah compiler C++ (bahasa pemrograman C++ yang merupakan bagian dari Visual C++ kita) mengambil instruksi-instruksi bahasa C++ dan menterjemahkannya ke dalam format yang dapat dibaca komputer. Kompiler C++ adalah perangkat yang digunakan komputer untuk memahami instruksi-instruksi bahasa C++ di dalam program Anda. Microsoft Visual C++ datang bersama editor miliknya dan lingkungan pemrograman terpadu yang membuat pemrograman menjadi mudah dikelola.

Setelah Anda menulis kode Visual C++, Anda menjalankannya melalui Visual C++, menghasilkan instruksi yang terkompilasi dengan benar dan menjalankan program tersebut.

Sebuah praprosesor membaca pengarah praprosesor program untuk mengontrol pengkompilasian. Perhatikan bahwa program Visual C++ Anda harus dilewatkan melalui praprosesor sebelum program dikompilasi. Praprosesor membaca simbol-simbol khusus di dalam kode yang disebut pengarah praprosesor yang Anda masukkan di dalam program, untuk mengontrol pengkompilasian program. Visual C++ dengan sendirinya membentuk langkah praprosesor, sehingga tidak perlu pemahaman tambahan bagi Anda selain meletakkan pengarah praprosesor ke dalam program-program Anda.

Program Anda harus melalui tahapan terakhir setelah pengkompilasian dan sebelum pengeksekusian. Tahapan ini disebut tahapan linking atau link editing. Pada saat program Anda di-link, program yang disebut linker memasok informasi yang diperlukan saat pengeksekusian ke program yang dikompilasi. Anda juga dapat menggabungkan beberapa program yang dikompilasi ke dalam sebuah program yang dapat dieksekusi dengan melakukan link.

Compiler Construction




Teknik kompilasi telah lama diberikan di lingkungan pendidikan tinggi bidang komputer di Indonesia. Pembahasan dalam mata kuliah ini biasanya berkisar pada teori automata, teori kompilasi, teori grammar. Praktek teknik kompilasi pun telah diberikan di lingkungan laboratorium, walau biasanya masih terbatas pada demonstrasi hal teori, ataupun sekedar pengenalan kompiler yang ada atau banyak digunakan. Beberapa universitas telah mulai memperkenalkan penggunaan perangkat pembangun kompiler.

Telah banyak mahasiswa menggunakan dan memanfaatkan compiler/interpreter, tapi saat ini masih belum banyak muncul nama programmer Indonesia yang terlibat dalam proyek pembuatan compiler/interpreter. Mungkin hanya KILANG nya Prof. Dali S Naga (BASIC Indonesia), yang sempat terdengar, sayang sekarang sudah tidak ada jejaknya. Mungkin merilis KILANG dalam bentuk GPL seperti BWBASIC, adalah suatu langkah menarik untuk terus mengembangkan KILANG ini lebih lanjut.

Memang ada sekelompok programmer Indonesia yang sempat akan merilis bahasa pemrograman “BATAK” tetapi hingga saat ini belum terdengar kembali. Bahasa pemrograman, JAVA, BALI, MADURA, hanyalah namanya saja yang berbau Indoensia, tapi sedikit atau malah tidak ada keterlibatan pengembang dari Indonesia.

Tentu saja akan timbul pertanyaan “apa yang salah dalam pengajaran kompilasi ???” (INGAT SAYA TIDAK INGIN MENDISKREDITKAN SIAPAPUN DALAM PERNYATAAN INI). Hanya mencoba mencari langkah perbaikan yang mungkin bisa diterapkan.

Walaupun sedikit sekali atau nyaris tidak ada “lowongan pekerjaan” yang membutuhkan kemampuan mengembangkan compiler ini (silahkan baca di koran ataupun majalah), bukan berarti pengetahuan itu sama sekali tak dibutuhkan dalam dunia pemrograman sehari-hari. Pada dasarnya pengetahuan pembuatan kompiler (compiler construction) ini merupakan pengetahuan dasar komputasi yang sangat baik sekali. Pengetahuan ini dimanfaatkan pada beragam aplikasi nantinya. Misal teknik parsing, pengenalan pola teks, optimasi kode dan lain sebagainya. Bahkan suatu database engine pun di bagian “front end” selalu menggunakan parsing ini. Pengetahuan tentang kompilasi akan dapat memberikan landasan bagi programmer untuk menyusun program yang efektif dan efisien.

Ketika seseorang melakukan pemrograman, sebetulnya secara tidak sadar dia akan melakukan proses penambahan suatu bahasa. Misal pembuatan suatu fungsi (ataupun prosedur) pada dasarnya merupakan suatu proses “penambahan kosa-kata” dari bahasa pemrograman tersebut. Dari yang tadinya tidak memiliki fungsi tersebut hingga akhirnya ditambahkan suatu “vocabulary” untuk melakukan suatu fungsi tersebut. Untuk itulah pemahaman penyusunan kompiler merupakan suatu dasar yang utama dalam bidang ilmu komputer.

Teknik Kompilasi



Merupakan Teknik dalam melakukan pembacaan suatu program yang ditulis dalam bahasa sumber, kemudian diterjemahkan ke dalam suatu bahasa lain yang disebut bahasa sasaran.

Dalam melakukan proses penerjemahan tersebut, sudah barang tentu kompilator akan melaporkan adanya keanehan-keanehan atau kesalahan yang mungkin ditemukannya. Proses penerjemahan yang dilakukan oleh kompilator ini disebut proses kompilasi (compiling).

Bila dipandang sepintas lalu, maka akan timbul beranekaragam kompilator yang dapat dibuat,
- Bahasa Sumber seperti bahasa FORTRAN, PASCAL, C dan juga bahasa-bahasa lainnya yang sifat dan pemakaiannya agak spesifik atau khusus, seperti bahasa untuk program DBASE, SPSS dan lain sebagainya.
- Bahasa Sasaran dapat berupa bahasa sumber lain seperti C, FORTRAN dan lain sebagainya atau Bahasa Mesin (Machine Language) yang digunakan oleh suatu prosessor mikro atau sumber komputer besar maupun komputer super.

Sejarah perkembangan suatu kompilator sudah dimulai sejak lama, yaitu pada saat mulai ditemukannya komputer pada awal 1950-an.

Sejak waktu tersebut teknik dan cara pembentukan suatu kompilator telah berkembang dengan sangat pesat dan pembentukkan suatu kompilator dapat dilakukan makin mudah.

Demikian pula program bantu (tools) untuk membuat suatu kompilator sudah dapat diperoleh sehingga pembentukan suatu kompilator dapat dilakukan dengan cepat.

Kompilator pertama yang dibuat adalah kompilator untuk bahasa FORTRAN yang pada saat itu dikembangkan dengan memakan sejumlah tenaga ahli yang setara dengan pekerjaan yang dilakukan oleh 18 orang.

Dengan adanya program bantu dan tata cara pembentukan yang sistematis dan tertata dengan baik serta pendefinisian struktur bahasa yang cermat, maka suatu kompilator untuk bahasa yang terstruktur seperti PASCAL atau C dapat dikembangkan.


Proses kompilasi dari suatu kompilator pada dasarnya dapat dibagi ke dalam 2 bagian utama yaitu bagian analisis dan bagian sintesis.

- Tahap analisis program yang ditulis dalam bahasa sumber dibagi dan dipecah ke dalam beberapa bagian yang kemudian akan dipresentasikan ke dalam suatu bentuk antara dari program sumber.
Operasi-operasi yang dilakukan oleh program sumber ditentukan dan dicatat dalam suatu struktur pohon (tree) yang disebut dengan nama pohon sintaks (sintax tree) Dalam hal ini setiap nodal pada tree tersebut menyatakan suatu operasi, sedangkan anak dari nodal (titik) tersebut memberikan argumen yang diperlukan
Secara umum proses dalam tahap analis terdiri dari 3 bagian utama, yaitu
a. Proses analisis leksikal
b. Proses analisis sintaktik
c. Proses analisis semantik

- Tahap sintesis yang berikutnya program sasaran dibentuk berdasarkan representasi antara yang dihasilkan pada tahap analisis.
Untuk tahap sintetis terdiri dari 2 bagian utama, yaitu
a. Proses yang menghasilkan kode (code generator)
b. Proses optimasi kode (code optimizer)

Sebelum Bahasa sasaran dapat dihasilkan, dalam melakukan ini tiap bagian utama akan berhubungan dan berkomunikasi dengan suatu berkas tabel yang disebut tabel simbol (symbol table) yaitu suatu tabel yang berisi semua simbol yang digunakan dalam bahasa sumber.

Selain kompilator masih diperlukan beberapa program lainnya sebelum dapat dibentuk bahasa sasaran yang dapat dijalankan. Seperti suatu bahasa sumber dapat dituliskan dalam beberapa modul yang terpisah dan disimpan dalam beberapa file yang terpisah.

Untuk menanggulangi hal ini, maka suatu program khusus yang disebut dengan suatu praprosesor digunakan untuk mengumpulkan modul-modul yang saling lepas ini ke dalam suatu program baru. Praposesor dapat pula melengkapi singkatan-singkatan atau ungkapan-ungkapan maupun kependekan-kependekan yang digunakan dalam bahasa sumber seperti pendefinisian makro dan lain sebagainya.

Senin, 22 Oktober 2007

Grafika Komputer 3D

Grafika komputer 3D (Inggris: 3D Computer graphics) adalah representasi dari data geometrik 3 dimensi sebagai hasil dari pemrosesan dan pemberian efek cahaya terhadap grafika komputer 2D. Hasil ini kadang kala ditampilkan secara waktu nyata (real time) untuk keperluan simulasi. Secara umum prinsip yang dipakai adalah mirip dengan grafika komputer 2D, dalam hal: penggunaan algoritma, grafika vektor, model frame kawat (wire frame model), dan grafika rasternya.

Grafika komputer 3D sering disebut sebagai model 3D. Namun, model 3D ini lebih menekankan pada representasi matematis untuk objek 3 dimensi. Data matematis ini belum bisa dikatakan sebagai gambar grafis hingga saat ditampilkan secara visual pada layar komputer atau printer. Proses penampilan suatu model matematis ke bentuk citra 2 D biasanya dikenal dengan proses 3D rendering.

Senin, 08 Oktober 2007


Pengujian proses warping
Pada proses warping, setiap titik dapat mengalami proses rotasi, translasi, dilasi dan lain sebagainya. Akibatnya, muncul beberapa kondisi diantaranya :
1. Ada titik-titik yang hilang karena berada di luar ukuran gambar asal atau gambar tujuan.
2. Terjadi titik-titik yang akibat proses warping memiliki posisi baru yang sama.
3. Gambar yang dihasilkan tidak penuh,ada posisi yang kosong di pada gambar.
Untuk mengatasinya dipakai proses invers.Pada warping biasa, pengulangan proses dilakukan pada gambar yang akan di warp sehingga seolah-olah titik-titik pada gambar
INTEGRAL, Vol. 9 No. 1, Maret 2004
41
dipetakan ke suatu tempat baru pada gambar
yang sama. Pada proses invers pengulangan
dilakukan pada suatu ‘lembaran’ gambar
kosong yang akan menampung hasil proses
warping. Pada proses ini, garis-garis feature
pada ‘lembaran’ kosong tadi menjadi garis
feature asal dan garis-garis feature pada
gambar yang akan di warp menjadi garis
feature tujuan. Setiap titik pada lembaran
kosong tadi dicari posisi padanannya pada
gambar yang akan di warp dengan algoritma
warping biasa. Titik tersebut kemudian diisi
dengan warna padanannya pada gambar
yang akan di-warp tadi.
Gambar 4.1 Gambar asal dan gambar tujuan
Gambar 4.2 Gambar hasil warping biasa dan
memakai algoritma invers.
Terlihat pada gambar 4.2, gambar
disebelah kiri adalah hasil dari warping
biasa, menunjukkan adanya titik-titik hitam,
sedangkan gambar disebelah kanan adalah
hasil dari algoritma invers.
4.2 Pengujian proses cross-disolve
Algoritma morphing yang pertama kali
dikembangkan adalah algoritma crossdisolve.
Hasil pengujian proses cross-disolve
saja dapat dilihat pada gambar 4.3. (pada
lampiran)
Pada gambar 4.3.a terlihat gambar asal
perlahan-lahan menghilang menjadi gambar
tujuan (gambar 4.3.c). Animasi terlihat
kurang alami dan terlihat adanya empat buah
mata pada gambar transisi (gambar 4.3.b).

Grafika komputer itu sebenarnya mempelajari tentang apa saja?bisa dijelaskan...?


Grafika komputer akhir-akhir ini mulai dirasa sangat penting dan mencakup hampir semua bidang kehidupan seiring dengan semakin pentingnya sistem komputer dalam berbagai kegiatan. Grafika komputer merupakan gambar atau grafik yang dihasilkan oleh komputer. Teknik-teknik yang dipelajari dalam grafika komputer adalah teknik-teknik bagaimana membuat atau menciptakan gambar dengan menggunakan komputer. Ada beberapa program, dari yang sederhana sampai program yang sangat kompleks, yang dapat digunakan untuk membuat gambar komputer, antara lain Paint, Microsoft Photo Editor, Adobe Photoshop, Maya, Autocad, 3D Space Max, dan lain-lain. Grafika komputer akhir-akhir ini mulai dirasa sangat penting dan mencakup hampir semua bidang kehidupan seiring dengan semakin pentingnya sistem komputer dalam berbagai kegiatan. Grafika komputer merupakan gambar atau grafik yang dihasilkan oleh komputer. Teknik-teknik yang dipelajari dalam grafika komputer adalah teknik-teknik bagaimana membuat atau menciptakan gambar dengan menggunakan komputer. Ada beberapa program, dari yang sederhana sampai program yang sangat kompleks, yang dapat digunakan untuk membuat gambar komputer, antara lain Paint, Microsoft Photo Editor, Adobe Photoshop, Maya, Autocad, 3D Space Max, dan lain-lain.

Melukis Objek 3 Dimensi

Untuk melukis objek 3 Dimensi, anda perlu tahu bagaimana untuk menjadikan polyline kepada 3D, penggunaan toolbar solids, serta tahu mengubah kedudukan paksi x,y dan z.

Ini adalah lukisan yang kita hendak bina dan ikuti langkah-langkah dibawah dengan berpandukan dimensi pada lukisan ini.
lukisan1


Langkah pertama untuk memulakan lukisan anda ialah :

1. Ubahkan kedudukan paksi 2D kepada 3D iaitu dengan memilih SE Isometric pada view toolbar.
2. Kemudian lukis polyline tapak.(boleh rujuk pada rajah dimensi yang saya lampirkan)
3. Cantumkan ketiga-tiga blok yang telah dibina.
4. Bina silinder dengan memilih bentuk silinder pada solids toolbar.(pastikan anda mengubah kedudukan paksi x,y dan z pada kedudukan yang betul supaya silinder tersebut dapat berada pada kedudukan yang dikehendaki).
5. Selepas itu, cantumkan keempat-empat blok tadi dengan memilih union.
6. Setelah blok tadi dicantumkan menjadi satu, bina silinder kecil pada cantuman bulatan dan blok tadi.
7. Kemudian, pilih subtract dan pilih cantuman blok tadi, kemudian Enter.Pilih silinder kecil pula dan tekan Enter sekali lagi.Anda akan dapati blok tadi akan menghasilkan satu lubang.Pilih Flat Shade pada Shade Toolbar untuk mengubah pandangan 3 Dimensi .
8. Ubah kedudukan paksi x,y dan z sekali lagi untuk membuat bulatan pada atas blok pula.
9. Ulangi langkah 7 untuk menghasilkan lubang pada blok tersebut.
10. Akhir sekali, bina fillet iaitu 4mm pada bucu-bucu yang dikehendaki.Klik pada fillet.Masukkan radius dan klik pada garisan tersebut.
11. Maka siaplah sudah objek 3 Dimensi anda.

GRAFIKA KOMPUTER


Grafika komputer atau dalam bahasa inggris Computer Graphics dapat diartikan sebagai seperangkat alat yang terdiri dari hardware dan software untuk membuat gambar, grafik atau citra realistic untuk seni, game komputer, foto, dan film animasi.
Dewasa ini, grafika komputer sudah banyak digunakan sebagai materi pendukung dalam berbagai bidang, pada tugas akhir ini penulis menganalisis tentang implementasi grafika komputer dengan menggunakan aplikasi perangkat lunak berbasis visual interaktif untuk gerak benda dan gelombang pada fisika yang meliputi gerak melingkar, gerak satelit, gerak peluru, gelombang transversal, dan gelombang sinusoida.
Implementasi grafika komputer yang diaplikasikan pada program simulasi berbasis visual interaktif untuk gerak benda dan gelombang pada fisika diharapkan dapat membantu dalam proses belajar, dan mempercepat pemahaman dalam mempelajari tentang gerak benda dan gelombang yang selama ini masih dilakukan dengan cara yang konvensional yaitu dengan gambar dan juga diharapkan dapat meningkatkan daya minat belajar karena cara yang dipakai dalam perangkat lunak ini lebih menarik dengan fasilitas menu yang sederhana..