Posted in July 12, 2009 ¬ 10:08 amh.cuplis
Logic merupakan jantung dari program, para pemrogram mempunyai keyakinan jika sebuah komputer dapat dibuat mengerti logika, maka komputer dapat dibuat untuk berpikir, karena logika kelihatannya menjadi inti dari kecerdasan.
Sejarah Singkat Logika
Syllogistic atau classical logic. Aristotle( 384-322 BC)
Syllogistic logic pada dasarnya bertransaksi dengan penurunan kebenaran (atau yang bersifat salah) dari argumen seorang filosofi.
Contoh:
John is a man
All men used to the boys
Therefore, John used to be a boy
Contoh diatas dikonversikan ke Syllogistic logic:
J —> M
all M —> B
hence: J —> B
Symbolic logic dimulai dengan G.W. Leibniz(1646-1717) and George Boole(1815-1864) yang logikanya dikenal denganBoolean Logic.
Symbolic logic berinteraksi dengan konsep abstraksi ke dalam simbol-simbol dan interkoneksi simbol-simbol oleh operator tertentu.
Contoh:
if P is true, Q is false
Then P or Q is true, P and Q is false
JENIS Symbolic Logic ada 2 Yaitu:
Propotional Logic : bertransaksi dengan kebenaran atau kesalahan dari sebuah proposition.
Predicate Logic : memasukkan hubungan antara obyek-obyek dan kelas-kelas dari obyek.
“if it is raining then the road are wet”

The Truth Table
(more…)
Posted in July 11, 2009 ¬ 11:42 pmh.cuplis
Pengertian AI
Menurut Elaine Rich & Kevin Knight(1992), AI mempelajari bagaimana membuat komputer melakukan sesuatu pada suatu kejadian/peristiwa yang mana orang melakukannya dengan baik.
Definisi AI : merupakan proses di mana peralatan mekanik dapat melaksanakan kejadian-kejadian dengan menggunakan pemikiran atau kecerdasan seperti manusia.
Menurut Rusell & Norvig AI adalah :

What is AI?
Konsep AI :
- Logic AI
- Computer Vision
- Natural Language Processing (NLP)
- Expert System
- Robotic
- Machine Learning
- Neural Network
- Planning with AI
- AI Agent
Posted in May 30, 2009 ¬ 11:05 amh.cuplis

Contoh Linked List
hitung jumlah simpul :
Q = FIRST;
Jum = 1;
while (Q != LAST)
{ Q = Q->LINK;
Jum = Jum + 1;
}
printf("%i", JUM);
atau
Q = FIRST;
Jum = 1;
while (Q->LINK != NULL)
{ Q = Q->LINK;
Jum = Jum + 1;
}
printf("%i", JUM);
atau
Q = FIRST;
Jum = 0;
while (Q != NULL)
{ Jum = Jum + 1;
Q = Q->LINK;
}
printf("%i", JUM);
membuat sebuah simpul yang ditunjuk pointer p :
scanf ("%i", &x);
p = (simpul*)malloc(sizeof(simpul));
p->info = x;
(more…)
Posted in May 30, 2009 ¬ 10:23 amh.cuplis

Contoh Double Ended Queue
ciri2 double ended queue :
- kosong : L = R + 1
- penuh kanan : R = n – 1
- penuh kiri : L = 0
- penuh kanan dan kiri : R = n – 1 && L = 0
- bisa diisi dari kanan : R < n
- bisa diisi dari kiri : L > 0
- ada isinya : L < R + 1
kondisi awal :
algoritma dasar double ended queue :
- INSERT KANAN
- INSERT KIRI
- DELETE KANAN
- DELETE KIRI
(more…)
Posted in May 30, 2009 ¬ 9:43 amh.cuplis

Contoh Circular Queue
ciri2 circular queue :
- kosong : counter = 0
- penuh : counter = n
- bisa diisi : counter < n
- ada isinya : counter > 0
kondisi awal :
f = 0;
r = -1;
counter = 0;
algoritma dasar circular queue :
- INSERT
R = (R+1) % n;
Q[R] = X;
Counter++;
- DELETE
X = Q[F];
F =(F+1) % n;
Counter--;
(more…)
Posted in May 30, 2009 ¬ 9:00 amh.cuplis

Contoh Double Stack
ciri2 double stack :
- stack 1 kosong : top1 = -1
- stack 2 kosong : top2 = n
- stack penuh (stack 1 dan stack 2 tidak bisa diisi) : top2 – top1 = 1
- stack bisa diisi (stack 1 dan stack 2 tidak bisa diisi) : top2 – top1 > 1
- stack 1 ada isinya : top1 > -1
- stack 2 ada isinya : top2 < n
kondisi awal :
algoritma dasar double stack :
- PUSH stack 1
top1 = top1 + 1;
s[top1] = x;
- POP stack 1
x = s[top1];
top1 = top1 - 1;
- PUSH stack 2
top2 = top2 - 1;
s[top2] = x;
- POP stack 2
x = s[top2];
top2 = top2 + 1;
(more…)