Jangan Berpikir Begitu, Tapi Berpikirlah Memang Begitu

Photobucket Photobucket

Statistik Pengunjung

07.35 | Posted in



Nah berikut ini program menu untuk menampilkan beberapa pilihan termasuk diantaranya pilihan menghapus record pada program PASCAL.

Listing Program

uses crt ;
type Produk = Record
Kode : String[3] ;
Nama : String[30] ;
Harga : Longint ;
End;
Var
fPro : File of Produk ;
ftemp: File of Produk ;
rPro : Produk ;
lg : Char ;
i : byte ;
xkode: string[8] ;
ketemu: boolean ;
pil : byte ;

procedure openproduk ;
begin
Assign(fpro, 'c:\produk.dat') ;
{$I-} Reset(fpro) ;
{$I+}if IOResult<>0 then Rewrite(fpro) ;
end;

procedure inputproduk ;
begin
OpenProduk ;
Repeat
GotoXY(40,5) ; Write('Input Data Produk') ;
GotoXY(40,6) ; Write('-----------------------------') ;
GotoXY(40,7) ; Write('Kode : ') ; Readln(rpro.Kode) ;
xkode :=rpro.Kode;
i := 1;
seek(fpro,0) ; ketemu := false ;
while not eof(fpro) do
begin
seek(fpro,i-1); read (fpro, rpro) ;
if rpro.kode = xkode then
begin
ketemu := true ;
GotoXY(40,8) ; Write('Nama : ',rpro.Nama) ;
GotoXY(40,9) ; Write('Harga : ',rpro.Harga);
GotoXY(40,10); Write('-----------------------------') ;
GotoXY(40,11); Write('Data Sudah Ada') ;
end;
inc(i);
end;

if not ketemu then
begin
rpro.Kode := xkode ;
GotoXY(40,8) ; Write('Nama : ') ; Readln(rpro.Nama) ;
GotoXY(40,9) ; Write('Harga : ') ; Readln(rpro.Harga) ;
GotoXY(40,10); Write('-----------------------------') ;
Seek(fpro, Filesize(fpro)) ;
write(fPro, rpro) ;
end;
GotoXY(40,12); Write('Input Lagi [Y/T] : ') ; Readln(lg) ;
Until Upcase(Lg)='T' ;
close(fPro) ;
end;

procedure hapusproduk ;
begin
Assign(ftemp, 'c:\temp.dat') ;
{$I-} Reset(ftemp) ;
{$I+} if ioresult<>0 then Rewrite(ftemp) ;
OpenProduk ;

Rewrite(ftemp) ;
Repeat
GotoXY(40,5) ; Write('Input Data Produk yang dihapus');
GotoXY(40,6) ; Write('-----------------------------') ;
GotoXY(40,7) ; Write('Kode : ') ; Readln(rpro.Kode) ;
xkode :=rpro.Kode;
i := 1;
seek(fpro,0) ; ketemu := false ;
while not eof(fpro) do
begin
seek(fpro,i-1); read (fpro, rpro) ;
if rpro.kode = xkode then
begin
ketemu := true ;
end
else
begin
seek(ftemp,filesize(ftemp));
write(ftemp,rpro) ;
end;
inc(i);
end;
i := 1;
rewrite(fpro) ;
seek(ftemp,0) ;
while not eof(ftemp) do
begin
seek(ftemp,i-1); read (ftemp, rpro) ;

seek(fpro,filesize(fpro));
write(fpro,rpro) ;
inc(i);
end;

if not ketemu then
begin
GotoXY(40,8) ; Write('Data ini tidak ada')
end
else
begin
GotoXY(40,8) ; Write('Data ini sudah di hapus')
end;
GotoXY(40,12); Write('Input Lagi [Y/T] : ') ; Readln(lg) ;
Until Upcase(Lg)='T' ;
close(ftemp) ;
close(fPro) ;
end;

procedure outputProduk;
begin
OpenProduk ;
i :=1 ;
Gotoxy(30, 4) ; Write('Informasi PRODUK') ;
Gotoxy(30, 5) ; Write('-----------------------------------------') ;
Gotoxy(30, 6) ; Write(' No Kode Nama Harga ') ;
Gotoxy(30, 7) ; Write('-----------------------------------------') ;
seek(fpro, 0) ;
while not eof(fpro) do
begin
seek(fpro, i-1) ;
read(fpro, rpro) ;
Gotoxy(32, 7+i) ; Write( i ) ;
Gotoxy(35, 7+i) ; Write( rpro.Kode ) ;
Gotoxy(42, 7+i) ; Write( rpro.Nama) ;
Gotoxy(60, 7+i) ; Write( rpro.Harga:9) ;
inc (i) ;
end;
Gotoxy(30, 7+i) ; Write('-----------------------------------------') ;
Gotoxy(30, 8+i) ; Write('press any key to continue...') ;
Close(fPro) ;
Repeat Until Keypressed;
end;

procedure menu ;
begin
clrscr ;
Gotoxy(2, 3) ; Write('------------------------') ;
Gotoxy(2, 4) ; Write(' Menu Utama') ;
Gotoxy(2, 5) ; Write('------------------------') ;
Gotoxy(2, 6) ; Write(' 1. Input Produk') ;
Gotoxy(2, 7) ; Write(' 2. Hapus Produk') ;
Gotoxy(2, 8) ; Write(' 3. Informasi Produk') ;
Gotoxy(2, 9) ; Write(' 4. Keluar') ;
Gotoxy(2,10) ; Write('------------------------') ;
Gotoxy(2,11) ; Write(' Pilihan : ') ; readln(pil);
end;

begin
pil := 0 ;
while pil<>4 do
begin
menu ;
case pil of
1 : inputproduk ;
2 : hapusproduk ;
3 : outputproduk ;
end;
end;
end.
Selengkapnya...

Category:
��
07.17 | Posted in


Masalah pembaca dan penulis (readers and writers problem) memodelkan pengaksesan lebih dari satu proses ke basis data yang sama. Masalahnya dapat dideskripsikan sebagai berikut, diasumsikan terdapat basis data besar seperti sistem reservasi penerbangan dengan proses-proses yang berkompetisi untuk membaca dan menulis pada basis data tersebut. Diasumsikan bahwa sistem tersebut memiliki prosedur sebagai berikut:
1. Mengijinkan banyak proses membaca basis data pada saat yang sama.
2. Jika terdapat satu proses menulis (mengubah) basis data, proses lain tidak boleh mengakses basis data baik membaca atau menulis.
Pada masalah ini, writers memiliki prioritas yang lebih tinggi dari pada readers. Jika ada writer yang sedang menunggu, maka tidak boleh ada reader lain yang bekerja. Writer akan memblok semua proses reading oleh readers dan melakukan proses writing. Ketika proses writing selesai, maka proses reading dapat dilanjutkan kembali oleh readers.

wait(wrt);
...
menulis
...
signal(wrt);

====================================================================

wait(mutex);
readcount:= readcount + 1;
if readcount = 1 then wait(wrt);
signal(mutex);
...
membaca
...
wait(mutex);
readcount:= readcount – 1;
if readcount = 0 then signal(wrt);
signal(mutex);


Algoritma diatas menunjukkan masalah reader dan writer. Jika ada writer dalam critical section dan ada n reader yang menunggu, maka satu reader akan antri di wrt, dan n – 1 reader akan antri. Jika writer mengeksekusi signal (wrt), maka dapat disimpulkan bahwa eksekusi adalah menunggu reader atau menunggu satu writer.
Permasalahan readers and writers problem ini hampir sama dengan manajemen penggunaan basis data (Microsoft Access, SQL Server, dan database engine lainnya) dalam kehidupan sehari-hari, dimana record tidak akan dapat diakses oleh pengguna ketika record sedang dieksekusi oleh pengguna lain untuk proses insert, delete atau update. Ketika mengerjakan proses insert, delete atau update, database engine mengunci (lock) basisdata, sehingga semua aksi membaca dan aksi menulis lainnya pada tabel yang sama dan pada basis data yang sama diblok hingga proses selesai dikerjakan.


Selengkapnya...

Category:
��
07.16 | Posted in


Deadlock secara bahasa berarti buntu atau kebuntuan. Dalam definisi lebih lengkap, deadlock berarti suatu keadaan dimana sistem seperti terhenti dikarenakan setiap proses memiliki sumber daya yang tidak bisa dibagi dan menunggu untuk mendapatkan sumber daya yang sedang dimiliki oleh proses lain. Keadaan seperti ini hanya dapat terjadi pada akses terhadap sumber daya yang tidak bisa dibagi atau non-sharable.
Proses disebut deadlock jika proses menunggu satu kejadian tertentu yang tak akan pernah terjadi. Sekumpulan proses berkondisi deadlock bila setiap proses yang ada di kumpulan itu menunggu suatu kejadian yang hanya dapat dilakukan proses lain yang juga berada di kumpulan itu. Proses menunggu kejadian yang tidak akan pernah terjadi. Deadlock terjadi ketika proses-proses mengakses secara ekslusif sumber daya. Semua deadlock yang terjadi melibatkan persaingan memperoleh sumber daya ekslusif oleh dua proses atau lebih.
Proses dikatakan mengalami starvation bila proses-proses itu menunggu alokasi sumber daya sampai tak berhingga, sementara proses-proses lain dapat memperoleh alokasi sumber daya. Starvation disebabkan bias pada kebijaksanaan atau strategi alokasi sumber daya. Kondisi ini harus dihindari karena tidak adil tetapi dikehendaki penghindaran dilakukan seefisien mungkin.


Selengkapnya...

Category:
��
07.15 | Posted in


Pada tahun 1967, Djikstra mengajukan suatu konsep dimana kita memakai suatu variable integer untuk menghitung banyaknya proses yang sedang aktif atau yang sedang tidur. Jenis variabel ini disebut Semaphore. Semaphore adalah pendekatan yang diajukan oleh Djikstra, dengan prinsip bahwa dua proses atau lebih dapat bekerja sama dengan menggunakan penanda-penanda sederhana. Seperti proses dapat dipaksa berhenti pada suatu saat, sampai proses mendapatkan penanda tertentu itu. Sembarang kebutuhan koordinasi kompleks dapat dipenuhi dengan struktur penanda yang cocok untuk kebutuhan itu.
Semaphore mempunyai dua sifat, yaitu:
1. Semaphore dapat diinisialisasi dengan nilai non-negatif.
2. Terdapat dua operasi terhadap semaphore, yaitu Wait dan Signal.
Semaphore S merupakan variabel bertipe integer yang diakses dengan 2 operasi yang bersifat atomic, yaitu wait dan signal. Operasi-operasi ini diwakili dengan P (wait) dan V(signal), sebagai berikut:
wait(S) : while S < 0 do no_op;
S:= S – 1;
signal(S) : S:= S + 1;
Misalkan ada 2 proses yang sedang berjalan secara simultan, yaitu proses P1 dengan pernyataan S1 dan proses P2 dengan S2. Andaikan kita mengharapkan S2 baru akan dijalankan hanya setelah S1 selesai. Hal ini dapat dilakukan dengan menggunakan bantuan sempahore synch (dengan nilai awal = 0) yang akan di-share oleh kedua proses.
Untuk Proses P1:
S1;
signal (synch);
Untuk Proses P2:
wait(synch);
S2;
Karena nilai awal untuk variabel ‘synch’ adalah nol, maka P2 akan mengeksekusi S2 hanya setelah P1 mengerjakan instruksi ‘signal(synch)’ setelah eksekusi S1.
Salah satu kerugian dari penggunaan sempahore di atas adalah adanya busy waiting. Apabila suatu proses menempati critical section, dan ada proses lain yang ingin masuk critical section, maka akan terjadi iterasi secara terus-menerus. Hal ini akan menimbulkan masalah pada sistem yang menggunakan konsep multiprogramming.
Untuk menghindari busy waiting, dilakukan modifikasi pada operasi wait dan signal. Jika suatu proses sedang mengeksekusi operasi wait, maka nilai semaphore menjadi tidak positif. Pada saat ini, proses akan memblok dirinya sendiri dan ditempatkan pada waiting queue. Proses yang sedang diblok akan menunggu hingga sempahore S di-restart, yaitu pada saat beberapa proses yang lain mengeksekusi operasi signal. Suatu proses akan di-restart dengan operasi wakeup, yang akan mengubah proses dari keadaan waiting ke ready. Untuk mengimplementasikan hal ini, semaphore dirancang dalam bentuk record:
type sempahore = record;
value: integer;
L: list of process;
end;
Var S: sempahore;



Semaphore mempunyai 2 jenis operasi, yaitu:
1. Operasi Down
Operasi ini menurunkan nilai semaphore, jika nilai semaphore menjadi non-positif atau negatif maka proses yang dicegah untuk mengeksekusi critical section.
Type Semaphore = Integer,
Procedure Down(Var: semaphore);
Begin
s := s-1;
if s <= 0 Then
Begin
Tempatkan antrian pada antrian untuk semaphores
Proses diblocked
End;
End;

Operasi Down adalah atomic, tidak dapat diinterupsi sebelum diselesaikan. Jika dimulai, tak ada proses lain yang dapat mengakses semaphore sampai operasi selesai atau di-blocked.
2. Operasi UP
Operasi Up berfungsi untuk menaikkan nilai semaphore. Jika satu proses atau lebih di-blocked pada semaphore itu tak dapat menyelesaikan operasi down, maka salah satu dipilih oleh sistem dan menyelesaikan operasi down-nya. Urutan proses yang dipilih tidak ditentukan oleh Djikstra, dapat dipilih secara acak.
Type Semaphore = Integer,
Procedure Down(Var: semaphore);
Begin
s := s + 1;
if s <= 0 Then
Begin
Pindahkan satu proses P dari antrian untuk semaphore s
Tempatkan proses P di senarai ready
End;
End;

Adanya semaphore mempermudah persoalan mutual exclusion. Skema penelesaian mutual exclusion mempunyai bagan sebagai berikut:
Cons N = 2;
Var S:semaphore;
Procedure enter_critical_section;
{
mengerjakan kode-kode kritis
}
Procedure enter_noncritical_section;
{
mengerjakan kode-kode tak kritis
}
ProcedureProses(i: integer);
Begin
Repeat
Down(s);
Enter_critical_section;
Up(s);
Enter_noncritical_section;
Forever
End;
Begin
S:= 1;
Parbegin
Proses(0);
Proses(1);
ParEnd
End;

Sebelum masuk critical selection, proses melakukan down, bila berhasil maka proses masuk ke critical selection, bila tidak berhasil maka proses di-bolcked atas semaphore itu. Proses yang di-blocked akan dapat melanjutkan kembali bila proses yang ada di critical selection keluar dan melakukan operasi up sehingga menjadikan proses yang di-blocked ready dan melanjutkan sehingga operasi down-nya berhasil.


Selengkapnya...

Category:
��
07.14 | Posted in



Seperti yang telah kita ketahui bahwa proses dapat bekerja sendiri (independent process) dan juga dapat bekerja bersama proses proses yang lain (cooperating process). Pada umumnya ketika proses saling bekerja sama (cooperating process) maka proses-proses tersebut akan saling berbagi data secara teratur hal itu di sebut Sinkronisasi.
Latar belakang dari sinkronisasi dalam sistem operasi adalah:
1. Akses-akses yang dilakukan secara bersamaan ke data yang sama, dapat menyebabkan data menjadi tidak konsisten.
2. Untuk menjaga agar data tetap konsisten, dibutuhkan mekanisme-mekanisme untuk memastikan permintaan eksekusi dari proses yang bekerja.
3. Race condition, yaitu situasi dimana beberapa proses mengakses dan memanipulasi data secara bersamaan. Nilai terakhir dari data bergantung dari proses mana yang selesai terakhir.
4. Untuk menghindari race condition, proses-proses secara bersamaan harus disinkronisasikan.

Selengkapnya...

Category:
��
07.13 | Posted in


Sistem operasi merupakan sebuah penghubung antara pengguna dari computer dengan perangkat keras komputer. Sebelum ada sistem, orang hanya dapat mengoperasikan komputer dengan mengunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, munculnya sistem operasi yang menyediakan lingkungan untuk mengoperasikan komputer secara lebih nyaman. Pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing.
Pengertian sistem operasi secara umum yaitu pengelola seluruh sumber daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer.
Sistem operasi mempunyai tiga sasaran utama yaitu:
1. Kenyamanan, membuat penggunaan komputer menjadi lebih nyaman.
2. Penggunaan sumber daya sistem komputer secara efisien.
3. Sistem operasi harus dibangun sehingga memungkinkan dan memudahkan pengembangan, pengujian serta pengajuan sistem-sistem yang baru.
Sistem operasi adalah bagian yang sangat penting bagi semua sistem komputer. Secara umum, sistem komputer terbagi atas hardware, sistem operasi, program aplikasi, dan user. Hardware terdiri atas CPU, memori dan I/O device yang merupakan resources dasar. Program aplikasi berisi compiler, basis data, games dan program-program bisnis, yang merupakan alat dimana resource-resource akan diakses untuk menyelesaikan masalah user.

Selengkapnya...

Category:
��
06.47 | Posted in



Definisi Sistem Pakar
“Suatu program komputer yang dirancang untuk memodelkan kemampuan penyelesaian masalah yang dilakukan oleh seorang pakar” (Durkin)
“Suatu model dan prosedur yang berkaitan, dalam suatu domain tertentu, yang mana tingkat keahliannya dapat dibandingkan dengan keahlian seorang pakar” (Ignizio)
“Suatu sistem komputer yang bisa menyamai atau meniru kemampuan seorang pakar” (Giarratano & Riley)
Keuntungan Sistem Pakar

1.
Memungkinkan orang awam melakukan pekerjaan seorang ahli
2.
Menyimpan pengetahuan dan keahlian para pakar
3.
Memiliki kemampuan untuk mengakses pengetahuan
4.
Memiliki kemampuan untuk bekerja dengan informasi yang tidak lengkap dan mengandung ketidakpastian
5.
Menghemat waktu dalam pengambilan keputusan

Kelemahan Sistem Pakar

1.
Biaya pengembangan yang mahal
2.
Sulit dikembangkan berkaitan dengan ketersediaan pakar
3.
Sistem pakar tidak 100% bernilai benar

Aplikasi Sistem Pakar

1.
Dendral
Identifikasi molekul organik tak dikenal melalui analisa spektrum massa dan ilmu kimia
2.
Mycin
Identifikasi bakteri penyebab infeksi dan merekomendasikan antiobiotik dengan dosis yang disesuaikan dengan berat tubuh pasien
3.
Dipmeter Advisor
Digunakan oleh Schlumberger untuk analisis data dalam pengeboran minyak



Selengkapnya...

Category:
��
06.36 | Posted in




MNEMONIC adalah istilah untuk Bahasa mesin yang disimbolkan/dikodekan dalam Bahasa Assembler contohnya :

1) Saya masukan kode assembler pada memori
Perintahnya : A CS:100

1383:0100 MOV AH,31
1383:0102 MOV AL,7A
1383:0104 ADD AH,AL

2) Berikutnya lihat intruksi dan data yang dimasukkan tadi dalam memori
Perintahnya : D CS:100 106

segment:offset blok data/dump offset dalam hek bahasa mesin info data
1383:0100 B4 31 B0 7A 00 C4 00 .... 1.z...

3) Membanding Bahasa Mesin yang ada di memori ke Bahasa Assembler
Perintahnya : U CS:100 104

segment:offset data hex intruksi Assembler
1383:0100 B431 MOV AH,31
1383:0102 B07A MOV AL,7A
1383:0104 00C4 ADD AH,AL

Data hex di atas yang di baca oleh CPU (Bahasa Mesin) yang sebenarnya data binary yang ditampilkan dalam bentuk hexadesimal
Segment:offset adalah alamat memori di mana data tersebut berada.

Selengkapnya...

Category:
��
06.51 | Posted in



Bit computer menentukan seberapa banyak data dapat diproses. Di system operasi Windows XP, 32-bit dan 64-bit adalah yang paling sering digunakan. Semakin tinggi hitungan bit yang digunakan, maka makin cepat komputer dapat memproses data. Penting juga untuk mengetahui apakah komputer menggunakan system 32-bit atau 64-bit, sehingga ketika Anda menginstal program, aplikasi dan driver, maka Anda akan merasa pasti bahwa apa yang di-instal kompatibel dengan versi Windows Anda. Cauntuk mengetahui bit system operasi yang digunakan adalah :

Cara Pertama : Menggunakan System Properties
- Klik menu “Start” Windows dan klik “Run” dan akan muncul command box. Ketikkan “sysdm.cpl” (tanpa tanda petik) dan tekan Enter hingga muncul dialog box System Properties.
- Klik tab “General”. Kemudian akan terlihat informasi mengenai system operasi Anda. Jika Anda memiliki komputer yang berjalan di system 64-bit, maka Anda akan melihat tulisan “Windows XP Professional x64 Edition Version” di bawah “System“. Jika komputer berjalan di system 32-bit, maka Anda hanya akan melihat “Windows XP” (home or professional) di bawah “System” .
- Kemudian tutup dialog box “System Properties“.

Cara Kedua : Menggunakan jendela System Information
- Klik menu “Start” Windows, klik “Run” untuk launching command box.
- Ketik “winmsd.exe” (tanpa tanda petik) dan tekan Enter hingga muncul jendela System Information
- Klik “System Summary” di panel navigasi dan lokasikan “Processor” di bawah “Item” di detailnya.
- Jika value processor mulai dengan x86, maka komputer Anda berjalan dengan versi 32-bit JIka value processor mulai dengan ia64 atau AMD64, maka komputer Anda berjalan di system Windows 64-bit.
- Kemudian tutup dialog box “System Properties“.

Selengkapnya...

Category:
��
06.51 | Posted in




Pengertian Storage Devices pada sistem komputer adalah kata lain dari secondary storage yang telah kita bahas tadi. Fungsinya untuk menyimpan data dan sistem operasi. Beberapa macam storage antara lain Hardisk, Floopy, Optical Devices, SD card, Flash Memory, dan lain sebagainya. Harddisk berasal dari kata hard yang berarti keras dan disk yang berarti piringan. Secara lebih lengkap Harddisk adalah sebuah perangkat keras yang digunakan untuk menyimpan data secara permanen (volatile) menurut perintah-perintah yang diberikan oleh pusat pemrosesan komputer. Ukuran yang digunakan untuk membedakan kelas harddisk adalah Kapasitas, kecepatan aksess, dan interface yang digunakan. Kapasitas harddisk dinyatakan dalam satuan byte. Ratarata hardisk masa kini telah berkapasitas diatas 40 GB. Kecepatan hardisk dinyatakan dalam ukuran RPM (rotation per minuetes). Rata-rata kecepatan hardisk masa kini adalah 7200 RPM.
Cara kerja hardisk Hardisk adalah storage devices yang paling sering di pakai. Bagian-bagian hardisk terdiri dari Logic board, motor, Platter, read-write head, interface slot, dan body. Logic board merupakan bagian hardisk yang mengatur kerja hardisk menurut instruksi dari user. Logic board ini nantinya mengatur putaran motor dan gerak dari read-write head menurut lokasi penempatan data. Read-write head inilah yang membaca dan menulis data pada hardisk, menyampaikan informasi kepada logic board, kemudian logic board menyampaikan kepada CPU melalui interface baik itu SATA maupun PATA. PATA-SATA PATA (Paralel ATA) merupakan sistem pemasangan hardisk dimana satu atau dua IDE devices dapat dipasang dalam satu kabel dan terkoneksi kepada satu ports IDE secara paralel. Sementara SATA (Serial ATA) adalah revolusi baru cara pemasangan hardisk dengan hanya satu devices dalam satu ports SATA. Terkesan lebih boros,namun kecepatan akses SATA jauh lebih tinggi dibandingkan dengan PATA, kesan pemasangan pun lebih rapi karena kabel yang digunakan untuk SATA jauh lebih kecil dari kabel IDE.
ATA dan SATA adalah system transfer data dari dan ke hardisk. ATA itu masih menggunakan sistem paralel makanya sekarang dikenal dengan nama PATA. Karena parael penggunaan kabelnya banyak, yaitu kabel IDE. SATA merupakan pengembangan ATA menggunakan sistem Serial yang bekerja secara multiplex sehingga irit kabel. ATA secara teoritis mentransfer data maksimal 133mbps sedangkan SATA 150mbps. Untuk SATA2 bisa mencapai 300 mbps.

Selengkapnya...

Category:
��
06.45 | Posted in



Dalam kehidupan sehari hari , banyak terdapat persoalan yang menuntut pencarian solusi optimum. Persoalan tersebut dinamakan persoalan optimasi(optimization Problems). Persoalan Optimasi adalah persoalan yang tidak hanya mencari sekedar solusi, tetapi mencari solusi terbaik. Solusi terbaik adalah solusi yang memiliki nilai minimum atau meksimum dari sekumpulan alternatif solusi yang mungkin
Algoritma Greedy adalah salah satu algoritma yang dapat digunakan untuk mendapatkan solusi terbaik dan merupakan algoritma yang paling populer dalam hal ini.
Secara Harfiah Greedy artinya rakus atau tamak, sifat yang berkonotasi negatif. Orang yang memiliki sifat ini akan mengambil sebanayak mungkin atau mengambil yang paling bagus atau yang paling mahal. Sesuai dengan arti tersebut, Prinsip Greedy adalah take what you can get now. Dalam kehidupan sehari hari Greedy dapat digunakan dalam masalah seperti :
• Memilih beberapa jenis investasi
• Mencari jalur tersingkat
Ada juga yang dapat dilakukan algoritma ini dalam sesuatu yang biasa dilakukan mesyarakat modern, yaitu memilih spesifikasi komputer yang terbaik dengan budget maksimum tertentu seperti yang akan dibahas dalam makalah ini.

1. Definisi Algoritma Greedy
Algoritma Greedy membentuk solusi langkah per langkah (step by step). Terdapat banyak pilihan yang perlu di eksplorasi pada setiap langkah solusi, karenanya pada setiap langkah harus dibuat keputusann yang terbaik dalam menentukan pilihan.Keputusan yang telah
diambil pada suatu langkah tidak dapat diubah lagi pada langkah selanjutnya. Sebagai contoh, jika kita manggunakan algoritma Greedy untuk menempatkan komponen diatas papan sirkuit, sekali komponen telah diletakkan dan dipasang maka tidak dapat dipindahkan lagi.
Pada setiap langkah diperoleh optimum lokal. Bila algoritma berakhir, kita berharap optimum lokal menjadi optimum global.


2.Skema umum Algoritma Greedy
Algoritma greedy disusun oleh elemen-elemen berikut:


1.Himpunan kandidat.
Berisi elemen-elemen pembentuk solusi.

2.Himpunan solusi
Berisi kandidat-kandidat yang terpilih sebagai solusi persoalan.

3.Fungsi seleksi (selection function)
Memilih kandidat yang paling memungkinkan mencapai solusi optimal. Kandidat yang sudah dipilih pada suatu langkah tidak pernah dipertimbangkan lagi pada langkah selanjutnya.

4.Fungsi kelayakan (feasible)
Memeriksa apakah suatu kandidat yang telah dipilih dapat memberikan solusi yang layak, yakni kandidat tersebut bersama-sama dengan himpunan solusi yang sudah terbentuk tidak melanggar kendala (constraints) yang ada. Kandidat yang layak dimasukkan ke dalam himpunan solusi, sedangkan kandidat yang tidak layak dibuang dan tidak pernah dipertimbangkan lagi.

5.Fungsi obyektif, yaitu fungsi yang memaksimumkan atau meminimumkan nilai solusi(misalnya panjang lintasan, keuntungan, dan lain-lain).Contoh pada masalah Pemilihan Processor, berdasarkan benchmark elemen-elemen algoritma greedy-nya adalah:
a.Himpunan kandidat: himpunan hardware yang terdiri dari Processor, Memory dan Graphic card
b.Himpunan solusi: Kombinasi Processor , Memory dan Graphic card dengan Benchmark terbaik namun dengan total harga yang tidak melebihi budget maksimum
c.Fungsi seleksi: Seleksi Processor, Memory dan Graphic card agar mendapat performa optimum dan tidak melebihi budget maksimum yang tersedia
d.Fungsi obyektif: Budget maksimum yang tersedia

Selengkapnya...

Category:
��
06.30 | Posted in




Download Skripsi
===============================================


1. Analisis penentuan waktu kegiatan perawatan preventif (Download)

2. PENENTUAN KEBUTUHAN KALORI BURUH ANGKUT DENGAN ANALISA DENYUT JANTUNG PADA PR. GEDUNG BIRU, MALANG (Download)

3. PENGEMBANGAN PRODUK KONSUMEN DENGAN FOKUS KEBUTUHAN PELANGGAN (Studi Kasus pada Produk Sabun Mandi CV Balqis Queen Solo) (Download)

4. PENINGKATAN KUALITAS PELAYANAN JASA KESEHATAN DI INSTALASI RAWAT INAP DENGAN MENGGUNAKAN METODE SERVQUAL – FUZZY (Download)


Bagi Yang Mau Download,...
Data Skripsinya Di Password...
dan Passwordnya Bisa Di Download DiSini

Selengkapnya...

Category:
��
06.29 | Posted in




Download Skripsi
===============================================


1. ALAT PENGGAMBAR TANGGAPAN MAGNITUDO TAPIS DALAM RENTANG FREKUENSI AUDIO (Download)

2. ANALISA TRAFIK DAN PERFORMANSI PADA JARINGAN TEKNOLOGI GSM (Download)

3. ANALISIS GANGGUAN JARINGAN LOKAL AKSES TEMBAGA (JARLOKAT) (Download)

4. ANALISIS KERJA SISTEM BIN FILLING DENGAN MENGGUNAKAN PROGRAMMABLE LOGIC CONTROLLER PADA PT SARI HUSADA (Download)

5. ANALISIS TINGKAT INTERFERENSI AKIBAT INTERAKSI ANTAR CELL STATION (Download)

6. Antarmuka USB Pada Mikrokontroler AT89C51 (Download)

7. APLIKASI CHATTING MENGGUNAKAN GPRS (Download)

8. Aplikasi Mobile Commerce untuk Sistem Reservasi Hotel (Download)

9. APLIKASI PERMAINAN RANGKAI HURUF (Download)

10. APLIKASI RINGTONE UNTUK KENDALI SAKLAR ONOF JARAK JAUH ( Download)

11. DESAIN KONTROLER MENGGUNAKAN METODE LINEAR QUADRATIC REGULATOR (LQR) UNTUK PENGONTROLAN SUHU UAP PADA SOLAR BOILER ONCE TROUGH MODE ( Download)

12. IMPLEMENTASI METRIK PADA PENGEMBANGAN PERANGKAT LUNAK (Download)

13. pengaman pendukung jaringan transmisi tegangan tinggi (Download)

14. PENGENDALIAN BILATERAL ROBOT BERBASIS PC (download)

15. Pengendalian Lengan Robot ROB3 Sebagai Penjejak Benda (Download)

16. PERANCANGAN ALAT PENGATUR INTENSITAS CAHAYA DENGAN KENDALI JARAK JAUH UNTUK LAMPU PIJAR (Download)

17. SISTEM PEMANTAUAN KETINGGIAN AIR SECARA REAL TIME BERBASIS MIKROKONTROLER AT89C2051 (Download)

18. STUDI STABILITAS TRANSIENT SISTEM TENAGA LISTRIK DENGAN METODE KRITERIA LUAS SAMA MENGGUNAKAN MATLAB (Download)

19. teknologi ALCATEL A9800 yang merupakan suatu alat untuk transmisi akses radio (Download)


Bagi Yang Mau Download,...
Data Skripsinya Di Password...
dan Passwordnya Bisa Di Download DiSini


Selengkapnya...

Category:
��

Buku Tamu