Senin, 03 Januari 2011

Algoritma Pencarian

Proses pencarian adalah menemukan nilai (data) tertentu di dalam sekumpulan data yang bertipe sama (balik bertipe dasar atau bertipe bentukan )

Contoh :
Untuk mengubah (Update) data tertentu,langkah pertama yang harus dilakukan adalah mencari keberadaan data tersebut di dalam sekumpulannya.jikadata yang dicari ditemukan ,maka data tersebut dapat diubah nilainya dengan data yang baru .aktivitas awal yang sama juga dilakukan pada proses peambahan (insert)data baru.proses penambahan data dimulai dengan mencari apakah data yang akan ditambahkan sudah terdapat dalm ssekumpulan .jika sudah ada dan mengasumsikan tidak boleh ada duplikasi  data maka data tersebut tidak perlu ditambahkan ,tetapi jika belum ada,maka ditambahkan.
Algortma yang paling sederhana yaitu algoritma pencarian beruntun (sequential search),dan algoritma yang sudah lebig maju yaitu pencarian bagidua (binary search)

SPESIFIKASI MASALAH PENCARIAN :

Hasil atau keluaran dari persoalan pencarian dapat bermacam-macam,bergantung pada spesifikasi rinci dari persoalan tersebut ,misalnya :
a.    Pencarian hanya untuk memeriksa keberadaan x.keluaran yang diinginkan misalnya pesan (message) bahwa x ditemukan atau tidak ditemukan di dalam larik .
Contoh :
write ( ‘ditemukan !’) atau
write (‘tidak ditemukan !’)

b.      Hasil pencarian adalah indeks elemen larik .jika x ditemukan maka indeks elemen larik tempat x berada diisikan ke dalam idx. Jika x tidak terdapat didalam larik L,maka idx diisi dengan harga khusus ,misalnya -1.
Contoh :
 L 
 21
36
8
7
10
36
68
32
12
10
 36


     1         2       3        4        5        6        7         8         9      10      11

misalnya x = 68 ,maka idx = 7 ,dan bila x = 100,maka idx = -1

c.      Hasil pencarian adalah sebuah nilai Boolean yang menyatakan status hasil pencarian .jika s ditemukan,maka sebuah peubah bertipe Boolean,misalnya “ketemu”,diisi dengan nilai true.sebaliknya “ketemu” diisi dengan nilai false .Hasil pencarian ini selanjutnya disimpulkan pada bagian pemanggilan prosedur .
Contoh :
Perhatikan larik L diatas !
Misalnya x = 68 ,maka ketemu = true ,dan bila x = 100,maka ketemu = false


ALGORITMA PENCARIAN BERUNTUN (SEQUENTIAL SEARCH)

Algoritma pencarian beruntun adalah proses membandingkan setiap elemen larik satu persatu secara beruntun ,mulai dari elemen pertama ,sampai elemen yang dicari ditemukan ,atau seluruh elemen sudah diperiksa.
 Contoh :
Data
3
2
1
7
5
Indeks
1
2
3
4
5
1) Mencari parameter
2) Mencari jumlah datanya
Jawab :
1)      A = array (1…………5) of integer
I,j,x : integer ;

Function sequential (z : integer , N : integer) : interger

Kamus data   
                        C : integer
                     Begin
                        C <-- 1 ;
                        While (A [c] ! = z) AND (C <=N)
                                    C <-- C+1 ;
                        End while
                        If (A [c] = z)
     return c ;
Else
     return -1 ;
End

2)      Algoritma
A <-- (3,2,1,7,5)
Input (x)
J ß sequential (X,5)
If ( J ! = -1)
Output (“data ditemukan di indeks “,d);
Else
Output (“data tak ditemukan ) ;
End



 
 
ALGORITMA PENCARIAN BAGIDUA (BINARY SEARCH)

Algoritma ini digunakan untuk kebutuhan pencarian denagn waktu yang cepat .
Prinsip pencarian dengan membagi dua atas dua bagian mengilhami algoritma pencarian bagidua .data yang disimpan didalam larik harus sudah terurut.
contoh :

Algoritma

I <-- 0 , J <-- N ,ketemu ß false
While (( ! ketemu ) AND (I <= J)
              K <-- (I + j) div 2
              If (L [k] = x)
                 Ketemu <-- True
             Else if (L [K]  <x)
                 I <-- k+1
             Else
                 J <-- k-1
             End if
End while

4
5
6
8
10
         
N=5
X = 8 (data yang dicari)

I=1
J=N
J=5
While (! Ketemu )and (I<=j)
                                  0<=5
K=1+5 div 2
   =3
If (L [3] = 8) (tidak memenuhi)
If (L [3] < 8)
     6      < 8
I = 3+1
  = 4
K= 4+5 div 2
  =4
If (L [4] = x)
         8  = 8
Ketemu <-- true







ALGORITMA PENCARIAN LAIN
*  Algoritma Pencarian interpolasi (interpolation search): melakukan pencarian lebih baik daripada pencarian biner pada larik berukuran besar dengan distribusi seimbang, tapi waktu pencariannya buruk.

*  Algoritma Pencarian Grover (Grover’s search): melakukan pencarian dalam waktu singkat, yang merupakan pengembangan dari pencarian linier biasapada larik dengan elemen tidak berurut

*  Algoritma pencarian string atau sering disebut juga pencocokan string adalah algoritma untuk melakukan pencarian semua kemunculan string pendek pattern[0..n − 1] yang disebut pattern di string yang lebih panjang teks[0..m − 1] yang disebut teks. [1]
Pencocokkan string merupakan permasalahan paling sederhana dari semua permasalahan string lainnya, dan dianggap sebagai bagian dari pemrosesan data, pengkompresian data, analisis leksikal, dan temu balik informasi. Teknik untuk menyelesaikan permasalahan pencocokkan string biasanya akan menghasilkan implikasi langsung ke aplikasi string lainnya.

*  Algoritma Pencarian Adversarial
Dalam permainan seperti [[catur]], terdapat sebuah [[pohon permainan]] dari semua kemungkinan gerak dari kedua pemain dan konfigurasi hasil dari papan catur, dan kita dapat mencari pada pohon tersebut untuk menemukan strategi permainan yang efektif. Tipe permasalahan ini memiliki karakteristik unik yang mengharuskan kita memperhatikan semua kemungkinan gerak dari lawan yang mungkin terjadi. Untuk melakukannya, program permainan komputer, atau bentuk lain dari [[kecerdasan buatan]] seperti [[perencanaan mesin]], biasanya menggunakan algoritma pencarian seperti [[algoritma minimaks]], [[pemangkasan pohon pencarian]] dan [[pemangkasan alpha-beta]].

*  Algoritma Pemenuhan Kendala
Ini adalah satu jenis pencarian yang memecahkan [[permasalahan pemenuhan kendala]] dimana, bukan dengan melihat sebuah jalur, solusinya adalah sebuah himpunan nilai yang diberikan pada sebuah himpunan peubah. Karena peubah-peubah dapat diproses dengan urutan apa saja, algoritma pencarian pohon biasa adalah tidak efisien. Metode pemecahan permasalahan kendala memuat [[pencarian kombinatorial]] dan [[lacak balik]], keduanya mengambil keuntungan dari kebebasan yang diasosiasikan dengan permasalahan kendala.

*  Algoritma Pencarian informed
     Terdapat beberapa algoritma pencarian list informed yang dikenali. Salah satu anggota dari algoritma tersebut adalah sebuah hash tabel dengan sebuah fungsi hashing, yaitu algoritma dengan heuristik yang berdasarkan pada permasalahan yang dihadapi. Sebagian besar algoritma informed adalah mengeksplore pohon. Termasuk di dalamnya adalah pencarian Breadth-first, dan A*. Sebagaimana algoritma uninformed, algoritma informed dapat dikembangkan untuk bekerja pada graf.



Rabu, 15 Desember 2010

Cara membuat jaringan dengan menggunakan LAN


Cara membuat jaringan (Lan) untuk menghubungkan 2 komputer. Beriikut langkah-langkahnya:
  1. Colokkan kabel UTP yang sudah dikonfigurasi dengan kabel cross ke port LAN card komputer pertama kita.
  2. Jika kita menggunakan Windows XP,buka Control Panel »» Network and Internet Connections »» Network Connections.
  3. Jika Menngunakan Windows 7 atau Vista, buka Control Panel. Pada icon Network and Internet, klik tulisan View Networks Status and Task.
  4. Selanjutnya akan muncul jendela Networks and Sharing Center. Pada sisi sebelah kiri jendela ini, klik tulisan Change Adapter Setting
  5. Klik kanan pada Networkd Card Anda dan pilih properties.
  6. Pada jendela Local Area Connection Properties, pilih Internet Protocol (TCP/IP) pada Windows XP atau Internet Protocol Version 4 (TCP/IPv4) pada Windows 7 dan Vista. Kemudian klik tombol properties.
  7. Pada jendela properties yang muncul, pilih opsi Use the followinf IP Address dan isikan dengan 192.168.0.1 pada IP Adrees, 255.255.255.0 pada Subnetmask. Input yang tersisa bisa kita kosongkan.
  8. Klik OK untuk menyimpan setting dan klik tombol OK juga pada Local Area Connection Properties
Selanjutnya agar kedua komputer tersebut bisa berhubungan, maka Workgroup dari komputer-komputer tersebut haruslah sama. Untuk itu, berikanlah nama Workgroup yang sama pada kedua komputer tersebut. Caranya sebagai berikut:
  1. Untuk pengguna Windows XP, bukalah system Properties dengan mengklik kanan icon My Computer dan pilih properties. kita juga menekan tombol kombinasi keyboard Win + Break.
  2. tapi bagi pengguna windows 7, caranya sedikit sama yaitu buka system properties dengan cara seperti pada windows XP. Pada jendela yang muncul klik tulisan Change Setting pada bagian Computer name, domain, and workgroup setting.
  3. Pada jendela System Properties, baik Windows XP, Vista ataupun Windows 7, klik tombol Change.
  4. Di jendela berikutnya berikan nama untuk komputer 1 dengan nama yang diinginkan. Misalkan DK-1. Dan berikan nama dari workgroup kita. Contonya Dunia Komputer.
  5. Klik OK dan klik OK juga pada jendela System Properties.
Agar perubahan yang baru kita lakukan berpengaruh pada system maka diperlukan proses restart. Untuk itu retart komputer kita. Lakukanlah langkah-langkah yang sama dengan diatas untuk melakukan konfigurasi Network Card dan merubah nama komputer serta workgroup pada komputer kedua. Namun, bedanya pada komputer 2, IP address yang diberikan adalah 192.168.0.2. Subnetmask sama yaitu 255.255.255.0. Sedangkan Nama komputer harus berbeda. Misalkan berikan nama DK-2. Namun, workgroup haruslah sama.
Untuk mengetahui apakah kedua komputer tersebut sudah terhubung lakukanlanh ping dari komputer 1 ke komputer 2 atau sebaliknya. Caranya sebagai berikut:
  1. Buka Command Prompt dengan menekan tombol keyboard Win + R.
  2. Pada CMD ketik perintah “ping IP Address”. Ip Addrees diisi dengan IP komputer yang ingin di ping. Jika kita melakukan ping dari komputer 1, maka IP address diisi dengan IP komputer 2. Begitu juga sebaliknya. Contoh perintah ping dari komputer 1 ke komputer 2:
ping 192.168.0.2
  1. Jika koneksi antar kedua komputer tersebut berhasil maka hasilnya akan seperti ini:
Pinging 192.168.0.2 with 32 bytes of data:
Reply from 192.168.0.2: bytes=32 time<1ms TTL=128
Reply from 192.168.0.2: bytes=32 time<1ms TTL=128
Reply from 192.168.0.2: bytes=32 time<1ms TTL=128
Reply from 192.168.0.2: bytes=32 time<1ms TTL=128
Ping statistics for 192.168.0.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
  1. Jika hasilnya seperti ini:
Pinging 192.168.0.2 with 32 bytes of data:
Request time out
Request time out
Request time out
Request time out
Ping statistics for 192.168.0.2:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss)
Berarti kedua komputer tersebut belum terkoneksi. Cobalah memeriksa apakah kabel sudah terhubung dengan benar atau mungkin saja ada kabel yang putus.
Jika semuanya sudah beres dan hasil ping sudah bagus, ini artinya kita berhasil mengubungkan 2 komputer tersebut.

Selasa, 14 Desember 2010

Langkah-langkah membuat jaringan ADD-HOC

1) Tampilan awal komputer

2) Klik kanan pada icon wi-fi di pojok kanan background, lalu akan muncul pilihan dan pilih open network connections
  
3) kemudian akan muncul gambar wireless network connection dan klik kanan lalu pilih properties

4) Lalu akan muncul wireless network connection properties, lalu pilih internet protocol (TCP/IP) dan Klik properties.

5) Lalu akan muncul internet protocol (TCP/IP) kemudian pilih use the following IP adress dan kita isi dengan IP adress kita, kemudian klik OK.
6) setelah itu pilih wireless network connection properties,lalu klik add. 

 7) lalu kita isi dibagian  network name (SSID), pilih disable pada data encryption. lalu klik OK
8) Lalu akan muncul kembali ke wireless network connection properties

9) setelah itu, kita klik advance dan pilih computer-to-computer (ad hoc) networks only. lalu close semua.
10) setelah itu kita klik start lalu run.lalu kita masukkan IP adess teman kita untuk di ping.
 
 11) lalu jika kita akan share folder kita kepada temen kita, kita pilih terlebih dahulu folder yang akan kita share kemudian klik kanan pilih sharing and security.

12) pilih sharing dan klik share this folder on the network.


Rabu, 08 Desember 2010

Teknologi Masadepanku

OHP phone
O iyaa kalian pasti mengetahui apa itu OHP (Over head projector) .Over Head Projectror  adalah benda yang berguna untuk melihat bayangan gambar dia positif seperti yang umumnya digunakan untuk presentasi di kelas.

Nah seperti ini gambarnya..!










Lalu di tahun yang akan datang saya akan merubah OHP yang berbentuk sebesar ini menjadi lebih mini lagi seperti handphone yang kita punya. Coba saja kalian bayangkan kalau OHP bisa dibuat computer,mengetik dan berkomunikasi seperti handphone lainnya.jadi OHP ini bukan hanya bisa mengeluarkan tampilan d layar saja,tetapi OHP ini bisa untuk berkomunikasi dengan oranglain.waaaahhh hebatt kann..???!!

OKE kita Lihat gambar di bawah ini !









Model OHP ini gambarnya mirip seperti ini sangat mini dan praktis sekali dan praktis untuk di bawa juga kan…???
OHP Model handphone ini sangat lucu,dan bisa mengeluarkan cahaya ,dan cahaya itu sendiri bisa kita sentuh dan berbentuk keyboard computer.dan layar computer sekaligus..coba saja kalian bayangkan jika ada computer sentuh seperti itu?kita bisa menggunakan’y dimana saja.tanpa harus membawa-bawa laptop ataupun computer yang sebesar kita punya sekarang kemana-mana.
Nah..apabila kita menekan tombol yang sudah ada di handphone itu,dia akan mengeluarakan cahaya yang berbentuk keyboard dan layar seperti OHP yang kita tahu.jadi kita tidak perlu mengetik di laptop tinggal menunggu cahaya yang ditimbulkan oleh OHP phone tersebut…
keren kaaaaaaaaannnn :)

Kamis, 04 November 2010

RAM(Random access memory)

SEJARAH PERKEMBANGAN RAM



R A M
RAM (Random Access Memory) ditemukan oleh Robert Dennard dan diproduksi secara besar - besaran oleh Intel pada tahun 1968, jauh sebelum PC ditemukan oleh IBM pada tahun 1981. Dari sini lah perkembangan RAM bermula. Pada awal diciptakannya, RAM membutuhkan tegangan 5.0 volt untuk dapat berjalan pada frekuensi 4,77MHz, dengan waktu akses memori (access time) sekitar 200ns (1ns = 10-9 detik).
 
RAM terdiri dari DDR1,DDR2,dan DDR3 :
  • DDR1 --> masih berjalan di frekuensi yang rendah 200Mhz, 400 Mhz dengan tegangan 2,5Volt
  • DDR2 --> berjalan di frekuensi 533 Mhz,800 Mhz dengan tegangan 1,8Volt
  • DDR3 --> berjalan di frekuensi 1024 Mhz dengan tegangan 1,5Volt
  •  
     
DDR 1,2,3
DDR RAM
Pada 1999 dua perusahaan besar microprocessor INTEL dan AMD bersaing ketat dalam meningkatkan kecepatan clock pada CPU. Namun menemui hambatan, karena ketika meningkatkan memory bus ke 133 Mhz kebutuhan Memory (RAM) akan lebih besar. Dan untuk menyelesaikan masalah ini maka dibuatlah DDR RAM (double data rate transfer) yang awalnya dipakai pada kartu grafis, karena sekarang anda bisa menggunakan hanya 32 MB untuk mendapatkan kemampuan 64 MB. AMD adalah perusahaan pertama yang menggunakan DDR RAM pada motherboardnya.



 DDR2 RAM
Ketika memori jenis DDR (Double Data Rate) dirasakan mulai melambat dengan semakin cepatnya kinerja prosesor dan prosesor grafik, kehadiran memori DDR2 merupakan kemajuan logis dalam teknologi memori mengacu pada penambahan kecepatan serta antisipasi semakin lebarnya jalur akses segitiga prosesor, memori, dan antarmuka grafik (graphic card) yang hadir dengan kecepatan komputasi yang berlipat ganda.
Teknologi DDR2 sendiri lebih dulu digunakan pada beberapa perangkat antarmuka grafik, dan baru pada akhirnya diperkenalkan penggunaannya pada teknologi RAM. Dan teknologi DDR2 ini tidak kompatibel dengan memori DDR sehingga penggunaannya pun hanya bisa dilakukan pada komputer yang memang mendukung DDR2.

DDR3 RAM
RAM DDR3 ini memiliki kebutuhan daya yang berkurang sekitar 16% dibandingkan dengan DDR2. Hal tersebut disebabkan karena DDR3 sudah menggunakan teknologi 90 nm sehingga konsusmsi daya yang diperlukan hanya 1.5v, lebih sedikit jika dibandingkan dengan DDR2 1.8v dan DDR 2.5v. Secara teori, kecepatan yang dimiliki oleh RAM ini memang cukup memukau. Ia mampu mentransfer data dengan clock efektif sebesar 800-1600 MHz . Prototipe dari DDR3 memiliki 240 pin. 
 
CARA KERJA/KOMUNIKASI RAM KE PROCESOR ADA 2 VERSI :

   1.Versi Lama --> Pertama dari RAM harus di filter dulu melewati North Bridge (Chipset) yang terdapat Address Bus (untuk menentukan alamat RAM),Control Bus(untuk mengontrol kinerja), Data Bus(sebagai alat transfer). Setelah itu akan masuk ke prosessor untuk pengolahan data.
  2.Versi Baru --> dalam versi baru tidak perlu di filter di dalam NorthBridge(Chipset) tetapi langsung dari RAM ke processor karena Address Bus,Control Bus dan Data Bus sudah ada didalam processor.

CARA MEMILIH RAM YANG BAIK


-Bandwith semakin besar semakin bagus.
-Latency(Delay) semakin kecil semakin bagus

RAM dibagi menjadi 2 bentuk yaitu:
  1. Single Channel --> Kanalnya ada 1,dan jenis RAM nya bisa berbeda misalnya PC3200 1GB dengan PC6400 2GB
  2. Dual Channel --> Knalnya ada 2,dan jenis RAM nya harus identik misalnya PC6400 2GB dengan PC6400 2GB

PERHITUNGAN PADA MAIN MEMORY

 
PCE 3200
DDR1/64b
Clock Speed
Clock Cycle
Bus Speed
Bus Width
Bandwitch
Cycle Time

3200/CL*BW
=3200/2*8
=16
=200 MHz
-SDRAM = 20 =1
-DDR1 = 21    =2
-DDR2 = 22 =4

CL*CS
= 2*200 =400MHz
8 byte
3200
1/CS
=1/200 MHz
=1/2*106  second