Jumat, 26 Oktober 2007

Aplikasi Kecerdasan Buatan untuk Identifikasi Minyak Bumi


Aplikasi Kecerdasan Buatan di Laboratorium Minyak Bumi

Ada banyak jenis kecerdasan buatan, setidaknya ada lima jenis kecerdasan buatan yang sering kita temui, yaitu :

  1. Jaringan Syaraf Buatan (Artificial Neural Networks),
    Dalam industri minyak bumi AI ini dapat digunakan untuk membuat pola waktu, misal produksi suatu sumur minyak pada waktu tertentu.
  2. Logika Fuzzy (Fuzzy Logics),
    Logika ini untuk menentukan nilai diantara dua keadaan biner (1 dan 0). Logika inilah yang saya pakai untuk identifikasi suatu minyak bumi sama (1) atau tidak (0) yang akan dibahas lebih lanjut.
  3. Algoritma Genetik (Genetic Algorithms),
    Algoritma Genetik biasanya digunakan dibidang kedokteran, misal untuk menganalisis DNA.
  4. Robotika (Robotics),
    AI ini banyak digunakan di pabrik. Biasanya dibuat untuk melakukan kegiatan otomatisasi, misal dalam PLC (Programmable Logic Control).
  5. Permainan Komputer (Games),
    AI jenis ini yang paling disukai oleh anak-anak saya, misal untuk memainkan game Age of Mythology atau Counter Strike… :)

Dari contoh-contoh diatas, yang akan saya bahas kali ini adalah Logika Fuzzy, yaitu untuk menentukan apakah suatu minyak bumi sama atau tidak berdasarkan hasil analisis spektrum minyak bumi menggunakan Spektrofotometer FTIR (Fourier Transform Infra Red) yang saya lakukan di Laboratorium Molekuler LEMIGAS, Jakarta selama bulan Januari - Februari 2006 yang lalu.

Pengolahan data secara digital menggunakan komputer sudah dilakukan sejak tahun 1960. Dengan adanya revolusi teknologi komputer saat ini sudah mampu melakukan pengambilan keputusan seperti manusia (human-like decisions). Pada dasarnya mesin komputer hanya mengenal bahasa biner untuk mengambil keputusan, seperti “ada (1)” dan “tidak ada (0)”, hidup dan mati, betul dan salah, sama dan beda, dan lain-lain. Ketika dihadapkan pada kondisi yang memerlukan pertimbangan subjektif yang tidak pasti, seperti “agak mirip” atau “sedikit berbeda” mesin sudah tidak dapat melakukan pengambilan keputusan lagi. Untuk itu perlu dilakukan transformasi terlebih dahulu melalui suatu metoda khusus yang disebut kecerdasan buatan (artificial intellegence).

Cara kerja kecerdasan buatan pada dasarnya meniru cara kerja syaraf manusia dalam mengambil keputusan dimana didalamnya terdapat beberapa pertimbangan subjektif berdasarkan kriteria, seperti seberapa mirip suatu minyak bumi dengan minyak bumi lainnya atau berapa perbedaan yang diperbolehkan untuk menentukan bahwa suatu minyak bumi sama atau berbeda.

Perangkat lunak yang dapat digunakan untuk membuat suatu kecerdasan buatan dapat menggunakan bahasa pemrograman atau lembar kerja (spreadsheet) seperti Lotus, Microsoft Excel, C++, Basic, dBase, Microsoft Access, Microsoft Visual Basic, Delphi dan lain-lain. Pada percobaan yang saya lakukan, metoda yang akan digunakan adalah menggunakan Logika Fuzzy pada Microsoft Visual Basic 6.

Statistika

Untuk membandingkan kemiripan identitas suatu minyak bumi secara digital perlu dilakukan perhitungan secara statistika. Dalam metoda yang dipakai untuk mengidentifikasi kemiripan suatu minyak bumi secara digital adalah dengan melihat presisi atau simpangan bakunya. Simpangan baku inilah yang menjadi variabel bebas untuk dijadikan kriteria kemiripan suatu minyak bumi.

Presisi adalah istilah yang digunakan untuk menyatakan kecocokan hasil dari pengujian / pengukuran dari suatu sampel yang diuji/diukur. Salah satu cara menentukan presisi adalah dengan jalan menghitung harga simpangan baku. Dalam analisis sidik jari minyak bumi, ukuran kesamaan suatu minyak bumi menggunakan simpangan baku relatif (Relative Standard Deviation, RSD). Cara menghitung RSD bisa kan ? Soalnya saya susah nulis rumus disini. :(

Pada percobaan yang dilakukan saat identifikasi sidik jari minyak bumi, perhitungan presisi digunakan ketika menentukan batasan atau kriteria kemiripan rasio hasil normalisasi serapan spektrum infra merah minyak bumi contoh terhadap terhadap rasio hasil normalisasi serapan spektrum infra merah minyak bumi pembanding. Batasan presisi ini dijadikan kriteria pertama ( K1 ) berupa variabel bebas sehingga operator bisa memilih sendiri batasan kemiripan minyak bumi.

Metoda Identifikasi Spektrum Infra Merah

Bila diamati sekilas, spektrum minyak bumi pada gambar disamping ini tampak mirip antara satu dengan yang lainnya. Hal ini terjadi karena yang terukur oleh spektrofotometer infra merah adalah gugus-gugus CH3, CH2, dan gugus aromat yang memang selalu ada dalam setiap minyak bumi. Jika gambar tersebut diperbesar dan diamati lebih cermat akan tampak perbedaan, yaitu intensitas absorbsi gugus-gugus dari setiap minyak bumi akan berbeda. Perbedaan ini kemudian menjadi dasar untuk dipakai sebagai pembeda suatu spektrum dengan spektrum lainnya.

Konsep dasar dari pengenalan pola atau pattern recognition adalah membandingkan sifat-sifat spesifik suatu contoh terhadap sifat-sifat spesifik yang kemungkinan terdapat juga dalam pembanding. Ada dua metoda untuk membandingkan spektum infra merah senyawa hidrokarbon, yaitu :

Metoda manual atau tumpang tindih (overlay method)

  1. Metoda ini dilakukan dengan cara menumpukkan hasil cetak spektrum infra merah kemudian menumpukkan dua atau lebih hasil cetak tersebut diatas meja kaca yang diberi lampu. Dari tumpukan hasil cetak spektrum infra merah tersebut kemudian dicari kecocokan spektrum contoh terhadap spektrum minyak bumi pembanding. Metoda ini memiliki kelemahan yaitu pada cara pengamatan spektrum dan menentukan batasan kemiripannya, karena penentuan kesamaan suatu spektrum cara tersebut sangat subjektif, artinya pemahaman sama atau tidak dari tiap orang akan berbeda.
  2. Metoda perbandingan data analisis
    Metoda cara ini relatif lebih teliti dibandingkan metoda tumpang tindih (overlay method), karena yang dibandingkan adalah data atau angka hasil pembacaan alat spektrofotometer.

Pada pengenalan pola minyak bumi, sifat spesifik yang dibandingkan adalah spektrum serapan infra merah pada bilangan gelombang tertentu dengan menggunakan Spektrofotometer FTIR. Metoda pengenalan pola cara tersebut digunakan karena gugus-gugus dalam hidrokarbon bila diberi energi dari sinar infra merah akan memberikan spektrum pada bilangan gelombang yang spesifik. Spektrum infra merah tersebut akan menggambarkan keberadaan gugus metil, metilena dan aromat yang selalu ada dalam minyak bumi.

Analisis menggunakan Spektrofotometer FTIR digunakan karena kecepatan analisisnya jauh lebih cepat dibandingkan metoda dispersi, yaitu lima detik. Sedangkan jika menggunakan spektrofotometer infra merah dispersi waktu yang dibutuhkan sekitar 10 – 15 menit. Selain itu kelebihan utamanya adalah karena ketelitian Spektrofotometer FTIR lebih tinggi dibandingkan dispersi.

Berbagai pita absorbsi dapat digunakan untuk tujuan identifikasi. Dari hasil pengamatan spektrum infra merah minyak bumi yang dianalisis dipilih sepuluh pita absorbsi kunci yang masih signifikan11), yaitu pada bilangan gelombang identifikasi 720, 747, 810, 874, 1034, 1168, 1309, 1375, 1456 dan 1600 cm-1. Spektrum infra merah dari bilangan gelombang tersebut diatas kemudian diukur.

Untuk membandingkan dua angka maka digunakan perhitungan selisih dari kedua angka tersebut. Pada dasarnya dua angka dikatakan mempunya nilai yang sama jika selisih kedua angka tersebut adalah nol. Tetapi karena angka-angka tersebut merupakan hasil dari pengukuran, maka walaupun kedua angka tersebut berasal dari contoh yang sama maka angka-angka hasil pengukuran tersebut tidak akan tepat sama. Ketidaksamaan ini berasal dari keterulangan (repeatability) dari setiap pengukuran serta karena adanya perubahan sifat-sifat contoh oleh pengaruh pelapukan (weathering).

Besarnya nilai keterulangan ini digunakan sebagai kriteria untuk menentukan apakah kedua deret angka tersebut mempunyai nilai yang sama, yaitu kriteria simpangan baku ( K1 ).

Hasil pembandingan angka-angka dalam satu deret angka identitas kemudian dijumlahkan. Bila nilai penjumlahan tersebut sama dengan banyaknya angka yang dibandingkan atau dengan kata lain banyaknya puncak absorbsi infra merah yang dibandingkan, maka dua deret angka tersebut mempunyai nilai yang sama. Dalam hal tertentu, terutama karena faktor pelapukan minyak bumi, satu atau dua puncak absorbsi infra merah akan mengalami pengurangan cukup banyak, sehingga yang mempunyai nilai yang sama dengan puncak-puncak serapan dari minyak bumi pembanding tidak lagi sebanyak jumlah puncak semula. Untuk itu maka nilai penjumlahan harga-harga NP dapat dipilih sebanyak 100% seluruhnya atau lebih kecil. Dengan memilih nilai penjumlahan NP ini dapat dilihat minyak-minyak pembanding yang yang sama (match) dengan contoh.

SISTEM MANAJEMEN JARINGAN BERBASIS AI


PENGANTAR
Pada waktu lampau fungsi manajemen jaringan lebih sederhana dan kurang kritis dibandingan jaringan modern saat ini yang menyediakan rentang pelayanan baru dan feature-feature baru. Jaringan pengatur dan komando militer harus dapat memberikan layanan tang tepat waktu dan dapat bertahan pad kondisi rentang stress yang luas. Tetapi, pada saat manajemen jaringan bertambah kompleks dan waktu respon pengaturan dan perintah menjadi lebih ketat, fungsi manajemen itu sendiri menjadi terbatasi oleh tingkat jumlah dan kemampuan personal kontrol jaringan yang tersedia. Lebih lanjut, analisis pertambahan volume data status dan traffic data, variasi pada performansi sistem, dan kendala operasional jaringan menjadi hal yang memberatkan pengatur jaringan. Otomasi tugas-tugas manajemen jaringan yang dapat diterapkan hanya memberikan solusi sementara, karena kinerja jaringan menjadi terbatas pada batasan kognitif manager jaringan itu sendiri. Karena hal tersebut maka perangkat bantuan pengambilan keputusan berbasis sistem pakar menjadi sangat menarik.

PENDEKATAN
Tugas-tugas manajemen jaringan terbagi pada dua buah fungsi utama, yaitu monitoring status dan pemilihan tindakan kontrol jaringan yang sesuai. Monitoring status meliputi : pengumpulan dan penghubungan data status yang diterima dari jaringan yang dikontrol, dan deteksi dan penampilan anomali. Pemilihan tindakan pengaturan biasanya berdasar kepada kombinasi heuristik (rules of thumb), common sense dan algoritma prosedural (eksplisit) (contoh : penentuan dan analisis jalur yang tersedia dari simpul sumber ke tujuan). Diskusi diatas menyarankan bahwa manajemen jaringan dapat mengambil keuntungan dari dua tipe teknologi pengambilan keputusan yaitu : algoritma eksplisit dan sstem pakar berbasis aturan.

The Rule Based Expert System (RBES)
Peranan RBES ialah untuk merekomendasikan tindakan kontrol yang sesuai yang dapat mengurangi kondisi stress yang didiagnosa dan dilaporkan oleh NCMS, untuk menentukan dan menyarankan tindakan perbaikan yang tepat, RBES menggunakan sejumlah pengetahuan yang luas tentang :
Topologi jaringan telekomunikasi.
Algoritma routing dan tabel routing.
Konfigurasi status (up atau down), pembebanan saat ini, dan kriteria kinerja lainnya untuk setiap node switching pada jaringan.
Kapasitas, status, penggunaan saat ini, dan kriteria kinerja lainnya untuk setiap jalur antar node.
Tehnik reasoning untuk menentukan tindakan yang lebih disukai untuk mengurangi kondisi stress yang berbeda.
Dua jenis reasoning yang digunakan saat ini, yaitu : methods dan aturan forward-chaining production. Method ialah suatu prosedur yang dilekatkan pada suatu objek (contohnya : node switching atau sebuah link) dan di eksekusi dalam merespon pesan yang sesuai. Sebagian besar pengetahuan ekspert dapat di wakilkan dalam sekumpulan aturan produksi dalam bentuk :
IF <>
<>
THEN
Pada contoh diatas, suatu metode khusus digunakan untuk menentukan apakah link X/Y hanya terlihat pada route terakhir dddalam tabel routing X.
Dalam tehnik reasoning forward chaining, suatu langkah-langkah prosedur melalui suatu daftar aturan dan membandingkan jika porsi IF dari setiap aturan untuk mengetahui fakta. Ketika ada suatu kesesuaian (match), porsi THEN dari aturan menyatakan tindakan yang direkomendasikan. Dalam mencapai akhir dari daftar aturan, prosedur matching bergerak pada permulaan daftar dan mulai suatu lintasan yang baru. Proses berhenti jika suatu lintasan penuh melaui daftar gagal untuk menghasilkan tindakan. Untuk mendapatkan kecepatan pemrosesan, rule base dibagi menjadi sejumlah daftar aturan, setiap daftarnya berkorespondensi dengan tipe stress tertentu, seperti yang telah diindikasikan, suatu daftar yang sesuai diakses dalam merespon pesan diagnosa dari NCMS.




Teknologi Sistem Fuzzy

Aplikasi-aplikasi yang menggunakan sistem logika fuzzy sering sekali dianggap atau dinamakan sebagai pengendali fuzzy (fuzzy control). Padahal disamping pengendali fuzzy terdapat bermacam-macam teori yang digunakan pada aplikasi-aplikasi fuzzy seperti klasifikasi fuzzy (fuzzy clasification) dan diagnosis fuzzy (fuzzy diagnosis). Pada tulisan ini akan dipaparkan masalah dalam teknologi fuzzy dan perbedaan antara pengendali fuzzy dengan klasifikasi fuzzy dan fuzzy diagnosis.

Pendahuluan

Dalam perjalanan perkembangan suatu generasi teknologi menjadi lebih mantap dan berdaya guna tinggi, membutuhkan adanya pengembangan dasar pengetahuan dan dilakukannya berbagai macam riset atau penelitian yang bersifat eksperimental. Penelitian atau riset ini akan memberikan jawaban terhadap pertanyaan mendasar seperti : teori-teori apa saja yang masih secara praktis masih relevan untuk kemudian dikembangkan atau teori mana saja yang sama sekali tidak bisa digunakan lagi? Teori yang bermanfaat adalah teori yang dianggap mampu menjembatani penggabungan pengendali fuzzy dengan sistem kendali konvensional atau algoritma kendali modern seperti jaringan neural, algoritma genetik, dan lain sebagainya.

Pada generasi pertama teknologi fuzzy, terdapat beberapa kendala yang ditemui untuk mengembangkan pada industri-industri atau sistem kendali yang telah ada. Saat itu belum ada metodologi yang sistematik tentang aplikasi pengendali fuzzy, penentuan rancang bangun yang tepat, analisa permasalahan, dan bagaimana pengaruh perubahan parameter sistem terhadap kualitas unjuk kerja sistem. Jadi tidak bisa diharapkan suatu rancang bangun yang universal dan strategi optimasi fuzzy dapat segera digunakan secara praktis.

Saat ini logika fuzzy telah berhasil menerobos kendala-kendala yang dulu pernah ditemui dan segera menjadi basis teknologi tinggi. Penerapan teori logika ini dianggap mampu menciptakan sebuah revolusi dalam teknologi. Sebagai contoh, mulai tahun 90-an para manufaktur industri yang bergerak di bidang Distributed Control System (DCSs), Programmable Controllers (PLCs), dan Microcontrollers (MCUs) telah menyatukan sistem logika fuzzy pada barang produksi mereka dan memiliki prospek ekonomi yang baik. Sebuah perusahaan mikroprosesor terkemuka, Motorolla, dalam sebuah jurnal teknologi, pernah menyatakan "… bahwa logika fuzzy pada masa-masa mendatang akan memainkan peranan penting pada sistem kendali dijital "(1). Pada saat yang bersamaan, pertumbuhan yang luar biasa terjadi pada industri perangkat lunak yangmenawarkan kemudahan penggunaan logika fuzzy dan penerapannya pada setiap aspek kehidupan sehari-hari.

Perusahaan Jerman Siemens yang bergerak diberbagai bidang teknik seperti otomatisasi industri, pembangkit tenaga, semikonduktor, jaringan komunikasi publik dan pribadi, otomotif dan sistem transportasi, sistem audio dan video, dan lain sebagainya, beberapa tahun belakangan ini telah membentuk kelompok riset khusus tentang fuzzy. Tujuannya untuk melakukan penelitian dan pengembangan yang sistematik tentang logika fuzzy pada setiap aspek teknologi (4).

Ada dua alasan utama yang mendasari pengembangan teknologi berbasis sistem fuzzy:

  • Menjadi state-of-the-art dalam sistem kendali berteknologi tinggi. Jika diamati pengalaman pada negara-negara berteknologi tinggi, khususnya di negara Jepang, pengendali fuzzy sudah sejak lama dan luas digunakan di industri-industri dan alat-alat elektronika. Daya gunanya dianggap melebihi dari pada teknik kendali yang pernah ada. Pengendali fuzzy terkenal karena kehandalannya, mudah diperbaiki, dan yang lebih penting lagi pengendali fuzzy memberikan pengendalian yang sangat baik dibandingkan teknik lain, yang biasanya membutuhkan usaha dan dana yang lebih besar.
  • Dalam perspektif yang lebih luas, pengendali fuzzy ternyata sangat bermanfaat pada aplikasi-aplikasi sistem identifikasi dan pengendalian ill-structured, di mana linieritas dan invariansi waktu tidak bisa ditentukan dengan pasti, karakteristik proses mempunyai faktor lag, dan dipengaruhi oleh derau acak. Bentuk sistem seperti ini jika dipandang sistem konvensional sangat sulit untuk dimodelkan.
Beberapa proyek teknologi yang dinilai digunakan dan memiliki prospek ekonomi yang cerah seperti (4) :
  • Dalam teknologi otomotif : sistem transmisi otomatis fuzzy dan pengendali kecepatan idle fuzzy.
  • Dalam teknologi transpirtasi :
Pengendali fuzzy anti-slip untuk kereta listrik, sistem pengaturan dan perencanaan perparkiran, sistem pengaturan lampu lalu lintas, dan pengendalian kecepatan kendraan di jalan bebas hambatan.
  • Dalam peralatan sehari-hari : mesin cuci fuzzy dan vacum cleaner fuzzy dan lain-lain.
  • Dalam aplikasi industri di antaranya : industri kimia, sistem pengolahan kertas, dan lain-lain.
  • Dalam power satations : sistem diagnosis kebocoran-H2
Masih banyak aplikasi lainnya yang sudah beredar sebagai alat kendali dan barang-barang elektronik berteknologi tinggi.

Kendali Perkembangan Teknologi Sistem Fuzzy

Keberhasilan penerapan teknologi fuzzy seperti yang telah dibeberkan pada bagian pembahasan sebelumnya, dapat direalisasikan jika terdapat penelitian dan strategi pengembangan riset dan desain oleh sebuah industri untuk menemukan teknik terbaik untuk produknya. Hal tersebut tentunya tidak terlepas dari kesulitan-kesulitan yang ditemui dalam menggunakan dan pengembangan teknologi ini. Secara garis besar beberapa kesulitan yang ditemui oleh industri-industri elektronika adalah sebagai berikut (4):
  1. Para enjiner dan ilmuwan generasi sebelumnya dan sekarang banyak yang tidak mengenal teori kendali fuzzy, meskipun secara teknik praktis mereka memiliki pengalaman untuk menggunakan teknologi dan perkakas kontrol yang sudah ada.
  2. Belum banyak terdapat kursus/balai pendidikan dan buku-buku teks yang menjangkau setiap tingkat pendidikan (undergraduate, postgraduate, dan on site training)
  3. Hingga kini belum ada pengetahuan sistematik yang baku dan seragam tentang metodologi pemecahan problema kendali menggunakan pengendali fuzzy.
  4. Belum adanya metode umu/general untuk mengembangkan dan implementasi pengendali fuzzy.
Kendala pertama dan kedua dapat diatasi dengan cara sering diadakannya kursus dan balai pendidikan, memperbanyak penuliasan karya-karya ilmiah dan juga pengadaan buku-buku tentang fuzzy di setiap perguruan tinggi atau institusi pendidikan lainnya. Kendala ke tiga dan ke empat dapat diatasi dengan cara membentuk suatu metodolgi untuk merancang dan mengembangkan sistem fuzzy. Metodologi ini mencakup fasilitas-fasilitas yang terdapat dalam teori sistem kendali fuzzy seperti : pemilihan fungsi keanggotaan, operator, penggunaan faktor skala, pengembangan basisi pengetahuan, penurunan basis aturan, uji coba, dan simulasi sistem.

Perusahaan elektrik Omron selain menjual produknya, kini mereka juga tengah mengembangkan metode pendidikan dan pelatihan teknik logika fuzzy. Asisten manajer Omron FA System Div..Jim Krill berkatta," …, Educating potential customers about the benefits of fuzzy logic and where it can be applied is impotant for proper development of this technology." Jadi cara terbaik untuk mencapai teknologi ini menurutnya adalah melalui program pelatihan, seminar, dan pemakaian piranti lunak simulasi sistem fuzzy yang efektif (1).

Hingga kini software pengembangan logika fuzzy sudah tidak terhitung banyaknya, mulai dari simulasi sistem yang sederhana hingga seistem yang sangat kompleks dan rumit. Masing-masing menawarkan berbagai kelebihan dan kemudahan pemakaian seperti : User friendly editor, sistem on-line dan off-line debugging, compilers untuk setiap bahasa pemrograman termasuk bahasa rakitan mikrokontroler, tampilan 3D dan berbagai macam proyek simulasi yang bisa dilakukan (4).

Kendali Fuzzy, Klasifikasi Fuzzy, dan Diagnosis Fuzzy

Aplikasi yang menggunakan logika fuzzy, selalu identik dengan pengendalian fuzzy. Walaupun sebenarnya aplikasi itu tergolong dalam klasifikasi fuzzy atau diagnosis fuzzy. Kejadian ini bukanlah masalah yang dominan dan pelik dalam sistem fuzzy, karena istilah "fuzzy" sebenarnya sudah kabur dan sering disamakan dengan istilah-istilah yang ada pada teori himpunan fuzzy, topologi fuzzy, atau dalam pengertian yang lebih sempit lagi sering disebut sebagai approximate reasoning dalam logika keputusan. Dengan cara pandang yang sama sistem kendali fuzzy sering sekali dinyatakan sebagai bagian teori himpunan fuzzy yang digunakan pada aplikasi-aplikasi dalam bentuk sistem lingkar tertutup. Namun tujuan utama tulisan ini adalah membedakan antara sistem kendali fuzzy dengan sistem klasifikasi fuzzy dan sistem diagnosis fuzzy. Pada ruang lingkup yang lebih luas lagi, masih ada sistem lainnya yang cukup sukses digunakan seperti sistem pakar fuzzy, sistem analisa data fuzzy, sistem pengolahan citra fuzzy, dan berbagai ragam aplikasi sistem fuzzy yang sudah ada.

Pada dasarnya penggunaan istilah klasifikasi dan diagnosis bukanlah merupakan penamaan yang baku, karena keduanya mempunyai pengertian atau makna yang hampir sama dan batas-batas perbedaannya juga tidak begitu jelas. Namun yang teramat penting adalah kedua istilah tadi menunjukkan perbedaan antara kedua sistem aplikasi berbasis logika fuzzy.

Kesimpulan

Teknologi sistem fuzzy telah berkembang cukup jauh, dan memberikan berbagai keuntungan dan perbaikan unjuk kerja pada sistem kendali yang pernah ada. Perkembangan sistem ini menuntut mutu sumber daya manusia yang berpendidikan, seperti ilmuwan dan enjineer yang ahli di bidang teknik sistem fuzzy dan tidak lepas dari kondisi pendidikan dan kelengkapan alat-alat yang mendukung pengembangan teknologi ini.

Di bidang aplikasi fuzzy, tidak hanya terdapat sistem kendali fuzzy, melainkan juga ada klasifikasi fuzzy dan diagnosis fuzzy. Jadi sistem fuzzy pada keadaan riil, mempunyai ragam metode dan strategi pengembangan yang dapat diterapkan pada masalah-masalah kendali saat ini.

Definisi Kecerdasan Buatan


Kecerdasan Buatan (bahasa Inggris: Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan yang ditunjukkan oleh suatu entitas buatan. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputergames), logika fuzzy, jaringan syaraf tiruan dan robotika. (

Banyak hal yang kelihatannya sulit untuk kecerdasan manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh: mentransformasikan persamaan, menyelesaikan persamaan integral, membuat permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk direalisasikan dalam Informatika. Seperti contoh: Pengenalan Obyek/Muka, bermain Sepakbola.

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. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game.

'Kecerdasan buatan' ini bukan hanya ingin mengerti apa itu sistem kecerdasan, tapi juga mengkonstruksinya.

Tidak ada definisi yang memuaskan untuk 'kecerdasan':

  1. kecerdasan: kemampuan untuk memperoleh pengetahuan dan menggunakannya
  2. atau kecerdasan yaitu apa yang diukur oleh sebuah 'Test Kecerdasan'

Faham Pemikiran

Secara garis besar, AI terbagi ke dalam dua faham pemikiran yaitu AI Konvensional dan Kecerdasan Komputasional (CI, Computational Intelligence). AI konvensional kebanyakan melibatkan metoda-metoda yang sekarang diklasifiksikan sebagai pembelajaran mesin, yang ditandai dengan formalisme dan analisis statistik. Dikenal juga sebagai AI simbolis, AI logis, AI murni dan AI cara lama (GOFAI, Good Old Fashioned Artificial Intelligence). Metoda-metodanya meliputi:

  1. Sistem pakar: menerapkan kapabilitas pertimbangan untuk mencapai kesimpulan. Sebuah sistem pakar dapat memproses sejumlah besar informasi yang diketahui dan menyediakan kesimpulan-kesimpulan berdasarkan pada informasi-informasi tersebut.
  2. Petimbangan berdasar kasus
  3. Jaringan Bayesian
  4. AI berdasar tingkah laku: metoda modular pada pembentukan sistem AI secara manual

Kecerdasan komputasional melibatkan pengembangan atau pembelajaran iteratif (misalnya penalaan parameter seperti dalam sistem koneksionis. Pembelajaran ini berdasarkan pada data empiris dan diasosiasikan dengan AI non-simbolis, AI yang tak teratur dan perhitungan lunak. Metoda-metoda pokoknya meliputi:

  1. Jaringan Syaraf: sistem dengan kemampuan pengenalan pola yang sangat kuat
  2. Sistem Fuzzy: teknik-teknik untuk pertimbangan di bawah ketidakpastian, telah digunakan secara meluas dalam industri modern dan sistem kendali produk konsumen.
  3. Komputasi Evolusioner: menerapkan konsep-konsep yang terinspirasi secara biologis seperti populasi, mutasi dan “survival of the fittest” untuk menghasilkan pemecahan masalah yang lebih baik.

Metoda-metoda ini terutama dibagi menjadi algoritma evolusioner (misalnya algoritma genetik) dan kecerdasan berkelompok (misalnya algoritma semut)

Dengan sistem cerdas hibrid, percobaan-percobaan dibuat untuk menggabungkan kedua kelompok ini. Aturan inferensi pakar dapat dibangkitkan melalui jaringan syaraf atau aturan produksi dari pembelajaran statistik seperti dalam ACT-R. Sebuah pendekatan baru yang menjanjikan disebutkan bahwa penguatan kecerdasan mencoba untuk mencapai kecerdasan buatan dalam proses pengembangan evolusioner sebagai efek samping dari penguatan kecerdasan manusia melalui teknologi.

Sejarah

Pada awal abad 17, René Descartes mengemukakan bahwa tubuh hewan bukanlah apa-apa melainkan hanya mesin-mesin yang rumit. Blaise PascalCharles Babbage dan Ada Lovelace bekerja pada mesin penghitung mekanis yang dapat diprogram. menciptakan mesin penghitung digital mekanis pertama pada 1642. Pada 19,

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 ColmerauerProlog. Ted Shortliffe mendemonstrasikan kekuatan sistem berbasis aturan untuk representasi pengetahuan dan inferensiHans Moravec mengembangkan kendaraan terkendali komputer pertama untuk mengatasi jalan berintang yang kusut secara mandiri. mengembangkan bahasa komputer dalam diagnosa dan terapi medis yang kadangkala disebut sebagai sistem pakar pertama.

Pada tahun 1980-an, jaringan syaraf digunakan secara meluas dengan algoritma perambatan balik, pertama kali diterangkan oleh Paul John Werbos pada 1974. Tahun 1990-an ditandai perolehan besar dalam berbagai bidang AI dan demonstrasi berbagai macam aplikasi. Lebih khusus Deep Blue, sebuah komputer permainan catur, mengalahkan Garry Kasparov dalam sebuah pertandingan 6 game yang terkenal pada tahun 1997. DARPA menyatakan bahwa biaya yang disimpan melalui penerapan metode AI untuk unit penjadwalan dalam Perang Teluk pertama telah mengganti seluruh investasi dalam penelitian AI sejak tahun 1950 pada pemerintah AS.

Tantangan Hebat DARPA, yang dimulai pada 2004 dan berlanjut hingga hari ini, adalah sebuah pacuan untuk hadiah $2 juta dimana kendaraan dikemudikan sendiri tanpa komunikasi dengan manusia, menggunakan GPS, komputer dan susunan sensor yang canggih, melintasi beberapa ratus mil daerah gurun yang menantang.

Filosofi

Perdebatan tentang AI yang kuat dengan AI yang lemah masih menjadi topik hangat diantara filosof AI. Hal ini melibatkan filsafat pemikiran dan masalah pikiran-tubuh. Roger Penrose dalam bukunya The Emperor's New Mind dan John Searle dengan eksperimen pemikiran "ruang China" berargumen bahwa kesadaran sejati tidak dapat dicapai oleh sistem logis formal, sementara Douglas Hofstadter dalam Gödel, Escher, Bach dan Daniel Dennett dalam Consciousness Explained memperlihatkan duukungannya atas fungsionalisme. Dalam pendapat banyak pendukung AI yang kuat, kesadaran buatan dianggap sebagai urat suci (holy grail) kecerdasan buatan.

Fiksi sains

Dalam fiksi sains, AI umumnya dilukiskan sebagai kekuatan masa depan yang akan mencoba menggulingkan otoritas manusia seperti dalam HAL 9000, Skynet, Colossus and The Matrix atau sebagai penyerupaan manusia untuk memberikan layanan seperti C-3PO, Data, the Bicentennial Man, the Mechas dalam A.I. atau Sonny dalam I, Robot. Sifat dominasi dunia AI yang tak dapat dielakkan, kadang-kadang disebut "the Singularity", juga dibantah oleh beberapa penulis sains seperti Isaac Asimov, Vernor Vinge dan Kevin Warwick. Dalam pekerjaan seperti manga Ghost in the Shell-nya orang Jepang, keberadaan mesin cerdas mempersoalkan definisi hidup sebagai organisme lebih dari sekedar kategori entitas mandiri yang lebih luas, membangun konsep kecerdasan sistemik yang bergagasan. Lihat daftar komputer fiksional(list of fictional computers) dan daftar robot dan android fiksional (list of fictional robots and androids).

Seri televisi BBC Blake's 7 menonjolkan sejumlah komputer cerdas, termasuk Zen (Blake's 7), kompuer kontrol pesawat bintang Liberator (Blake's 7); Orac, superkomputer lanjut tingkat tinggi dalam kotak perspex portabel yang mempunyai kemampuan memikirkan dan bahkan memprediksikan masa depan; dan Slave, komputer pada pesawat bintang Scorpio.

Senin, 15 Oktober 2007

Visual Basic

Visual Basic

Dari Wikipedia Indonesia, ensiklopedia bebas berbahasa Indonesia.

Microsoft Visual Basic (sering disingkat sebagai VB saja) merupakan sebuah bahasa pemrograman yang bersifat event driven dan menawarkan Integrated Development Environment (IDE) visual untuk membuat program aplikasi berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman Common Object Model (COM). Visual Basic merupakan turunan bahasa BASIC dan menawarkan pengembangan aplikasi komputer berbasis grafik dengan cepat, akses ke basis data menggunakan Data Access Objects (DAO), Remote Data Objects (RDO), atau ActiveX Data Object (ADO), serta menawarkan pembuatan kontrol ActiveX dan objek ActiveX. Beberapa bahasa skrip seperti Visual Basic for Applications (VBA) dan Visual Basic Scripting Edition (VBScript), mirip seperti halnya Visual Basic, tetapi cara kerjanya yang berbeda.

Para programmer dapat membangun aplikasi dengan menggunakan komponen-komponen yang disediakan oleh Microsoft Visual Basic Program-program yang ditulis dengan Visual Basic juga dapat menggunakan Windows API, tapi membutuhkan deklarasi fungsi eksternal tambahan.

Dalam pemrograman untuk bisnis, Visual Basic memiliki pangsa pasar yang sangat luas. Dalam sebuah survey yang dilakukan pada tahun 2005, 62% pengembang perangkat lunak dilaporkan menggunakan berbagai bentuk Visual Basic, yang diikuti oleh C++, JavaScript, C#, dan Java.

Sejarah

Bill Gates, pendiri Microsoft, memulai bisnis softwarenya dengan mengembangkan interpreter bahasa Basic untuk Altair 8800, untuk kemudian ia ubah agar dapat berjalan di atas IBM PC dengan sistem operasi DOS. Perkembangan berikutnya ialah diluncurkannya BASICA (basic-advanced) untuk DOS. Setelah BASICA, Microsoft meluncurkan Microsoft QuickBasic dan Microsoft Basic (dikenal juga sebagai Basic Compiler).

Sejarah BASIC di tangan Microsoft sebagai bahasa yang diinterpretasi (BASICA) dan juga bahasa yang dikompilasi (BASCOM) membuat Visual Basic diimplementasikan sebagai gabungan keduanya.

Programmer yang menggunakan Visual Basic bisa memilih kode terkompilasi atau kode yang harus diinterpretasi sebagai hasil executable dari kode VB. Sayangnya, meskipun sudah terkompilasi jadi bahasa mesin, DLL bernama MSVBVMxx.DLL tetap dibutuhkan. Namun karakteristik bahasa terkompilasi tetap muncul (ia lebih cepat dari kalau kita pakai mode terinterpretasi).

Pemrograman Berorientasi Objek (OOP)

Visual Basic merupakan bahasa yang mendukung OOP, namun tidak sepenuhnya. Beberapa karakteristik obyek tidak dapat dilakukan pada Visual Basic, seperti Inheritance tidak dapat dilakukan pada class module. Polymorphism secara terbatas bisa dilakukan dengan mendeklarasikan class module yang memiliki Interface tertentu. Visual Basic (VB) tidak bersifat case sensitif.

Desain Visual dan Komponen

Visual Basic menjadi populer karena kemudahan desain form secara visual dan adanya kemampuan untuk menggunakan komponen-komponen ActiveX yang dibuat oleh pihak lain. Namun komponen ActiveX memiliki masalahnya tersendiri yang dikenal sebagai DLL hell. Pada Visual Basic .NET, Microsoft mencoba mengatasi masalah DLL hell dengan mengubah cara penggunaan komponen (menjadi independen terhadap registry).

Java

Java

Dari Wikipedia Bahasa Melayu, ensiklopedia bebas.

Bahasa pengaturcaraan Java merupakan sejenis bahasa pengaturcaraan berorientasikan objek dah telah dibangunkan oleh James Gosling dan rakan-rakan sekerjanya di Sun Microsystems pada awal 1990-an. Tidak seperti kebiasaan bahasa pengaturcaraan lain yang direka bentuk untuk dikompilasi kepada kod asli (mesin) ataupun diterjemah terus dari kod sumber semasa masa jalanan (runtime). Java dikhaskan untuk dikompilasi kepada kodbait (bytecode) (ia boleh juga dikompilasi kepada kod asli menggunakan gcj), yang mana ia akan dilaksanakan (biasanya menggunakan kompilasi JIT (just in time)) oleh Mesin Maya Java (JVM).

Bahasa pengaturcaraan Java banyak meminjam sintaksis daripada bahasa pengaturcaraan C dan C++ tetapi mempunyai model objek yang mudah dan kurangnya fasiliti aras-rendah.

Java sebenarnya tiada kaitan dengan Javascript walaupun kedua-duanya mempunyai nama yang sama dan berkongsi sintaksis yang seakan-akan C.

Ciri-ciri Java

  • Mudah untuk dipelajari. Bagi mereka yang sudah mengetahui bahasa pengaturcaraan C atau C++, bahasa Java menjadi mudah dipelajari, disebabkan sintak yang banyak persamaan.
  • Tulis kurang kod. Program yang ditulis menggunakan Java biasanya empat kali lagi kurang kod berbanding jika ianya ditulis menggunakan C++.
  • Tulis kod lagi baik. Disebabkan Java ialah bahasa pengaturcaraan yang berorentasikan objek, penggunaan semula kod yang sudahpun ditulis memperbolehkan kadar kesalahan kod dapat dikurangkan.
  • Pembangunan program-program lagi cepat. Menggunakan Java juga memperbolehkan pembangunan program yang lagi cepat dilakukan dan jumlah baris kod yang lagi kurang diperlukan.
  • Menngelakkan kebergantungan platform. Program yang dibangunkan oleh bahasa java ialah program yang dapat dilarikan dimana-mana platform

    Perisian Pembangunan Java

    Penghasilan perisian menggunakan bahasa Java bole dilakukan dengan berbantukan perisian persekitaran pembangunan java (Java IDE). Salah satu perisian populer tersebut ialah Netbean dan ianya percuma. Perisian ini bukan sahaja memperbolehkan kita melakukan kerja-kerja pengaturcaraan biasa, malah program ini juga menyokong konsep pembangunan perisian mengunakan kaedah terkini seperti menggunakan UML. Melalui kaedah UML, pembangun perisian cuma perlu merekacipta model dan kod java dijana oleh perisian. Kitar pembangunan perisian menjadi sangat pantas.

Memulai Belajar Bahasa Java

Kamu suka pemrograman? Kamu tertarik dengan bahasa Java dan ingin mempelajariya lebih jauh? Kalau dua dintara tiga pertanyaan barusan kamu jawab ya, berarti kamu sama dengan saya.

Oke, ada begitu banyak alasan kenapa memilih belajar Java daripada belajar bahasa yang lain. Kalau kamu sering baca kamu pasti sering denger buzzword yang sering diatributkan dengan Java misalnya: multiplatform, distributed, robust, object oriented, secure, dan sebagainya. Sampe kamu pusing denger istilah-istilah itu semua tapi meyimpan sesuatu dalam hati bisikan seperti ini, “sepertinya aku tertarik belajar Java”.

Kamu pun dikasih tahu atau mencari tahu lalu jadi tahu bahwa yang dibutuhkan untuk bisa belajar bahasa java adalah dengan memiliki program java-nya (JDK dan bukan JRE) di situs ini. Kamu juga jadi tahu dari situs itu kalau versi JDK yang terbaru sampai blog ini ditulis yaitu Java SE 6, itu yang kamu butuhkan. Kamu hanya butuh itu untuk bisa menulis bahasa java ditambah dengan sebuah teks editor kesukaan saya, NOTEPAD! Oke, sebenarnya kamu akan sangat dimudahkan jika memiliki alat ato program (IDE) yang namanya netbeans atau eclipse. Keduanya gratis, tetapi filesize-nya gede. Kalo koneksi internet kamu bagus, kamu lebih baik memiliki salah satu tools itu. Kalo saya lebih prefer ke eclipse.

Oke, setelah kamu istall JDK-nya. Kamu mulai menulis program dalam java. Tradisinya adalah menulis program Hello World. Kamu mulai menuliskan kode-kode asing seperti ini:

public class HelloWorld {

public static void main(String args[]) {

System.out.println(”Apa kabar dunia?

Stop war, spread out peace!”);

}

Lalu kamu meyimpan (save) program barusan yang kamu buat pake notepad di suatu directory dengan nama file sama dengan satu kata setelah kata class di atas tetapi dengan menambahkan .java dibelangkangnya (filetype all files) yaitu HelloWorld.java.

Kamu kini merasa siap melakukan kompilasi dengan langkah-langkah seperti ini. Pijit START, RUN, lalu ketik CMD. Doeng..keluarlah tampilan hitem yang orang sebut command prompt. Kamu pun pergi ke direktori tempat file java kamu berada lalu melakukan kompilasi dengan mengetik javac HelloWorld.java lalu pukul tombol enter. Kamu sudah merasa senang sampai kesenanganmu terganggu dengan adanya sebuah pesan error kayak gini:

javac.JPG

Untuk bisa mengkompilasi program yang kamu buat kamu harusngasih tau dulu windows dimana letak compiler java kamu berada, namanya mensetting classpath, yaitu dengan langkah-langkah yang bisa kamu cari tahu di sini Memulai Belajar Bahasa Java.

Oke, setelah kamu berhasil mensetting classpath, kamu bisa mengkompilasi dengan perintah javac, dan menjalakan programnya dengan perintah java. Kalau kamu mengetik programnya bener, program kamu bisa jalan dengan menghasilkan output Apa kabar dunia? Stop war, spread out peace!

Kalau program kamu berhasil, saya ucapkan selamat. kalo belum, coba lagi dan coba lagi sampe kamu ngerti. kamu punya google buat nyari tahu kesalahan kamu dimana. Selamat belajar!

Kumpulan A to Z JAVA

Kumpulan A to Z JAVA

Kategori Umum by Rahmat Hidayat

[ A ]


Abstract

Adalah Kemampuan sebuah program untuk melewati aspek informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam sistem

AWT

AWT (Abstract Windowing Toolkit) merupakan package yang diperkenalkan untuk mengembangkan aplikasi berbasis GUI. Dalam AWT, tercakup :

Class-class yang digunakan untuk meletakkan class-class lain, atau disebut container. Di antaranya adalah JFrame, JPanel, JDialog. Class-class yang berkaitan dengan komponen-komponen untuk GUI seperti Button, TextField, Label, RadioButton. Class, interface dan adapter yang digunakan untuk penanganan event, seperti EventListener, dan ActionEvent.

[ B ]

ByteCode

Adalah sekumpulan instruksi yang meresemble kode mesin tetapi tidak spesifik pada prosesor

[ C ]

Compiler

Kompilator (Inggris: compiler) adalah sebuah program komputer yang berguna untuk menerjemahkan program komputer yang ditulis dalam bahasa pemrograman tertentu menjadi program yang ditulis dalam bahasa pemrograman lain.

Converter

Converter adalah salah satu komponen set penting yang disediakan JSF. Converter menyediakan solusi untuk permasalahan dasar yang mengganggu programer web : bagaimana merubah nilai yang diberikan oleh user dari string yang direpresentasikan dalam format atau tipe yang tepat yang digunakan secara internal oleh server. Converter juga bersifat dua arah : converter juga dapat digunakan untuk merubah bagaimana data internal ditampilkan ke user. Converter mampu melakukan hal ini dengan mendefinisikan method getAsString() dan getAsObject() yang dapat dipanggil oleh framework pada saat yang tepat. Method getAsString dipanggil untuk memberikan representasi String ke data, sementara getAsObject digunakan untuk merubah String ke dalam tipe yang diminta.

Class

kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.

[ D ]

Debugging

Debugging adalah sebuah metode yang dilakukan oleh para pemrogram dan pengembang perangkat lunak untuk mencari dan mengurangi bug, atau kerusakan di dalam sebuah program komputer atau perangkat keras sehingga perangkat tersebut bekerja sesuai dengan harapan. Debugging cenderung lebih rumit ketika beberapa subsistem lainnya terikat dengan ketat dengannya, mengingat sebuah perubahan di satu sisi, mungkin dapat menyebabkan munculnya bug lain di dalam subsistem lainnya.

[ E ]

ECLIPSE

adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse: Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X. Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.

[ G ]

Garbage Collection

Pengumpulan sampah (Bahasa Inggris: garbage collection atau disingkat GC) merupakan sistem manajemen memori yang membuat programer tidak perlu secara manual membebaskan memori dari objek yang tidak terpakai. Metode ini diciptakan oleh John McCarthy sekitar 1959 untuk memecahkan masalah manajemen memori manual pada bahasa pemrograman Lisp buatannya.

[ I ]

Interface

Interface adalah jenis khusus dari blok yang hanya berisi method signature(atau constant). Interface mendefinisikan sebuah(signature) dari sebuah kumpulan method tanpa tubuh.

IDE (Integrated Development Environment)

pembangunan perangkat lunak. Tujuan dari IDE adalah untuk menyediakan semua utilitas yang diperlukan dalam membangun perangkat lunak. Sebuah IDE, atau secara bebas dapat diterjemahkan sebagai Lingkungan Pengembangan Terpadu, setidaknya memiliki fasilitas: Editor, yaitu fasilitas untuk menuliskan kode sumber dari perangkat lunak. Compiler, yaitu fasilitas untuk mengecek sintaks dari kode sumber kemudian mengubah dalam bentuk binari yang sesuai dengan bahasa mesin. Linker, yaitu fasilitas untuk menyatukan data binari yang beberapa kode sumber yang dihasilkan compiler sehingga data-data binari tersebut menjadi satu kesatuan dan menjadi suatu program komputer yang siap dieksekusi. Debuger, yaitu fasilitas untuk mengetes jalannya program, untuk mencari bug/kesalahan yang terdapat dalam program. Sampai tahap tertentu IDE modern dapat membantu memberikan saran yang mempercepat penulisan. Pada saat penulisan kode, IDE juga dapat menunjukan bagian-bagian yang jelas mengandung kesalahan atau keraguan.

[ J ]

J2EE

Java 2 Platform, Enterprise Edition atau J2EE adalah sebuah standarisasi (kendati tanpa dikukuhkan ISO atau ECMA) dalam pengembangan aplikasi menggunakan arsitektur distributed multi-tier, berbasis komponen modular dan dijalankan diatas server aplikasi (application server). Memanfaatkan beberapa teknologi termasuk JDBC dan CORBA, sementara meningkatkan fungsionalitasnya menggunakan Enterprise Java Beans, Java Servlets, Java Server Pages dan teknologi XML. Menggunakan J2EE pengembang dapat membuat aplikasi enterprise yang portable dari satu platform dengan yang lain dan scalable, sementara ia mengintegrasikan sejumlah teknologi legacy.

JDBC

JDBC adalah sebuah API yang menyediakan antar muka yang standar untuk berinteraksi dengan berbagai database

JAVA

Java adalah bahasa pemrograman yang mulanya dikembangan Sun Microsystems sebagai: A simple, object-oriented, distributed, interpreted, robust, secure, architecture neutral, portable, high-performance, multithreaded, and dynamic language. Proses kerja Java adalah interpretasi dan bukan dikompilasi. Proses pemrograman bahasa Java dirakit (compiled) menjadi sebuah berkas byte-code (binari) yang kemudian dijalankan (interpreted) oleh sebuah mekanisme virtual machine yang dikenal sebagai Java Virtual Machine (JVM).

JRE

JRE ini adalah runtime environment, ini diperlukan untuk menjalankan stand alone java application dan applet, di dalam jre sendiri ada yang namanya jvm (java virtual machine, adalah engine yang mengeksekusi java bytecode dan standard api/library

JIT

JIT (Just In Time) Sejenis kompilator yang dikembangkan oleh IBM untuk memperbaiki kinerja JVM (Java Virtual Machine) yang relatif lamban dengan cara konversi bytecode menjadi kode mesin sesuai platform sehingga kinerja eksekusi program lebih cepat. Ada beberapa sebab JVM lamban, diantaranya karena konsep Objek seperti adanya konstruktor default dan polymorphism, selain itu juga adanya prosedur penangangan eksepsi dan sinkronisasi. Saat ini versi JIT compiler adalah 3.0

JFC

JFC (Java Foundation Class) yang lebih dikenal dengan nama Swing adalah dasar dari class Java yang menggunakan atau berbentuk GUI (Graphical user Interface). Swing merupakan perluasan atau pembaharuan dari class berbentuk GUI yang ada pada paket awt (abstract windowing toolkit), sehingga nama komponen GUI pada Swing mempunyai nama yang mirip dengan komponen GUI yang ada pada awt, dengan tambahan huruf 'J' di depannya, sebagai contoh : JFrame, JButton, ... dsb

JSP

Java Server Pages Adalah Teknologi Untuk Membangun Aplikasi Web, yang dimana dapat di gabung dengan Syntax Dasar HTML (HTML Embed),JSP memerlukan webserver yaitu Apache Tomcat

JCP

JCP merupakan badan yang bertanggung jawab terhadap standar teknologi Java.Java dikembangkan mengacu pada standar yang ditentukan oleh komite didalam JCP (Java Community Process). Spesifikasi Java tidak sekedar fondasi VMnya, tetapi menyangkut hampir semua aspek, mulai dari mekanisme mengakses devices I/O, komponen pertukaran objek, sampai pengembangan container.

JVM

JVM (Java Virtual Machine) adalah mesin untuk menjalankan bytecode pada file kelas Java pada mikroprosesor, baik yang berada pada komputer atau pada piranti elektronik lainnya.

JSF

JSF adalah Java Server Faces framework untuk membangun user interface untuk aplikasi web. Dibangun berdasar pada konsep-konsep yang diperkenalkan oleh Struts dan membagi bersama keuntungan sebuah arsitektur yang benar-benar memisahkan presentasi layer dari business logic dan sebuah standard komponen user interface yang perangkatnya serupa dengan widget Swing

JAMES GOSLING

JAMES Gosling lahir pada tanggal 19 Mei 1956 dari tiga bersaudara di dekat Calgary, Kanada. Sejak kecil dia memang sangat tertarik dengan elektronika. Saat usia 12 tahun, orangtuanya mendapatinya berhasil membuat permainan tic tac toe dengan memanfaatkan komponen suku cadang telefon dan televisi. Melihat minat dan bakat tersebut, suatu ketika sahabat orangtuanya mengajak Gosling ke laboratorium komputer di Universitas Calgary. Saat itu usianya masih 14 tahun. Sejak saat itulah ia lebih sering menghabiskan banyak waktu di laboratorium komputer daripada belajar di kelas. Lulus dari SMU, ia melanjutkan di Universitas Calgary. Saat menyelesaikan sarjana, ia mengembangkan editor teks Emacs, yang kelak menjadi editor teks yang paling banyak digunakan pada sistem operasi Unix. Kemudian ia mengambil pendidikan Master di Universitas Alberta sebelum melanjutkan program doktor di Universitas Carnegie Mellon di Pittsburgh. Ia memperoleh gelar Ph.D setelah berhasil mempertahankan tesisnya yang berjudul "The Algebraic Manipulation of Constraints" pada tahun 1983. Ia segera bergabung dengan IBM selepas kuliah. Sayang hasil pekerjaannya tidak pernah diproduksi. Setahun kemudian, ia bergabung dengan Sun Microsystems hingga menjadi bagian Green Team untuk menjalankan projek rahasia Green Project. Berkat kemampuannya, kariernya segera melejit sehingga menduduki posisi Vice President (VP) Sun Microsystems dan Chief Technology Officer (CTO) SunĂ­s Developer Product. Saat ini, ia masih berkontribusi pada Real-Time Specification of Java dan peneliti di laboratorium Sun untuk software development tools. Selain menjadi arsitek bahasa pemrograman Java, ia juga membangun sistem akuisisi data satelit, multiprosesor untuk Unix, beberapa kompiler, mail system dan insinyur utama pembuat windows manager NEWS (Network Extensible Windowing System). Akankah ia juga mengenang Pulau Jawa setiap kali menyeduh kopi panasnya di sela-sela memprogram Java? Yang jelas ia selalu senang untuk berkata, "Jika dunia berbicara dengan Inggris, internet berbicara dengan Java."***

JavaBeans

JavaBeans adalah nama arsitektur objek-objek dalam bentuk class yang memungkinkan mendefinisikan objek dalam objek (yang disebut bean), sedemikian sehingga dapat digunakan oleh tools visual seperti NetBeans atau JBuilder atau yang lainnya sebagai komponen yang mempunyai properti yang dapat diubah pada tahap desain. Mirip seperti kontrol Active-X. Perbedaannya kontrol Active-X dapat dibuat oleh sebarang bahasa pemrograman tetapi hanya dapat dijalankan pada platform Windows, sedangkan JavaBeans hanya dabat dibuat dengan Java tetapi dapat dijalankan pada berbagai platform melalui JVM

J#(J Sharp)

J# (dibaca J Sharp) adalah sebuah implementasi bahasa pemrograman Java (yang merupakan buatan James Gosling dari Sun Microsystems) berbasis .NET Framework yang dibuat oleh Microsoft Corporation. Bahasa J# sendiri tidaklah sama dengan Java, tetapi memang bahasa tersebut menggunakan sintaksis dan semantik bahasa Java. Bahasa ini menggantikan bahasa J++, yang juga sama-sama menggunakan bahasa Java. Para programmer Java dapat secara langsung melakukan kompilasi ulang terhadap kelas-kelas Java buatannya (yang masih berjalan di atas Java Virtual Machine) agar dapat berjalan di atas Microsoft .NET Common Language Runtime (CLR), sehingga mereka dapat menggunakan teknologi baru tanpa harus meninggalkan bahasa pemrograman favorit mereka. Bahasa J# ini dikembangkan di Microsoft India Development Center, yang terletak di HITEC City, India.

JMF

JMF (Java Media Framework) adalah API (Aplication Programming Interface) untuk menyatukan data media seperti audio dan video ke dalam aplikasi Java atau Applet dengan memanfaatkan fitur-fitur Java, sehingga memungkinkan pengembang melakukan pengolahan terhadap stream data media yang dikustomisasi, seperi penyimpanan, penangkapan (capture) dan kontrol data media selama dijalankan . Sebagai contoh adalah aplikasi menjalankan (playback) file Mp3 dan Vob (video)

[ M ]

MIDlet

MIDlet adalah bagian dari paket javax.microedition.midlet. salah satu teknologi yang dibuat menggunakan Java 2 Micro Edition yan didesain khusus untuk perangkat wireless, misalnya handphone. Pemrogramannya sama persis dengan Java yang lain, hanya karena spesifikasi hardware yang terbatas, otomatis juga membatasi kemampuan program.Sebuah MIDlet tidak memiliki (dan harus tidak memiliki) method main

Method

Method adalah implementasi dari operasi suatu kelas. Method dibagi mejadi dua kategori yaitu : 1. Instance Method : Adalah fungsi yg beroperasi pada objek untuk memanipulasi state objek lewat pesan yg diterima dari obek lain. 2. Class/Static Method : yaitu Fungsi yg beroperasi pada kelas saja, tidak beroperasi pada suatu objek di luar kelas

MMAPI

MMAPI adalah singkatan dari Mobile Media API. MMAPI merupakan salah satu optional packages MIDP yang digunakan untuk memfasilitasi pembuatan nada, memainkan serta merekam audio dan video pada device yang cocok.proses Memainkan atau merekam sebuah media ditangani oleh dua object : DataSource dan Player.

[ P ]

Package

Package adalah mekanisme untuk pengelompokan kelas kelas ke dalam sebuah modul pada Java. Fasilitas Pakage merupakan mekanisme penamaan dan kendali atas ketampakan data dan metoda package didefinisikan dengan menambahkan baris: - package pada awal file. Jika sebuah kelas tidak mempunyai package maka akan masuk ke package default

[ S ]

Servlet

Servlet adalah sebuah class dalam bahasa pemgrograman Java yang digunakan untuk meningkatkan kapabilitas dari server sebagai host dari aplikasi yang diakses melalui request-response programming model

Sun Solaris

Sun Solaris adalah sebuah sistem operasi keluarga Unix yang dikembangkan oleh Sun Microsystems Inc. OpenSolaris adalah Sun Solaris yang di open-source kan di bawah lisensi CDDL (Common Development and Distribution License). Sun Solaris bisa berjalan di atas prosesor x86,x64 dan SPARC.

Standard Widget Toolkit

Standard Widget Toolkit (SWT) adalah sebuah alat kerja (toolkit) untuk membuat elemen (widget) graphical user interface (GUI) di dalam bahasa pemrograman Java. SWT merupakan alternatif GUI library di samping Abstract Windowing Toolkit (AWT) dan Swing.

Swing

Swing pengembangan lebih lanjut dari AWT untuk mengembangkan aplikasi berbasis GUI. Class-class dari AWT mempunyai padanannya dalam Swing, seperti

java.awt.Frame dengan javax.swing.JFrame,
java.awt.Button dengan javax.swing.JButton dan
java.awt.TextField dengan javax.swing.JTextField

[ T ]

Threads

Threads adalah sebuah class di java yang memiliki keunggulan untuk mengatur JVM menggunakan prioritas preemptive.Threads di Java dibagi menjadi 4 keadaan, yaitu : 1. New, dimana sebuah thread pada keadaan ini ada ketika objek dari thread dibuat. 2. Runnable, Memanggil start() method untuk mengalokasikan memori bagi thread baru dalam JVM dan memanggil run() method untuk membuat objek. 3. Block, Contohnya: sleep() atau suspend(). 4.Dead, sebuah thread dipindahkan ke keadaan dead ketika run() method berhenti atau ketika stop() method dipanggil.

Tomcat,Apache

Tomcat, atau lengkapnya Apache Jakarta Tomcat adalah Servlet/JSP container yang dibuat oleh Apache Software Foundation (ASF). Saat ini Tomcat menjadi reference implementation dari spesifikasi Servlet/JSP (Java Server Pages) dari Sun Microsystem. Versi terakhir dari Tomcat adalah 5.5.9-alpha-3, dengan versi yang dianggap stabil 5.5.7. Saat ini Tomcat bahkan telah dapat dijalankan sebagai service pada sistem operasi berbasis Windows. Tomcat versi 5.5.x adalah implementasi dari spesifikasi Servlet versi 2.4, dan spesifikasi JSP versi 2.0. Situs web resmi dari Tomcat adalah: http://jakarta.apache.org/tomcat/index.html Tomcat adalah Servlet/JSP container, dibangun dalam bahasa pemrograman Java dan dijalankan di atas Java Virtual Machine (JVM). Untuk terhubung ke sebuah web server diperlukan komponen yang disebut sebagai 'connector'. Tomcat dapat berjalan sendiri (standalone) tanpa webserver lain dengan menggunakan connector Coyote. Apabila dihubungkan dengan Apache HTTP Server, diperlukan connector JK2.

FreePascal


FreePascal
Another Free Open Source Pascal Compiler

Halo, ketemu lagi dengan Simba. Kali ini kita akan membahas topik tentang pemrograman.

Temen2 yang pernah atau sedang belajar pemrograman pasti kenal dengan (Borland) Turbo Pascal yang sangat handal sebagai kompiler berbasis bahasa object-Pascal, apalagi yang versi 7. Tapi rekan2 juga pasti tau, kompiler tsb tidaklah free, apalagi open-source, dan adanya hanya buat DOS dan M$ Windows.

Nah, aku pengen memperkenalkan sebuah kompiler yang sama2 berbasis object-Pascal, tapi yang ini (abosolutely) free, open-source, multiplatform support, dan lebih handal daripada Turbo Pascal. Namanya FreePascal.


Lalu, apa aja sih kehandalannya jika dibandingkan dengan Turbo Pascal (7)? Ada banyak sekali kelebihannya, antara lain:

- 32 bit compiler
FreePascal telah menggunakan teknologi 32 bit dalam proses kompilasi dan file executable yang dihasilkannya.

- Multiplatform support
FreePascal tidak hanya untuk M$ Windows, tapi juga tersedia di Linux, FreeBSD, OS2, BeOS, Solaris, dan beberapa sistem operasi lainnya. Dengan demikian, developer cukup "write once, compile and run everywhere". Sama dengan konsep yang digotong ama Kylix.

- Fitur yang lebih banyak
Jika dibandingkan dengan Turbo Pascal, fitur2 yang dimiliki FreePascal jauh lebih banyak. Mulai dari akses ke sistem operasi, networking (TCP/IP), advanced text, graphical interface, hingga database. Mau bikin aplikasi client/server yang terkoneksi dengan mySQL di Linux? Gampang. :)

- Dukungan yang lebih luas
FreePascal pada dasarnya hanyalah kompiler Pascal 32 bit. Tapi karena sifatnya yang open-source, banyak dukungan yang diberikan dari komunitas open-source. Mulai dari class/package, komponen, hingga editor.

- Arsitektur FCL (FreePascal Component Library)
FreePascal adalah compiler Pascal yang bersifat OOP (Object Oriented Programming). Dalam FreePascal hal ini diwujudkan dalam arsitektur FCL. Konsep teknologi ini mengadopsi teknologi VCL (Visual Component Library) dari Delphi, tapi telah dimodifikasi sedemikian rupa khusus untuk FreePascal.

Selain lima keunggulan di atas, aku pengen menambahkan satu lagi kelebihannya. Yaitu kompabilitasnya dengan kompiler2 Pascal lainnya. Dengan Turbo Pascal, kompabilitasnya 99%. Ketidak-kompabilitasnya terletak pada konstanta2 standar yang ada di Turbo Pascal. Hal ini disebabkan FreePascal sifatnya multiplatform support sehingga beberapa konstanta harus disesuaikan kembali.

So, tidak ada alasan lagi untuk mempertahankan penggunaan Turbo Pascal, apalagi yang bajakan. :) Kalo masih ada dosen yang menyuruh pake Turbo Pascal, sebaiknya rekan2 menganjurkan untuk menggunakan FreePascal.

Lebih detil informasinya, kunjungi: www.freepascal.org.
Semoga bermanfaat.

Sabtu, 06 Oktober 2007

Seni dan Digital

Dunia harus melalui masa waktu kurang lebih satu dekade untuk bisa memahami dentuman masif komputer grafis yang dicetuskan oleh Ivan Sutherland pada 1963 di Massachusetts Institute of Technology (MIT), Amerika Serikat. Lewat tesis doktoralnya ia memproklamirkan penemuannya yang disebut Sketchpad, sebuah sistem komputer yang difungsikan untuk mengambar garis secara langsung dengan layar komputer melalui pena cahaya. Pada masa itu ketika tetikus (mouse) belum ditemukan, untuk berinteraksi dengan komputer dalam menjalankan perintah-perintah, manusia menggunakan pena yang digerakkan-gerakkan di layar komputer. Dan itu dimaksudkan untuk menciptakan interaksi yang direpresentasikan secara grafis.

Fokus Sutherland pada masa itu adalah bagaimana mendayakan kemampuan komputer sedemikian rupa, sehingga pada tataran konsep bisa menghasilkan kemiripan visual. Seperti misalnya bagaimana foto realistik bisa dibuat menjadi citra komputer. Sutherland memutar otak bagaimana komputer bisa mengolah rangkaian-rangkaian bit yang menghasilkan citra grafis komputer, bisa meniru dunia nyata sebagaimana adanya. Ia pun berkutat pada persoalan-persoalan efek bayangan (shadow), pantulan (reflection), pembiasan (refraction) dan permukaan-permukaan tertutup.

Pada masa itu untuk menghasilkan antarmuka (interface) grafis pada layar komputer, Sutherland masih menggunakan konsep garis (vektor) yang tampilannya masih sederhana (kasar). Namun, penemuan itulah yang menjadi cikal bakal teknologi komputer grafis saat ini yang sangat masif digunakan dalam berbagai aplikasi. Kekurangan itu jugalah yang memberikan ilham bagi banyak orang bahwa penggunaan konsep rangkaian titik-titik (pixel) dalam komputer grafis justru lebih baik dibandingkan dengan menggunakan konsep garis.

Nicholas Negroponte dalam bukunya yang tersohor, Being Digital (1998) bahwa Sketchpad memperkenalkan beberapa konsep baru, di antaranya grafik dinamik, simulasi visual, resolusi kendala, pen tracking, dan sistem koordinat yang tak terbatas.

Kemampuan komputer grafis kini pun semakin tidak terbendung. Konvergensi antara teknologi komputer, telekomunikasi, elektronika, media massa, dengan budaya dan seni (baca: film dan dunia hiburan) membuat komputer grafis “haram” hukumnya jika dipandang sebelah mata.

Anda boleh menilai interpretasi ini sangat ekstrem. Tetapi melihat kondisi kontemporer, kemampuan komputer grafis masif digunakan dalam berbagai bidang. Misalnya dalam bidang percetakan (desain grafis), penyiaran televisi, CD ROM interaktif (multimedia), dalam pembuatan rancang-bangun gedung (arsitektur). Kemudian bidang bisnis, di mana pengusaha merasa perlu memberi sentuhan desain grafis untuk situs perusahaannya. Juga pada bidang yang sama memberikan kesan ruang tiga dimensi dalam situsnya, sehingga calon konsumen merasa sedang membeli di dalam sebuah toko.

Di bidang hiburan, semacam film dan permainan tiga dimensi (3D), kemampuan komputer grafis dikerahkan agar terlihat realistik. Bidang lainnya adalah ilmu pengetahuan. Kini dengan kemampuan komputer grafis 3D, “Anda bisa membuat Anatomi tubuh 3D yang dapat diputar-diputar, membuat struktur molekul, tata surya planet-planet dan sebagainya.” (Adi Kurniadi, 1999:9). Dan terakhir adalah bidang seni, dengan menggunakan perangkat lunak komputer grafis tertentu, semisal Adobe Photoshop, Anda bisa membuat hasil karya lukis (termasuk memanipulasi foto). Dan perangkat lunak 3D Studio Max menghasilkan karya seni realistik secara 3D.

Tetapi bidang yang paling menonjol dan populer adalah dalam bidang penyiaran televisi, desain grafis media cetak, pembuatan fim dengan efek visual khusus, serta film animasi 3D. Suksesnya film animasi 3D The Toys Story, Finding Nemo, Shark Tale, permainan video Tomb Raider barangkali bisa dijadikan sebagai salah satu parameter kemampuan komputer grafis itu.

Di saat produk budaya itu dikonsumsi oleh pasar, saat itu juga orang-orang muda mulai bermimpi bisa membuat sendiri film animasi seperti itu, berdasarkan gagasannya sendiri. Tentu ini didahului oleh kekaguman (yang tiada henti) mereka pada kemampuan komputer yang bisa “menghidupkan” benda mati (proses animasi) yang memiliki lebar, tinggi, kedalaman, efek cahaya, dan bayangan dan gerakan ke layar penampil. Proses animasi pada citra grafis 3D disebut juga proses penciptaan dimensi ke-4.

Kini kita tinggal di dunia komputer grafis, dunia yang mensimulasikan tata surya; matahari, planet, bintang-bintang; efek panorama sunset, tebing-tebing curam, pegunungan, ombak laut, meniru wajah tokoh terkenal, membuat replika planet Mars dan lain sebagainya. Jadilah sekarang perangkat lunak grafis semacam 3D Studio Max, Photoshop, Corel PhotoPaint, Corel Bryce, Maya, Rhino, Poser dan Lightscape menjadi senjata handalan yang “sakti mandraguna”. Konsumsinya dalam bentuk CD perangkat lunak dan buku-buku menjadi indikator penting. Belum lagi banyak sekali ulasan kemampuannya bermunculan di majalah dan tabloid teknologi informasi, berikut hasil karya, serta tip dan triknya. Ini juga menjadi penanda penting tumbuhnya apresiasi masyarakat terhadap komputer grafis, seni digital dan keinginan untuk berkomunikasi secara visual.

Kemampuan komputer yang bisa merepresentasikan dunia nyata manusia sama seperti aslinya, memberikan kesempatan pada kita menciptakan dunia kita sendiri yang kita anggap memang nyata adanya. Sungguh, ini adalah momen di mana manusia bisa mewujudkan mimpi-mimpi dan imajinasinya yang terdalam secara nyata.

Sedikit menyentuh pada istilah yang dipopulerkan oleh Jean Paul Baudrillard mengenai hiperrealitas, kemampuan komputer grafis sebagai simulator dapat dijelaskan dengan konsep ini. Hiperrealitas adalah konsep untuk menjelaskan fenomena sosial di mana manusia menganggap segala sesuatu yang dialaminya adalah sebuah kebenaran absolut. Padahal hal itu sebenarnya adalah kebenaran semu (bukan objek) yang dibuat melalui simulasi simbol-simbol, kode-kode yang dicitrakan sedemikian dari sebuah objek yang benar. Ini senada dengan pernyataan Kenneth E. Boulding (2003) dalam William L. Rivers dan Jay W. Jensen: Kompleksitas imajinasia manusia itu terbatas. Jika kompleksitasnya terlalu tinggi, maka yang muncul adalah citra-citra simbolik.

Jadi, ketika kita menonton film Hollywood mengenai bencana alam tornado, kita merasa kejadian itu benar-benar ada, lebih “tornado” daripada “tornado” yang sebenarnya! Inilah salah satu contoh adalah efek media massa seperti film dengan efek visual khusus berbantuankan komputer grafis yang mensimulasikan alam yang nyata, hingga kita sangat sulit membedakan mana yang nyata dan mana yang imajinasi. Sebab keduanya sudah menyatu dalam materi solid yang kita sebut sebagai gagasan seni, hiburan, media ekspresi, dan bisnis. Inilah hiperrealitas itu!

Sama halnya lagi ketika kita menonton adegan awak kapal laut yang panik ketika menemui badai di tengah laut. Sebagian dari kita pasti sangat percaya kalau itu memang benar-benar terjadi di tengah laut (di dunia nyata). Tetapi, sesungguhnya film itu dibangun dari banyak kombinasi, seperti seni peran aktor dan aktris (“seni berpura-pura menjadi orang lain”); trik kamera; efek visual berbantuankan komputer untuk membuat ombak, kabut; dan efek suara (sound effects).

Maka di sisi yang satu ini efek visual dengan bantuan komputer grafis, sesungguhnya memainkan peran mensimulasikan sebuah peristiwa yang sesungguhnya tidak terjadi. Bahkan ada ada pengamat yang mengatakan bahwa efek visual yang ditambahkan dalam sebuah film, sesungguhnya seorang pemeran (aktor/aktris yang handal).

Ini juga sekaligus memberikan gambaran bagi kita bahwa efek lain yang terbentuk dari kemajuan komputer grafis adalah perannya menciptakan media baru bagi seni (khususnya seni visual). Ini juga sekaligus menggeser batas-batas atas definisi seni itu sendiri. Inilah yang pernyataan Pfaffenberger dalam bukunya Computer in Your Future (2002): Computers assist artists in many ways for example, by making the tasks of creating art more convinient. But computers area also pishing the boundaries of art, forcing us to question just what art really is (halaman 271). The fine arts—including painting, drawing, illustration, and sculpture—are changing as artists increasingly see the computer as an artistic medium (halaman 277).

Dan seni pun kini mendapatkan momen revolusi-nya di mana dengan perpaduan konsep digital, seni menjadi lebih demokratis dan personal. The turn of the new century was a heady and revolutionary period in the development of Art that saw, through the introduction of digital tools, a great democratization in art making and began a period of time where in the cracks in the dam of the traditional Fine Arts world began to show

(JD Jarvis, 2001/www.moca.virtual.museum).

Kini dengan penggunaan perangkat lunak komputer grafis, hasil-hasil keluaran (output) yang diciptakannya juga disebut sebagai seni digital (digital art). Walaupun status genre seni ini masih terus diperdebatkan banyak pakar dan kritikus, rasanya sangat sulit menolak kalau citra grafis yang dihasilkan komputer grafis sangatlah indah dan imajinatif. Termasuk mengenai perdebatan apakah kamera digital merupakan praktik seni fotografi dan atau photo-manipulation (manipulasi foto) dan photo-collage (kolase foto) adalah produk seni.

Ke depan, laju percepatan teknologi komputer grafis sangat didukung oleh semakin canggihnya perangkat keras pengolah grafis dan perangkat lunak grafis 3D. Ini sekaligus akan menjadi penanada semakin diterimanya komputer grafis sebagai perkakas para seniman di seluruh dunia.