Anda di halaman 1dari 13

Ver

1.1.3

BAHAN UAS

PERANCANGAN DAN ANALISIS


ALGORITMA (PAA)
Sumber Kisi-Kisi Bpk. Eko.

COIN CHANGE PROBLEM


Sumber https://rumahirul.wordpress.com/2008/11/29/coin-changing-problem/

Diberikan uang senilai 500. Tukar 500 dengan koin-koin uang yang tersedia.
Koin-koin yang disediakan adalah koin 50 sebanyak 5 keping, koin 25
sebanyak 10 keping, koin 10 sebanyak 15 keping. Berapa jumlah koin yang
diperlukan untuk penukaran tersebut?

Jawaban dari persoalan ini ada 2 macam , yaitu kombinasi yang maksimal
dan kombinasi yang minimal.

Kombinasi Maksimal, cari yang mengunakan koin sebanyak-banyaknya.
Pertama buat tabel, urutkan ascending berdasarkan nominal.
Nominal
Quantitas
Digunakan
10
15
15
25
10
10
50
5
2
Jumlah koin maksimal yang digunakan 27 Koin (2 Koin 50, 10 Koin 25 &
15 Koin 10)

Kombinasi Minimum, cari yang mengunakan koin seefisiennya.
Pertama buat tabel, urutkan Descending berdasarkan nominal.
Nominal
Quantitas
Digunakan
50
5
5
25
10
10
10
15
0
Jumlah koin minimum yang digunakan 15 Koin (5 Koin 50, 10 Koin 25 & 0
Koin 10)

*Jika tidak ada jumlah kepingan, dapat diselesaikan dengan jumlah
minimum 10 Koin (senilai 50).

Ver 1.1.3

MULTISTAGE GRAPH
SUMBER : H TTPS :// WWW . SCRIBD . COM / DOC /82423549/ SOAL - UAS - T 0034- PAA - GANJIL -2009-2010


Backward dari 1 ke 13, untuk Forward dari 13 ke 1.

bagi dalam kolom dimana :
1

= kolom 1
7-8-9
= kolom 4
2&4
= kolom 2
11-10-12
= kolom 5
3-5-6
= kolom 3
13

= kolom 6
Jawaban :
METODE FORWARD
Untuk Kolom 5
Cost(5,11) = c(11,13) = 7
*bacanya : Biaya jika kolom 5 yang dipilih node 11 sama dengan biaya dari node
11 ke 13 yaitu senilai 7

Cost(5,10) = c(10,13) = 5

Cost(5,12) = c(12,13) = 6

Untuk Kolom 3
Cost(4,7)
= min{c(7,11)+Cost(5,11)| c(7,10)+Cost(5,10)}
*dibaca Pilih minimum dari 7 ke 11 ditambah Cost(5,11) yang telah dihitung
diatas atau dari 7 ke 10 ditambah Cost(5,10)
*Warna merah dijelaskan di akhir


= min{5+7|5+5}
*dapet 5+7, 7 dari hasil di kolom 5


= min{12|10}


= 10

Ver 1.1.3

Cost(4,8)
= min{c(8,11)+Cost(5,11)|c(8,10)+Cost(5,10)|c(8,12)+Cost(5,12)}


= min{7+7|6+5|5+6}


= 11

Cost(4,9)
= min{c(9,10)+Cost(5,10)|c(9,12)+Cost(5,12)}


= min{4+5|8+6}


= 9

Kolom 3

Cost(3,3)
= min{c(3,7)+Cost(4,7)}


= min{3+10}


= 13

Cost(3,5)
= min{c(5,7)+Cost(4,7)|c(5,8)+Cost(4,8)|c(5,9)+Cost(4,9)}


= min{2+10|6+11|8+9}


= 12

Cost(3,6)
= min{c(6,8)+Cost(4,8)|c(6,8)+Cost(4,8)}


= min{5+11|4+9}


= 13

Kolom 2

Cost(2,2)
= min{c(2,3)+Cost(3,3)| c(2,5)+Cost(3,5)| c(2,6)+Cost(3,6)}


= min{7+13|4+12|6+13}


= 16

Cost(2,4)
= min{c(4,5)+Cost(3,5)|c(4,6)+Cost(3,6)}


= min{5+12|5+13}


= 17

Kolom 1
Cost(1,1)
= min{c(1,2)+Cost(2,2)|c(1,4)+Cost(2,4)}


= min{6+16|5+17}


= 22

Shortest Pathnya dengan 1-2-5-7-10-13* atau 1-4-5-7-10-13** dengan jarak 22

*cara mendapatkan shortestnya :
dari awal sudah pasti node pertama(1).
2 dari min dalam Cost(1,1) yg diambil c(1,2)+Cost(2,2)
5 dari Cost(2,2) kan Min yg paling rendah c(2,5)+Cost(3,5)
7 dari Cost(3,5) kan Min yg paling rendah c(5,7)+Cost(4,7)
10 dari Cost(4,7) kan Min yg paling rendah c(7,10)+Cost(5,10)
13 akhir.
**karena sama2 hasilnya 22
*** Backward cari dari Cost(2,2)> Cost(2,4)>Cost(3,3)>Cost(3,5)>....>Cost(6,13)

Ver 1.1.3

CODE OPTIMIZATION
Basic Command
LOAD(mangil),STORE/STOR(simpan)
Perlu di load untuk bisa di proses, Perlu di store supaya data ga hilang

ADD(+),SUB(-),DIV(/),MPY(*).

SEMUA HARUS DALAM HURUF BESAR
*sumber tugas GSLC 03 Bpk. Eko


y = (a +b) (c d)/bc

LOAD b
MPY c
STOR x
LOAD c
SUB d
DIV x
STOR y
LOAD a
ADD b
SUB y

*tips, 1pembagi di kerjakan pertama pembilang belakangan agar bisa langsung
DIV, mengurangi 1 STOR. 2Kerjakan kanan dulu baru kiri agar mengurang 1
STOR.

x = ab (c + d)/(a b)


Jika dari kiri terlebih dahulu
LOAD a
LOAD a
SUB b
MPY b
STOR x
STOR x
LOAD c
LOAD c
ADD d
ADD d
DIV x
STOR y
STOR y
LOAD a
LOAD a
SUB b
MPY b
STOR z
SUB y
LOAD y
DIV z

STOR yz

LOAD x

SUB yz



Lebih panjang 4 langkah(tidak

optimum)

Ver 1.1.3

HUFFMAN CODE
Soal : "Perancangan Algoritma Komputer"

*perlu diperhatikan, Huruf besar huruf kecil berbeda, Spasi(Sp) dihitung, Hati-
hati perhatikan jika di kata diakhiri dengan titik(.) harus dihitung.

Identifikasi Frekuensi
P e r
1 2 3

a n c a n g a n A l g o r i t m a K o m p u t e r
4 3 1 2
2 1 1 2 1 2 2 1
1 1


Tabel Frekuensi
P c A l i K p u e g sp o t m r n a
1 1 1 1 1 1 1 1 2 2 2 2 2 2 3 3 4

*Soal UAS thn 2009/2010 langsung dalam bentuk tabel frekuensi


**jika ada frekuensi yang sama dilihat dari yang pertama kali muncul dalam
kalimat

Tree

















Cara membuat tree:
1. Tulis huruf pada tabel frekuensi secara berurutan dari paling kecil
frekuensinya ke yg paling besar.
2. Ambil dua huruf paling kiri(dalam contoh ini P dan c)
3. Buat tree dengan P di kiri dan c di kanan, dimana root jumlah frekuensi P
dan c
4. Taruh tree tersebut di paling kanan huruf yang frekuensinya sama atau
lebih kecil(dalam contoh ini disamping kanan m.)
5. Ulangi sampai tinggal 1 tree besar.

Ver 1.1.3
Binary Code
Char Biner Bit
Pengali Total
P
11000
5
1
5
c
11001
5
1
5
A
11010
5
1
5
l
11011
5
1
5
i
11100
5
1
5
K
11101
5
1
5
p
11110
5
1
5
u
11111
5
1
5
e
0110
4
2
8
g
0111
4
2
8
sp
1000
4
2
8
o
1001
4
2
8
t
1010
4
2
8
m
1011
4
2
8
r
000
3
3
9
n
001
3
3
9
a
011
3
4
12
TOTAL BIT
118

Cara mendapatkan angka biner dengan melihat lokasi dengan acuan utama root.
contoh P(11000):
1 dari root(30) kesebelah kanan(16) kanan artinya 1*
1 dari (16) ke kanan(8) artinya 1
0 dari (8) ke kiri(4) artinya 0
0 dari (4) ke kiri(2) artinya 0
0 P ada di kirinya 2 maka 0
Bit dari jumlah digit biner, pengali dari tabel frekuensi.
*tergantung perjanjian soal kanan 1/0 kiri 1/0, dalam soal ini kanan 1 kiri 0

MAP COLORING (Welsh & Powell)


Angka Khromatik = 3(jumlah warna minimum)
*tips Mulai dari yang memiliki hubungan paling banyak(dalam soal ini tengah).
**disarankan membawa Spidol warna 3 + pensil/bulpen 1.
*** ini versi sederhana Untuk UAS Tahun lalu di pembahasan dibawah

Ver 1.1.3

Figure 1 Soal

Buat Node & beri label di setiap area, Lalu tarik garis ke node yang bersingungan
dengan node tersebut(A ke C & B, C ke A,B,H,D,E) (Node A dan E tidak di tarik
karena tidak bersentuhan langsung)

Figure 2 Setelah semua node di tarik garis

Ver 1.1.3


Jadilah Graphnya.
Langkah berikutnya, Urutkan berdasarkan jumlah cabang yg dimiliki dari besar
ke kecil.

Node
Jumlah Sisi
Node
Jumlah Sisi
A
2
C
5
B
3
G
5
C
5
H
5
D
4
D
4
E
3
J
4
F
3
B
3
G
5
E
3
H
5
F
3
I
3
I
3
J
4
A
2
K
1
L
2
L
2
K
1

Mulai dari C

Ver 1.1.3
Lihat tabel, dibawah C adalah G Warnai dengan warna yg sama, andaikan G
bersentuhan dengan C(dalam kasus ini yg bersentuhan A,B,E,D,H), G tidak dapat
diwarnai sama maka lihat di tabel uruttan berikutnya yaitu H.

Urutan Pewarnaan Kuning C-G-L-K

Urutan Pewarnaan Biru H-J-E-A

Urutan pewarnaan Ungu D-B-F-I, Hasil Akhir 3 Warna Khromatik




Ver 1.1.3

BRANCH & BOUND

*Soal Mungkin dalam bentuk graph, untuk mengubah graph menjadi cost matrix dapat mengklik link dibawah ini
Download Untuk Qualitas Asli dari gambar-gambar dalam Ringkasan ini dapat mengklik link ini

Figure 5 Direct
Graph

Figure 4 Hal 1

Figure 3 Hal 2

Figure 7 Hal 3

Figure 6 Hal 4

Ver 1.1.3

Backtracking N-QUEEN PROBLEM(Depth First Search)


"konsep dari
backtracking adalah
coba hinga stuck, jika
sudah stuck kembali
ke awal, lalu coba
cara yang lain."



Simulasi dari tree diatas(Tree tidak
diberikan di soal)

A-B(1,1)
Q1














Kiri-kanan Q langsung di x-in (*sebagai
Tanda, di UAS tidak perlu)

B-C(2,2)
Q1 x x x
x Q2

x


x


kemakan jadi back track kembali ke
B Ganti posisi Q2

B-D(2,3)
Q1 x x x
x
Q2
x


x


Bisa lanjut



D-E(3,2)
Q1 x x x
x x Q2 x
x Q3 x
x
x
kemakan, Back track lagi kembali ke
D Ganti posisi Q3(*tidak ke B dulu karena di D
masih ada peluang)

D-F(3,4)
Q1 x x x
x x Q2 x
x
x Q3
x
x
kemakan, Backtrack lagi kembali ke
D, D habis Kembali ke B Ganti posisi
Q2.

B-G(2,4)
Q1 x x x
x

Q2
x


x


Bisa lanjut

Ver 1.1.3
G-H(3,2)
Q1 x x x
x x x Q2
x Q3
x
x

x
Bisa lanjut

H-I(4,3)
Q1 x x x
x x x Q2
x Q3 x x
x x Q4 x
Kemakan, Backtrack ke H,H abis
Backtrack ke G ganti posisi Q3.

G-J (3,3)
Q1 x x x
x x x Q2
x
Q3 x
x

x
Kemakan, Backtrack ke B, B habis
Backtrack ke A, Ganti posisi Q1.

A-K(1,2)
Q1










Bisa lanjut

K-L(1,2)
x Q1 x x
Q2 x


x


x

Kemakan, backtrack ke K, ganti
posisi Q2









K-M(1,3)
x Q1 x x
x Q2
x

x

Kemakan, backtrack ke K, ganti
posisi Q2

K-N(2,4)
x Q1 x x
x
Q2
x

x

Bisa lanjut

N-O(3,1)
x Q1 x x
x x x Q2
Q3 x
x

x
x
Bisa lanjut

O-P(4,3)
x Q1 x x
x x x Q2
Q3 x x x
x x Q4 x
Semua ke 4 queen sudah diletakan
dan tidak saling makan, selesai.

* Untuk 5/6/... Queen Mengunakan
Metode yang sama.
** Pengerjaan melalui pembuatan
simulasi yang di tuangkan ke bentuk
tree






Ver 1.1.3

Anda mungkin juga menyukai