Selasa, 19 April 2016

#PetGame (Rancangan Mesin Parkir Futuristik)

Pada postingan saya kali ini, saya mencoba untuk membuat rancangan mesin parkir futuristic milik saya sendiri yang dipadukan dengan konten modul AI. Menginat semakin hari system parki kita di Indonesia sudah semakin banyak dibutuhkan, kebutuhan ini sendiri tidak dapat dibilang sederhana, karna semakin banyak orang bisa menyetir, semakin banyak orang punya kendaraan, dan akan semakin banyak pula lahan parkir yang kita butuhkan karena peningkatan jumlah kendaraan.
Untuk mengatur parkir tersebut agar dapat menjadi nyaman, efisien tidak membuang waktu banyak, serta yang pasti hemat akan biaya. Kita dapat memulai nya dengan merancang mesin parkir nya terlebih dahulu. Mesin parkir yang saya maksud disini adalah mesin pintar yang dapat berkomunikasi langsung dengan pelanggan dan memberikan layanan cepat tepat untuk menyediakan parkir bagi si pelanggan.

Berikut rancangan sederhana mesin parkir futuristic yang saya inginkan:


Mesin parkir ini sendiri difokuskan untuk gedung khusus hanya untuk tempat parkir saja. Karena pilihan tempat parkir nya sendiri ada dalam sebuah gedung bertingkat dan langsung dibawah tanah. Jadi pelanggan tidak perlu lagi bersusah payah memarkirkan lagi kendaraan nya. Kendaraan tersebut akan terparkir dengan sendiri nya setelah mengikuti prosedur mesin parkir tesebut.

Kemudian saya akan menjelaskan bagaimana cara kerja mesin parkir ini, langsung saja kita simak dibawah ini.

Cara kerja:
  • Masuk

  1. Pelanggan datang
  2. Akan disambut langsung dengan mesin parkir futuristiknya
  3. Mesin mengambil foto kendaraan dan pemilik kendaraan
  4. Mesin menunjukan pilihan tempat parkir sesuai dengan kebutuhan si pelanggan pada layar monitor yang tersedia
  5. Setelah pelanggan memilih, maka mesin akan mengeluarkan kartu tanda parkir yang harus disimpan untuk digunakan pada saat pelanggan akan keluar
  6. Pelanggan akan diarahkan ketempat parkir yang dipilih, lalu kendaraan ditempatkan secara otomatis oleh mesin parkir otomatis tersebut setelah pelanggan meninggalkan kendaraan nya


  • Keluar

  1. Pelanggan datang ketempat parkir otomatis tempat ia menaruh kendaraan nya
  2. Lalu men-scan kartu tanda parkir pada scan yang tersedia
  3. Maka kendaraaan tersebut akan otomatis dikeluarkan oleh mesin
  4. Setelah itu, pada saat akan keluar pelanggan hanya tinggal kembali menscan kartu tanda parkir nya dan membayar jumlah uang yang telah dihitung pada mesin sebelumnya

Karakteristik:

  • Mesin berbentuk bulat, seperti wajah seseorang pada umumnya
  • Mesin dinamakan Smart Parking Machine 3K4 atau bisa disingkat SPM3K4
  • Pada mesin terdapat layar, kamera, tempat scan, dan tempat pembayaran  uang
Demikian rancangan mesin parkir futuristic yang dapat saya gambarkan sedikit, semoga system parkir di Indonesia khususnya dapat menjadi lebih baik lagi. Terima kasih J

Senin, 18 April 2016

#PetGame (Konsep AI)

KONSEP AI


Ø  Deskripsi Umum
Artificial Intelligence (AI)
AI merupakan suatu bidang spesifik pada dunia Teknologi Informasi yang mendalami metode untuk mendesain suatu mesin komputer cerdas untuk memperoleh hasil pekerjaan yang optimal, yaitu suatu sistem yang meperlihatkan karakteristik yang ada pada tingkah laku manusia, seperti mengerti suatu bahasa, mempelajari,mempertimbangkan dan memecahkan suatu masalah. untuk menyelesaikan masalah,masalah yang biasa diselesaikan melalui aktifivitas intelektual manusia, misalnya pengolahan citra,perencanaan, peramalan dan lain-lain, meningkatkan kinerja sistem informasi yang berbasis computer.
AI juga dapat dirujuk sebagai komputer yang memiliki pengetahuan yang terdiri atas fakta, pola, dan aturan. Pendekatan yang dilakukan bidang AI beragam seperti menggunakan penalaran deduksi (logika), perhitungan probabilitas, dan statistik. Contohnya adalah kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, perencanaan dan penjadwalan, pengendalian, serta pengenalan tulisan tangan, suara dan wajah.

Ø  Decision Making
Decision Tree (Pohon Keputusan)

Pohon Keputusan menggambarkan pemilihan alternatif secara sistimatis dan komprehensif dan menyeluruh tentang kejadian apa yang mungkin yang terjadi sebagai akibat suatu keputusan. Model ini biasa digunakan dalam melakukan evaluasi alternatif dugaan dampak yang tidak pasti dikemudian hari. Penerapannya memerlukan imajinasi hubungan variabel serta data nilai kemungkinan untuk setiap kejadian tak pasti serta memuat hasil keputusan berupa nilai pay-off atau losses. Hasil keputusan bisa dinyatakan secara kuantitatif atau kualitatif.
Notasi atau simbol yang dipergunakan adalah sebagai berikut :
  • Tanda empat persegi panjang, sebagai simpul keputusan (Decision node)

  • Tanda lingkaran, sebagai cabang (Event fork)


Rule-based System
Rule, atau yang biasa kita sebut kaidah, menyediakan cara formal untuk merepresentasikan rekomendasi, arahan, atau strategi. Pada aturan produk atau kaidah produksi pengetahuan disajikan dalam aturan-aturan yang berbentuk pasangan keadaan-aksi (condition-action): “JIKA keadaan terpenuhi atau terjadi MAKA suatu aksi akan  terjadi”.

Ø  Pathfinding

Pathfinding (pencarian jalur) merupakan salah satu implementasi kecerdasan buatan dalam permainan. Pencarian jalur terpendek merupakan hal yang mempengaruhi pergerakan dan pengambilan keputusan pada non-player character. Namun, jalur terpendek belum tentu dan tidak selalu menjadi jalur paling aman.
Waypoint
Waypoint merupakan kumpulan dari beberapa titik kordinat yang kemudian dijadikan sebagai navigasi pergerakan. Waypoint dapat digunakan pada non-playable character untuk melakukan  patroli di dalam game dengan melintasi titik-titik kordinat yang ditentukan.

STRATEGI PENCARIAN
Depth-First Search (DFS)

Pencarian dilakukan pada satu node dalam setiap level dari yang paling kiri. Jika pada level yang paling dalam, solusi belum ditemukan, maka pencarian dilanjutkan pada node sebelah kanan. Node yang kiri dapat dihapus dari memori. Jika pada level yang paling dalam tidak ditemukan solusi, maka pencarian dilanjutkan pada level sebelumnya. Demikian seterusnya sampai ditemukan solusi. Jika solusi ditemukan maka tidak diperlukan proses backtracking (penelusuran balik untuk mendapatkan jalur yang dinginkan).

Breadth-First Search (BFS)

Pencarian dilakukan pada semua node dalam setiap level secara berurutan dari kiri ke kanan. Jika pada satu level belum ditemukan solusi, maka pencarian dilanjutkan pada level berikutnya. Demikian seterusnya sampai ditemukan solusi. Dengan strategi ini, maka dapat dijamin bahwa solusi yang ditemukan adalah yang paling baik (Optimal). Tetapi BFS harus menyimpan semua node yang pernah dibangkitkan. Hal ini harus dilakukan untuk penelusuran balik jika solusi sudah ditemukan.

Generate-and-Test

Metode Generate-and-Test adalah metode yang paling sederhana dalam pencarian heuristic. Jika pembangkitan possible solution dikerjakan secara sistematis, maka prosedur akan mencari solusinya, jika ada. Tetapi jika ruang masalahnya sangat luas, mungkin memerlukan waktu yang sangat lama.
Algoritma Generate-and-Test adalah prosedur DFS karena solusi harus dibangkitkan secara lengkap sebelum dilakukan test. Algoritma ini berbentuk sistematis, pencarian sederhana yang mendalam dari ruang permasalahan. Generate & test juga dapat dilakukan dengan pembangkitan solusi secara acak, tetapi tidak ada jaminan solusinya akan ditemukan.

Hill Climbing

Hill Climbing berbeda Generate-and-Test, yaitu pada feedback dari prosedur test untuk membantu pembangkit menentukan yang langsung dipindahkan dalam ruang pencarian. Dalam prosedur Generate & test , respon fungsi pengujian hanya ya atau tidak. Tapi jika pengujian ditambahkan dengan atauran fungsi-fungsi yang menyediakan estimasi dari bagaimana mendekati state yang diberikan ke state tujuan, prosedur pembangkit dapat mengeksplorasi ini sebagaimana ditunjukkan di bawah. HC sering digunakan jika terdapat fungsi heuristic yang baik untuk mengevaluasi state. Sebagai contoh, anda berada di sebuah kota yang tidak dikenal, tanpa peta dan anda ingin menuju ke pusat kota. Cara sederhana adalah gedung yang tinggi. Fungsi heuristics-nya adalah jarak antara lokasi sekarang dengan gedung yang tinggi dan state yang diperlukan adalah jarak yang terpendek.

Ø  Tactile & Strategic
Tactical Pathfinding merupakan salah satu algoritma pencarian jalur yang dapat melakukan pencarian jalur terpendek dengan perhitungan bobot ancaman. Implementasi algoritma tactical pathfinding dapat memberikan gerakan taktis pada non-player character. Algoritma tactical pathfinding dilakukan berdasarkan algoritma pencarian jalur berdasarkan A* ditambah perhitungan bobot.

Strategic Deciders adalah komponen yang secara konseptual di tingkat tertinggi abstraksi. Komponen ini harus memutuskan strategi untuk karakter yang didasarkan pada kondisi saat ini dan memori. Pada tingkat berikutnya, Tactic Deciders merencanakan bagaimana membuat strategi yang dipakai sekarang dapat berjalan dengan baik. Executors atau pelaksana kemudian menerjemahkan keputusan dari tactical deciders untuk perintah tingkat  rendah (low-level commands).

Referensi:

#PetGame (Konsep Pembuatan Script Game)

KONSEP PEMBUATAN SCRIPT GAME

Untuk kali ini saya akan sedikit membahas mengenai konsep pembuatan script game. Di dalam game sendiri terdapat berbagai komponen yaitu:

1. Grafik
Merupakan suatu hal yang penting dalam game, dimana grafik ini akan membuat game menjadi daya tarik user untuk memainkan game. Semakin bagus grafik maka game tersebut semakin seperti dalam  dunia nyata.

2. Suara
Suara adalah salah satu komponen utama game karena dengan adanya suara pada game maka game tersebut akan menarik sehingga kita dapat merasakan kondisi dalam game tersebut.

3. AI(kecerdasan Buatan)
AI(artificial Inteligence) adalah komponen game yang dapat membuat game tersebut menjadi lebih menantang. Dengan menggunakan AI, game dapat berpikir untuk mengalahkan pemain sehingga membuat game lebih seru.

4. Skenario Game
Merupakan skenario dalam game, si pemain seolah-olah bermain sesuai dengan petunjuk yang ada di game tersebut, sehingga dapat dikatakan game tersebut memiliki cerita sehingga membuat pemain lebih asyik memainkan game tersebut

5. Multiplayer
Ppemain dapat bermain dengan teman-temannya dan orang lain sehingga game itu dapat dimainkan lebih dari 1 orang. dengan kata lain, multiplayer adalah sebuah mode dalam game dimana game dimainkan oleh pemain lainnya sehingga bermain game secara bersama-sama.


Game sendiri memiliki dua cara dalam pembuatan game, yaitu dengan membuat sendiri programnya atau dengan menggunakan game maker yang hanya tinggal drag and drop saja, dan dengan membuat script alias ngoding sendiri.
Pembuatan script game bisa dilakukan dengan berbagai bahasa pemrograman, contohnya yang paling sering dipakai adalah bahsa C++, VB, Java, dll.
Hal - hal yang perlu diperhatikan :

1. Speed 
Bahasa scripting untuk game harus mampu berjalan secepat mungkin. Jika kita berniat untuk menggunakan banyak script untuk perilakukarakter dan kejadian di level game, maka script akan perlu untuk mengeksekusi sebagai bagian dari loop game utama.

2. Kompilasi dan Interpretasi (penyusunan dan penafsiran)
Penafsiran bahasa diambil melalui formatteks. Interpreter melihat setiap baris, penyusunan bekerja sesuai yang maksud dari script, dan melakukan tindakan yang spesifik. Bahasa byte-terkompilasi dikonversi dari teks ke formatinternal, yang disebut byte code. Kode byte biasanya jauh lebih padat daripada format teks.Karena kode byte dalam suatu formatdioptimalkan ketika dieksekusi, agar dapat berjalan lebih cepat.

3. Ekstensibilitas dan Integrasi
Sebuah script yang mengendalikan karakter, misalnya, harus mampu untuk menanyai game untuk mencaritahu apa yang bisa dilihat dan kemudian membiarkan game tahu apa yang akan dilakukansebagai aksinya.

4. Re-Entrancy (ikut serta ulang)
Fungsi ini sering berguna untuk memanggilscript menjadi diikutsertakan ulang. Mereka dapat berjalan untuk sementara waktu, dan ketikaanggaran waktu telah habis script akan dapat ditunda. Sebuah script untuk mengendalikan sebuah karakter, misalnya, mungkin memiliki lima tahapan yang berbeda (memeriksa situasi,memeriksa kesehatan, menentukan gerakan,rencana rute, dan melaksanakan gerakan). Ini dapat dimasukkan dalam satu script yang menghasilkan penyekat antara setiap bagian.Kemudian masing-masing akan berjalan dengan setiap lima frame, dan beban dari eksekusi AI akan di distribusikan

5. Embedding (Penanaman)
Embedding berhubungan dengan ekstensibilitas.Sebuah bahasa yang tertanam dirancang untuk dimasukkan ke dalam program lain. Dalam game, sistemscripting perlu dikontrol dari dalam program utama.Game yang menentukan jalannya script harusdijalankan dan harus dapat memberitahu mesin terkait bahasa scripting yang cocok untuk memproses scripttersebut.

6. Open Source
Bahasa yang open source yaitu bahasa yang bisa di pakai di berbagai operasi sistem. Bahasa seperti ini contohnya C++, Java. Sebaiknya dalam membuat script game menggunakan bahasa yang open source, agar aplikasi game dapat dipakai oleh pengguna opersi sistem apapun. 

Scenario


Scenario game adalah langkah awal dalam membuat sebuah game, dengan scenario game dapat mempermudah kita menyelesaikan game yang akan kita buat. Scenario game merupakan sebuah cerita khusus yang melatarbelakangi kejadian-kejadian dalam game. Perbedaan scenario dengan scenario game adalah kalau scenario itu merupakan sekuens linier dari suatu adegan adegan, turn around point, dialog, dan seterusnya; scenario game adalah gabungan dokumen yang mendiscriptsikan secara kompleks semua segi game yang direncanakan. Konsep dalam scenario mencakup prinsip-prinsip dasar, gaya game, kerangka peraturan, sinopsis cerita (kalau ada cerita), karakteristik game, contoh misi, atau situasi-situasi dalam game dan bisa juga diferensiasi perangkat pengguna atau ada eek-efek khusus serta akhirnya unsur-unsur spesifik yang menjadi andalan pencipta. Dalam penutup sinopsis seharusnya dicantumkan daftar unsur yang unik dan orisinil serta faktor-faktor yang bisa dijadikan daya jual tinggi bagi judul tersebut. Kalau konsep sudah diterima, artinya sudah disetujui produser, dinilai positif oleh tim dan sebagainya, desainer game mulai menulis dengan documents.

Tidak ada patokan umum apa saja yang harus menjadi bagian scenario game, karena ada banyak perbedaan tergantung projectnya. Tetapi dalam satu hal semua dokumen sama, harus mendescriptsikan game secara kompleks maupun mendetail. Setelah membaca design document, anda seharusnya memiliki gambaran lengkap tentang produk akhir. Salah satu dokumen biasanya menjelaskan mekanisme game. Ada descriptsi lokasi secara lisan maupun dalam sketsa, scenario cerita, bisa disebutkan diferensiasi perangkat pengguna. Singkatnya, dalam struktur dokumen-dokumen ini seharusnya terdapat seluruh materi yang mencakup seluruh aspek game. Baru berdasarkan scenario game yang lengkap bisa ditulis spesifikasi untuk rancangan engine atau modifikasi engine yang sudah ada, dan rencana produksi. Bagian akhir dari scenario game adalah catatan-catatan desainer game, di mana dicantumkan misalnya ide-ide susulan atau perubahan yang dilakukan berdasarkan hasil tes, dan seterusnya.


Script


Script (script) adalah semacam bahasa pemrograman dalam tingkat kesulitan yang lebih rendah, tanpa aplikasi hasil kompilasi interpreter, script biasanya disisipkan ke dalam bahasa pemrograman yang lebih kompleks dan hasil script digunakan oleh bahasa pemrograman yang lebih kompleks itu.

Contohnya ialah penyisipan script assembly ke dalam program Pascal untuk mengakses hardware pada level bahasa tingkat rendah. Script merupakan kumpulan sintaks bahasa pemrograman yang siap untuk di-compile. Untuk mengetahui tentang script, disini ada sedikit rangkuman tentang script :
Script adalah bahasa yang digunakan untuk menerjemahkan setiap perintah dalam situs yang pada saat di akses. 
Jenis script sangat menentukan statis, dinamis, atau interaktifnya sebuah situs. 
Semakin banyak script yang digunakan maka akan terlihat semakin dinamis, dan interaktif serta terlihat lebih bagus. 
Bahasa dasar yang di pakai setiap situs adalah HTM. 
Macam-macam script, PHP, ASP, JSP, Java Script, Java Applets, VBScript.


Storyboard


Storyboard adalah visualisasi ide dari aplikasi yang akan dibangun, sehingga dapat memberikan gambaran dari aplikasi yang akan dihasilkan. Storyboard dapat dikatakan juga visual script yang akan dijadikan outline dari sebuah project, ditampilkan shot by shot yang biasa disebut dengan istilah scene. Storyboard sekarang lebih banyak digunakan untuk membuat kerangka pembuatan websites dan project media interaktif lainnya seperti iklan, film pendek, games, media pembelajaran interaktif ketika dalam tahap perancangan /desain.

Salah satu keuntungan menggunakan Storyboard adalah dapat membuat pengguna untuk mengalami perubahan dalam alur cerita untuk memicu reaksi atau ketertarikan yang lebih dalam. Kilas balik, secara cepat menjadi hasil dari pengaturan Storyboard secara kronologis untuk membangun rasa penasaran dan ketertarikan.

Seorang pembuat Storyboard harus mampu menceritakan sebuah cerita yang bagus. Untuk mencapainya, mereka harus mengetahui berbagai film, dengan pengertian tampilan yang bagus, komposisi, gambaran berurut dan editing. Mereka harus mampu untuk bekerja secara sendiri atau dalam sebuah bagian tiam. Mereka harus mampu menerima arahan dan juga bersiap membuat perubahan terhadap hasil kerja mereka. Untuk project tertentu, pembuat Storyboard memerlukan ketrampilan menggambar yang bagus dan kemampuan beradaptasi terhadap gaya yang bermacam.




Semoga bermanfaat bagi yang membacanya

DAFTAR PUSTAKA: