Senin, 09 September 2013

Kecerdasan Buatan (Artificial Intelligent)

Defenisi Kecerdasan Buatan (Artificial Intelligent)


Kecerdasan Buatan (Artificial Intelligence atau AI) didefinisikan sebagai kecerdasan entitasilmiah. 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 komputer(games), logika fuzzy, jaringan syaraf tiruan dan robotika.


Sejarah Kecerdasan Buatan (Artificial Intelligent)


Pada awal abad 17, René Descartes mengemukakan bahwa tubuh hewan bukanlah apa-apa melainkan hanya mesin-mesin yang rumit. Blaise Pascal menciptakan mesin penghitung digital mekanis pertama pada 1642. Pada 19, Charles Babbage dan Ada Lovelace bekerja pada mesin penghitung mekanis yang dapat diprogram.
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 membangunELIZA, 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 Colmerauer mengembangkan bahasa komputer Prolog. Ted Shortliffe mendemonstrasikan kekuatan sistem berbasis aturan untuk representasi pengetahuan dan inferensi dalam diagnosa dan terapi medis yang kadangkala disebut sebagai sistem pakar pertama. Hans Moravecmengembangkan kendaraan terkendali komputer pertama untuk mengatasi jalan berintang yang kusut secara mandiri.
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.



Keuntungan Kecerdasan Buatan (Artificial Intelligence) :
1.  Kecerdasan buatan lebih bersifat permanen. Kecerdasan alami akan cepat mengalami perubahan. Hal ini dimungkinkan karena sifat manusia yang pelupa. Kecerdasan buatan tidak akan berubah sepanjang sistem komputer dan program tidak mengubahnya.
2. Kecerdasan buatan lebih mudah diduplikasi dan disebarkan. Mentransfer pengetahuan manusia dari satu orang ke orang lain butuh proses dan waktu lama. Disamping itu suatu keahlian tidak akan pernah bisa diduplikasi secara lengkap. Sedangkan jika pengetahuan terletak pada suatu sistem komputer, pengetahuan tersebuat dapat ditransfer atau disalin dengan mudah dan cepat dari satu komputer ke komputer lain
3. Kecerdasan buatan lebih murah dibanding dengan kecerdasan alami. Menyediakan layanan komputer akan lebih mudah dan lebih murah dibanding dengan harus mendatangkan seseorang untuk mengerjakan sejumlah pekerjaan dalam jangka waktu yang sangat lama.
4. Kecerdasan buatan bersifat konsisten. Hal ini disebabkan karena kecerdasan buatan adalah bagian dari teknologi komputer.
5. Kecerdasan buatan dapat didokumentasikan. Keputusan yang dibuat komputer dapat didokumentasikan dengan mudah dengan melacak setiap aktivitas dari sistem tersebut.
6.   Kecerdasan buatan dapat mengerjakan pekerjaan lebih cepat

Kamis, 18 Juli 2013

DDL (DATA DEFINITION LANGUAGE)

TIPE DATA BUILT-IN  
Sebelum membuat table, anda harus mengenal terlebih dahulu tipe data yang ada dalam Oracle. 
Karena tipe data pada Oracle sangat kompleks, maka disini hanya akan dibahas tentang sebagian 
tipe data built-in Oracle yang biasa digunakan.  

CHAR(n)  
Mendefinisikan string dengan ukuran tetap n karakter. Bila n tidak di sertakan, maka panjang 
karakter adalah 1. Bila nilai yang dimasukkan lebih besar/panjang dari nilai n, maka oracle akan 
mengeluarkan pesan Error.  

VARCHAR2(n)  
mendefinisikan string yang panjangnya bisa berubah-ubah sesuai dengan kebutuhan, namun string 
tersebut dibatasi sebanyak n karakter. Maksimum karakter pada varchar2 adalah 2000 karakter.  

DATE  
Mendefinisikan Tahun, Bulan dan Tanggal.  

TIMESTAMP  
Mendefinisikan Tahun, Bulan, Tanggal, Jam, Menit dan Detik.  

NUMBER(n,p)  
mendefinisikan angka pecahan, baik fixed decimal ataupun floating point. Nilai n adalah panjang 
bytes total dan p adalah presisi angka di belakang koma. Bila nilai yang dimasukkan lebih 

besar/panjang dari nilai n, maka oracle akan mengeluarkan pesan error.  

 CREATE

     MEMBUAT  TABEL (CREATE TABLE)  

     Sintax Dasar :  
     

 - Cara Menghapus Table 

    Sintax dasar :  
        DROP TABLE <nama_tabel>;  

  Alter digunakan untuk :
   
   - Menambahkan kolom baru  
        Untuk menambah kolom baru, syntax umumnya sebagai berikut : 
          Alter table  nama_table add   (column datatype [DEFAULT expr] [, column 
          datatype]…); 
        Contoh : 
           alter table mhs add alamat varchar(50); 

    Menghapus kolom 
        Klausa DROP COLUMN digunakan untuk menghapus kolom yang tidak diperlukan lagi pada table.  
        Syntax umum 
           Alter table nama_table drop column nama_field; 
          Contoh: 
           Alter table mhs drop column alamat; 

 Memodifikasi kolom yang sudah ada  
        Kita dapat memodifikasi kolom dengan mengubah tipe datanya, ukuran dan nilai defaultnya. 
        Sintaks dari perintah ALTER TABLE untuk memodifikasi kolom sebagai berikut : 
            Alter table nama_table modify (column datatype [DEFAULT expr] [, column datatype] … ); 
        Contoh : 
           Alter table mhs modify alamat(varchar(100)); 

  Rename table  
         Kita dapat mengubah nama dari table yang sudah ada 
         Syntax umum 
             ALTER TABLE table_nameRENAME TO new_table_name; 
         Contoh : 
Alter table mhs rename TO mahasiswa;   
     

   CONSTRAINT PADA ORACLE

       Constraint adalah batasan atau aturan  pada tabel.  Salah satu contohnya constraint mencegah 
penghapusan data dari suatu tabel  yang mempunyai keterkaitan dengan table yang lain. Misal 
terdapat keterkaitan antara  tabel jabatan dengan tabel pegawai. Dimana pada tabel  pegawai 
menyimpan informasi field kode_jabatan yang juga terdapat pada table jabatan. Jika record dengan 
kode_jabatan ‘’P001”  akan dihapus dari  tabel jabatan, sedangkan terdapat data pegawai yang 
memiliki kode_jabatan  tersebut, maka dengan adanya constraint, penghapusan tersebut tidak bisa 
dilakukan. 
Sintaks umum dari penggunaan constraint  
CREATE TABLE nama_tabel(nama_field TIPE_DATA, …, 
CONSTRAINT nama_constraint JENIS_CONSTRAINT(nama_field_yang_diconstraintkan) 
) 


Jenis-Jenis Cointraint :
    a.  NOT NULL 
    b.  UNIQUE 
    c.  PRIMARY KEY 
    d.  FOREIGN KEY 
    e.  CHECK 

Untuk penjelasan dari jenis-jenis Coinstraint diatas, akan dijelaskan pada postingan berikutnya :)

Referensi : Buku Mata Kuliah Sistem Basis Dta, Modul Kuliah, Googling...
#Terimakasih

PL/SQL

PL/SQL atau diesebut dengan Procedural Language/Structured Query Language adalah suatu bahasa pemrograman untuk database Oracle.
Struktur dasar dari PL/SQL adalah DECLARE, BEGIN, dan END. Untuk menandakan suatu komentar (tidak diproses oleh compiler), gunakan “- -” pada tiap baris komentar. 


Kelebihan PL/SQL :

  • Integrasi ketat dengan SQL 
  • Performa yang lebih baik
  • Produktifitas yang lebih tinggi 
  • Portabilitas penuh 
  • Keamanan yang ketat 
  • Akses ke paket-paket yang telah di definiskan sebelumnya 
  • Mendukung pemrograman berorientasi objek 
  • Mendukung pengembangan halaman dan aplikasi Web.

 Fitur-fitur utama pada PL/SQL  :

  •     Struktur Block
                - Bagian deklaratif (DECLARE) 
                - Bagian eksekusi (BEGIN, END)
                - Bagian penanganan eksepsi (EXCEPTION) bagian yang menangani kondisi error  

  • Badan PL/SQL Block
                                 DECLARE 

                          /* deklarasi variabel, type dan subprogram lokal */ 
                       BEGIN 
                              /* prosedural dan SQL masuk disini */ 
                              /* BAGIAN INI YANG WAJIB */ 
                      EXCEPTION 
                              /* penanganan eksepsi (ERROR) */ 
                      END; 

  • Bagian Deklarasi Variabel
        Contoh :
                         DECLARE 
                             v_counter INTEGER; 
                             v_nim CHAR(5); 
                             v_nama VARCHAR(2); 
                             v_nilai NUMBER; 
                             v_nim_2 mahasiswa.nim%TYPE  /* tipe variabel mengikuti tipe field mahasiswa.nim */ 

       Ket :
                 Kenapa diberikan tanda v_ ? tujuannya adalah agar  tidak bentrok dengan nama field.
                 contohhnya : INSERT INTO mahasiswa (nim, nama) VALUES (v_nim, v_nama); 


 ANONYMOUS BLOCK
        Block PL/SQL Anonymous (tidak bernama) dapat disampaikan kepada kakas interaktif seperti 
SQL*Plus dan Enterprise Manager,  menyimpannya dalam Oracle Precompiler atau Oracle Call 
Interface(OCI), atau mendefinisikannya dalam aplikasi dengan bahasa lain (Contoh : Java, C#, C++) .
           Berbeda dengan Subprogram(Stored Procedure, Stoded Function) Anonymous PL/SQL Block tidak 
dibuat (CREATE) dan tidak disimpan pada Database. Biasanya Anonymous PL/SQL Block ini di 
jalankan dari dalam aplikasi. Pada run-time Aplikasi akan mengirimkan anonymous PL/SQL block ini 
kepada database Oracle, dimana Anonymous block tersebut di compile dan di eksekus
      
  - Badan Anonymous Block (Secara Umum) 
       DECLARE
          /* deklarasi variabel, type dan subprogram lokal */ 
      BEGIN 
         /* prosedural dan SQL masuk disini */ 
        /* BAGIAN INI YANG WAJIB */ 
     EXCEPTION 
        /* penanganan eksepsi (ERROR) */ 
     END;



  • Untuk melihat Seluruh Subprogram pada Database Oracle, anda dapat menuliskan perintah berikut :
             - Melihat semua Subprogram
                     SELECT * FROM USER_PROCEDURES;
           
             - Melihat Subprogram tertentu
                     SELECT * FROM USER_PROCUDERES WHERE OBJECT_NAME = <nama_SP>;


             - Melihat seluruh Subprogram yang dimiliki DBA
                      SELECT * FROM DBA_PROCEDURES;
                      Hal ini tidak di sarankan karena dari perintah
                     SELECT COUNT (*) FROM DBA_PROCEDURES;
                      akan menghasilkan row sebanyak 12.906

MENGGUNAKAN ORACLE


Pada perkuliahan Sistem Basis Data di Ilmu Komputer Universitas Pendidikan Indonesia database yang digunakan adalah Oracle.
Oracle adalah nama produk software database server yang diproduksi oleh perusahaan software Oracle Corporation. Oracle Corporation memposisikan diri sebagai produsen software database sejak tahun 1977.
                                                            
Oracle merupakan software database yang menggunakan bahasa SQL (Structured Query Language), di dalam dunia database istilah query dapat diartikan “Permintaan Data”. Saat ini SQL merupakan bahasa query standard di berbagai software database. Berbagai software database dapat diakses menggunakan bahasa SQL. Sehingga selain di Oracle, anda dapat menggunakan SQL di software database yang lain seperti Microsoft SQL Server, MySQL,Informix, DB2, Interbase dan software database yang lain.


Kelebihan Oracle yaitu :

Oracle dikenal sebagai database server untuk internet dan jaringan. Keistimewaan Oracle cukup banyak, yaitu :
a.       Client/Server Environtment
Oracle berjalan di jaringan komputer. Oracle memisahkan proses antara database server dan aplikasi client. Server yang terinstall Oracle bertanggung jawab menangani proses database, sementara workstation/client yang menjalankan aplikasi hanya berkonsentrasi menampilkan data. Struktur ini akan mengurangi kemacetan data.
b.      Ukuran database yang besar dan pengaturan space
Oracle mendukung ukuran database yang sangat besar hingga jumlahnya terabyte. Oracle juga mendukung pengaturan penggunaan space di harddisk sehingga ruang harddisk termanfaatkan dengan efisien.
c.       Multiuser
Oracle dapat melayani banyak user yang terkoneksi dalam waktu yang sama dan mengakses data yang sama. Dengan fasilitas ini Oracle mampu menghindari konflik data.
d.      Connectibility
Oracle dapat menggunakan berbagai sistem operasi dalam suatu jaringan untuk mengakses data.
e.       High Transaction Processing Performance
Oracle dapat mengatur sistem agar pemrosesan database berjalan cepat walaupun jumlah transaksi sangat banyak dalam suatu waktu.
f.        Availability
Oracle dapat menjalankan database 24 jam sehari tanpa istirahat. Pemisahan sistem komputer dan proses backup dapat dilakukan secara Online tanpa harus mematikan database.
g.       Standar industri yang terbuka
Oracle diterima oleh berbagai standar industri untuk mengakses data, sistem operasi, user interface dan protokol jaringan.
h.       Manajemen keamanan yang sangat baik
Untuk menghindari akses database dari pihak yang tidak diinginkan, Oracle memiliki fitur untuk membatasi dan memonitor akses data.
i.         Database Enforced Integrity
Oracle memiliki kontrol untuk mengendalikan data mana saja yang dapat diterima di database. Anda tidak perlu membuat kode dibanyak aplikasi, cukup di satu database Oracle.
j.        Portabilitas
Oracle dapat berjalan di berbagai sistem opersi baik Linux, Windows, Unix dan masih banyak lagi. Aplikasi yang menggunakan database Oracle dapat dengan mudah mengakses data Oracle yang berjalan di sistem operasi apa pun.
k.      Distributed System
Oracle dapat memisahkan databasenya dalam komputer-komputer yang secara fisik terpisah, namun secara logis terlihat seperti satu database. Semua user dalam jaringan dapat mengakses data tersebut seolah-olah mengakses satu database.
l.         Replicated Environtment
Oracle mampu menduplikasi database objek dalam lokasi server yang berbeda-beda. Hal ini sangat membantu jika salah satu server rusak dan server lain langsung menggantikan fungsinya




          Struktur oracle :



         Server Oracle berisi Oracle Instance dan Oracle Database, dimana Oracle Instance berisi struktur memory yang disebut dengan  system-global-area (SGA) dan background-process yang dipergunakan oleh server Oracle untuk mengatur database. 
System Global Area
Struktur memory dari Oracle Instance berada pada daerah memory yang disebut SGA, yang berisi data dan informasi pengontrol untuk server Oracle. SGA dialokasikan pada virtual memory komputer tempat server Oracle berada. 
SGA terdiri dari beberapa struktur memory yang meliputi :

  • Shared pool
Dipergunakan untuk menyimpan informasi seperti statement SQL yang barusaja dieksekusi dan data dari data dictionary yang baru saja dipergunakan.
  • Database buffer cache
Dipergunakan untuk menyimpan data yang baru saja dipergunakan.
  • Redo log buffer
Untuk meyimpan perubahan yang dibuat pada saat mengoperasikan databasemnggunakan instance tersebut.
  • Java pool
Digunakan untuk menampung kode-kode program Java.
  • Large pool
Digunakan untuk menampung I/O request dan sebagai penampung dari backupyang dilakukan recovery manager (RMAN).
  • Streams Pool, Digunakan untuk oracle streams, misalnya mengeluarkan pesan error, peringatan, pembersihan proses yang salah atau sudah tidak berguna lagi.


     Berikut adalah langkah-langkah menggunakan Oracle :


        - masuk ke oracle home page
         - memasukkan username dan password
         - masuk kedalam oracle console

           - login pada oracle console
           - logout pada oracle console




Referensi : http://id.wikipedia.org/wiki/Basis_data_Oracle

#Semoga bermanfaat

PENGERTIAN SISTEM BASIS DATA

      Basis data adalah kumpulan data yang saling berelasi. Data sendiri merupakan fakta mengenai obyek, orang, dan lain-lain. Data dinyatakan dengan nilai (angka,deretan karakter, atau symbol). Basis data dapat didefinisikn dalam berbagai sudut pandang seperti berikut :

  1. Himpunan kelompok data yang saling berhubungan yang diorganisasikan sedemikian rupa sehingga kelak dapat dimanfaatkan dengan cepat dan mudah
  2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa tanpa pengulangan (redundancy) yang tidak perlu, untuk memenuhi kebutuhan.
  3. Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronik.

            Menurut Connolly dan Begg sistem basis data adalah merupakan suatu kumpulan data-data yang berhubungan secara logis, dan deskripsi dari data-data tersebut serta dirancang untuk memenuhi informasi yang dibutuhkan oleh sebuah organisasi. Artinya basis data merupakan penyimpanan data yang tunggal dan besar yang dapat digunakan secara simultan oleh banyak bagian departemen dan pemakai (user).
Di dalam basis data semua item diintegrasikan dengan jumlah duplikasi data yang minimum

Keuntungan Sistem Basis Data :

   1.      Terkontrolnya kerangkapan data. Dalam basis data pada aplikasi hanya mencatumkan satu kali saja field yang sama yang dapat digunakan oleh semua aplikasi yang memerlukannya
   2.      Terpeliharanya Keselarasan (ke-konsistenan) data. Apabila ada perubahan data pada aplikasi yang berbada maka secara otomatis perubahan itu berlaku untuk keseluruhan.
   3.      Data dapat dipakai secara bersama (shared). Data dapat dipakai secara bersama-sama oleh beberapa program aplikasi (secara batch maupun online) pada saat bersamaan
   4.      Data diterapkan  standarisasi. Dengan adanya pengontrolan yang terpusat, maka DBA dapat menerapkan standarisasi data yang disimpan sehingga memudahkan pemakaian, pengiriman maupun pertukaran.
   5.      Keamanan data terjamin. DBA dapat memberikan batasan-batasan pengecekan data, misalnya dengan memberikan password dan memberikan dan pemberian hakakses bagi user (misal : modify, delete, insert, retrieve).
   6.      Terpeliharanya integritas data. Jika kerangkapan data dikontrol dan kekonsistenan data dijaga maka data menjadi akurat.
   7.      Terpeliharanya keseimbangan (keselarasan) antara kebutuhan data yang berbeda dalam setiap aplikasi. Struktur basis data diatur sedemikian rupa sehingga dapat melayani pengaksesan data dengan cepat.
   8.      Data independence (kemandirian data). Dapat digunakan untuk bermacam-macam program aplikasi tanpa harus merubah format data yang sudah ada
  
  Kelemahan/kekurangan Sistem Basis Data :

1. Lebih Mahal 
            Sistem basis data membutuhkan sumber daya yang tinggi, terlebih untuk melakukan perawatan secara berkala.
2. Proses back up cukup memakan waktu.
            Sistem basis data mencakup banyak file, sehingga jika dilakukan back up akan menghabiskan waktu.
3. Bila ada akses yang tidak benar, kerusakan dapat terjadi.
            Kesalahan dalam mengakses bisa menyebabkan berbagai masalah, terutama oleh sembarang pengguna.
4. Sistem lebih rumit, sehingga memerlukan tenaga spesial.
            Sistem basis data sangat kompleks, tidak sembarang orang bisa menanganinya. Terutama dengan berbagai macam resiko, sehingga hanya orang