Thursday, November 03, 2016

Sistem Cerdas


Kecerdasan Buatan atau kecerdasan yang ditambahkan kepada suatu sistem yang bisa diatur dalam konteks ilmiah atau Intelegensi Artifisial (bahasa Inggris: Artificial Intelligenceatau hanya disingkat AI) didefinisikan sebagai kecerdasan entitas ilmiah. Sistem seperti ini umumnya dianggap komputer. Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dapat dilakukanmanusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games),logika fuzzy, jaringan syaraf tiruan dan robotika.

Sejarah kecerdasan buatan

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 membangun ELIZA, 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 Moravec mengembangkan 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. Pada tahun 1982, para ahli fisika seperti Hopfield menggunakan teknik-teknik statistika untuk menganalisis sifat-sifat penyimpanan dan optimasi pada jaringan syaraf. Para ahli psikologi, David Rumelhart dan Geoff Hinton, melanjutkan penelitian mengenai model jaringan syaraf pada memori. Pada tahun 1985-an sedikitnya empat kelompok riset menemukan kembali algoritma pembelajaran propagansi balik (Back-Propagation learning). Algoritma ini berhasil diimplementasikan ke dalam ilmu komputer dan psikologi. 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.

Contoh Penerapan Sistem Cerdas Dalam Bisnis

Sistem Cerdas pada Bisnis
Sistem pakar (expert system) yaitu sistem yang meniru kepakaran (keahlian) seseorang dalam bidang tertentu dalam menyelesaikan suatu permasalahan (Horn, 1986). Sistem pengolahan bahasa alami (natural language processing).

Contoh Aplikasi Sistem Pakar :


 
  • XSEL : Sistem pakar ini dapat bertindak sebagai asisten penjual, yang membantu penjual komputer DEC memilihkan pesanan pelanggan sesuai dengan kebutuhan.
  • MYCIN : Sistem ini dikembangkan  di Universitas Stanford pada pertengahan 1970-an dengan tujuan untuk membantu jurumedis dalam mendiagnosa penyakit yang disebabkan bakteri. 
  • PROSPECTOR : Sistem ini diciptakan oleh Richard Duda, Peter Hard, dan Rene Reboh pada tahun 1978 yang menyediakan kemampuan seperti seorang pakar di bidang geologi.

Model Konseptual Sistem Pakar

 
Bagian Sistem Pakar
    ·         Basis pengetahuan merupakan komponen yang berisi pengetahuan-pengetahuan yang berasal dari pakar. 
    • Berisi sekumpulan fakta (fact) dan aturan (rule).  Fakta berupa situasi masalah dan teori tentang area masalah. 
    • Aturan adalah suatu arahan yang menggunakan pengetahuan untuk memecahkan masalah pada bidang tertentu.  
    • Mesin inferensi adalah komponen yang menjadi otak sistem pakar. Bagian inilah yang berfungsi melakukan penalaran dan pengambilan kesimpulan. 
    • Fasilitas penjelas merupakan komponen yang berfungsi untuk memberikan penjelasan kepada pemakai yang memintanya. Jenis pertanyaan yang dapat ditangani biasanya berupa “Mengapa” dan “Bagaimana”. Tidak semua sistem pakar menyediakan bagian ini. Contoh berikut memberikan gambaran tentang penjelasan oleh sistem pakar. 
    • Antarmuka pemakai merupakai bagian yang menjembatani antara sistem dan pemakai. Melalui bagian inilah pemakai berkomunikasi dengan sistem.

    Sumber :

    Thursday, October 13, 2016

    Mendeklarasikan Kelas dari Class Diagram

    Pada postingan sebelumnya, kita telah mempelajari bagaimana membuat use case dan class diagram. Nah kali ini saya akan mencoba menjelaskan bagaimana mendeklarasikan kelas itu sendiri dari class diagram yang sudah kita buat. 

    Disini terdapat diagram sistem Bank Blood atau Bank dari donor darah sebuah rumah sakit. 
    Blood Bank - Class Diagram

    Disini dapat kita lihat terdapat 8 kelas, yaitu :
    1. Recepsionist
    2. Donor
    3. Hospital
    4. Inventory_Manager
    5. Organization_Admin
    6. Blood
    7. Lab_Technicians
    8. Nurse

    Bagaimanakah keterkaitan dan fungsi dari masing - masing kelas tersebut ? 
    lebih lengkapnya kita jabarkan tiap kelas dari diagram class diatas dalam sebuah deklarasi code struktur sederhana pada java, kita coba simak lebih lanjut

    1. Recepsionist
    struktur code pada receptionist.java

    Kita deklarasikan kelas receptionis menjadi public class agar semua class dapat mengaksesnya, kita deklarasikan variable didalam class ini yaitu string untuk name, char phone number, char email, char address. Kemudian untuk fungsi Register_donor kita dapat mendeklarasikan dalam void, yang didalamnya menggunakan variable yang telah kita deklarasikan di awal. Disini receptionis berfungsi me-register pendonor, selanjutnya kita akan berpindah ke class donor

    2. Donor
    struktur code pada donor.java

    kita deklarasikan class donor dengan class public, class ini merupakan turunan dari receptionist. Kita deklarasikan masing-masing variable informasi yang dibutuhkan untuk class donor, yaitu name, age, email, phone number, dan address. Fungsi class donor disini adalah donate dan register. Masing-masing fungsi kita deklarasikan dengan void di dalam class donor.

    3. Hospital
    struktur code pada hospital.java
    sama seperti sebelumnya kita deklarasikan class hospital menjadi public class, kemudian kita deklarasikan masing-masing variable nya. fungsi dari class ini adalah order bank darah dan melakukan pengadaan darah sesuai kebutuhan rumah sakit.

    4. Inventory Manager

    sama seperti sebelumnya kita deklarasikan class Inventory_managers menjadi public class, kemudian kita deklarasikan masing-masing variable nya. fungsi dari class ini yaitu mencatat jumlah permintaan darah yang dibutuhkan rumah sakit, memproses pesanan darah, memilah darah yang dapat diterima ataupun di reject untuk selanjutnya dapat dikirimkan ke rumah sakit sesuai kebutuhan.
    5. Organization_Admin
    sama seperti sebelumnya kita deklarasikan class Organization_admin menjadi public class, kemudian kita deklarasikan masing-masing variable nya. fungsi dari class ini adalah mencatat staff yang beroperasi pada rumah sakit.

    6. Nurse

    sama seperti sebelumnya kita deklarasikan class Nurse menjadi public class, kemudian kita deklarasikan masing-masing variable nya. Class Nurse merupakan penurunan class dari org_admin, nurse merupakan staff yang bertugas, dan dapat melakukan tugasnya jika telah mendapat lisensi dari organisasi admin. 

    7. Blood

     
    sama seperti sebelumnya kita deklarasikan class blood menjadi public class, kemudian kita deklarasikan masing-masing variable nya. blood merupakan class yang menampung data darah yang telah diterima oleh pihak bloodbank.

    8. Lab_Technicians

    sama seperti sebelumnya kita deklarasikan class lab_technicians menjadi public class, kemudian kita deklarasikan masing-masing variable nya. Lab_Technicians merupakan class yang menampung data darah yang akan dilakukan pengetesan, darah yang dapat diterima ataukah direject.

    Oke, semua class sepertinya sudah saya jelaskan masing-masing fungsi, deklarasi dan struktur codenya. Semoga menambah pengetahuan teman teman readers ya, maaf apabila ada salah kata, silahkan comment dibawah ini.

    Terimakasih sudah menyimak postingan kali ini

    Semangat belajar~
    14102016
    -LelyNovia





    Thursday, October 06, 2016

    Mengulik Use Case dan Class Diagram - Instagram

    Hai,
    untuk artikel tugas kali ini, saya mencoba untuk sedikit mengulik tentang use case dan class diagram. Sebelumnya udah pada tau belom use case itu apa ? dan class diagram itu apa pula ? fungsinya buat apa si ? Selengkapnya kita simak beberapa penjelasan berikut yuk

    Use Case Diagram

    Usecase diagram adalah diagram usecase yang digunakan untuk menggambarkan secara ringkas siapa yang menggunakan sistem dan apa saja yang bisa dilakukannya. Diagram usecase tidak menjelaskan secara detail tentang penggunaan usecase, namun hanya memberi gambaran singkat hubungan antara usecase, aktor, dan sistem. Melalui diagram usecase dapat diketahui fungsi-fungsi apa saja yang ada pada sistem (Rosa-Salahudin, 2011: 130). Nama suatu usecase haru sdidefinisikan sesimple mungkin dan dapat dipahami.  
    Komponen-komponen yang ada pada usecase adalah :  
    1. Aktor.
      Merupakan orang, proses atau sistem lain yang berinteraksi dengan sistem yang akan dibuat. Jadi walaupun simbol aktor dalam diagram usecase berbentuk orang, namun aktor belum tentu orang. 
    2. Usecase.
      Merupakan fungsionalitas yang disediakan sistem sebagai unit-unit yang slaing berinteraksi atau bertukar pesan antar unit maupun aktor. 
    3. Relasi.
      Merupakan hubungan yang terjadi pada sistem baik antar aktor maupun antar usecase maupun anatara usecase dan aktor.

    nah disini kita mulai paham kan tentang use case diagram, disini saya mengambil contoh dari aplikasi yang hits 1 dekade belakangan ini, tau ga si aplikasi dimana kita punya mini album yang bisa kita upload sesuka hati serta dapat response like atau comment bagi yang mengikuti album kita? yap Instagram, siapa si hari gini yang ga punya instagram hehe. 


    selanjutnya, gimana si use case dari instagram itu sendiri, berikut ilustrasi nya :

    Use Case Diagram -  Instagram
    Dari diagram diatas, terdapat 4 aktor yang terlibat dalam sistem Instagram dengan fungsi masing-masing sbb:
    1. User (Pengguna, dapat melakukan aksi search, edit info/bio, capture/ambil file dalam gallery kemudian dapat di edit dengan utility dalam instagram, kemudian share dengan mencantumkan hash tag, tag  teman, linke foto, dan memberikan komentar)
    2. Host, (sebagai media posting foto/video yang diupload oleh user).
    3. Social Network, (share sosial media selain instagram, seperti facebook, twitter, flickr, tumblr).
    4. Follower, (Teman/user lain yang follow akun, dapat menambahkan tag pada foto yg sudah diupload user, memberikan like dan komentar)

    Class Diagram

    Selanjutnya kita akan belajar tentang Class Diagram, yaitu kumpulan objek-objek dengan dan yang mempunyai struktur umum, behavior umum, relasi umum, dan semantic/kata yang umum. Class-class ditentukan/ditemukan dengan cara memeriksa objek-objek dalam sequence diagram dan collaboration diagram. Sebuah class digambarkan seperti sebuah bujur sangkar dengan tiga bagian ruangan. Class sebaiknya diberi nama menggunakan kata benda sesuai dengan domain/bagian/kelompoknya (Whitten L. Jeffery et al, 2004).

    Elemen-eleman class diagram dalam pemodelan UML terdiri dari: Class-class, struktur class, sifat class (class behavior), perkumpulan/gabungan (association), pengumpulan/kesatuan (agregation), ketergantungan (dependency), relasi-relasi turunannya, keberagaman dan indikator navigasi, dan role name (peranan/tugas nama).
    Simbol-simbol class diagram




    1. Class
      adalah blok - blok pembangun pada pemrograman berorientasi obyek.Sebuah class digambarkan sebagai sebuah kotak yang terbagi atas 3 bagian. Bagian atas adalah bagian nama dari class. Bagian tengah mendefinisikan property/atribut class. Bagian akhir mendefinisikan methodmethod dari sebuah class.
    2. Association
      Sebuah asosiasi merupakan sebuah relationship paling umum antara 2 class dan dilambangkan oleh sebuah garis yang menghubungkan antara 2 class. Garis ini bisa melambangkan tipe-tipe relationship dan juga dapat menampilkan hukum-hukum multiplisitas pada sebuah relationship.(Contoh: One-to-one, one-to-many,many-to-many).
    3. Composition
      Jika sebuah class tidak bisa berdiri sendiri dan harus merupakan bagian dari class yang lain, maka class tersebut memiliki relasi Composition terhadap class tempat dia bergantung tersebut. Sebuah relationship composition digambarkan sebagai garis dengan ujung berbentuk jajaran genjang berisi/solid.
    4. Dependency
      Kadangkala sebuah class menggunakan class yang lain. Hal ini disebut dependency. Umumnya penggunaan dependency digunakan untuk menunjukkan operasi pada suatu class yang menggunakan class yang lain. Sebuah dependency dilambangkan sebagai sebuah panah bertitik-titik.
    5. Aggregation
      Aggregation mengindikasikan keseluruhan bagian relationship dan biasanya disebut sebagai relasi.
    Berikut contoh Class diagram pada Instagram :
    Class Diagram - Instagram

    Naah sudah paham kaan antara use case dan class diagram. Terimakasih sudah membaca blog saya, semoga bermanfaat :)



    07102016 02:26
    LelyNovia