Sunday, October 29, 2017

Tugas Grafik Komputer dan Pengolahan Citra: Membuat Garis Menggunakan Java dan OpenGL


Pada kesempatan kali ini penulis membuat sebuah tugas yang dimana tugasnya yaitu membuat sebuah program sederhana yang dapat menggambar garis horizontal, vertikal dan diagonal dengan berdasarkan input titik awal garis dan titik akhir garis dari pengguna, dimana program ini memanfaatkan library grafis OpenGL sebagai library untuk menampilkan outputnya di layar monitor. Bahasa pemrograman yang dipergunakan yaitu Java, dengan pembuatannya menggunakan program NetBeans versi 8.2. Adapun untuk library penghubung yang dipergunakan dalam menghubungkan Java dan OpenGL pada program ini yaitu LWJGL (LightWeight Java Game Library) versi 2.9.1.

Program ini dibuat dengan menggunakan empat file kelas Java, yaitu:
  1. Pr_Main.java - file kelas utama yang menampilkan menu utama program.
  2. Pr_Horizontal.java - file kelas yang berfungsi untuk menerima input dan menampilkan output garis horizontal (garis mendatar).
  3. Pr_Vertikal.java - file kelas yang berfungsi untuk menerima input dan menampilkan output garis vertikal (garis tegak lurus).
  4. Pr_Diagonal.java - file kelas yang berfungsi untuk menerima input dan menampilkan output garis diagonal (garis miring).
Seperti yang telah disebutkan di awal, program ini menggambar garis dengan berdasarkan titik awal dan titik akhir garis yang dimasukkan oleh pengguna. Maka dari sini dapat dikatakan bahwa program tersebut harus menggambar garis di layar dari suatu titik ke titik lain secara jelas dengan berdasarkan permintaan dari pengguna (dalam hal ini yaitu input titik awal dan titik akhir garis dari pengguna).

Di bawah ini adalah link untuk mengunduh program dan source code serta file dokumentasinya:
  1. Program + Source Code: klik di sini
  2. Dokumentasi + User Guide: klik di sini
Sekian dan terima kasih atas kunjungannya ke blog ini!

Saturday, October 21, 2017

PEAS: Sebuah Definisi

Kategori: Tulisan

Dalam tulisan kali ini akan dijelaskan tentang definisi dari pola PEAS yang dipergunakan dalam intelligent agent.

A. Definisi

PEAS merupakan sebuah pola pendeskripsian lingkungan kerja dari intelligent agent yang berfungsi untuk menjelaskan berbagai parameter yang tepat dalam mendefinisikan intelligent agent. Istilah ini merupakan kependekan dari Performance, Environment, Actuators dan Sensors, dimana keempat hal ini secara harafiah dijelaskan sebagai kumpulan parameter masalah yang diperlukan dalam proses pendefinisian dari suatu intelligent agent yang dapat menyelesaikan masalah-masalah tersebut.

Dalam praktiknya, PEAS dijadikan sebagai model utama dalam menentukan pendefinisian sebuah rational agent yang ideal. Hal ini dikarenakan apa yang dijabarkan dalam pola PEAS mencakup poin-poin penting dari sebuah masalah yang harus diselesaikan oleh agent tersebut secara rasional dan juga proporsional. Maka dari sini dapat dikatakan bahwa agent akan menyelesaikan semua permasalahan yang ditemui berdasarkan pada poin permasalahan yang ditentukan menggunakan parameter dari PEAS, sehingga masalah-masalah yang ditemui dapat diselesaikan secara baik.

Secara dasar, PEAS sendiri dapat dijelaskan menjadi seperti berikut:
  1. Performance: di sini kinerja agent menjadi tolok ukur penentu dari derajat kesuksesan sebuah proses penyelesaian masalah.
  2. Environment: menentukan lingkungan yang dijadikan sebagai sasaran dari proses penyelesaian masalah oleh sang agent.
  3. Actuators: perangkat yang digunakan agent untuk menyalurkan usahanya sangat menentukan seberapa besar usaha yang dibutuhkan dalam memecahkan masalah.
  4. Sensors: agent akan menentukan solusi yang dibutuhkan untuk memecahkan suatu masalah dengan berdasarkan apa yang ditangkap oleh sensor yang dimiliki agent tersebut.
Keempat poin di atas apabila dicontohkan pengaplikasiannya maka dapat seperti berikut ini (dengan contoh agent yaitu sistem diagnosa medis):
  1. Performance: kesembuhan pasien pasca pengobatan, biaya perawatan yang minim dan sengketa dalam proses pengobatan
  2. Environment: pasien, rumah sakit dan dokter
  3. Actuators: layar monitor untuk komunikasi
  4. Sensors: keyboard
Maka di sini dapat dikatakan bahwa penggunaan prinsip PEAS sebagai sebuah metode dalam mendefinisikan intelligent agent sangatlah berguna untuk menentukan ketepatan dan keefektifan kinerja dari agent secara baik.

B. Sumber

http://www4.ncsu.edu/~stamant/411/lectures/02-agents/peas.pdf
https://www.tutorialspoint.com/artificial_intelligence/artificial_intelligence_agents_and_environments.htm
http://www.cs.csi.cuny.edu/~imberman/ai/Intelligent%20Agents.pdf
https://web.northeastern.edu/magy/courses/AI/lectures/IA.pdf
http://maukar.staff.gunadarma.ac.id/Downloads/files/42871/Agent.pdf
Russell, Stuart J.; Norvig, Peter (2003), Artificial Intelligence: A Modern Approach (2nd ed.), Upper Saddle River, New Jersey: Prentice Hall, ISBN 0-13-790395-2, chpt. 2

Intelligent Agents: Definisi, Konsep dan Contoh

Kategori: Tulisan

Dalam tulisan kali ini akan dijelaskan tentang Intelligent Agents, mulai dari definisi, konsep dan contohnya dalam kehidupan sehari-hari.

A. Definisi

Secara umum Intelligent Agents dapat dipahami sebagai sebuah entitas berdiri sendiri yang bekerja dengan cara melakukan observasi terhadap lingkungan sekitar melalui sensor dan bertindak terhadap lingkungan melalui aktuator dalam mengarahkan aktivitasnya untuk mencapai tujuannya. Jika dilihat dari siapa yang menjadi agen, maka apa yang menjadi sensor dan aktuatornya dapat dijelaskan sebagai berikut:
  1. Manusia - sensor: mata, telinga dan organ panca indera lainnya, aktuator: tangan, kaki, mulut dan lainnya.
  2. Robot - sensor: kamera, alat penjejak inframerah, aktuator: motor penggerak yang ditanamkan ke dalam sistem.
  3. Perangkat lunak - sensor: input dari keyboard, pembacaan isi file dan penerimaan paket pada jaringan, aktuator: tampilan pada layar, penulisan file dan pengiriman paket pada jaringan.
Apabila dijelaskan dalam diagram, maka secara dasar pola dari intelligent agent menjadi seperti di gambar berikut ini:
Pola kerja dari intelligent agent terhadap lingkungan sekitarnya
Sehingga dapat dikatakan bahwa intelligent agent berfungsi sebagai agen yang memetakan persepsi yang diterima dari lingkungan untuk kemudian diproses menjadi tindakan yang akan diterapkan kepada lingkungan. Adapun fungsinya sendiri yaitu [f: P* -> A], dengan simbol P* menggambarkan persepsi, dan A menggambarkan sang agent itu sendiri. Ada beberapa tipe dari sebuah agent dalam praktik sehari-harinya, yaitu:
  1. Goal-based - mementingkan tujuan tanpa mensyaratkan cara-cara tertentu dalam menempuh jalan untuk mencapai tujuannya, sehingga satu tujuan dapat dicapai dengan cara yang berbeda.
  2. Utility-based - membutuhkan tujuan untuk mengetahui situasi mana yang diharapkan.
  3. Learning - agent akan mempelajari lingkungan terlebih dahulu sebelum kemudian melakukan tindakan untuk mencapai tujuannya.
  4. Simple reflex - dalam prosesnya agent akan melakukan tindakan berdasarkan persepsi yang diterima hanya berdasarkan apa yang dilihatnya.
  5. Model-based reflex - sebelum melakukan tindakan, agent terlebih dahulu melihat contoh dari tindakan yang seharusnya dilakukan terhadap lingkungan.
Sedangkan untuk jenis dari lingkungannya sendiri, terdapat beberapa jenis lingkungan dalam hubungan intelligence yang dimana jenisnya yaitu sebagai berikut:
  1. Fully observable
  2. Deterministic
  3. Episodic
  4. Static
  5. Discrete
  6. Single agent
B. Konsep

Dalam intelligent agent, terdapat konsep rasionalitas yang mencerminkan tentang bagaimana sebuah agent dapat bekerja secara benar dan ideal. Konsep rasionalitas ini menetapkan standar tentang pengukuran kemampuan dari agent dalam menyelesaikan masalah secara objektif dan rasional, yang dimana kedua poin ini adalah poin yang paling penting dalam menentukan kesempurnaan hasil pekerjaan dari agent tersebut. Pada konsep rasionalitas intelligent agent, yang dapat dianggap sebagai yang benar adalah agent yang paling sukses dalam menyelesaikan seluruh pekerjaannya, dengan 4 hal berikut menjadi penentu dari kesuksesan tersebut:
  1. Kemampuan yang terukur
  2. Pengetahuan tentang lingkungan yang didapat sebelumnya
  3. Tindakan yang dilakukan
  4. Urutan persepsi dalam penyelesaian pekerjaan
Adapun agent dapat melakukan tindakannya sesuai dengan yang diharapkan untuk memodifikasi persepsi yang akan datang dengan memanfaatkan informasi yang didapat dari tindakan yang telah dilakukan sebelumnya. Informasi-informasi yang bermanfaat tersebut menentukan seberapa besar pengalaman yang dimiliki oleh agent tersebut, sehingga ke depannya agent dapat bekerja secara otonom dengan mengandalkan pengalaman serta kemampuan untuk belajar dan beradaptasi dengan lingkungan yang senantiasa terus berubah dari waktu ke waktu.

C. Contoh

Ada beberapa contoh dari intelligent agent yang dapat ditemui di kehidupan sehari-hari, dengan beberapa di antaranya yaitu:
  • Sistem Diagnosa Medis
    • Performance measure: kesembuhan pasien, biaya perawatan yang minim dan sengketa
    • Environment: pasien, rumah sakit, dokter
    • Actuators: layar monitor
    • Sensors: keyboard
  • Robot Pabrik Penjamin Mutu
    • Performance measure: persentase jumlah komponen yang diletakkan secara benar
    • Environment: ban berjalan, komponen yang diuji, wadah tampungan
    • Actuators: gerak lengan dan tangan robot
    • Sensors: kamera, sensor fisik
Dari beberapa contoh di atas ada sebuah pola pendeskripsian lingkungan kerja dari intelligent agent yang dinamakan sebagai PEAS, yaitu Performance, Environment, Actuators dan Sensors. Definisi dari pola ini akan dijelaskan di entry berikutnya dari blog ini.

D. Sumber

http://maukar.staff.gunadarma.ac.id/Downloads/files/42871/Agent.pdf
Russell, Stuart J.; Norvig, Peter (2003), Artificial Intelligence: A Modern Approach (2nd ed.), Upper Saddle River, New Jersey: Prentice Hall, ISBN 0-13-790395-2, chpt. 2
http://artikel-teknologi-informasi.blogspot.co.id/2012/11/pengertian-agent-pada-ai-artificial.html
http://share.its.ac.id/pluginfile.php/1358/mod_resource/content/1/2._Agent_Cerdas.pdf
http://www.academia.edu/8327033/SWARM_INTELLIGENCE_INTELLIGENT_AGENT_Penerapan_Intelligent_Agent_Pada_E-Commerce