• Tidak ada hasil yang ditemukan

Sistem Informasi Penjadwalan Mata Pelajaran di SD 101882 Tanjung Morawa Menggunakan Metode Tabu Search

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Informasi Penjadwalan Mata Pelajaran di SD 101882 Tanjung Morawa Menggunakan Metode Tabu Search"

Copied!
19
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

2.1 Konsep Dasar Sistem Informasi

Sistem informasi adalah suatu sistem didalam suatu organisasi yang mempertamukan kebutuhan pengolahan transaksi harian, mendukung operasi bersifat manajerial dan kegiatan strategi-strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.

Pengertian lain tentang sistem informasi juga didefinisikan sebagai berikut : sistem informasi adalah sebuah rangkaian prosedur formal di mana data dikelompokkan, diproses menjadi informasi dan didistribusikan kepada pemakai.

Suatu sistem informasi memiliki komponen-komponen yang disebut Blok Bangunan (Building Block) yang terdiri dari : (Jogiyanto,2005)

1. Blok Masukan (In Block)

Input melalui data yang masuk ke dalam sistem. Input disini termasuk algoritma-algoritma dan media untuk mendapatkan data berupa dokumen-dokumen dasar yang masuk ke dalam suatu sistem informasi.

2. Blok Model (Model block)

(2)

3. Blok Keluaran (Output Block)

Keluaran yang dihasilkan merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk pemakai sistem.

4. Blok Teknologi (Technology Block)

Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluran dan membantu pengendalian dari sistem secara keseluruhan. Teknologi meliputi tiga bagian utama, yaitu sumber daya manusia sebagai brainware, perangkat lunak atau

software, dan perangkat keras atau hardware. 5. Blok Basis Data (Data Base Block)

Basis data merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di dalam perangkat keras komputer dan untuk memanipulasinya dibutuhkan dukungan dari perangkat lunak.

6. Blok Kendali (Control Block)

(3)

2.2. Sistem Informasi Penjadwalan

Sistem informasi penjadwalan merupakan proses yang dimulai dari pemilihan mata pelajaran hingga pembuatan jadwal mata pelajaran yang dilakukan oleh pihak sekolah, yang dilakukan secara terintegrasi kedalam suatu sistem yang utuh. Proses manual dan belum terintegrasi ini menggunakan basis data yang berbeda meskipun untuk data yang sama. (Kadir, 2003)

2.3. Kecerdasan Buatan

Artificial Intelligence (AI) atau kecerdasan buatan merupakan cabang dari ilmu komputer yang konsern dengan pengautomatisasi tingkah laku cerdas. Pernyataan tersebut juga dapat dijadikan definisi dari AI. Definisi ini menunjukkan bahwa AI adalah bagian dari komputer sehingga harus didasarkan pada sound theoretical

(teori suara) dan prinsip-prinsip aplikasi dari bidangnya. Prinsip-prinsip ini meliputi struktur data yang digunakan dalam representasi pengetahuan, algoritma yang diperlukan untuk mengaplikasikan pengetahuan tersebut, serta bahasa dan teknik pemrograman yang digunakan dalam mengimplementasikannya.

(4)

Definisi AI ini menjadi masalah tersendiri yang harus dijawab: apakah hanya sebuah nama untuk kumpulan perbedaan dan tidak ada hubungannya dengan kemampuan? Apa perlunya mempelajari AI? Apakah ada hubungannya dengan proses belajar dengan kreativitas dan intuisi? Dapatkah kecerdasan dapat disimpulkan dari tingkah yang dapat diobservasi atau membutuhkan pembuktian dari suatu mekanisme internal yang khusus? Semua pertanyaan tersebut merupakan pertanyaan yang mungkin belum terjawab dan tentunya mungkin akan membantu kita untuk terus berusaha menggeluti, mempelajari, dan mencari metode yang dapat menjadi solusi bagi pertanyaan ini, dan nantinya akan membentuk suatu intisari AI modern. AI menawarkan media dan uji teori dari kecerdasan. Teori-teori tersebut dapat dinyatakan dalam bahasa program komputer, diuji dan dibuktikan melalui eksekusi pada komputer. (Desiani, 2006)

2.4. Algoritma Tabu Search

(5)

1. Membangkitkan solusi awal urutan job yang digunakan sebagai pembanding ketika proses tabu search dimulai.

2. Menentukan kriteria aspirasi, kriteria aspirasi dalam penelitian adalah meminimisasi makespan.

3. Menentukan jumlah iterasi maksimum dan ukuran tabu list.

4. Melakukan move, move yang digunakan dalam penelitian ini adalah

neighbourhood search. Algoritma tabu search digunakan untuk mencari solusi urutan produksi yang terbaik. Dimana input data yang diperlukan untuk melakukan pengolahan pada algoritma ini yaitu waktu proses setiap produk.

Untuk mendalami lagi prinsip kerja metode pencarian tabu, yang dapat memformulakan metode menurun klasik (classical descent method) dalam beberapa langkah, yaitu:

1. Memilih sebuah solusi awal i dalam S

2. Membangkitkan subset V* sebagai solusi dalam N(i) 3. Mencari j ‘terbaik’ dalam V* dan menetapkan i=j

4. Jika f(j)=f(i) maka berhenti, namun jika tidak kembali ke langkah ke-2

Dalam metode menurun secara umum akan dapat langsung ditetapkan bahwa V* = N(i). Tetapi hal ini seringkali membutuhkan waktu yang lama. Untuk itulah cara pemilihan V* yang tepat seringkali dijadikan sebagai peningkatan yang penting dalam metode pencarian. Pada kasus yang berlawanan, akan ditetapkan |V*|=1. Hal ini akan menurunkan fase pemilihan j ‘terbaik’. Solusi j akan diterima jika f(j)=f(i),

(6)

pada nilai-nilai f pada i dan j serta pada sebuah parameter yang disebut temperatur. Tidak ada temperatur dalam metode pencarian tabu, namun pemilihan V* akan menjadi hal yang penting guna mendefinisikannya dalam setiap langkah di mana akan terjadi penggunaan memori secara sistematis untuk memanfaatkan informasi yang ada di luar fungsi f dan lingkungan N(i).

Sebagai pengecualian pada kasus-kasus istimewa, penggunaan prosedur menurun (descent procedure) secara umum lebih rumit karena kita akan terperangkap pada sebuah minimum lokal yang mungkin masih jauh dari minimum global. Maka untuk proses iterasi dalam eksplorasi apapun sebaiknya dalam beberapa hal juga menerima langkah-langkah yang tidak akan memberikan perkembangan dari i ke j dalam V* (misal f(j)>f(i)). Metode pencarian tabu secara berbeda memilih j ‘terbaik’ dalam V*. Selama pergerakan yang tidak memberi

perkembangan itu mungkin, resiko pengunjungan kembali sebuah solusi atau lebih umumnya disebut sebagai siklus mungkin untuk terjadi. Dalam hal inilah penggunaan memori sangat diperlukan untuk mencegah terjadinya pergerakan ke solusi yang telah dikunjungi. Jika memori seperti itu diperkenalkan, maka kita dapat menganggap struktur N(i) tergantung pada pengelilingan yang merupakan pengulangan k. Jadi kita dapat merujuk ke N(i,k) daripada N(i).

Dengan perujukan ini kita dapat mencoba untuk melakukan peningkatan algoritma menurun dalam beberapa hal untuk lebih mendekatkan metode ini ke prosedur dalam metode pencarian tabu secara umum. Hal ini dapat didefinisikan dalam beberapa langkah (catatan i* adalah solusi ‘terbaik’ yang ditemukan dan k adalah

penghitung dalam pengulangan) :

(7)

2. Tetapkan nilai k=k+1 dan membagkitkan subset V* sebagai solusi dalam N(i,k)

3. Pilih j ‘terbaik’ dalam V* dan tetapkan i=j.

4. Jika f(i) < f(i*) maka tetapkan i*=i.

5. Jika kondisi berhenti ditemukan, maka proses dihentikan, sedangkan jika belum kembali ke langkah 2.

Amati bahwa langkah-langkah pada metode penurunan klasik termasuk dalam formula ini (kondisi berhenti secara sederhana jika f(i)=f(i*) dan i* akan selalu menjadi solusi akhir). Selain itu kita juga dapat mempertimbangkan penggunaan f yang telah dimodifikasi daripada f yang dalam beberapa keadaan di deskripsikan kemudian. Dalam metode pencarian tabu, kondisi berhenti dapat berupa:

1. N(i,k+1) = tidak terdefinisi

2. k lebih besar daripada bilangan maksimum pada pengulangan

3. Banyaknya pengulangan selama peningkatan terakhir i* lebih besar dari bilangan tertentu.

(8)

Sekarang kita dapat mendefinisikan karakteristik dari prosedur pencarian tabu dalam langkah-langkah berikut, antara lain:

1. Memilih solusi awal i dalam S. Tetapkan i*=I dan k=0.

2. Tetapkan k=k+1 dan bangkitkan sebuah subset V* dari solusi dalam N(I,k) sehingga salah satu dari kondisi tabu tγ yang melanggar (γ=1,2,…,t) atau

setidaknya satu kondisi aspirasi aγ yang memiliki (γ=1,2,…,a).

3. Pilih j terbaik melalui j=im dalam V* dan tetapkan i=j. 4. Jika f(i), perbaharui kondisi tabu dan aspirasi.

5. Jika kondisi berhenti ditemukan, maka proses dihentikan. Jika tidak, kembali ke langkah 2. (Kusumadewi,2013)

Pseudo code dari langkah-langkah algoritma tabu search :

Step 1 k=1

Select an initial schedule S1 using some heuristic and set Sbest=S1

Step 2 Select ScN(Sk)

If the move Sk ->Sc is prohibited by a move on the tabu list

Then go to Step 2

If the move Sk -> Sc is not prohibited by a move on the tabu-list Then Sk-1=Sc

Enter reverse move at the top of the tabu-list Push all other entries in the tabu-list

one position down delete the entry at the bottom of the tabu list If F(Sc)

Then Sk-1=Sc

Enter reverse move at the top of the tabu-list

Push all other entries in the tabu-list one position down

Delete the entry at the bottom of the tabu list If F(Sc)

(9)

Step 3 k=k+1

If stopping condition=true then STOP Else

go to Step 2

(Pinedo dan Chao,2010).

2.5. PHP

PHP merupakan singkatan dari PHP Hypertext Preprocessor. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server. Hasilnya yang dikirimkan ke klien, tempat pemakai menggunakan browser.

Secara khusus, PHP dirancang untuk membentuk aplikasi web dinamis. Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini. Skrip PHP berkedudukan sebagai tag dalam bahasa HTML. Sebagaimana diketahui, HTML (Hypertext Markup Language) adalah bahasa standar untuk membuat halaman-halaman web. (Kadir, 2008)

2.6. MySQL

MySQL atau My Structure Query Language adalah salah satu jenis database server

(10)

MySQL termasuk jenis RDBMS (Relational Database Management System). Itulah sebabnya, istilah seperti tabel, baris, dan kolom digunakan pada MySQL. Pada MySQL, sebuah database mengandung satu atau sejumlah tabel. (Kadir, 2008)

2.7. HTML5 (Hypertext Markup Language Versi 5)

Hypertext Markup Language (HTML) adalah bahasa standard yang digunakan untuk menampilkan halaman web (Hidayatullah dan Kawistara, 2014). Dengan kata lain, berkas yang dibuat dalam perangkat lunak pengolah kata dan disimpan dalam format ASCII normal sehingga menjadi halaman web dengan perintah-perintah HTML. Penanda perintah di dalam HTML biasanya disebut TAG. TAG digunakan untuk menentukan tampilan dari dokumen HTML. Yang dapat dilakukan dengan HTML yaitu:

1. Mengatur tampilan dari halaman web dan isinya. 2. Membuat tabel dalam halaman web.

3. Mempublikasikan halaman web secara online.

4. Membuat form yang bisa digunakan untuk menangani registrasi dan transaksi via web.

5. Menambahkan objek-objek seperti citra, audio, video, animasi, java applet

dalam halaman web.

6. Menampilkan area gambar (canvas) di browser.

(11)

hampir semua kebutuhan user tanpa plugin tambahan. Kebutuhan-kebutuhan tersebut antara lain menampilkan animasi, menjalankan aplikasi, memutar musik dan film. HTML5 juga cross-platform. Itu artinya kita dapat menjalankannya diberbagai platform dan device seperti tablet, smartphone, netbook, laptop bahkan

Smart TV. Komponen utama yang membedakan HTML5 dengan HTML versi sebelumnya adalah canvas. Dengan canvas kita bisa menggambar menggunakan HTML dan JavaScript.

HTML5 adalah hasil kerja sama antara W3C (World Wide Web Consortium) dan WHATWG (Web Hypertext Application Technology Working Group). Dimana WHATWG sebelumnya bekerja dalam mengembangkan aplikasi web sedangkan W3C bekerja dengan XHTML 2.0. Pada tahun 2006, kemudian mereka memutuskan untuk bekerja sama dan membentuk versi baru dari HTML.

Dari kerja sama itu, ada beberapa aturan yang coba diterapkan dalam versi baru HTML ini:

1. Fitur baru harus berbasiskan pada HTML, CSS (Cascading Style Sheets), DOM (Document Object Mode) dan JavaScript.

2. Mengurangi ketergantungan untuk plugineksternal (seperti Flash). 3. Penanganan kesalahan yang lebih baik.

4. Lebih markup untuk menggantikan scripting.

5. HTML5 merupakan perangkat mandiri (device-dependent). Fitur terbaru yang terdapat dalam HTML5 yaitu:

1. Unsur kanvas untuk menggambar 2D

(12)

3. Dukungan yang lebih untuk penyimpanan secara offline.

4. Elemen konten yang lebih spesifikasi, seperti artikel, footer, header, nav,

section.

5. Bentuk control form seperti kalender, tanggal, waktu, email, url,search.

2.8. CSS3 (Cascading Style Sheet Versi 3)

Cascading Style Sheet (CSS) merupakan aturan untuk mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur dan seragam. CSS bukan merupakan bahasa pemograman. Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML.

Menurut BPTIK (Badan Pengembangan Teknologi Informasi dan Komunikasi) CSS adalah sebuah pemrogaman atau boleh dibilang script yang mengendalikan beberapa komponen (tag html) dalam sebuah website sehingga tampilan akan menjadi lebih terstruktur dan seragam. Cascading Style Sheet (CSS) sudah didukung oleh hamper semua web browser karena CSS telah distandarkan oleh World Wide Web Consortium (W3C).

Ada 4 cara memasang kode CSS ke dalam kode HTML/halaman web, yaitu: 1. Inline style sheet (Memasukkan kode CSS langsung pada tag HTML).

2. Internal style sheet (Embed atau memasang kode CSS ke dalam bagian <head>).

(13)

4. Import CSS file.

Untuk saat ini terdapat 3 versi CSS, yaitu CSS1, CSS2, CSS3. CSS3 adalah versi terbaru dari CSS yang mampu melakukan banyak hal dalam desain website. CSS3 juga dapat melakukan animasi pada halaman website, diantaranya animasi warna hingga animasi 3D. Dengan CSS3 desainer lebih dimudahkan dalam hal kompatibilitas website-nya pada smartphone dengan dukungan fitur baru yakni media query. Selain itu, banyak fitur baru pada CSS3 seperti multiple background,

border-radius, drop-shadow, border-images, CSS Math, dan CSS Objek Model.

2.9. JavaScript

JavaScript adalah bahasa script yang berdasar pada objek yang memperbolehkan pemakai untuk banyak aspek interaksi pada suatu dokumen HTML. Dimana objek tersebut dapat berupa window, frame, URL, dokumen, form, button, atau item yang lain, yang semuanya itu mempunyai property yang saling berhubungan dengannya dan masing-masing memiliki nama, lokasi, warna dan atribut lain.

Untuk dapat mempelajari pemrograman JavaScript, ada 2 piranti yang diperlukan yaitu browser dan teks editor. Teks editor adalah sebuah pengolah kata (word processor) yang menghasilkan file dalam format ASCII murni. Bila pengguna windows dapat menggunakan notepad, Wordpad, atau menggunakan

(14)

Dengan kata lain tidak perlu menuliskan program JavaScript dengan file terpisah.

Tag container adalah tag yang diawali dengan <NAMA_TAG> dan diakhiri dengan </NAMA_TAG>. Contoh tag container:

<html></html>

<body></body>

<head></head>

Tag container <SCRIPT> mempunyai 2 atribut tetapi yang harus diisi hanya 1 atribut yaitu Language. Istilah atribut language dengan “JavaScript”. Hal ini digunakan untuk memberitahukan pada browser bahwa yang akan ditulis adalah

JavaScript. Contoh penulisan:

<script language=”javascript”>

//tulis program anda disini

</script>

2.10. Flowchart

Flowchart (diagram alir) adalah sebuah diagram yang merepresentasikan sebuah algoritma atau proses menggunakan beberapa bangun geometri untuk memperlihatkan langkah-langkah yang dilakukan oleh program dalam menyelesaikan masalah. (Opim Salim Sitompul, 2014)

(15)

Tabel 2.1. Simbol Flowchart

No Nama Simbol Fungsi

1 Terminator

Digunakan untuk mewakili simbol start atau end.

2 Arrow Menunjukkan alur proses.

3 Rectangle

Menunjukkan langkah pemrosesan.

4 Trapezium Simbol untuk input-output.

5 Document

Digunakan untuk mewakili

output.

6 Decision

Simbol yang berfungsi untuk menyatakan

(16)

7 Preparation

Simbol yang berfungsi untuk proses inisialisasi atau pemberian harga awal.

8 Connector

Simbol untuk keluar-masuk atau penyambungan proses

pada halaman yang berbeda.

9 Manual Input

Simbol untuk pemasukkan data secara manual melalui

keyboard.

10

Manual

Operation

(17)

11

Predefine

Process

Simbol untuk pelaksanaan suatu bagian

(sub-prosedur)

12 Display

Simbol yang menyatakan peralatan output yang digunakan seperti layar,

printer, plotter, dan sebagainya.

13 Magnetic Disk

Simbol yang digunakan untuk penyimpanan data ke

database.

14 Storage Data

Simbol yang menyatakan input yang berasal dari disk

(18)

2.11. Data Flow Diagram

Data Flow Diagram adalah alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi yang dapat digunakan untuk penggambaran analisa maupun perancangan sistem yang mudah dikomunikasikan ke pengguna ataupun ke pembuat program. Didalam DFD terdapat tiga level, yaitu:

1. Diagram Konteks (DFD Level 0)

Diagram konteks menggambarkan satu lingkaran besar yang dapat mewakili seluruh proses yang terdapat dalam suatu sistem. Diagram konteks merupakan tingkatan tertinggi dalam Data Flow Diagram dan biasanya diberi penomoran nol. Semua entitas eksternal ditunjukkan dalam diagram konteks beserta dengan aliran-aliran data utama, baik dari dan menuju sistem.

2. Diagram Nol (DFD Level 1)

Diagram nol merupakan satu lingkaran besar yang mewakili lingkaran-lingkaran kecil yang ada pada diagram konteks. Dengan kata lain diagram nol merupakan pemecahan dari diagram konteks.

3. Diagram Rinci

Lebih rinci lagi, diagram rinci adalah diagram yang menguraikan proses-proses yang terdapat di dalam diagram nol.

(19)

Tabel 2.2. Simbol Data Flow Diagram

No Nama Simbol Fungsi

1 Kesatuan Luar

Sebagai kesatuan (entitas) di lingkungan luar sistem yang dapat

berupa orang, organisasi, sumber asli transaksi, atau penerima

akhir.

2 Arus Data

Berfungsi untuk menghubungkan antara

proses, simpanan data, dan kesatuan luar.

3 Proses

Berupa kegiatan atau proses yang sedang

dilakukan.

4 Simpanan Data

Gambar

Tabel 2.1. Simbol Flowchart
Tabel 2.2. Simbol Data Flow Diagram

Referensi

Dokumen terkait

Berdasarkan latar belakang masalah yang dikemukakan sebelumnya maka perumusan masalah pada penelitian ini adalah: “Apakah ada pengaruh dari risiko sistematis (tingkat inflasi,

Menurut peneliti beban kerja yang ringan akan membuat perawat IGD RSUD Jombang merasa puas dengan pekerjaan yang dilakukannya, hal ini dipengaruhi oleh tingkat

vprašanje o fizičnem izgledu prodajalca in njegovem vplivu na nakup pisarniškega pohištva je 4% anketiranih odgovorilo, da ima to zelo velik pomen, 6% jih je mnenja, da je to

Oleh sebab itu, model yang diperoleh dari penelitian ini sangat akurat dan dapat digunakan untuk menduga kandungan kafein, asam klorogenat, dan trigonelin pada biji

Penelitian ini bertujuan mengetahui model perumahan yang paling hemat energi berdasarkan beban panas akibat radiasi matahari (Qs), baik itu yang diterima oleh

Berdasarkan uraian latar belakang masalah di atas yang membahas tentang pentingnya pemberian kredit baik untuk masyarakat yang membutuhkan maupun untuk kelancaran

Setelah mengadakan pembahasan tentang perjanjian jual beli media elektronik pada website hasil penelitian penunjukkan bahwa dalam pelaksaan jual beli media elektronik

So, like using Yelp and Foursquare together, I think Facebook Places and Google Hotpot are services that are complementary.. 107 Picking the Right Service