Showing posts with label komputer. Show all posts
Showing posts with label komputer. Show all posts

Wednesday, April 19, 2017

Kecerdasan buatan - Artificial Intelligence

hayy sobat oklek, dimanapun anda berada, gimana kabar nya ?? selamat pagi,siang,sore ataupun malam ya hehehe,, kali ini kita akan membahas tentang AI atau kecerdasan buatan




Definisi kecerdasan buatan menurut para pakar :





Definisi kecerdasan buatan menurut Encyclopedia Britannica



Bagian utama yang dibutuhkan untuk aplikasi kecerdasan buatan
       1) Bebasis Pengetahuan (Knoledge Base)
Berisi fakta-fakta, teori, pemikiran, dan hubungan antara satu dengan lainnya.


2) Motor Inferensi (Inference Engine)
Kemampuan menarik kesimpulan berdasarkan pengetahuan.



#SEJARAH KECERDASAN BUATAN

•Kecerdasan buatan dimunculkan oleh John McCarthy tahun 1956 pada Dartmouth Conference.
•Pada konferensi tersebut didefinisikan tujuan utama dari AI yaitu untuk mengetahui dan memodelkan proses-proses berfikir manusia dan mendesain mesin agar dapat menirukan kelakukan manusia.
•Tahun 1950 –an Alan Turing, seorang pionir AI dan ahli matematika Inggris melakukan percobaan Turing (Turing Test) yaitu sebuah komputer melalui terminalnya  Test) yaitu sebuah komputer melalui terminalnya ditempatkan pada jarak jauh.
Turing beranggapan bahwa jika mesin dapat membuat seseorang percaya bahwa dirinya mampu berkomunikasi dengan orang lain, maka dapat dikatakan bahwa mesin tersebut cerdas (seperti layaknya manusia)


LINGKUP KECERDASAN BUATAN
Kecerdasan buatan tidak hanya terdapat pada bidang informatika tetapi sudah merambah ke berbagai disiplin yang lain.
                Psikologi : cognition dan psycolinguistics
                Teknik elektro : pc, teori kendali, pengenalan pola, robotika
                Manajemen : spk, si manajemen
                         Expert System
          Natural Language Processing
          Speech Recognition
          Robotics and Sensory Systems
          Computer Vision
          Intelligent Computer-aided Instruction
          Game Playing

SOFT COMPUTING
                Koleksi dari beberapa metodologi yang bertujuan untuk mengeksploitasi adanya toleransi terhadap ketidaktepatan, ketidakpastian, dan kebenaran parsial untuk dapat diselesaikan dengan mudah, robustness, dan biaya penyelesaiannya murah.
 Unsur-Unsur Pokok dalam Soft Computing
          Sistem Fuzzy
          Jaringan Syaraf
          Probabilistic Reasoning
          Evolusionary Computing 


Read More

Tuesday, April 11, 2017

Sistem operasi

Apa itu Sistem operasi ??
Sistem operasi adalah perangkat lunak yang bertindak sebagai perantara antara pemakai komputer dan perangkat keras.



Sasaran os :
l  Menjalankan program-program dari user dan membantu user dalam menggunakan komputer
l  Menyediakan sarana sehingga pemakaian komputer menjadi mudah (convenient)
l  Memanfaatkan perangkat keras komputer yang terbatas secara efisien (resource manager)


Komponen Sistem Komputer
1.            Hardware – menyediakan “basic computing resources” (CPU, memory, I/O devices).
2.            Operating system – mengendalikan/mengkoordinasikan penggunaan hardware diantara berbagai aplikasi/program dari user.
3.            Applications programs – menggunakan sistem resource yang digunakan untuk menyelesaikan masalah komputasi dari user (compilers, database systems, video games, business programs).
4.            Users (people, machines, other computers).


Abstraksi Komponen Sistem



Sistem Operasi
l  Resource allocator
l  mengatur resource
l  mengalokasikan dan mengontrol pemakaian resources dari berbagai program/aplikasi.
l  Control program
l  Mengendalikan eksekusi user program dan pemakaian sistem resource (contoh : operasi pada I/O device) => handal, reliable, terlindung.
l  Kernel
l  Sistem program yang berjalan (“ada) terus menerus selama komputer aktif`.
l  Kontras dengan aplikasi yang di “load”, eksekusi dan terminasi .


Evolusi Sistem Operasi
l  OS sederhana
l  Program tunggal, satu user, satu mesin komputer (CPU) : komputer generasi pertama, awal mesin PCs, controller: lift, Playstation etc.
l  No problems, no bad people, no bad programs => interaksi sederhana
l  Problem: terbatas pemakaiannya;


Gen 1-Simple Batch System
l  Memakai seorang operator
l  User ≠ operator
l  Menambahkan card reader
l  Mengurangi waktu setup: batch jobs yang mirip/sama
l  Automatic job sequencing – secara otomatis kontrol akan di transfer dari satu job ke job yang lain.
l  Bentuk OS primitif
l  Resident monitor
l  Fungsi monitor: awal (initial) melakukan kontrol
l  Transfer control ke job (pertama)
l  Setelah job selesai, control kembali ke monitor
l  Control cards: mengatur batch jobs

Gen 2-Multiprogrammed Batch Systems
Beberapa jobs disimpan di memori pada saat bersamaan, dan CPU
melakukan multiplexing ke jobs-jobs tersebut



Gen 3-Multiprogramming
l  I/O rutin dikendalikan dan diatur oleh sistim
l  Memory management – sistim harus mengalokasikan memori untuk beberapa jobssekaligus
l  CPU scheduling – sistim harus memilih jobs mana yang telah siap akan dijalankan
l  Alokasi dari I/O devices untuk jobs dan proteksi bagi I/O devices tersebut
Sistim menjadi => complex
l  Bagaimana kalau program “loops terus menerus”,going mad etc. => proteksi



Time-Sharing Systems –Interactive Computing
l  CPU melakukan multiplex pada beberapa jobs yang berada di memory (dan disk)
l  CPU hanya dialokasikan kepada jobs yang telah siap dan berada di memori
l  Besar memori masih sangat terbatas:
l  Pada job dilakukan swapped in dan out dari memory ke disk.
l  Komunikasi on-line (interaktif) antara user dan sistim: jika OS telah selesai mengeksekusi satu perintah, menunggu perintah berikut bukan dari “card reader”, tapi dari terminal user
l  On-line system harus tersedia bagi user yang akan mengakses data dan kode


Desktop Systems
l  Personal computers – sistim komputer yang dirancang khusus untuk single user
l  I/O devices – keyboards, mice, display screens, small printers.
l  User mendapatkan kemudahan dalam penyesuaian.
l  Fungsi dasar mirip (adopsi) dari OS pada sistim yang besar
l  Sederhana: tidak terlalu fokus pada utilisasi CPU dan proteksi
l  Contoh: MS-DOS untuk PC banyak mengambil features dari UNIX, minus proteksi dan CPU scheduler yang rumit.

Parallel Systems
l  Sistim multiprosesor: lebih dari satu CPU yang terhubung secara dekat satu sama lain
l  Symmetric multiprocessing (SMP)
l  Setiap prosesor menjalankan “identical copy” dari OS
l  Banyak proses dapat berjalan serentak murni dengan menggunakan resources pada masing-masing CPU
l  Banyak  modern operating systems mendukung SMP


Parallel Systems (Cont.)
l  Asymmetric multiprocessing
l  Setiap prosesor telah ditentukan untuk menjalankan task tertentu
l  Master processor mengontrol, menjadwalkan dan mengalokasikan task ke slave processors
l  Banyak digunakan oleh sistemyang besar (main-frame)


Real-Time Systems
l  Digunakan sebagai control device untuk aplikasi khusus (misalkan medical imaging systems, industrial control process dll).
l  Kemampuan untuk beroperasi, response dalam batasan “waktu tertentu” => OS harus sederhana, cepat, dan dapat memenuhi jadwal task (scheduling dll).



Read More

Thursday, April 6, 2017

Prolog

Sejarah aplikasi kecerdasan buatan -Prolog
Prolog
       prolog merupakan bahasa pemograman non-procedural atau bisa juga disebut sebagai bahasa pemograman logika, nama prolog sendiri diambil dari bahasa prancis Programmation en logique.


A. Sejarah PrologProlog singkatan dari Programming in Logic.Dikembangkan oleh Alain Colmenraurer dan P.Roussel di Universitas Marseilles
Perancis, tahun1972.
Prolog populer di Eropa untuk aplikasi artificial intelligence, sedangkan di Amerika
peneliti mengembangkan aplikasi yang sama, yaitu LISP.



B. Perbedaan Prolog dengan Bahasa LainnyaBahasa Pemrograman yang Umum (Basic, Pascal, C, Fortran):
1. Diperlukan algoritma/prosedur untuk memecahkan masalah (procedural languange)
2. program menjalankan prosedur yang sama berulang-ulang dengan data masukan yang
berbeda-beda.
3. Prosedur dan pengendalian program ditentukan oleh programmer dan perhitungan
dilakukan sesuai dengan prosedur yang telah dibuat.
Bahasa Pemrograman Prolog :
1.
Object oriented languange atau declarative languange.
2. Tidak terdapat prosedur, tetapi hanya kumpulan data-data objek (fakta) yang akan diolah,
dan relasi antar objek tersebut membentuk aturan yang diperlukan untuk mencari suatu
jawaban
 .
3. Programmer menentukan tujuan (goal), dan komputer menentukan bagaimana cara
mencapai tujuan tersebut serta mencari jawabannya.
4. Dilakukan pembuktian terhadap cocok-tidaknya tujuan dengan data-data yang telah ada
dan relasinya.
5. Prolog ideal untuk memecahkan masalah yang tidak terstruktur, dan prosedur pemecahannya
tidak diketahui, khususnya untuk memecahkan masalah non numerik.
6. Prolog bekerja seperti pikiran manusia, proses pemecahan masalah bergerak di dalam ruang
masalah menuju suatu tujuan (jawaban tertentu). Contoh : Pembuatan program catur
denganProlog.
Dalam buku petunjuk praktikum ini digunakan program Turbo Prolog untuk melengkapi
pembahasan pemrograman logika dengan Prolog. Turbo prolog mirip dengan Turbo Pascal,
Turbo C, dan sejenisnya. Tampilannya terbagi menjadi empat jendela yaitu
editor, dialog,message, dan trace. Jendela editor sebagai tempat untuk menyunting program, sedangkan dialog
tempat menuliskan goal dan menampilkan hasil query. Pesan-pesan error, compiler, running, dan
lain-lain ditampilkan di dalam jendela message, sedangkan trace sebagai tempat untuk
menelusuri jalannya program. Secara umum, suatu program Prolog terdiri dari beberapa
kelompok, yaitu domains, predicates, clauses, goal. Masing-masing bagian akan diuraikan pada
bagian berikut.


C. DOMAINSDomain dalam Prolog seperti type dalam Pascal, yaitu untuk menyatakan jenis variable
atau argumen, misalnya:
domains
kota = symbol
alamat = string
list = symbol*
Ada lima domain baku di dalam Prolog, yaitu:
1.
char, karakter tunggal yang diapit oleh tanda kutip tunggal: „a‟, „b‟, „\13‟.
2.
integer, bilangan bulat antara –32768 hingga 32767. Notasi $ digunakan untuk
menunjukkan bilangan heksa.
 
3. real, bilangan nyata antara 1x10 –307 hingga 1 x 10 308.
4.
string, deretan karakter yang diapit oleh tanda kutip dobel, misalnya “ipb”.
5.
symbol, rangkaian karakter yang diawali dengan huruf kecil da tanpa tanda apa pun.
Disamping itu terdapat domain lainnya yang tidak baku, di antaranya adalah:
1. domain
file, yang digunakan untuk memberi nama file secara simbolik seperti contoh
berikut:
file = <nama file simbolik 1> ; <nama file simbolik 2> ; …..
2. Domain list, digunakan untuk menyatakan list (linked list) dimana elemen pertama
mempunyai pointer ke elemen kedua dan seterusnya. Deklarasi list ini dapat dituliskan
dengan bentuk:
<nama list> = <domain>*
list_simbol = symbol*


D. Fakta dan RelasiProlog terdiri dari kumpulan data-data objek yang merupakan suatu fakta. Fakta dibedakan
2 macam :
o Menunjukkan relasi.
o Menunjukkan milik/sifat.
- Penulisannya diakhiri dengan tanda titik “.”
- Contoh :
 


D. Aturan 
Aturan adalah suatu pernyataan yang menunjukkan bagaimana fakta-fakta berinteraksi satu
dengan yang lain untuk membentuk suatu kesimpulan. Sebuah aturan dinyakatakan sebagai suatu
kalimat bersyarat. Kata “if” adalah kata yang dikenal Prolog untuk menyatakan kalimat bersyarat
atau disimbolkan dengan “:-“.
Contoh :


Setiap aturan terdiri dari kesimpulan(kepala) dan tubuh. Tubuh dapat terdiri dari 1 atau lebih
pernyataan atau aturan yang lain, Disebut subgoal dan dihubungkan dengan logika “and”. Aturan
memiliki sifat then/if conditional “Kepala(head) benar jika tubuh (body) benar”.
Contoh : Silsilah keluarga :
 

 E. Pertanyaan (“Query”)
Setelah memberikan data-data berupa fakta dan aturan, selanjutnya kita dapat mengajukan
pertanyaan berdasarkan fakta dan aturan yang ada. Penulisannya diawali simbol “?-“ dan diakhiri
tanda “.”.

F. Predikat (“Predicate”) 
Predikat adalah nama simbolik untuk relasi. Contoh : ayah(slamet,amin). Predikat dari
fakta tersebut ditulis : ayah(simbol,simbol). Dimana ayah adalah nama predikat, sedangkan
slamet dan amin adalah menujukkan argumen.
Sebuah predikat dapat tidak memiliki atau memiliki argumen dengan jumlah bebas.
Jumlah argumen suatu predikat disebut aritas (arity). ayah(nama) …… aritas-nya 1
ayah(nama1,nama2) ….. aritasnya 2. Syarat-syarat penulisan nama predikat :
Harus diawali dengan huruf kecil dan dapat diikuti dengan huruf, bilangan atau garis
bawah.
Panjang nama predikat maksimum 250 karakter.Tidak diperbolehkan menggunakan spasi, tanda minus, tanda bintang dan garis miring.

G. VariabelVaribel adalah besaran yang nilainya dapat berubah-ubah. Tata cara penulisan variabel :Nama varibel harus diawali huruf besar atau garis bawah(_)Nama variabel dapat terdiri dari huruf, bilangan, atau simbol dan merupakan kesatuan
dengan panjang maksimum 250 karakter.
Nama variabel hendaknya mengandung makna yang berkaitan dengan data yang
dinyatakannya.
Contoh : dari silsilah di atas :
?-ayah(slamet,Anak).
Anak=budi;
Anak=badu
No
Dari query di atas akan dicari siapakah anak dari ayah yang bernama Slamet. Karena
mempunyai relasi yang sama (yaitu ayah), variabel Anak akan mencari nilai dari konstanta
suatu fakta/aturan yang sepadan. Tanda “;” digunakan bila terdapat kemungkinan ada lebih
dari satu jawaban. “No” berarti tidak ada lagi kemungkinan jawaban.
Contoh : dari silsilah di atas :
?-ayah(slamet,X),ayah(X,Y).
X=amin
Y=budi;
X=amin
 
Y=badu;
X=anang
Y=didi;
X=anang
Y=didi
No


  
 

Read More