Wednesday, May 15, 2013

PENGANTAR KOMPUTASI MODERN (IV)


Komputasi Paralel


adalah salah satu teknik melakukan komputasi secara bersamaan denganmemanfaatkan beberapa komputer secara bersamaan. Biasanyadiperlukan saat kapasitas yangdiperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar ataupun karenatuntutan proses komputasi yang banyak. Untuk melakukan aneka jenis komputasi paralel inidiperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang dihubungkandengan jaringan dan mampu bekerja secara paralel untuk menyelesaikan satu masalah.
Untuk itudiperlukan aneka perangkat lunak pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai harus membuat pemrograman paralel untuk merealisasikan komputasi.
Pemrograman paralel
adalah teknik pemrograman komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik dalam komputer dengan satu (prosesor tunggal) ataupun banyak (prosesor ganda dengan mesin paralel) CPU. Tujuan utama dari pemrograman paraleladalah untuk meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan.
Komputasi paralel membutuhkan:
· algoritma
· bahasa pemrograman
· compiler
Sebagai besar komputer hanya mempunyai satu CPU, namun ada yang mempunyai lebih darisatu. Bahkan juga ada komputer dengan ribuan CPU. Komputer dengan satu CPU dapatmelakukan parallel processing dengan menghubungkannya dengan komputer lain pada jaringan. Namun, parallel processing ini memerlukan software canggih yang disebut distributed processing software.Parallel processing berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program sekaligus. Parallel processing disebut juga parallel computing.

Jenis-Jenis Komputer Paralel
                Berdasarkan tingkatan  perangkat keras yang mendukung paralelisme, secara umum komputer-komputer paralel dapat diklasifikasikan:
1. Multicore processing
Merupakan prosesor yang memiliki beberapa unit pengeksekusi. Sebuah prosesor multicore dapat melakukan beberapa instruksi per siklus dari beberapa aliran instruksi.
2. Symmetric multiprocessing
Merupakan sebuah sistem komputer dengan beberapa prosesor yang identik, dapat menggunakan struktur berbagi memori atau memori tersendiri yang saling terhubung melalui bus.
3. Distributed computing
Merupakan sebuah sistem komputer dengan memori terdistribusi, dimana masing-masing elemen pemrosesan dihubungkan oleh jaringan.
4. Cluster computing
Merupakan sekumpulan komputer yang bekerja sama,dihubungkan oleh jaringan,  sehingga dapat dipandang sebagai sebuah kesatuan, cluster komputer ini dikoordinasi oleh sebuah komputer induk yang bertugas untuk mendistribusikan pekerjaan kepada masing-masing komputer lainnya.
5. Massive parallel processing
Merupakan sebuah komputer tunggal dengan banyak prosesor yang terhubung dalam sebuah jaringan. Di dalam MPP, tiap CPU mempunyai memory tersendiri, sistem operasi dan aplikasi yang sama. Tiap subsistem berkomunikasi satu dengan yang lainnya melalui interkoneksi berkecepatan tinggi.
6. Grid computing
Merupakan bentuk pemrosesan paralel yang paling terdistribusi. Grid computing memanfaatkan Internet sebagai saluran komunikasi antar komputer untuk menyelesaikan suatu permasalahan.
7. Specialized parallel computer
Komputer paralel yang dikhususkan untuk menyelesaikan tugas khusus.

PENGANTAR KOMPUTASI MODERN (III)

 Komputasi Quantum

                Komputasi kuantum adalah bidang studi difokuskan pada teknologi komputer berkembang berdasarkan prinsip-prinsip teori kuantum , yang menjelaskan sifat dan perilaku energi dan materi pada kuantum (atom dan subatom) tingkat. Pengembangan komputer kuantum , jika praktis, akan menandai lompatan maju dalam kemampuan komputasi jauh lebih besar daripada yang dari sempoa ke modern superkomputer , dengan keuntungan kinerja di alam miliar kali lipat dan seterusnya. Komputer kuantum, mengikuti hukum fisika kuantum, akan memperoleh kekuatan pengolahan yang besar melalui kemampuan untuk berada di beberapa negara, dan untuk melakukan tugas-tugas menggunakan semua kemungkinan permutasi secara bersamaan. kini pusat penelitian di komputasi kuantum termasuk MIT, IBM, Oxford University, dan Los Alamos National Laboratory.

                Unsur-unsur penting dari komputasi kuantum berasal dengan Paul Benioff, bekerja di Argonne National Labs, pada tahun 1981. Dia berteori sebuah operasi komputer klasik dengan beberapa prinsip kuantum mekanik. Tapi secara umum diterima bahwa David Deutsch dari Universitas Oxford memberikan dorongan penting untuk penelitian komputasi kuantum. Pada tahun 1984, ia berada di sebuah konferensi teori komputasi dan mulai bertanya-tanya tentang kemungkinan merancang sebuah komputer yang didasarkan hanya pada aturan kuantum, kemudian diterbitkan kertas terobosan beberapa bulan kemudian. Dengan ini, lomba mulai mengeksploitasi ide-idenya. Namun, sebelum kita menggali ke dalam apa yang dia mulai, itu bermanfaat untuk melihat pada latar belakang dunia kuantum.

Teori Quantum
                perkembangan teori kuantum mulai tahun 1900 dengan presentasi oleh Max Planck ke Himpunan Fisika Jerman, di mana ia memperkenalkan ide bahwa energi ada dalam unit individu (yang disebut "kuanta"), seperti halnya masalah. Selanjutnya perkembangan oleh sejumlah ilmuwan selama tiga puluh tahun berikutnya menyebabkan pemahaman modern tentang teori kuantum.

Essential Elements Teori Quantum:
                Energi, seperti materi, terdiri dari unit diskrit, bukan hanya sebagai gelombang terus menerus. Dasar partikel dari kedua energi dan materi, tergantung pada kondisi, mungkin berperilaku seperti baik partikel atau gelombang. Gerakan partikel dasar secara inheren acak, dan, dengan demikian, tak terduga. Pengukuran simultan dari dua nilai komplementer, seperti posisi dan momentum suatu partikel dasar, adalah inescapably cacat, nilai yang lebih tepat diukur, semakin cacat akan menjadi pengukuran nilai lain.


Perkembangan lebih lanjut Teori Quantum
                Niels Bohr mengusulkan interpretasi Copenhagen dari teori kuantum, yang menyatakan bahwa partikel adalah apa pun yang diukur harus (misalnya, gelombang atau partikel a) tetapi itu tidak dapat dianggap memiliki sifat tertentu, atau bahkan ada, sampai diukur. Singkatnya, Bohr mengatakan bahwa realitas obyektif tidak ada. Ini berarti dengan prinsip yang disebut superposisi yang menyatakan bahwa sementara kita tidak tahu apa keadaan objek apapun, sebenarnya di semua negara yang mungkin secara bersamaan, selama kita tidak melihat untuk memeriksa.

                Untuk menggambarkan teori ini, kita dapat menggunakan analogi yang terkenal dan agak kejam Schrodinger's Cat. Pertama, kami memiliki kucing hidup dan tempatkan dalam kotak memimpin tebal. Pada tahap ini, tidak ada pertanyaan bahwa kucing masih hidup. Kami kemudian melemparkan dalam botol sianida dan segel kotak. Kami tidak tahu apakah kucing hidup atau jika telah melanggar kapsul sianida dan mati. Karena kita tidak tahu, kucing adalah baik mati dan hidup, menurut hukum kuantum - dalam superposisi negara. Hanya ketika kita membuka kotak dan melihat apa kondisi kucingnya ada di bahwa superposisi terputus, dan kucing harus baik hidup atau mati.

                Interpretasi kedua adalah teori kuantum atau banyak-dunia teori multiverse. Ini memegang bahwa segera setelah potensi ada untuk objek apapun untuk berada dalam keadaan apapun, alam semesta itu transmute objek menjadi serangkaian alam semesta paralel sama dengan jumlah negara yang mungkin di mana objek dapat eksis, dengan alam semesta masing-masing berisi negara yang unik mungkin satu objek itu. Selain itu, ada mekanisme untuk interaksi antara alam semesta yang entah bagaimana memungkinkan semua negara untuk dapat diakses dengan cara tertentu dan untuk semua negara mungkin akan terpengaruh dalam beberapa cara. Stephen Hawking dan almarhum Richard Feynman adalah di antara para ilmuwan yang telah menyatakan preferensi untuk teori banyak-dunia.

                Yang pernah satu argumen memilih, prinsip bahwa, dalam beberapa cara, satu partikel bisa ada di berbagai negara membuka implikasinya yang mendalam untuk komputasi.
Sebuah Perbandingan Klasik dan Quantum Computing
mengandalkan komputasi klasik, pada tingkat teratas, pada prinsip-prinsip yang diungkapkan oleh aljabar Boolean, beroperasi dengan (biasanya) 7-mode gerbang logika prinsip, meskipun mungkin ada dengan hanya tiga mode (yang DAN, TIDAK, dan COPY). Data harus diproses dalam keadaan biner eksklusif pada setiap saat - yaitu, baik 0 (off / false) atau 1 (on / true). Nilai-nilai adalah digit biner, atau bit. Jutaan transistor dan kapasitor di jantung komputer hanya bisa dalam satu negara pada titik apapun. Sedangkan saat itu setiap transistor atau kapasitor perlu baik dalam 0 atau 1 sebelum beralih menyatakan sekarang diukur dalam miliar detik, masih ada batas untuk berapa cepat perangkat ini dapat dibuat untuk beralih negara. Ketika kami maju ke sirkuit yang lebih kecil dan lebih cepat, kita mulai mencapai batas fisik material dan ambang untuk hukum klasik fisika untuk diterapkan. Di luar ini, dunia kuantum mengambil alih, yang membuka potensi sebagai besar sebagai tantangan yang disajikan.
                Komputer Quantum, sebaliknya, dapat bekerja dengan modus logika gerbang-dua: XOR dan mode kami akan menelepon QO1 (kemampuan untuk mengubah 0 menjadi superposisi 0 1, dan gerbang logika yang tidak bisa eksis dalam komputasi klasik) . Dalam komputer kuantum, sejumlah elemen partikel seperti elektron atau foton dapat digunakan (dalam praktek, keberhasilan juga telah dicapai dengan ion), baik dengan biaya atau polarisasi bertindak sebagai representasi dari 0 dan / atau 1. Setiap partikel ini dikenal sebagai bit kuantum, atau qubit, sifat dan perilaku partikel-partikel ini membentuk dasar perhitungan kuantum. Dua aspek yang paling relevan fisika kuantum adalah prinsip-prinsip superposisi dan belitan.

Superposisi
                Bayangkan sebuah qubit sebagai elektron dalam medan magnet. spin elektron tersebut mungkin baik sejalan dengan bidang, yang dikenal sebagai negara-up spin, atau sebaliknya ke lapangan, yang dikenal sebagai negara-down spin. Mengubah spin elektron dari satu negara ke lain dicapai dengan menggunakan pulsa energi, seperti dari laser - mari kita berkata, bahwa kita menggunakan 1 unit energi laser. Tapi bagaimana kalau kita hanya menggunakan setengah unit energi laser dan benar-benar mengisolasi partikel dari segala pengaruh eksternal? Menurut hukum kuantum, partikel kemudian memasuki superposisi negara, di mana ia berperilaku seolah-olah itu di kedua negara secara bersamaan. Setiap qubit dimanfaatkan bisa mengambil suatu superposisi dari kedua 0 dan 1. Dengan demikian, jumlah perhitungan bahwa sebuah komputer kuantum dapat melakukan adalah 2 ^ n, dimana n adalah jumlah qubit yang digunakan. Sebuah komputer kuantum terdiri dari 500 qubit akan memiliki potensi untuk melakukan 2 ^ 500 perhitungan dalam satu langkah. Ini adalah nomor awesome - 2 ^ 500 adalah atom jauh lebih daripada yang terdapat di alam semesta (ini pemrosesan paralel benar - klasik komputer saat ini, bahkan disebut prosesor paralel, masih hanya benar-benar melakukan satu hal pada suatu waktu: hanya ada dua atau lebih dari mereka melakukannya). Tapi bagaimana partikel-partikel ini berinteraksi dengan satu sama lain? Mereka akan melakukannya melalui belitan kuantum.

                Keterkaitan Partikel (seperti foton, elektron, atau qubit) yang berinteraksi di beberapa titik mempertahankan jenis koneksi dan dapat dijerat dengan satu sama lain dalam pasangan, dalam proses yang dikenal sebagai korelasi. Mengetahui keadaan spin dari satu partikel terjerat - atas atau bawah - memungkinkan seseorang untuk mengetahui bahwa spin dari pasangannya adalah dalam arah yang berlawanan. Bahkan lebih menakjubkan adalah pengetahuan yang, karena fenomena superpostition, partikel diukur tidak memiliki arah spin tunggal sebelum diukur, namun secara bersamaan di kedua spin-up dan keadaan spin-down. Keadaan spin dari partikel yang diukur diputuskan pada saat pengukuran dan dikomunikasikan kepada partikel berkorelasi, yang sekaligus mengasumsikan berputar arah berlawanan dengan yang partikel diukur. Ini adalah fenomena nyata (Einstein menyebutnya "aksi seram pada jarak"), mekanisme yang tidak bisa, belum, dijelaskan dengan teori apapun - itu hanya harus diambil seperti yang diberikan. Keterkaitan kuantum memungkinkan qubit yang dipisahkan oleh jarak yang luar biasa untuk berinteraksi satu sama lain secara instan (tidak terbatas pada kecepatan cahaya). Tidak peduli seberapa besar jarak antara partikel berkorelasi, mereka akan tetap terjerat selama mereka terisolasi.

               
                Secara keseluruhan, superposisi kuantum dan belitan menciptakan daya komputasi sangat ditingkatkan. Apabila suatu register 2-bit di komputer biasa dapat menyimpan hanya satu dari empat konfigurasi biner (00, 01, 10, atau 11) pada waktu tertentu, daftar 2-qubit dalam sebuah komputer kuantum dapat menyimpan semua empat nomor-nomor secara bersamaan, karena qubit masing-masing mewakili dua nilai. Jika qubit yang lebih banyak, peningkatan kapasitas diperluas secara eksponensial.

Quantum Programming

                Mungkin bahkan lebih menarik daripada daya semata-mata komputasi kuantum adalah kemampuan yang menawarkan untuk menulis program dengan cara yang sama sekali baru. Sebagai contoh, sebuah komputer kuantum bisa menggabungkan urutan program yang akan di sepanjang baris "mengambil semua superposisi dari semua perhitungan sebelumnya" - sesuatu yang tidak berarti dengan komputer klasik - yang akan memungkinkan cara-cara yang sangat cepat untuk memecahkan masalah matematika tertentu , seperti faktorisasi jumlah besar, salah satu contoh yang kita bahas di bawah ini.

                Ada dua keberhasilan penting sejauh ini dengan pemrograman kuantum. Yang pertama terjadi pada tahun 1994 oleh Peter Shor, (sekarang di AT & T Labs) yang mengembangkan sebuah algoritma kuantum yang efisien bisa menguraikan pd pengali jumlah besar. Ini pusat pada sistem yang menggunakan teori bilangan untuk memperkirakan periodisitas dari urutan nomor besar. Terobosan besar lainnya terjadi dengan Lov Grover dari Bell Labs pada tahun 1996, dengan algoritma yang sangat cepat yang terbukti menjadi yang tercepat mungkin untuk mencari melalui database tidak terstruktur. Algoritma ini sangat efisien sehingga hanya membutuhkan rata-rata, sekitar akar N persegi (dimana N adalah jumlah total elemen) pencarian untuk menemukan hasil yang diinginkan, sebagai lawan pencarian dalam komputasi klasik, yang pada kebutuhan rata-rata N / 2 pencarian.

Masalah Dan Beberapa Solusi
Beberapa masalah dengan komputasi kuantum adalah sebagai berikut:
1. Interferensi - Selama tahap perhitungan perhitungan kuantum, gangguan sekecil apapun dalam sebuah sistem kuantum (mengatakan foton tersesat atau gelombang radiasi EM) menyebabkan perhitungan kuantum runtuh, sebuah proses yang dikenal sebagai de-koherensi. Sebuah komputer kuantum harus benar-benar terisolasi dari semua gangguan eksternal selama tahap perhitungan. Beberapa keberhasilan telah dicapai dengan penggunaan qubit dalam medan magnet kuat, dengan penggunaan ion.

2. Koreksi kesalahan - Karena benar-benar mengisolasi sistem kuantum terbukti sangat sulit, sistem koreksi kesalahan untuk perhitungan kuantum telah dikembangkan. Qubit tidak bit data digital, sehingga mereka tidak dapat menggunakan konvensional (dan sangat efektif) koreksi kesalahan, seperti metode triple berlebihan. Mengingat sifat dari komputasi kuantum, koreksi kesalahan ultra kritis - bahkan satu kesalahan dalam perhitungan dapat menyebabkan validitas perhitungan seluruh runtuh. Telah ada kemajuan di bidang ini, dengan koreksi kesalahan algoritma dikembangkan yang memanfaatkan 9 qubit (1 komputasi dan 8 pemasyarakatan). Baru-baru ini, ada sebuah terobosan oleh IBM yang membuat hubungannya dengan total 5 qubit (1 komputasi dan 4 pemasyarakatan).

3. memperhatikan Output - erat terkait dengan di atas dua, mengambil data keluaran setelah perhitungan kuantum adalah risiko selesai merusak data. Dalam sebuah contoh dari sebuah komputer kuantum dengan 500 qubit, kita memiliki 1 dalam 2 ^ 500 kesempatan mengamati output benar jika kita mengukur output. Jadi, apa yang dibutuhkan adalah suatu metode untuk memastikan bahwa, segera setelah semua perhitungan dibuat dan tindakan observasi berlangsung, nilai diamati akan sesuai dengan jawaban yang benar. Bagaimana hal ini dapat dilakukan? Ini telah dicapai oleh Grover dengan algoritma pencarian database-nya, yang bergantung pada bentuk khusus "gelombang" dari kurva probabilitas yang melekat dalam komputer kuantum, yang menjamin, setelah semua perhitungan selesai, tindakan pengukuran akan melihat keadaan kuantum decohere ke jawaban yang benar.

4. Meskipun ada banyak masalah untuk mengatasi, terobosan dalam 15 tahun terakhir, dan terutama dalam 3 terakhir, telah membuat beberapa bentuk komputasi kuantum praktis tidak layak, tapi ada banyak perdebatan mengenai apakah ini kurang dari satu dekade lagi atau seratus tahun ke depan. Namun, potensi bahwa teknologi ini menawarkan banyak menarik minat luar biasa baik dari pemerintah dan sektor swasta. aplikasi Militer mencakup kemampuan untuk memecahkan kunci enkripsi melalui pencarian kekerasan, sedangkan aplikasi sipil berkisar dari pemodelan DNA untuk analisis ilmu material yang kompleks. Ini adalah potensi ini yang cepat mendobrak hambatan untuk teknologi ini, tapi apakah semua hambatan bisa pecah, dan ketika, sangat banyak pertanyaan terbuka.

PENGANTAR KOMPUTASI MODERN (II)


Komputasi Cloud

            
Untuk anda yang terbiasa berada dalam dunia IT sehari-harinya dan khususnya untuk orang yang selalu bekerja dengan menggunakan database, maka istilah Cloud Computing ini sudah tidak asing lagi untuk anda. Karena Cloud Computing itu sendiri pada saat ini banyak digunakan oleh perusahaan-perusahaan dalam mengolah dan mengatur database dari perusahaan itu sendiri, karena selain lebih efisien dalam biaya Cloud Computing ini cukup mampu untuk menampung data dalam jumlah yang terbilang banyak dan besar.
            Ide awal dari cloud computing muncul pada tahun 1960-an, saat itu John McCarthy, pakar komputasi MIT yang dikenal juga sebagai salah satu pionir intelejensia buatan, menyampaikan visi bahwa "suatu hari nanti komputasi akan menjadi infrastruktur publik--seperti listrik dan telpon".
            Namun baru di tahun 1995 lah, Larry Ellison, pendiri Oracle , memunculkan ide "NetworkComputing" sebagai kampanye untuk menggugat dominasi Microsoft yang saat itu merajai desktop computing dengan Windows 95-nya.
            Larry Ellison menawarkan ide bahwa sebetulnya user tidak memerlukan berbagai software, mulai dari Sistem Operasi dan berbagai software lain, dijejalkan ke dalam PC Desktop mereka. Hingga singkatnya pada awal abd ke 21, Kehadiran berbagai teknik baru dalam pengembangan perangkat lunak di awal abad 21, terutama di area pemrograman berbasis web disertai peningkatan kapasitas jaringan internet, telah menjadikan situs-situs internet bukan lagi berisi sekedar informasi statik. Tapi sudah mulai mengarah ke aplikasi bisnis yang lebih kompleks.
            Dan seperti sudah sedikit disinggung sebelumnya, popularitas Cloud Computing semakin menjulang saat di awal 2000-an, Marc Benioff ex VP di Oracle, meluncurkan layanan aplikasi CRM dalam bentuk Software as a Service, Salesforce.com, yang mendapatkan sambutan gegap gempita.
            Dengan misinya yang terkenal yaitu "The End of Software", Benioff bisa dikatakan berhasil mewujudkan visi bos-nya di Oracle, Larry Elisson, tentang Network Computing menjadi kenyataan satu dekade kemudian.
            Selanjutnya jargon Cloud Computing bergulir seperti bola salju menyapu dunia teknologi informasi. Dimulai di tahun 2005, mulai muncul inisiatif yang didorong oleh nama-nama besar seperti Amazon.com yang meluncurkan Amazon EC2 (Elastic Compute Cloud), Google dengan Google App Engine-nya, tak ketinggalan raksasa biru IBM meluncurkan Blue Cloud Initiative dan lain sebagainya.
            Akhirnya seperti yang kita saksikan sekarang, seluruh nama-nama besar terlibat dalam pertarungan menguasai awan ini. Bahkan pabrikan Dell, pernah mencoba mempatenkan istilah "Cloud Computing", namun ditolak oleh otoritas paten Amerika.
Dan beberapa hal yang didapat pada Cloud Computing yaitu;
1. Agility (Kecepatan), berkembang dengan pengguna (user) untuk dengan cepat dan murah untuk melengkapi kemajuan teknologi infrastruktur dan sumber daya.
2. Cost (Biaya), diakui secara besar mengurangi biaya dan pengeluaran modal dikonversikan pada pembelanjaan operasional. Ini pura-pura menurunkan halangan untuk masuk, seperti infrastruktur secara khusus disediakan oleh pihak ketiga dan tidak perlu dibeli untuk penggunaan sesekali maupun penggunaan komputer secara intensif. Harga pada sebuah basis utility computing (Keperluan Komputerisasi) yang di fine-grained (diperbaiki) dengan penggunaan berdasarkan pilihan dan sedikit kemampuan IT diperlukan untuk implementasi dalam lingkungan sediri.
3. Device and location independence (alat dan kebebasan lokasi/tempat), memungkinkan pengguna untuk mengakses suatu sistem menggunakan sebuah web browser tanpa melihat lokasi/tempat dan alat apa yang sedang mereka gunakan (misalnya PC, Handphone, Laptop, dan lain-lain). Seperti prasarana yang off-site (secara khusus disediakan oleh pihak ketiga) dan diakses melalui internet, pengguna (user) dapat terhubung dimana saja.
4. Multi-tenancy (Sewa menyewa besar), memperbolehkan pengguna berbagi sumber dan biaya melampaui sebuah kelompok pengguna (user) yang besar dengan mempertimbangkan:
· Centralization (Sentralisasi), dari infrastuktur pada lokasi dengan biaya yang lebih murah (Seperti pada komplek perumahan Real Estate, kelistrikan, dan lain-lain)
Peak-load capacity (Kapasitas beban puncak) meningkat (pengguna tidak perlu seorang engineer untuk kemungkinan kapasitas beban tertingggi).
· Utilization and efficiency (Pemanfaatan dan efisiensi) peningkatan untuk sistem yang sering dimanfaatkan 10% sampai 20%.
· Reliability (Ketahanan), meningkat melalui penggunaan situs yang banyak secara berlebihan, yang membuat Cloud Computing (Komputerisasi awan) cocok untuk kelangsungan bisnis dan pemulihan bencana. Meskipun begitu, banyak mayoritas layanan Cloud Computing (Komputerisasi awan) telah menderita keuntungan, dan pengelola IT dan bisnis suatu waktu dapat sedikit melakukannya ketika mereka terpengaruh.
· Scalability (Skalalisasi), melalui dynamic ("on-demand") berdasarkan permintaan ketentuan sumber daya pada sebuah fine-grained, berbasis self-service mendekati real-time oleh pengguna tanpa memerlukan engineer untuk beban puncak. Kinerja di monitor, secara konsisten dan arsitektur berpasangan dengan bebas dibangun menggunakan layanan web sebagai penghubung antar sistem.
· Security (Keamanan), secara khusus ditingkatkan berdasarkan sentralisasi data, meningkatkan jaminan keamanan sumber data, dan lain-lain, tapi perhatian dapat tetap dilakukan mengenai kehilangan kendali melalui kepastian sensitifitas data dan kekuangan dari keamanan untuk tempat penyimpanan data (stored kernels). Jaminan keamanan adalah sebaik atau lebih baik dari sistem tradisional, sebab penyedia layanan dapat mencurahkan SDM mereka untuk menyelesaikan masalah keamanan yang tentunya banyak pelanggan/pengguna tidak mampu melakukannya. Penyedia layanan secara khusus membukukan akses (Log Access), tetapi mengakses pembukuan audit (audit logs) menjadi sulit atau tidak mungkin. Lagipula, kompleksitas dari jaminan keamanan ditingkatkan sangat besar ketika data dibagikan malalui suatu area yang lebih luas dan / atau sejumlah alat (devices).
· Sustainability (ketahanan) datang ketika melalui peningkatan pemanfaatan sumber daya (improved resource utilization), sistem lebih efisien, dan kenetralan karbon (carbon neutrality). Meskipun begitu, komputer dan infrastruktur yang berhubungan adalah konsumen utama energi (consumers of energy).
· Maintenance (pemeliharaan) aplikasi Cloud Computing (Komputerisasi awan) lebih mudah untuk dipelihara, karena mereka tidak perlu di install pada masing-masing komputer pengguna (user). Mereka lebih mudah untuk mendukung dan diingkatkan ketika perubahan menjangkau klien dengan secara cepat.

Monday, April 8, 2013

PENGANTAR KOMPUTASI MODERN (I)


Teori Komputasi

            Komputasi sebetulnya bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma. Hal ini ialah apa yang disebut dengan teori komputasi, suatu sub-bidang dari ilmu komputer dan matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan menggunakan komputer.
Secara umum iIlmu komputasi adalah bidang ilmu yang mempunyai perhatian pada penyusunan model matematika dan teknik penyelesaiannumerik serta penggunaan komputer untuk menganalisis dan memecahkan masalah-masalah ilmu (sains). Dalam penggunaan praktis, biasanya berupa penerapan simulasi komputer atau berbagai bentuk komputasi lainnya untuk menyelesaikan masalah-masalah dalam berbagai bidang keilmuan, tetapi dalam perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang mendasar dalam ilmu.
Bidang ini berbeda dengan ilmu komputer (computer science), yang mengkaji komputasi, komputer dan pemrosesan informasi. Bidang ini juga berbeda dengan teori dan percobaan sebagai bentuk tradisional dari ilmu dan kerja keilmuan. Dalam ilmu alam, pendekatan ilmu komputasi dapat memberikan berbagai pemahaman baru, melalui penerapan model-model matematika dalam program komputer berdasarkan landasan teori yang telah berkembang, untuk menyelesaikan masalah-masalah nyata dalam ilmu tersebut.

            Ilmu atau sains berdasarkan obyek kajiannya dibedakan antara Fisika, Kimia, Biologi dan Geologi. Ilmu dapat pula digolongkan berdasarkan metodologi dominan yang digunakannya, yaitu ilmu pengamatan/percobaan (observational/experimental science), ilmu teori (theoretical science) dan ilmu komputasi (computational science). Yang terakhir ini bisa dianggap bentuk yang paling baru yang muncul bersamaan dengan perkembangan kekuatan pemrosesan dalam komputer dan perkembangan teknik-teknik metode numerik dan metode komputasi lainnya.
Dalam ilmu (sains) tradisional seperti Fisika, Kimia dan Biologi, penggolongan ilmu berdasarkan metodologi dominannya juga mewujud, yang ditunjukkan dengan munculnya bidang-bidang khusus berdasarkan penggolongan tsb. lengkap dengan jurnal-jurnal yang relevan untuk melaporkan hasil-hasil penelitiannya. Sebagai contoh dalam kimia, melengkapi kimia percobaan (experimental chemistry) dan kimia teori (theoretical chemistry), berkembang pula kimia komputasi (computational chemistry), seperti juga di bidang Biologi dikenal Biologi Teori (theoretical biology) serta Biologi Komputasi (computational biology), lengkap dengan jurnalnya seperti Journal of Computational Chemistry dan Journal of Computational Biology. Cara penggolongan yang digunakan berbeda dengan cara penggolongan lain berdasarkan obyek kajian, seperti penggolongan kimia atas Kimia Organik, Kimia Anorganik, dan Biokimia.


sumber: http://dwichiptaningsih.blogspot.com/2009/06/teori-komputasi.htmlhttp://ilmu-komputasi.blogspot.com/2010/02/komputasi.html;

Tuesday, October 9, 2012

Teori Pengantar Bisnis Informatika

      Perkembangan teknologi dan informasi saat ini menyebabkan perubahan pada budaya kita sehari-hari. Dewasa ini media elektronik menjadi salah satu media andalan untuk melakukan komunikasi dan bisnis. Meskipun penggunaan media elektronik ini belum dimengerti, akan tetapi desakan bisnis menyebabkan para pelaku bisnis mau tidak mau harus menggunakan media elektronik ini.
berbicara mengenai bisnis, pasti kita membicarakan mengenai untung atau rugi. Bisnis dan Informatika memiliki dua arti yang saling berbeda, tetapi jika kata tersebut di padukan memiliki suatu keterikatan yang mempunyai satu makna. Dalam pengertian yang sederhana bisnis informatika adalah suatu kegiatan yang dilakukan individu atau sekelompok orang yang memiliki nilai (value) dengan tujuan mendapatkan keuntungan (profit) yang dilakukan dengan bantuan teknologi informasi.

Aspek – Aspek Bisnis
• Keuntungan individu dan kelompok
• Penciptaan Nilai
• Penciptaan Barang dan Jasa
• Keuntungan melalui Transaksi

Fungsi Bisnis
• Fungsi Mikro (Kontribusi terhadap pihak yang berperan langsung)
• Fungsi Makro(Kontribusi terhadap pihak yang tidak berperan langsung)

      Peranan Teknlogi Informasi di bidang Bisnis
Di bidang bisnis baik perdagangan barang maupun jasa komputer peranan teknologi informasi akan sangat penting untuk kegiatan transaksi baik rutin, periodik, maupun insidental dan menyediakan banyak informasi dengan cepat dan tepat.

- Sistem Informasi Manajemen
Sistem informasi manajemen (Management Information System – MIS), merupakan sistem informasi yang sudah banyak diterapkan pada perusahaan yang bergerak di bidang perdagangan barang dan jasa baik pada perusahaan besar, menengah, atau perusahaan kecil. SIM dapat diterapkan pada semua tingkat atau level manajemen yang ada yaitu manajemen tingkat atas (top management), manajemen tingkat menengah (middle management), dan manajemen tingkat bawah (lower management).

- Di perusahaan dagang,
seperti department store, telah dipergunakan mesin cash register (mesin kasir) yang dilengkapi dengan kendali komputer sehingga mesin tersebut dapat dikendalikan oleh pihak manajer hanya dari ruang kerjanya secara cepat dan tepat, untuk scanning barcode kode barang dagangan, menghitung laba rugi, inventaris, dan sebagainya.

- Di bidang perbankan, 
salah satu solusi sistem informasi perbankan telah diperkenalkan oleh perusahaan besar seperti Hewlett-Packard (HP), yang bekerja sama dengan Infosys telah memperkenalkan solusi core banking, yang disebut Finacle kepada bank-bank di Indonesia. Finacle memberikan solusi bagi bank yang ingin melakukan up-grade terhadap sistem yang telah mereka miliki. Dengan menggunakan Finacle, up-grade sistem bisa dilaksanakan dengan resiko investasi maupun kegagalan migrasi yang rendah. Ini penting bagi bank-bank agar mampu menghadapi siklus bisnis yang selalu berubah. Dengan solusi terpadu ini – berupa software dan hardware, jaringan, sistem integrasi, serta opsi consulting dan outsourcing – bank juga akan memiliki nilai tambah sehingga menjadi lebih kompetitif.

Sumber: http://ekobudiarso33.wordpress.com/2011/10/20/pengantar-bisnis-informatika/ , http://nd4hqiut3.blogspot.com/2010/11/pengantar-bisnis-informatika.html 

Tuesday, July 3, 2012

Analisa Game "Total War: Shogun 2 -- Fall of The Samurai"


 Shogun 2 : Total War merupakan seri game Total War terbaru yang rilis di tahun 2011, dimana gameini bersetting di era Perang Saudara di Jepang pada abad ke-16. Secara keseluruhan, game ini bergenre Turn-Based Strategy pada umumnya (Single Player Mode) dan juga memiliki karakteristikReal-Time Strategy pada beberapa bagian dalam game (pada Single Player Mode dan Multi Player Mode). Game ini dirilis oleh perusahan SEGA dan dikembangkan oleh Creative Assembly, dan merupakan perkembangan daripada game Shogun : Total War sebelumnya, baik di bidang gameplay maupun di aspek grafisnya yang dahulu menggunakan grafis semi-3D dan sekarang menggunakan grafis full 3D to reality. Banyak perkembangan yang dirasakan dalam game ini, beberapa diantaranya adalah kondisi riil dalam penentuan taktik tiap klan yang dimainkan, kedekatan dengan dunia nyata terhadap taktik perang yang digunakan, dan kondisi perang dalam game yang terasa cukup riil dibandingkan seri terdahulunya.



Nilai Realitas Virtual

Terdapat banyak aspek dalam game ini yang dapat dikatakan memiliki “pendekatan” yang cukup besar dengan kondisi asli pada dunia nyata, sehingga dapat dinilai seberapa besar realitas virtualyang ada dalam game Shogun 2 : Total War ini. Berikut adalah beberapa contohnya:

-          Realitas fakta

Game ini menggunakan fakta sejarah Negara Jepang di abad ke-16 sebagai dasarnya, seperti nama-nama klan yang dapat dimainkan, peta Jepang pada saat itu, daerah awal kekuasaan klan tersebut, nama-nama jenderal yang ada dalam tiap-tiap klan, dan juga termasuk sifat-sifat tiap jenderal yang sudah dibuat dan dibentuk berdasarkan fakta sejarah yang ada. Selanjutnya, keadaan terrain atau lokasi peperangan dalam game berbentuk 3D dan disesuaikan dengan kondisi riil dimana lokasi tersebut berada di dunia nyata (di Jepang pada era ke-16).



-          Proses Sebab-Akibat

Sifat realitas virtual yang satu ini cukup terasa pada saat game ini dimainkan. Sebagai contoh, pada Single Player Mode, apabila kita mencoba untuk menyerang suatu daerah musuh, maka musuh yang merupakan AI komputer akan dapat mengambil tindakan yang sesuai dengan keadaan yang ada, dimana lawan dapat memutuskan untuk meninggalkan daerah tersebut dan langsung menyerah kepada pemain apabila dirasa sumber daya manusia tidak cukup untuk membela daerah tersebut, atau bahkan dapat memilih untuk bertahan dan berperang dengan pemain bila perlu (di sini, game akan beralih ke setting perang 3D). Contoh yang lain, apabila pemimpin suatu klan meninggal atau mati di medan perang, maka secara otomatis akan diangkat pemimpin baru klan yang berasal dari garis keturunan asli daripada pemimpin klan terdahulu, atau game akan langsung berakhir apabila tidak terdapat penerus daripada pemimpin klan sama sekali. Selain itu, AI komputer pun dapat memilih untuk menyerang daerah yang kita miliki apabila lawan merasa dirinya sudah tertekan, atau lawan merasa klan pemain sudah melemah berdasarkan informasi-informasi yang ada (informasi langsung atau informasi yang didapatkan dari mata-mata lawan). Persekutuan antarklan juga sangat berpengaruh, dimana persekutan antarklan tersebut dapat pecah apabila terjadi perseteruan, bahkan hingga terjadi peperangan apabila terjadi invasi dari suatu klan dalam persekutuan yang dapat memecah persekutuan tersebut.


-          Random Event

Banyak kondisi-kondisi atau kejadian-kejadian yang bersifat random dalam permainan ini. Kebanyakan random events ini terjadi seiring dalam kita bermain pada Single Player Mode. Salah satu contoh, terjadinya wabah kelaparan dalam suatu musim di daerah-daerah tertentu, dapat mengurangi populasi sumber daya manusia di wilayah tersebut, dan jelas saja mengurangi daya perkembangan daerah dan pada akhirnya mengurangi pemasukan untuk daerah-daerah yang terjangkit wabah tersebut. Selain itu, kematian beberapa karakter jenderal atau karakter lainnya dalam suatu klan yang tidak dapat diprediksikan, sehingga pemain juga dituntut untuk mempersiapkan secara matang penempatan daripada jenderal-jenderal klannya secara strategis.

-          Realitas Hukum Fisika

Hukum fisika dalam game ini dapat dilihat pada mode perang tiga dimensi, dimana peperangan dalam game ini terasa sangat riil dan cukup dekat dengan dunia nyata. Sebagai contoh, jarak lontar peluru meriam yang harus diperkirakan dengan seksama agar mengenai pasukan musuh (karena lintasan peluru meriam bersifat parabolik, sesuai dengan hukum fisika), atau perkiraan jarak tembak pasukan penembak agar mengenai pasukan musuh (sehingga pengaturan pasukan penembak tidak boleh terlalu jauh dengan musuh apabila ingin mengenai pasukan musuh). Pada peperangan di laut, arus ombak dan angin sangat memengaruhi arah pergerakan kapal perang, sehingga penempatan kapal-kapal pasukan harus dilakukan dengan seksama agar dapat bertahan maupun menyerang dengan baik.


-          Audio-Visual

Seperti yang sudah dikatakan sebelumnya, grafis 3D dalam game ini sudah sangat mendekati dunia nyata. Kita dapat melihat pada saat mode perang 3D, dimana terrain area dalam permainan sudah sangat bagus (padang rerumputan, bangunan, kobaran api, dan lain-lain) dengan pencahayaan dan banyangan yang sesuai (mengikuti realitas waktu perang; siang / malam, berlangsung dalam musim apa, dan sebagainya). Selain itu bila kita perhatikan secara seksama, maka kita dapat melihat bahwa raut wajah tiap-tiap pasukan berbeda satu sama lainnya, menambah aspek realitas ke dalam game ini.

Dalam aspek audio, dapat dilihat dari musik-musik background yang ada dalam game ini. Game ini memiliki puluhan Background Music (BGM) yang bertemakan collosal japanese yang selalu mengiringi pemain dalam bermain, disesuaikan dengan kondisi dan event yang sedang terjadi (sebagai contoh: apabila sedang dalam masa tenang maka akan diputar BGM yang syahdu, tetapi bila masuk masa perang akan diputar BGM yang bertempo cepat). Selain itu terdapat juga pembedaan suara-suara tiap karakter pasukan pada modus perang yang membuat suasana perang bertambah seperti dunia nyata.





Wednesday, April 25, 2012

GAME ALGORITHMS

Ketika bermain othello, demikian juga permainan-permainan lain seperti catur, shogi, igo dll., kita manusia berpikir dengan menggabungkan intuisi yang menggunakan perasaan dan perhitungan yang menggunakan otak. 

Pada sebuah posisi papan othello tertentu, mula-mula intuisi kita akan segera mengenali pola susunan keping di saat itu, ini adalah kemampuan pattern recognition yang inheren dimiliki oleh setiap manusia. Beberapa langkah yang jelas-jelas buruk atau 'dianggap' buruk segera dapat dikenali dan dihilangkan dari daftar langkah yang mungkin dilakukan (disebut possible moveslegal moves atau valid moves). Setelah itu barulah kita menghitung langkah-langkah sisanya yang 'terlihat' baik, dengan melakukan simulasi permainan di dalam kepala kita untuk setiap langkah, kemudian membandingkan untung-ruginya untuk menentukan langkah terbaik.

Misalnya di dalam sebuah posisi papan, ada 10 valid moves. Mula-mula intuisi kita akan menghapus 3 langkah yang jelas-jelas buruk, lalu 2 langkah lagi yang 'kelihatannya' buruk, dari daftar valid moves. Dengan demikian, hanya tinggal tersisa 5 langkah yang perlu diperhitungkan. Di sini, barulah kita melakukan simulasi permainan, ketika langkah 1 dilakukan maka lawan akan menjawab dengan langkah 1-1, 1-2, 1-3, ... Kalau kita melangkah dengan langkah 2 maka lawan akan menjawab dengan langkah 2-1, 2-2, 2-3, ... dst, sampai beberapa langkah ke depan (kedalaman tertentu) tergantung daya ingat kita.

Di sinipun intuisi manusia selalu berperan besar dalam mengenali pola-pola yang muncul di setiap kedalaman simulasi permainan untuk menghilangkan langkah-langkah yang 'dianggap' buruk dari perhitungan. Sehingga kita manusia dapat memilih hanya satu atau dua langkah tertentu saja yang 'dianggap' baik untuk ditelusuri sampai kedalaman cukup jauh, sementara langkah-langkah lain yang 'dianggap' tidak menjanjikan hanya diperhitungkan seperlunya saja. Dari hasil simulasi ini, kita membandingkan untung-rugi setiap langkah yang disimulasikan, dan menentukan langkah mana yang terbaik.

Komputer berpikir hanya dengan perhitungan

Nah.. di sisi lain, berbeda dengan manusia, komputer tidak mempunyai intuisi yang menggunakan perasaan. Sebagai gantinya, komputer mempunyai daya perhitungan yang jauh lebih besar daripada manusia. Ketika diberikan sebuah posisi papan othello tertentu, sama seperti manusia komputer juga melakukan perhitungan simulasi permainan untuk valid moves yang tersedia. Tetapi berbeda dengan manusia, dia tidak mempunyai intuisi untuk mengenali langkah-langkah yang jelas-jelas buruk lalu menghilangkannya dari daftar perhitungan. Sehingga komputer harus memperhitungkan semua valid moves, di sinilah daya perhitungan yang besar sangat diperlukan.

Pada dasarnya ketika diberikan sebuah susunan posisi papan tertentu, komputer menghitung nilai posisi tersebut menggunakan fitur-fitur yang dijelaskan pada artikel Strategi bermain othello, seperti jumlah keping, penguasaan sudut/x-quare/c-square, jumlah keping stabil, mobility, jumlah keping tepi, parity, dan pola sisi/sudut. Di setiap posisi papan yang sedang dipertimbangkan, mula-mula komputer menghitung nilai dari setiap fitur. Misalnya ketika dilakukan simulasi langkah 1, maka jumlah keping (discs) ada 30, sudut yang dikuasai (corners) ada 2, jumlah keping stabil (stables) ada 5, mobility ada 15, jumlah keping tepi (frontiers) ada 10, parity yang dimenangkan ada 3, dan nilai pola sisi/sudut (pattern) adalah 20.

Selanjutnya nilai dari masing-masing fitur ini digabungkan secara linier dengan bobot-bobot tertentu yang dianggap tepat. Misalnya nilai total dari posisi papan ini adalah:

score = w_d * discs + w_c * corners + w_s * stables + w_m * mobility + w_f * frontiers + w_p * parity + w_t * pattern
= -3 * 30 + 5 * 2 + 9 * 5 + 7 * 15 - 5 * 10 + 8 * 3 + 6 * 20
= 164

Dengan asumsi bahwa bobot-bobot untuk setiap fitur yang dianggap tepat adalah:

w_d = -3 (bobot untuk discs)
w_c = 5 (bobot untuk corners)
w_s = 9 (bobot untuk stables)
w_m = 7 (bobot untuk mobility)
w_f = -5 (bobot untuk frontiers)
w_p = 8 (bobot untuk parity)
w_t = 6 (bobot untuk pattern)

Ini adalah nilai papan untuk simulasi langkah 1. Berikutnya dilakukan simulasi untuk langkah 2, dihitung lagi berapa nilainya, langkah 3 berapa nilainya.. dst. Dan ini baru berpikir sampai kedalaman satu, disebut juga 1-ply dalam istilah kecerdasan buatan untuk permainan komputer. Untuk berpikir sampai kedalaman 2, maka di setiap posisi papan (hasil simulasi kedalaman 1) belum dihitung dulu nilainya, tetapi harus dilakukan lagi simulasi kedalaman 2 untuk setiap langkah di posisi tersebut, baru kemudian dilakukan perhitungan di atas.

Jadi kalau di kedalaman 1 ada 3 valid moves, yang membawa ke 3 posisi papan berbeda, dan di setiap posisi papan rata-rata ada 3 valid moves yang dimiliki lawan kita, maka untuk berpikir sampai kedalaman 2 kita perlu memperhitungkan sebanyak 3 x 3 = 9 posisi papan. Tetapi rata-rata jumlah valid moves pada othello diperkirakan sekitar 8, sehingga 'berpikir' sampai kedalaman 2 perlu menghitung 8^2 = 64 posisi, kedalaman 3 perlu 8^3 = 512 posisi.. dan kedalaman 10 perlu menghitung lebih dari 1 milyar posisi!

Algoritma Minimax

Untuk melakukan perhitungan simulasi permainan inilah, digunakan algoritma standar di dalam bidang kecerdasan buatan (artificial intelligence, AI) yang sudah dikembangkan sejak lama, yaitu Game Theory, terutama algoritma yang disebut Minimax. Sesuai namanya, algoritma minimax adalah aturan untuk permainan zero-sum 2 pemain, yang berusaha meminimalkan kemungkinan kalah sambil memaksimalkan kemungkinan menang untuk pemain yang akan melangkah.

Di kedalaman 1 (dan kedalaman ganjil lainya), posisi papan akan menentukan nilai untuk pemain yang akan melangkah saat ini (current player), sehingga di kedalaman ganjil ini algoritma minimax memilih langkah bernilai maksimal sebagai langkah terbaik. Sebaliknya di kedalaman 2 (dan kedalaman genap lainnya), posisi papan akan menentukan nilai untuk pemain lawan yang akan melangkah berikutnya (opponent player), sehingga di kedalaman genap ini algoritma minimax memilih langkah bernilai minimal sebagai langkah terbaik.

Sebagai ilustrasi sampai kedalaman dua bisa digambarkan dengan tabel berikut:

B memilih B1
B memilih B2
B memilih B3
A memilih A1
+3
−2
+2
A memilih A2
−1
0
+4
A memilih A3
−4
−3
+1

Ketika A memilih langkah A1 dilanjutkan dengan B memilih langkah B1, posisi papan yang terbentuk bernilai +3. Demikian pula untuk A1 → B2 nilainya -2, A1 → B3 nilainya +2 dst. Sekarang mari kita coba aplikasikan algoritma minimax untuk menghitung langkah terbaik bagi pemain A.

Terhadap langkah A1 (kedalaman 1) misalnya valid moves pemain B adalah B1, B2 dan B3 (kedalaman 2), dan langkah terbaik menurut algoritma minimax didapat dengan mencari langkah bernilai minimal (karena di kedalaman 2), yaitu B2 (bernilai -2). Demikian pula terhadap langkah A2 yang terbaik bagi B adalah B1 (bernilai -1), dan terhadap A3 adalah B1 juga (bernilai -4). Selanjutnya, nilai untuk langkah pemain A (kedalaman 1) adalah nilai yang 'dikembalikan' dari pemain B di kedalaman 2, yaitu A1 adalah -2, A2 adalah -1, dan A3 adalah -4. Kemudian untuk kedalaman 1 ini algoritma minimax mencari nilai maksimal sebagai langkah terbaik, yaitu A2 (bernilai -1).


Untuk kedalaman lebih dari dua, cara 'berpikir' algoritma minimax dapat digambarkan sebagai pohon permainan (game tree) seperti pada gambar di atas. Di lokasi paling dalam (disebut lokasi node daun atau leaf node), dalam hal ini kedalaman 4, dilakukanlah perhitungan nilai posisi papan yang selanjutnya 'dikembalikan' ke node pada kedalaman di atasnya terus hingga sampai lokasi paling atas (di sebut akar atau root). Panah merah menunjukkan nilai yang dikembalikan dari langkah terbaik pilihan algoritma minimax ke kedalaman di atasnya. Demikianlah, kita dapat melihat algoritma minimax bergantian memilih langkah dengan nilai minimal dan maksimal sebagai langkah terbaik sesuai dengan kedalamannya. Dengan algoritma ini komputer dapat 'berpikir' sampai kedalaman tertentu untuk menentukan langkah terbaik untuk memenangkan permainan.

Tetapi pada prakteknya, algoritma minimax kini tidak pernah digunakan lagi, karena algoritma ini harus memperhitungkan semua valid moves, sehingga memerlukan waktu yang sangat lama. Sebagai gantinya telah dikembangkan beberapa improvisasi dari minimax seperti algoritma AlphaBeta, NegaScout dll. yang dapat melakukan pemangkasan game tree supaya tidak perlu memperhitungkan semua valid moves, sehingga dapat 'berpikir' dalam waktu jauh lebih cepat.