0% found this document useful (0 votes)
70 views90 pages

Model Building Using Solidworks

This document provides an overview of the key elements and features in ProModel simulation software. It introduces basic elements like locations, entities, arrivals and processing as well as more advanced elements like resources, paths, costs, attributes, variables, macros, arrays, subroutines and more. The document acts as a user guide for building models in ProModel and utilizing its full capabilities. It explains how to define different elements, set their properties, and use features like tracing, debugging, downtimes and priorities to build effective simulations.

Uploaded by

Ivan Menori
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
0% found this document useful (0 votes)
70 views90 pages

Model Building Using Solidworks

This document provides an overview of the key elements and features in ProModel simulation software. It introduces basic elements like locations, entities, arrivals and processing as well as more advanced elements like resources, paths, costs, attributes, variables, macros, arrays, subroutines and more. The document acts as a user guide for building models in ProModel and utilizing its full capabilities. It explains how to define different elements, set their properties, and use features like tracing, debugging, downtimes and priorities to build effective simulations.

Uploaded by

Ivan Menori
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.

DAFTAR ISI

PERKENALAN 01
Tentang ProModel .............................................................................................. 01
Apa yang bisa didapatkan dari buku ini?.............................................................. 01
Apa ekspektasi penulis terhadap pembaca ......................................................... 01
Panduan membaca buku panduan(?) ..................................................................02
Apakah setelah membaca buku ini saya sudah bisa langsung lulus semua modul
praktikum simulasi komputer? ...........................................................................02

ELEMEN UMUM 03
General Information ........................................................................................... 05
Background Graphics ......................................................................................... 06
Shifts & Breaks .................................................................................................. 06
Mendefinisikan Shift Kerja ............................................................................. 06
Menetapkan Shift Kerja .................................................................................. 08

ELEMEN DASAR 10
Locations .......................................................................................................... 10
Location Graphics Window ............................................................................. 11
Location Edit Table........................................................................................ 13
Capacity & Unit .............................................................................................. 13
Location Routing Rules .................................................................................. 13
Index Number ................................................................................................ 14
Entities.............................................................................................................. 15
Arrivals .............................................................................................................. 16
Processing .........................................................................................................17
Operation Window ..........................................................................................17
Routing Window ............................................................................................ 18
Process Tools Window................................................................................... 18
Process Routing Rules ................................................................................... 19

1
Model Building: Buku Panduan Penggunaan ProModel

ELEMEN PENDUKUNG 21
Resource ........................................................................................................... 21
Resource Graphics Window ........................................................................... 22
Resource Edit Table....................................................................................... 22
Units ............................................................................................................. 23
Resource Specifications Dialog Box (Specs) ................................................... 23
Search ........................................................................................................... 24
Node Logic Editor (Logic) .............................................................................. 25
Resource Points ............................................................................................ 26
Path Network ..................................................................................................... 26
Cost................................................................................................................... 27
Cost Dialog Box ............................................................................................. 27
Locations Costing.......................................................................................... 28
Resource Costing .......................................................................................... 28
Entities Costing ............................................................................................. 29
Attributes .......................................................................................................... 29
Variables ........................................................................................................... 30
Variables Edit Table ....................................................................................... 30
Menampilkan Variabel di Layout Window ........................................................ 30
Local Variable ................................................................................................ 31
Macros............................................................................................................... 31
Scenario Parameters ..................................................................................... 32

ELEMEN LANJUTAN 34
Arrays ................................................................................................................ 34
Initializing Arrays ........................................................................................... 35
Cara Mengimport Data Ke Dalam Array ........................................................... 35
Cara Mengexport Data Ke Dalam Spreadsheet ................................................ 36
Kegunaan Array ............................................................................................. 37
Tank .................................................................................................................. 37
Subroutines ....................................................................................................... 38
Subroutine Format ........................................................................................ 39
Contoh Penggunaan Subroutine..................................................................... 39
Subroutines VS Macros ..................................................................................40
Arrival Cycles .....................................................................................................40

Laboratorium Perancangan Tata Letak & Fasilitas 2


Model Building: Buku Panduan Penggunaan ProModel

Contoh Arrival Cycle ...................................................................................... 41


Table Function ................................................................................................... 41
Contoh Table Function................................................................................... 42
User Defined Distributions ................................................................................. 42
External Files ..................................................................................................... 42
File Type........................................................................................................ 43
Streams ............................................................................................................. 43

ELEMEN TAMBAHAN 44
Graphic Editor....................................................................................................44
Simulation Options ............................................................................................44
Tracing & Debug ................................................................................................ 45
Tracing .......................................................................................................... 45
Debug ............................................................................................................ 46
Downtimes ........................................................................................................ 47
Location Downtime ....................................................................................... 47
Resource Downtime ...................................................................................... 50
Priorities & Preemption ..................................................................................... 52
Shifts & Breaks Priority .................................................................................. 52
Location Priorities & Preemption ................................................................... 52
Resource Priorities & Preemption .................................................................. 54

LOGIC & FUNCTION 57


Logic ................................................................................................................. 57
Accum ........................................................................................................... 57
Activate......................................................................................................... 57
Animate......................................................................................................... 58
Assignment ................................................................................................... 58
Begin & End ................................................................................................... 58
Break ............................................................................................................ 58
Close ............................................................................................................. 59
Combine ........................................................................................................ 59
Comment ...................................................................................................... 59
Create ........................................................................................................... 59
Debug ............................................................................................................ 60

Laboratorium Perancangan Tata Letak & Fasilitas 3


Model Building: Buku Panduan Penggunaan ProModel

Dec & Inc ....................................................................................................... 60


Display .......................................................................................................... 60
Do Until ......................................................................................................... 61
Do While & While Do ....................................................................................... 61
Down ............................................................................................................. 61
Dynplot .......................................................................................................... 61
Free & Free All ............................................................................................... 62
Get ................................................................................................................ 62
Goto .............................................................................................................. 62
Graphic.......................................................................................................... 63
Group & Ungroup ........................................................................................... 63
If Then Else.................................................................................................... 63
Incentcost, Incloccost, Increscost ................................................................. 63
Int & Real ....................................................................................................... 64
Join ............................................................................................................... 64
Jointly Get ..................................................................................................... 64
Load .............................................................................................................. 65
Log ................................................................................................................ 65
Match ............................................................................................................ 65
Move, Move For, Move On, Move With ............................................................. 65
Order ............................................................................................................. 66
Pause ............................................................................................................ 66
Prompt .......................................................................................................... 66
Read .............................................................................................................. 67
Rename ......................................................................................................... 67
Report ........................................................................................................... 67
Reset............................................................................................................. 67
Reset Stats.................................................................................................... 67
Route ............................................................................................................ 68
Send .............................................................................................................. 68
Sound ............................................................................................................ 68
Split .............................................................................................................. 68
Stop .............................................................................................................. 68
Trace ............................................................................................................. 69
Use................................................................................................................ 69
View .............................................................................................................. 69

Laboratorium Perancangan Tata Letak & Fasilitas


4
Model Building: Buku Panduan Penggunaan ProModel

Wait .............................................................................................................. 69
Wait Until ...................................................................................................... 70
Warm Up ....................................................................................................... 70
Functions .......................................................................................................... 70
Calyear, calmonth, Caldom, Calday, Calhour, Calmin ....................................... 70
Cap.................................................................................................................71
Char ...............................................................................................................71
Clock ..............................................................................................................71
Ccontents.......................................................................................................71
Ent .................................................................................................................71
Entity .............................................................................................................71
Entries .......................................................................................................... 72
Exp ................................................................................................................ 72
Freecap ......................................................................................................... 72
Freeunits ....................................................................................................... 72
Getcost ......................................................................................................... 72
Getreplication ............................................................................................... 72
Getresrate ..................................................................................................... 72
Groupqty ....................................................................................................... 73
Ln.................................................................................................................. 73
Loc ................................................................................................................ 73
Location ........................................................................................................ 73
Locstate ........................................................................................................ 73
Ownedresource ............................................................................................. 73
Percentop ..................................................................................................... 73
Percentutil .................................................................................................... 74
Preemptedres ............................................................................................... 74
Rand .............................................................................................................. 74
Res ................................................................................................................ 74
Resource ....................................................................................................... 74
Resqty ........................................................................................................... 74
Round............................................................................................................ 74
Sqrt ............................................................................................................... 74
Timesused..................................................................................................... 75
Trunc............................................................................................................. 75
Units ............................................................................................................. 75

Laboratorium Perancangan Tata Letak & Fasilitas


5
Model Building: Buku Panduan Penggunaan ProModel

STAT::FIT 76
SIMRUNNER 78
MODELLING 101 81
Model Training ............................................................................................... 81
Model Example .............................................................................................. 81

DAFTAR PUSTAKA

Laboratorium Perancangan Tata Letak & Fasilitas


6
PERKENALAN

Tentang ProModel
ProModel adalah tools yang lengkap dan mudah digunakan untuk memodelkan dan
mensimulasikan sistem discrete-event secara efektif. ProModel juga memiliki kapabilitas
untuk memodelkan aliran kontinu untuk tangki dan wadah lainnya. Dalam ProModel, sebuah
model didefinisikan dengan menggunakan graphical tools, tabel untuk menampung data, dan
kotak dialog yang dapat diisi. Output yang dihasilkan oleh ProModel memberikan gambaran
umum dan rincian untuk setiap ukuran performansi yang menjadi kunci (contoh: utilitasi,
jumlah entitas, persen menganggur, dll). Informasi tersebut dapat disajikan dalam bentuk
grafik, angka, dsb. (Harrell, 2011:93)

Apa yang bisa didapatkan dari buku ini?


Buku ini berisikan panduan-panduan mengenai tools-tools yang terdapat dalam
ProModel, yang mungkin tidak akan diajarkan secara langsung dalam perkuliahan. Dengan
buku ini, anda dapat mempelajari berbagai perintah dengan cepat, mudah, dan dapat
mengaplikasikannya secara langsung. Buku ini tidak akan membahas semua aspek dalam
ProModel secara mendetail, buku ini juga bukan merupakan langkah-langkah membuat model
dalam praktikum seperti yang anda inginkan, namun buku ini dapat membantu Anda dalam
memahami dan menggunakan ProModel dengan lebih baik lagi tanpa perlu repot mencari
sumber lain (ataupun bertanya pada teman Anda terus!)

Apa ekspektasi penulis terhadap pembaca?


Buku ini disusun dengan menyesuaikan target pembacanya. Untuk buku ini, target
pembacanya adalah Mahasiswa Universitas Kristen Maranatha. Poin-poin berikut merupakan
penjabaran mengenai target pembaca yang ada di pikiran penulis:
 Memiliki software ProModel minimal versi 6.0,
 Sedang mengikuti mata kuliah simulasi komputer,
 Memiliki perangakat komputer yang mampu menjalankan ProModel dengan baik,
 Mempunyai kemampuan dasar dalam mengoperasikan perangkat komputer,
 Mempunyai pengalaman dan kemampuan dalam menggunakan ProModel (berjalan seiring
waktu), dan
 Memahami Bahasa Indonesia dan sedikit Bahasa Inggris.

1
Model Building: Buku Panduan Penggunaan ProModel

Panduan membaca buku panduan(?)


Tidak terdapat urutan pasti yang perlu diikuti dalam membaca panduan ini. Namun,
penulis menyarankan membaca panduan ini sesuai dengan urutan bab yang diberikan. Dalam
membaca buku panduan, terdapat beberapa hal yang perlu diingat untuk dapat memahami
maksud yang ingin disampaikan oleh penulis. Adapun beberapa hal yang perlu diperhatikan:
 Perintah dan Fungsi (Logic & Function) yang dituliskan dalam panduan ditulis dalam huruf
kapital, tidak dicetak miring (italic), dan juga memiliki tanda kurung disebelah perintah
ataupun fungsi tersebut. Contoh: WAIT(), IF THEN ELSE(), LOC().
 Pada beberapa bagian, penulis mencantumkan subbab lain pada suatu bagian untuk
mengarahkan pembaca kepada bagian tertentu dalam panduan, yang dituliskan dalam
huruf kapital dan dicetak tebal (bold). Contoh: PRIORITIES & PREEMPTION.
 Setiap bab ditunjukkan pada bagian awal dengan nomor romawi, dan terdiri atas
beberapa subbab yang ditandai dengan nomor dan dicetak tebal (bold).
 Beberapa subbab memiliki penanda bagian-bagian tertentu yang ditandai dengan ukuran
teks yang lebih besar dan dicetak tebal.

Apakah setelah membaca buku ini saya sudah bisa


langsung lulus semua modul praktikum simulasi
komputer?
Tentu saja belum. Anda masih perlu berlatih dalam menggunakan ProModel dengan
mengikuti kuliah dan praktikum simulasi komputer. Namun, dengan membaca buku ini dan
berlatih, anda telah mengambil langkah pertama untuk semakin memahami kegunaan tools-
tools dalam ProModel yang dapat anda gunakan untuk menjalani praktikum simulasi
komputer.

Laboratorium Perancangan Tata Letak & Fasilitas 2


BAB I
ELEMEN UMUM

Elemen umum merupakan elemen dalam ProModel yang berpengaruh secara umum
kepada model tersebut. Perubahan dari masing-masing elemen dalam elemen umum tidak
akan mengubah besar nilai output yang dihasilkan. Adapun elemen umum terdiri dari 3 bagian,
yakni general information, background graphics, dan shifts & break.

Sebelum membahas mengenai elemen-elemen yang ada didalam ProModel, perlu


diketahui tampilan awal ProModel dan bagian-bagiannya. Tampilan awal untuk ProModel akan
menampilkan menu bar dan layout window. Menu bar berisi fitur-fitur dan elemen yang dimiliki
dan dapat digunakan dalam ProModel. Sedangkan, layout window merupakan tempat elemen-
elemen disusun dan ditampilkan hingga membentuk model. Layout window menjadi tempat
elemen-elemen dalam ProModel ditempatkan posisinya hingga membentuk suatu tata letak
dari model yang menyerupai kondisi aktual yang diinginkan. Pada layout window kita juga
dapat melihat animasi dari model yang dibuat pada saat simulasi dijalankan. Menu bar memiliki
beberapa bagian, antara lain:

File yang mengatur mengenai hal-hal seperti


menyimpan model, membuka model,
membuat model baru, dll. Pada menu ini
terdapat pilihan view text untuk menampilkan
spesifikasi model yang dibuat dalam bentuk
tulisan/ teks. Selain itu, terdapat juga pilihan
print text yang digunakan untuk mencetak
informasi view text baik menjadi bentuk file TXT ataupun kedalam bentuk kertas (melalui
printer).

3
Model Building: Buku Panduan Penggunaan ProModel

Edit yang berisi fungsi-fungsi yang dapat digunakan untuk


mengubah isi dari elemen-elemen tertentu, seperti menghapus,
menambahkan, dan memindahkan. Menu ini hanya dapat digunakan
pada saat sedang mengakses lemen tertentu (contoh: pada saat
mengubah elemen lokasi).

View yang berisi fungsi-fungsi untuk mengubah tampilan layout


window, seperti menampilkan grid, menampilkan koordinat dalam
layout, menampilkan jalur perpindahan entitas, menampilkan jalur
path network, memperbesar dan memperkecil pandangan, dsb.

Build yang menjadi jembatan untuk mengakses elemen-elemen


yang ada didalam membuat suatu model dalam ProModel,
seperti lokasi, entitas, atribut, dll. Selain melalui menu Build,
terdapat beberapa elemen yang dapat diakses menggunakan
hotkey yang dapat ditekan melalui keyboard, seperti CTRL + L,
CTRL + M, dll

Simulation yang berisi fungsi-fungsi perihal simulasi,


seperti menjalankan simulasi, mengatur parameter
model, menyusun skenario untuk model, dan
menjalankan SimRunner. Bagian option dalam menu ini
dapat digunakan untuk mengatur hal-hal mengenai
simulasi, yang dijelaskan pada bagian SIMULATION
OPTIONS.

Output yang berisi fungsi-fungsi untuk menampilkan


hasil dari simulasi yang telah dijalankan, antara lain hasil
secara statistik (utilisasi, jumlah masuk, jumlah keluar,
jumlah diproses, dll) dan hasil tracing. Informasi
mengenai tracing dijelaskan pada bagian TRACING & DEBUG.

Laboratorium Perancangan Tata Letak & Fasilitas 4


Model Building: Buku Panduan Penggunaan ProModel

Tools yang berisi fitur-fitur lain yang mendukung


penyusunan model, seperti menari suatu ekspresi tertentu
dalam model, menambahkan gambar lokasi, entitas, dan
resource (lihat bagian GRAPHIC EDITOR). Menu ini juga
dapat digunakan untuk mengakses Stat::Fit dan melakukan
pengaturan jenis output dalam ProModel (output viewer atau
output viewer 3DR).

Window yang digunakan untuk mengatur tampilan window


dalam ProModel, dapat diatur menjadi tile ataupun cascade.

Help yang digunakan untuk mendapatkan bantuan mengenai


pengoperasian ProModel dengan melihat user guide ProModel
secara daring.

Setiap mengakses suatu elemen, ProModel akan menampilkan beberapa window


tambahan yang berbeda-beda tergantung kebutuhan elemen tersebut Window tersebut
digunakan dalam mendefinisikan elemen yang diakses.

1.1 GENERAL INFORMATION


Kotak dialog general information memberikan akses untuk menentukan secara spesifik
tentang sebuah model, seperti nama, satuan waktu, satuan jarak, dan graphic library. Anda
juga dapat menentukan logika inisialisasi (initialization logic) dan logika pemberhentian
(termination logic) model. Logika inisialisasi akan dijalankan pada saat sebelum simulasi
berlangsung. Dengan kata lain, semua perintah yang dimasukkan kedalam logika inisialisasi
akan dijalankan sesaat sebelum simulasi dimulai. Sebaliknya, logika pemberhentian akan
dijalankan setelah simulasi berakhir. Jendela catatan dapat digunakan untuk menentukan
bagian dari model seperti nama pemodel, tanggal revisi, asumsi model, dan hal lain yang
terkait. General Information dapat diakses melalui BUILD > GENERAL INFORMATION atau
dengan menggunakan hotkey CTRL + I.

Laboratorium Perancangan Tata Letak & Fasilitas 5


Model Building: Buku Panduan Penggunaan ProModel

1.2 BACKGROUND GRAPHICS


Background Graphics dapat digunakan untuk meningkatkan kemiripan model yang dibuat
dengan menambahkan gambar pada model yang hendak disimulasikan. Background Graphics
dapat diakses melalui BUILD > BACKGROUND GRAPHICS.
Dalam background graphics, terdapat 2 jenis gambar yang dapat ditambahkan pada model
yang dibuat, yaitu front of grid dan behind grid. Perbedaan kedua jenis gambar tersebut
terletak pada posisinya. Front of grid akan menempatkan gambar di depan elemen lain seperti
lokasi, entitas, dll. Sedangkan, behind grid akan menempatkan gambar dibelakang elemen
lainnya. Sebuah latar belakang dapat menunjukan lantai produksi, maupun lokasi lainnya.
Dengan demikian, objek seperti pintu, dinding, jalur khusus yang terdapat pada kondisi aktual
dapat lebih digambarkan melalui background graphics. Latar belakang perlu dibuat
menggunakan aplikasi lainnya seperti autoCAD atau Microsoft Visio. ProModel hanya dapat
mengenali latar belakang dengan format BMP, WMF, GIF, atau PCX.
Untuk menambahkan latar pada model yang dibuat, setelah membuka background graphics
window, tekan EDIT > IMPORT GRAPHIC, kemudian masukkan file latar yang telah dibuat
sebelumnya. Apabila gambar telah sesuai dengan format yang dapat digunakan, maka gambar
akan muncul pada layout window. Gambar dapat diatur ukuran dan posisinya dalam layout
window.

1.3 SHIFT & BREAKS


Shifts & Breaks merupakan elemen yang mengatur shift kerja dan waktu istirahat dari
sistem. Shift dan waktu istirahat perminggunya diatur dengan menggunakan shift editor.
Untuk mendefinisikan shift kerja sistem, shift & breaks dapat diakses melalui BUILD > SHIFTS
> DEFINE, dan untuk menetapkannya pada model yang dibuat dapat menggunakan BUILD >
SHIFTS > ASSIGN.

Mendefinisikan Shift Kerja

Shift editor merupakan tools yang digunakan untuk mendefinisikan shift kerja dalam
suatu sistem setiap minggunya, mulai dari hari minggu hingga sabtu. Setelah shift
perminggu didefinisikan pada shift editor, file tersebut perlu disimpan terlebih dahulu
dalam format SFT. Terdapat beberapa hal yang perlu diperhatikan dalam membuat sebuah

Laboratorium Perancangan Tata Letak & Fasilitas 6


Model Building: Buku Panduan Penggunaan ProModel

shift, yakni menentukan waktu shift dimulai, waktu shift berakhir, waktu mulai istirahat,
dan lamanya waktu istirahat. Untuk itu, terdapat 3 fungsi utama yang perlu diperhatikan
dalam shift editor, yaitu Define Shift Block, Define Break Block, dan Block Editor.

Pada dasarnya, untuk menentukan waktu bekerja ataupun isrtirahat dalam shift editor,
kita hanya perlu menggambar sebuah block (kotak) dalam kerangka shift, dimana sumbu
horizontal menandakan waktu (jam), dan sumbu vertikal menandakan hari. Untuk
mendefinisikan shift kerja setiap harinya, tekan tombol define shift block, lalu tarik garis
dari jam awal shift dimulai hingga waktu shift berakhir. Dengan begitu, akan muncul kotak
biru yang menandakan shift kerja dan kotak merah yang menandakan waktu istirahat.
Gambar dibawah menunjukkan contoh apabila kita hendak membuat shift kerja yang
berlangsung dari jam 07:00 hingga jam 17:00.

Setelah shift didefinisikan, untuk menambahkan waktu beristirahat (break), tekan


tombol define break block, kemudian tarik garis pada block shift dari awal waktu istirahat
hingga akhir waktu istirahat. Apabila terdapat lebih dari 1 waktu istirahat, ulangi langkah
yang sama. Berdasarkan contoh sebelumnya, apabila kita hendak menambahkan waktu
istirahat dari jam 12 :00 hingga 13 :00 hasilnya akan menjadi seperti berikut.

Laboratorium Perancangan Tata Letak & Fasilitas 7


Model Building: Buku Panduan Penggunaan ProModel

Kita dapat menggunakan block editor untuk memastikan bahwa shift dan break yang
kita tentukan sudah sesuai dengan yang diinginkan. Apabila shift atau break hendak diubah
waktu mulai ataupun waktu berakhirnya, klik block yang ingin diubah, lalu ubah waktu mulai
(begin time) dan waktu selesai (end time) dari block tersebut di bagian block editor. Seperti
terlihat pada contoh sebelumnya, waktu awal dan akhir shift dan break yang didefinisikan
masih belum sesuai, sehingga perlu dilakukan perubahan menjadi seperti berikut.

Selain merubah titik awal dan akhir block shift ataupun break, block shift dan break
dapat diduplikasi pada hari lainnya. Contohnya apabila pada contoh sebelumnya, shift
berlangsung setiap hari (minggu-sabtu), maka klik kanan block shift pada hari minggu, lalu
pilih duplicate, lalu klik hari senin. Ulangi langkah tersebut hingga semua hari memiliki
block shift dan break. Setelah selesai mendefinisikan shift perminggu, simpan file shift
tersebut pada folder yang sama dengan model yang hendak menggunakan shift.

Menetapkan Shift Kerja


Untuk dapat diimplementasikan pada model, shift kerja perlu ditetapkan terlebih
dahulu. Setelah shift telah didefinisikan dan dibentuk kedalam file dengan format SFT,
maka shift dapat ditetapkan pada model dengan menggunakan shift assignment.

Laboratorium Perancangan Tata Letak & Fasilitas 8


Model Building: Buku Panduan Penggunaan ProModel

Locations : merupakan daftar lokasi yang menerapkan shift kerja, dapat diisi lebih
dari 1 lokasi. Apabila suatu lokasi diberikan shift, maka diluar jam kerja
lokasi tersebut tidak akan melakukan prosesnya, seperti perintah WAIT()
ataupun perpindahan yang dilakukan oleh conveyor.
Resources : merupakan daftar resource yang menerapkan shift kerja, dapat diisi lebih
dari 1 resource.
Shift Files : file shift kerja (dengan format SFT) yang telah didefinisikan sebelumnya
dan digunakan sebagai acuan shift kerja bagi lokasi dan resource. Kolom
Shift Files akan menampilkan lokasi file shift tersebut pada komputer.
Priorities : merupakan prioritas dari waktu kerja dan waktu istirahat yang
ditentukan. Penjelasan mengenai prioritas dalam shift kerja dijelaskan
pada bagian PRIORITIES & PREEMPTION.
Logic : Dalam shift & breaks, logic dibagi kedalam 4 kategori berdasarkan
kejadian yang berhubungan dengan shift tersebut. Keempat kategori
tersebut adalah Pre-Off-Shift (sebelum mengakhiri shift kerja), Off Shift
(pada saat diluar shift kerja), Pre-Break (sebelum memulai istirahat),
Break (pada saat istirahat berlangsung). Masing-masing kategori
memiliki window yang berbeda-beda.
Disable : menggambarkan apakah shift kerja ini diterapkan atau tidak. Apabila
pada kolom ini tertulis “No”, maka shift kerja tidak akan diterapkan pada
saat simulasi berlangsung.

Laboratorium Perancangan Tata Letak & Fasilitas 9


BAB II
ELEMEN DASAR

Dalam membuat model menggunakan ProModel, terdapat beberapa elemen dasar yang
dibutuhkan dalam setiap model. Elemen tersebut adalah Locations, Entities, Arrivals, dan
Processing. Keempat elemen tersebut memiliki perannya masing-masing dan dibutuhkan
dalam memodelkan suatu sistem, khususnya menggunakan ProModel.

2.1 LOCATIONS
Locations merupakan elemen dalam ProModel yang merepresentasikan tempat/lokasi
didalam sistem dimana entitas diolah, disimpan, melakukan aktivitas lain, dan juga
melakukan pemilihan tindakan selanjutnya. Contoh penggunaan lokasi adalah untuk
memodelkan elemen gudang, titik penjemputan, jaringan distribusi, dan lain-lain.
Pengaturan lokasi dapat dilakukan melalui BUILD > LOCATIONS atau dengan menggunakan
hotkey CTRL + L.
Untuk menambahkan lokasi baru, centang kotak “new”. Entitas dapat ditambahkan
dengan memilih graphic yang tersedia, lalu menekan bagian pada layout window dimana
lokasi ingin ditempatkan. Klik 2x untuk mengatur dimensi, warna, dan tampilan lokasi
tersebut.

Pengaturan lokasi memiliki 2 komponen utama, yakni Location Edit Table, Location
Graphics, dan Layout Window. Layout window merupakan tempat lokasi-lokasi tersebut
ditempatkan posisinya, location graphics digunakan untuk membuat, mengatur, dan
menghapus gambar lokasi pada layout window, dan location edit table berfungsi untuk
mengatur karakteristik dari masing-masing lokasi, seperti kapasitas, jumlah, dll.

10
Model Building: Buku Panduan Penggunaan ProModel

LOCATION GRAPHICS WINDOW

Selain lokasi seperti mesin, terminal, dll, terdapat beberapa lokasi yang dapat
digunakan sebagai lokasi penunjang (conveyor, tank, region), dan juga lokasi yang
memberikan informasi dalam suatu lokasi (counter, gauge, text label, status light, dan entity
spot)
Counter dapat digunakan untuk menunjukkan jumlah
entitas dalam suatu lokasi pada saat simulasi
dijalankan. Counter memiliki tampilan yang
menyerupai variabel. Pengaturan counter terdiri dari
warna teks, warna bingkai, dan jenis serta ukuran
teks.

Gauge memiliki fungsi yang serupa dengan counter,


yaitu menampilkan jumlah entitas dalam suatu lokasi.
Perbedaannya terletak pada tampilan yang diberikan.
Apabila counter menampilkan jumlah entitas dalam
bentuk angka, gauge justru menampilkan jumlah
entitas dalam bentuk bar yang merepresentasikan
persentase jumlah entitas yang dibandingkan
terhadap kapasitas lokasi tersebut. Dengan demikian, tampilan yang diberikan bersifat
kualitatif dan bukan kuantitatif.

Tank merupakan bar horizontal atau vertical yang menunjukkan aliran dari benda cair
yang bersifat kontinu. Tanks biasanya digunakan untuk memodelkan pergerakan cairan,
contohnya pada saat memindahkan air dari galon menuju ke gelas.

Text Label digunakan untuk memberikan teks


dalam layout window, sering digunakan untuk
menampilkan nama lokasi.

Laboratorium Perancangan Tata Letak & Fasilitas 11


Model Building: Buku Panduan Penggunaan ProModel

Conveyor/Queue digunakan untuk menggambarkan


lokasi antrian atau konveyor dalam suatu kondisi.
Konveyor dapat berbentuk persegi panjang, garis,
maupun bentuk tangga. Selain itu, conveyor/queue
dapat diatur warna garis dan juga isinya, bahkan
dapat diatur agar tidak terlihat pada saat simulasi
berlangsung. Khusus untuk konveyor, terdapat
pengaturan tambahan yang dapat diakses dengan
menekan tombol conveyor options. Apabila kotak
accumulating tidak diberi tanda centang, maka
konveyor hanya dapat menampung satu persatu
entitas, sebaliknya bila diberi tanda centang maka
konveyor dapat menampung beberapa entitas
sekaligus.

Status Light dapat menampilkan status


suatu lokasi pada saat simulasi berlangsung
dalam bentuk warna. Terdapat 5 jenis status
untuk lokasi dengan kapasitas 1, antara lain
Down atau ‘berhenti’, Blocked atau ‘terhalang’,
Operating atau ‘beroperasi’, Idle/Empty atau
‘menganggur’, dan Setup atau ‘persiapan’.
Sedangkan untuk lokasi dengan kapasitas
lebih dari 1, terdapat 2 jenis status antara lain Up atau ‘beroperasi’ dan Down atau ‘berhenti’.

Entity Spot digunakan untuk mengarahkan posisi entitas pada suatu lokasi pada saat
sedang beroperasi dalam lokasi tersebut. Dengan kata lain, posisi entitas pada saat
sedang diproses di lokasi tertentu akan mengikuti posisi entity spot. Untuk lokasi dengan
kapasitas > 1, jumlah entity spot yang dapat digunakan disesuaikan dengan jumlah
kapasitas lokasi tersebut.

Region digunakan untuk menggambarkan area suatu lokasi. Region juga dapat berperan
sebagai lokasi apabila terdapat gambar layout yang telah di-import.

Laboratorium Perancangan Tata Letak & Fasilitas 12


Model Building: Buku Panduan Penggunaan ProModel

LOCATION EDIT TABLE

Setelah lokasi diinput kedalam layout window dari location graphics window, data
mengenai lokasi tersebut akan dicatat dalam location index table. Kita dapat mengatur
karakteristik masing-masing lokasi, mulai dari kapasitas, jumlah unit lokasi, hingga ke
aturan pemilihan entitas yang masuk.

CAPACITY & UNIT


Kapasitas dalam suatu lokasi menunjukkan seberapa banyak entitas yang dapat masuk
kedalam lokasi tersebut, yang dapat digunakan untuk memodelkan ruang tunggu, gudang,
antrian, dll. Multi-Capacity Location merupakan istilah untuk lokasi dengan kapasitas lebih
dari satu. Unit pada lokasi menandakan jumlah lokasi tersebut, dimana masing-masing
lokasi tersebut memiliki karakteristik yang sama dan melakukan proses yang sama. Multi-
Unit Location merupakan istilah untuk lokasi dengan jumlah unit lebih dari satu.
Pengaturan kapasitas dan jumlah unit dari suatu lokasi dilakukan dengan mengisi bagian
cap dan unit pada location edit window.
Untuk memodelkan lokasi paralel, gunakan :
 Multi-Unit Location apabila setiap unit memiliki downtime-nya masing-masing,
ataupun ingin mengetahui setiap output mesin (statistik), animasi, dan status light
secara individual.
 Multiple Location (membuat lokasi satu-persatu) apabila masing-masing mesin
memiliki jalur masing-masing, memiliki waktu proses yang berbeda beda, ataupun
memiliki lokasi tujuan yang berbeda-beda.

LOCATION ROUTING RULES


Routing rules merupakan salah satu bagian dalam location edit table yang mengatur
tentang pemilihan lokasi tujuan (Selecting a Unit), entitas yang hendak diproses (Select
Incoming Entities), dan metode antrian yang diterapkan (Queueing for Output). Routing rules
dapat diatur dengan menekan tombol “rules…” pada location edit window.

Laboratorium Perancangan Tata Letak & Fasilitas 13


Model Building: Buku Panduan Penggunaan ProModel

Select Incoming Entities digunakan untuk menentukan entitas manakah yang akan dipilih
dari beberapa lokasi asal yang ada. Contohnya apabila terdapat 3 entitas di 3 lokasi Y1, Y2,
dan Y3 menuju ke 1 lokasi X, maka penentuan entitas mana yang akan menuju ke lokasi X
diatur pada bagian ini.
Oldest by priority : menentukan pilihan berdasarkan waktu menunggu
paling lama
Random : menentukan pilihan secara acak
Least available capacity : menentukan pilihan berdasarkan kapasitas lokasi asal
yang paling penuh
Last Selected Location : menentukan pilihan berdasarkan lokasi yang telah
dipilih sebelumnya. Apabila lokasi tersebut sudah
tidak memiliki entitas yang hendak menuju lokasi X,
maka aturan berubah menjadi oldest by priority.
Highest/Lowest Attribute Value : menentukan pilihan berdasarkan nilai atribut entitas
tersebut.

Queueing for Output digunakan untuk menentukan aturan antrian entitas dalam suatu
lokasi. Bagian ini biasanya digunakan untuk antrian.
No Queueing : tidak memiliki pengaturan antrian
First In, First Out (FIFO) : pengaturan antrian didasarkan pada urutan entitas
masuk, dari tercepat hingga terlama.
Last In, First Out (FIFO) : pengaturan antrian didasarkan pada urutan entitas
masuk, dari terlama hingga tercepat.
By Type : pengaturan antrian didasarkan pada tipe entitasnya.
Highest/Lowest Attribute Value : pengaturan antrian didasarkan pada nilai atribut
entitas tersebut.

Selecting a Unit digunakan untuk menentukan unit manakah yang akan dipilih sebagai
tujuan entitas tersebut. Selecting unit dapat dipilih apabila lokasi yang menjadi tujuannya
merupakan lokasi jamak (Multi-Unit Location).
First Available : menentukan pilihan dengan melihat lokasi yang paling
pertama dapat diisi dari baris atas menuju baris
bawah.
By Turn : menentukan pilihan lokasi secara bergantian antara
semua lokasi.
Most Available Capacity : menentukan pilihan lokasi yang memiliki kapasitas
tersedia paling besar.
Fewest Entries : menentukan pilihan berdasarkan lokasi yang paling
jarang dikunjungi.
Random : menentukan pilihan lokasi secara acak

Laboratorium Perancangan Tata Letak & Fasilitas 14


Model Building: Buku Panduan Penggunaan ProModel

Longest Empty : menentukan pilihan lokasi berdasarkan yang paling


lama menganggur.

INDEX NUMBER
Setiap lokasi memiliki 2 identitas, dalam bentuk teks dan dalam bentuk nomor. Identitas
lokasi dalam bentuk nomor disebut juga dengan name-index number. Nomor pada name-
index number mengacu pada urutan lokasi tersebut pada kumpulan lokasi di location edit
window. Dengan kata lain, index number merupakan nomor baris dari lokasi tersebut.
Apabila terdapat lokasi jamak, maka masing-masing lokasi akan mendapatkan index
number yang berbeda-beda dan berurutan.

Seperti terlihat pada gambar 1, pintu masuk memiliki index number 1, tempat
pemesanan memiliki index number 2, dst. Untuk keranjang handuk yang merupakan lokasi
jamak, keranjang handuk 1 memiliki index number 6, sedangkan keranjang handuk 2
memiliki index number 7.
Name-index number cocok digunakan untuk mendefinisikan masing-masing lokasi dalam
lokasi jamak, dapat digunakan dengan menggunakan kode LOC().

2.2 ENTITIES
Entitas (Entity) adalah elemen yang merepresentasikan segala sesuatu yang di proses oleh
model. Dokumen-dokumen, orang, panggilan telepon, dsb dimodelkan sebagai entitas.
Entitas dapat dikelompokan seperti beberapa boks yang ditumpuk diatas pallet (dengan
perintah GROUP()), disatukan dalam satu kesatuan seperti perakitan produk (dengan perintah
JOIN()), dipisah menjadi 2 atau lebih entitas (baik dengan perintah SPLIT()) atau diubah
menjadi satu atau lebih entitas baru (dengan perintah RENAME() atau CREATE() atau dengan
menuliskan jumlah kuantitas yang diinginkan dalam routing). Untuk mengakses elemen
entitas, dapat melalui BUILD > ENTITIES atau dengan menggunakan hotkey CTRL + E.
Setiap tipe entitas memiliki nama dan nomor indeks seperti pada lokasi. Sebuah entitas dapat
dirujuk dengan nama atau nomor indeks menggunakan fungsi ENT().

Laboratorium Perancangan Tata Letak & Fasilitas 15


Model Building: Buku Panduan Penggunaan ProModel

Untuk menambahkan entitas baru, centang kotak “new”. Entitas dapat ditambahkan
dengan memilih graphic yang tersedia. Klik Edit untuk mengubah dimensi entitas, warna
entitas, dan posisi entitas.
Icon : Gambar dari entitas tersebut di layout window.
Name : Nama dari entitas tersebut
Speed : Menggambarkan kecepatan perpindahan dari entitas yang dapat diatur.
Kecepatan ini akan digunakan apabila entitas tersebut bergerak sendiri tanpa
bantuan resource ataupun diatas conveyor.
Stats : Stats dapat diubah untuk menentukan detail dari statistik yang ingin
didapatkan. “Time Series” statistik mempertimbangkan data throughput dari
entitas. Sedangkan “Basic” hanya mempertimbangkan total masing-masing
entitas yang keluar dari sistem.

2.3 ARRIVALS
Arrival merupakan elemen yang mengatur kedatangan entitas yang hendak masuk kedalam
sistem. Setiap entitas yang masuk ke dalam sistem dapat dijadwalkan kedatangannya
menggunakan arrival. Salah satu contoh penggunaan arrival adalah untuk menjadwalkan
kedatangan bahan baku dari supplier. Arrival dapat diakses melalui BUILD > ARRIVALS atau
dengan menggunakan hotkey CTRL + A.

Entity : Menentukan entitas yang akan datang ke dalam sistem.


Location : Menentukan dimana lokasi entitas akan memasuki sistem.
Qty Each : Jumlah entitas yang datang dalam setiap kedatangannya.

Laboratorium Perancangan Tata Letak & Fasilitas 16


Model Building: Buku Panduan Penggunaan ProModel

First Time : Opsi ini mengizinkan anda untuk memvariasikan waktu kedatangan entitas
untuk pertama kalinya. Anda dapat menentukan kedatangan yang
terjadwal pada interval yang diberikan atau menggunakan arrival cycle
untuk menentukan random arrival pada periode tertentu. Promodel
hanya mengevaluasi opsi ini pada awal simulasi dimulai. Arrival cycle
dijelaskan secara pada bagian ARRIVAL CYCLES.
Occurences : Jumlah kedatangan entitas tersebut kedalam sistem.
Frequency : Selang waktu (interval) antar kedatangan entitas.
Logic : Anda dapat menambahkan perintah yang akan di eksekusi ketika
kedatangan terjadi.
Disable : Dapat digunakan untuk menonaktifkan arrival tanpa perlu menghapus
arrival yang sudah dibuat.

2.4 PROCESSING
Processing merupakan elemen dalam ProModel yang berperan sebagai pengatur event dan
alur dari masing-masing entitas didalam sistem. Processing memuat tentang semua proses
yang dijalankan didalam sistem tersebut. Pada bagian processing dapat dilihat alur entitas
diproses dalam sistem, skema penentuan keputusan, aktivitas yang dijalankan oleh entitas,
pekerjaan yang dilakukan oleh resource, dan masih banyak lagi. Processing dapat diakses
melalui BUILD > PROCESSING atau dengan menggunakan hotkey CTRL + P.
Terdapat 3 komponen utama dalam processing, yakni operation window, routing window,
dan process tools window.

OPERATION WINDOW

Operation window merupakan tabel yang menggambarkan proses yang dijalani suatu
entitas dalam lokasi. Dengan kata lain, semua proses yang berlangsung dalam lokasi akan
didefinisikan di operation window. Untuk perintah dan fungsi dalam ProModel dijelaskan pada
bagian LOGIC & FUNCTION.
Entity : Menentukan entitas yang hendak diproses.
Location : Menentukan lokasi dimana entitas melakukan proses.
Operation : Menentukan operasi yang dilakukan oleh entitas di lokasi tersebut.

Laboratorium Perancangan Tata Letak & Fasilitas 17


Model Building: Buku Panduan Penggunaan ProModel

ROUTING WINDOW

Routing window menggambarkan alur entitas menuju lokasi tertentu. Alur entitas
digambarkan dalam layout window dengan tanda panah. Pada routing window, didefinisikan
luaran dari operation window, yaitu entitas hasil proses yang hendak dipindahkan menuju ke
lokasi selanjutnya.
Output : Menentukan entitas setelah diproses.
Destination : Menentukan lokasi tujuan entitas pada saat berpindah.
Rule : Menentukan skema perpindahan entitas tersebut.
Move Logic : Menentukan Logic yang digunakan pada saat perpindahan entitas. Pada
bagian ini dapat diberikan logic MOVE FOR(), MOVE ON(), dan MOVE().

PROCESS TOOLS WINDOW

Process tools window berisi mengenai tombol tombol yang dapat digunakan dalam
membentuk alur proses sistem.
New Process : Menambahkan proses baru
Add Routing : Menambahkan alur perpindahan entitas di layout window.
Find Process : Mencari proses yang ada dalam operation window. Untuk
mencari proses klik entitas yang hendak dicari pada bagian
entity, kemudian tekan tombol find process, dan klik lokasi
yang hendak dilihat.
Show Only Current Entity : digunakan untuk menunjukkan panah hanya untuk entitas
yang diklik pada bagian entity.

Operation window dan routing window memiliki keterkaitan dalam membentuk alur yang
sistematis. Setelah sebuah entitas masuk kedalam sistem, entitas tersebut akan
didefinisikan pada operation window, kemudian entitas tersebut akan didefinisikan di routing

Laboratorium Perancangan Tata Letak & Fasilitas 18


Model Building: Buku Panduan Penggunaan ProModel

window sebagai output dari operasi yang dilakukan. Dengan routing window, entitas akan
diarahkan menuju lokasi lain, dimana lokasi pada lokasi tersebut entitas akan didefinisikan
prosesnya kembali di operation window. Hal tersebut akan berlanjut hingga entitas keluar dari
sistem.

PROCESS ROUTING RULES

Sama halnya seperti routing rules pada lokasi, process routing rules berisi mengenai skema
pemilihan lokasi dan perpindahannya.
Start New Block : Menambahkan blok baru pada routing window. Blok baru berperan
sebagai rute yang dapat dipilih pada saat pengambilan keputusan.
New Entity : Membuat entitas baru untuk dipindahkan ke lokasi tertentu. Dengan
demikian, terdapat 2 entitas yang dipindahkan yakni entitas awal
dan entitas baru.
Quantity : Mengatur berapa jumlah entitas yang hendak dipindahkan.
Quantity berperan seperti perintah SPLIT().
First Available : Memilih lokasi berdasarkan ketersediaan kapasitas di lokasi
tersebut. ProModel akan melihat berdasarkan urutan index
number lokasi kemudian memilih lokasi yang memungkinkan.
Most Available : Memilih lokasi yang memiliki kapasitas kosong paling banyak
diantara lokasi yang ada. Rule ini cocok digunakan untuk lokasi
tujuan dengan tipe multi-capacity.
By Turn : Memilih 2 atau lebih lokasi secara bergantian / bergiliran. Dengan
demikian, setiap lokasi tujuan memiliki jumlah input entitas yang
seimbang.
Random : Pemilihan lokasi dilakukan secara acak.
If Join Request : Entitas dapat berpindah ke lokasi tersebut JIKA pada lokasi tersebut
terdapat perintah JOIN() untuk entitas dan entitas bukan
merupakan base.
If Load Request : Entitas dapat berpindah ke lokasi tersebut JIKA pada lokasi tersebut
terdapat perintah LOAD() untuk entitas dan entitas bukan
merupakan base.

Laboratorium Perancangan Tata Letak & Fasilitas 19


Model Building: Buku Panduan Penggunaan ProModel

If Send : Entitas dapat berpindah ke lokasi tersebut JIKA terdapat perintah


SEND() yang diberikan untuk entitas.
Longest Unoccupied : Memilih lokasi yang memiliki waktu menganggur paling besar.
Until Full : Memilih lokasi dan mengarahkan entitas ke lokasi tersebut hingga
mencapai kapasitasnya, baru berpindah menuju lokasi lain untuk
diisi hingga penuh. Dengan kata lain, entitas akan pergi ke lokasi
yang sama selama kapasitasnya masih tersedia.
If Empty : Memilih lokasi yang tidak diisi oleh entitas apapun (kosong) dan
mengarahkan entitas ke lokasi tersebut hingga mencapai
kapasitasnya. Dengan kata lain, entitas berpindah apabila tidak ada
entitas didalam lokasi tujuannya, dan entitas akan diarahkan ke
lokasi tersebut hingga penuh.
Probability : Memilih 2 atau lebih lokasi berdasarkan probabilitas yang telah
ditentukan. Rute harus berada dalam 1 blok yang sama dan nilai total
probabilitasnya berjumlah 1.
User Condition : Memilih lokasi yang didasarkan pada ketentuan yang diberikan.
Ketentuan yang diberikan harus memiliki 2 keputusan, yakni TRUE
dan FALSE. Contoh ketentuan yang dapat digunakan adalah
dengan menggunakan variabel.
Continue : Meninggalkan entitas pada lokasi awal untuk dilakukan
pemrosesan kembali. Dengan kata lain, entitas tidak akan
dipindahkan dan dibiarkan pada lokasi tersebut untuk diproses
kembali. Continue dapat digunakan untuk membuat loop dalam
suatu sistem.
As Alternate : Lokasi tersebut dapat dipilih JIKA rute untuk lokasi lain tidak dapat
dipenuhi dan entitas harus menunggu (kapasitas penuh, belum
muncul perintah SEND, dll). Alternate dapat digunakan apabila rute
lainnya masih berada dalam 1 blok yang sama, dan digunakan untuk
mencegah adanya lokasi yang terhambat.
As Backup : Lokasi tersebut dapat dipilih JIKA rute untuk lokasi lain tidak dapat
dipenuhi, serta rute dengan rule As Alternate juga tidak dapat
dipenuhi.
Dependent : Lokasi dapat dipilih apabila rute diatasnya dipilih. Dengan
demikian, apabila rute diatasnya tidak terpilih, maka rute
dependen tidak dapat berjalan.
Routing Rules Pada lokasi digunakan untuk mengatur skema pemilihan lokasi yang bersifat
multi-unit. Sedangkan routing rules pada processing memungkinkan penggunaan skema
pemilihan lokasi tersebut untuk 2 lokasi yang tidak sama karakteristiknya. Dengan demikian,
routing rules pada lokasi dan processing tidak harus sama.,

Laboratorium Perancangan Tata Letak & Fasilitas 20


BAB III
ELEMEN PENDUKUNG

Elemen pendukung merupakan elemen yang dapat digunakan untuk mendukung jalannya
suatu model agar dapat lebih sesuai dengan kondisi aktual. Tidak seperti elemen dasar,
elemen pendukung tidak harus digunakan dalam membuat model. Model yang dibuat tetap
dapat dijalankan walaupun tidak menggunakan elemen pendukung.

3.1 RESOURCE
Resource merupakan elemen dalam ProModel yang merepresentasikan seseorang atau
peralatan yang berperan dalam menjalankan suatu kegiatan dalam sistem, baik memindahkan
entitas antara satu lokasi menuju lokasi lainnya (forklift, truk, dll), melakukan pemrosesan
pada suatu entitas dalam lokasi (mengemas barang, melakukan pengecekan kualitas, dll),
ataupun kegiatan lain yang membutuhkan peran sumber daya secara aktif. Pengaturan
resource dapat dilakukan dengan mengakses BUILD > RESOURCE atau dengan menggunakan
hotkey CTRL + R.
Untuk menambahkan lokasi baru, centang kotak “new” pada Resource Graphics Window,
kemudian tambahkan resource dengna memilih graphic yang tersedia.
Terdapat dua jenis resource yaitu dynamic resource dan static resource. Semua resource
yang telah ditempatkan dalam path network tertentu merupakan dynamic resource, karena
resource tersebut dapat berpindah lokasi sesuai dengan jalur yang didefinisikan pada path
network. Apabila suatu resource tidak ditempatkan dalam path network tertentu, resource
tersebut tetap dapat beroperasi dalam suatu lokasi, dinamakan static resource. Dengan kata
lain, static resource tidak dapat membantu proses perpindahan entitas antar lokasi.
Pengaturan resource memiliki dua komponen utama, yakni Resource Edit Table dan
Resource Graphics Window. Resource Graphics Window digunakan untuk membuat, mengatur,
dan menghapus gambar resource pada Resource Edit Table. Sedangkan, Resource Edit Table
berfungsi untuk mengatur karakteristik masing-masing resource, seperti jumlah, jalur, nama,
dsb.

21
Model Building: Buku Panduan Penggunaan ProModel

RESOURCE GRAPHICS WINDOW

Resource Graphics Window berisi gambar-gambar yang dapat digunakan untuk


mengilustrasikan sebuah resource pada saat simulasi berlangsung. Sebuah resource dapat
memiliki lebih dari satu gambar, yang dapat digunakan untuk memperlihatkan perubahan yang
terjadi pada resource pada saat simulasi berlangsung. Selain itu, ukuran, orientasi, dan warna
resource juga dapat diatur dengan menekan tombol edit.

RESOURCE EDIT TABLE


Resource Edit Table digunakan untuk mendefinisikan karakteristik dari masing-masing
resource dalam sistem.

Icon : Representasi gambar resource dalam sistem, diatur melalui Resource Graphics
Window.
Name : Nama yang digunakan sebagai identitas resource tersebut.
Units : Jumlah resource tersebut dalam sistem.
DTs : Skema downtime yang dijalani resource tersebut.
Stats : Tipe data statistik yang diambil (none – tidak mengambil data, summary – data
yang ditampilkan merupakan rata-rata dari semua unit resource, by unit – data
yang dikumpulkan secara kolektif dari masing-masing unit)
Specs : digunakan untuk mengatur spesifikasi resource tersebut, seperti kecepatan
perpindahannya, jalur yang digunakan, tempat istirahat, dsb.
Search : digunakan untuk mendefinisikan work search dan park search.
Logic : digunakan untuk memberikan perintah tertentu apabila suatu resource memasuki
atau keluar dari node tertentu.

Laboratorium Perancangan Tata Letak & Fasilitas 22


Model Building: Buku Panduan Penggunaan ProModel

Pts : digunakan untuk untuk mendefinisikan posisi resource apabila menempati node
tertentu.
Notes : digunakan untuk memberikan catatan yang tidak akan berpengaruh ke jalannya
simulasi.

UNITS
Units pada resource menggambarkan jumlah resource tersebut dalam sistem. Apabila
terdapat lebih dari satu resource, angka pada kolom Units dapat diganti antara 0 hingga 999,
ataupun dengan macro, yang disebut dengan multi-unit resource. Namun, apabila suatu multi-
unit resource memiliki spesifikasi yang sama, jalur yang sama, namun pekerjaan yang
berbeda-beda sehingga perlu diidentifikasi satu persatu, maka penggunaan multi unit
resource kurang cocok. Untuk kasus tersebut, digunakan multiple single-unit resource,
dimana masing-masing resource perlu didefinisikan secara terpisah menjadi masing-masing
resource dengan jumlah unit satu. Dengan demikian, kita dapat menempatkan pekerjaan
secara spesifik untuk resource tertentu.

RESOURCE SPECIFICATIONS DIALOG BOX (Specs)

Kolom Specs berisi tentang informasi mengenai karakteristik dynamic resource dalam
sistem. Pada bagian ini kita dapat menempatkan resource pada suatu path network,
menentukan kecepatan perpindahan resource, dan sebagainya.
Path network : Jalur yang digunakan oleh resource untuk berpindah dari satu lokasi ke
lokasi lainnya.
Home : Tempat awal resource pada saat simulasi berlangsung. Apabila kotak
‘Return Home If Idle’ diberi centang, maka resource tersebut akan
kembali pada tempat yang telah ditentukan menjadi home apabila tidak
memiliki tugas untuk memproses entitas ataupun sedang menjalani
downtime.
Off Shift : Tempat yang dituju apabila resource tidak berada dalam waktu shift
dimana ia harus bekerja.
Break : Merupakan tempat yang dituju apabila resource tersebut sedang
beristirahat (break).
Resource search : Digunakan bila terdapat lebih dari satu resource yang tersedia untuk
menjalankan suatu proses. Resource akan dipilih berdasarkan aturan

Laboratorium Perancangan Tata Letak & Fasilitas 23


Model Building: Buku Panduan Penggunaan ProModel

yang tersedia pada bagian ini. Terdapat 3 aturan pemilihan resource,


yakni Closest Resource (memilih resource dengan jarak yang terdekat
dari proses yang hendak dijalankan), Least Utilized Resource (memilih
resource yang paling banyak menganggur), dan Longest Idle Resource
(memilih resource yang telah paling lama tidak digunakan).
Untuk jalur dengan tipe non-passing, hanya aturan Closest Resource yang dapat digunakan,
karena aturan lain dapat membuat jalur menjadi terhambat karena tidak ada resource yang
dapat mendahului resource lainnya.

Entity Search : Digunakan apabila terdapat lebih dari satu entitas yang hendak
diproses oleh resource. Entitas yang akan diproses terlebih dahulu
akan dipilih berdasarkan aturan yang ditetapkan pada bagian ini.
Terdapat 4 aturan pemilihan entitas, yaitu Longest Waiting Entity
(entitas yang telah menunggu paling lama), Closest Entities (entitas
dengan jarak terdekat dari resource), Entity With The Minimum Value Of
A Specified Attribute (entitas dengan nilai atribut minimal tertentu), dan
Entity With The Maximum Value Of A Specified Attribute (entitas dengan
nilai atribut maksimal tertentu)
Motion : Merupakan bagian yang mengatur mengenai perpindahan resource.
Pada bagian ini, kita dapat mengatur kecepatan resource saat sedang
tidak membawa barang ataupun saat sedang membawa barang
(entitas), akselerasi dan deselerasi resource, waktu mengambil barang
(pickup time), dan waktu menaruh barang (deposit time).

SEARCH
Search mengacu pada instruksi yang diberikan kepada resource. Terdapat 2 jenis rutinitas
yang dapat diberikan, yakni Work Search dan Park Search.

Work Search merupakan serangkaian lokasi yang kemungkinan besar memiliki entitas yang
perlu diproses. Dengan demikian, resource dapat berfokus pada lokasi tersebut sebelum
melihat lokasi lainnya. Terdapat 2 tipe work search, yakni exclusive dan non-exclusive.
Exclusive work search digunakan untuk memastikan bahwa resource tersebut hanya mencari
pekerjaan hanya berdasarkan lokasi yang ditentukan saja. Apabila terdapat entitas yang perlu
diproses pada lokasi lain, maka resource tersebut tidak akan pergi untuk menjalankan
pekerjaan tersebut. Non-Exclusive work search digunakan untuk mengatur bahwa resource
yang mencari pekerjaan akan melihat lokasi tersebut sebelum melihat lokasi lainnya.

Laboratorium Perancangan Tata Letak & Fasilitas 24


Model Building: Buku Panduan Penggunaan ProModel

Node : Titik lokasi dimana resource akan menjalankan work search


Type : Tipe work search, exclusive atau non-exclusive
Location List : Daftar lokasi yang ditinjau oleh resource pada saat mencari pekerjaan,
dapat diisi lebih dari satu lokasi.

Park Search digunakan untuk menempatkan resource pada lokasi tertentu apabila tidak dapat
menemukan pekerjaan dan tidak sedang menjalankan downtime. Dengan demikian, resource
dapat berpindah dari jalur utama dan menunggu di lokasi lain hingga dipanggil untuk
memproses entitas, lokasi, ataupun menjalankan downtime. Apabila pada node atau ‘titik
lokasi’ tersebut tidak didefinisikan park search menuju lokasi lain, maka resource dapat
menunggu pada lokasi tersebut, ataupun kembali ke node home (apabila kotak ‘Return Home If
Idle’ diberi centang).

Node : Titik lokasi dimana resource akan menjalankan park search.


Parking List : Daftar lokasi yang dituju oleh resource pada saat tidak memiliki pekerjaan
(idle). Apabila terdapat lebih dari satu lokasi, maka resource akan mencari
node dengan kapasitas terendah.

NODE LOGIC EDITOR (LOGIC)


Node Logic Editor digunakan untuk memberikan perintah khusus untuk resource pada saat
memasuki atau keluar dari suatu node. Contoh penggunaan logic pada resource adalah untuk
mengganti gambar resource (dengan perintah GRAPHIC()), mengatur jalannya resource
dengan WAIT UNTIL(), ataupun untuk mengumpulkan data tertentu (variabel, atribut, dll).
Pada contoh diatas, apabila pickup memasuki node 2, maka gambar resource pickup pada
sistem akan berubah menjadi gambar kedua yang telah disimpan sebelumnya.

Laboratorium Perancangan Tata Letak & Fasilitas 25


Model Building: Buku Panduan Penggunaan ProModel

Penggunaan perintah NEXT() dan LAST() dapat digunakan pada resource node logic editor
untuk mendefinisikan tujuan dan asal suatu resource pada saat berpindah. Dengan demikian,
dapat digunakan perintah atau kode lain untuk mensimulasikan sistem dengan perpindahan
yang lebih kompleks.

RESOURCE POINTS (PTS)


Untuk resource yang bersifat statis (tidak memiliki jalur tertentu), resource point digunakan
untuk mendefinisikan posisi resource tersebut didalam lokasi. Untuk resource yang bersifat
dinamis, resource point digunakan untuk membantu resource agar tidak memiliki gambar yang
bertumpuk pada suatu titik apabila simulasi berlangsung. Untuk mendefinisikan resource
points, lakukan:
1. Klik resource yang ingin diubah resource point-nya, kemudian klik Pts.
2. Apabila telah muncul tampilan points seperti diatas, klik salah satu node yang posisinya
ingin diubah, lalu tarik hingga membentuk garis, lalu arahkan ke posisi yang diinginkan.
3. Ulangi Langkah 2 untuk node lainnya.

3.2 PATH NETWORK


Path Network atau ‘jaringan jalur’ adalah elemen dalam ProModel yang dapat digunakan
untuk memodelkan jalur perpindahan resources dan entities. Resource dapat berpindah lokasi
mengikuti jalur yang telah didefinisikan di path network. Entities juga dapat berpindah lokasi
sendiri maupun diangkut oleh resources melalui path network. Path Network dapat diakses
melalui BUILD > PATH NETWORK atau dengan menggunakan hotkey CTRL + N.
Untuk menambahkan suatu jaringan jalur baru, tambahkan nama terlebih dahulu untuk jalur
baru yang hendak dibuat. Jaringan jalur dibentuk dari serangkaian node dan garis yang saling
berhubungan membentuk jalur. Dengan demikian, hubungkan setiap lokasi dengan melakukan
klik pada lokasi tersebut lalu arahkan kursor menuju lokasi tujuan dan kemudian klik 2x untuk
menentukan titik akhir jalur, atau klik 1x untuk menentukan belokan pada jalur. Perhatikan
path window dalam membuat jalur untuk memastikan agar jalur terhubung satu dengan
lainnya.

Laboratorium Perancangan Tata Letak & Fasilitas 26


Model Building: Buku Panduan Penggunaan ProModel

Graphic : Menentukan warna jalur dan menentukan visible tidaknya jalur pada layout
window dan selama simulasi berlangsung.
Name : Nama yang digunakan sebagai identitas jalur tersebut
Type : Menentukan tipe dari jalur yang dibuat. Pilih Non-passing jika anda ingin
entitas mengantri di path network. Entities atau resources dengan speed yang
lebih tinggi tidak akan saling menyusul jika menggunakan tipe non passing.
Pilih tipe passing apabila entitas dapat mendahului entitas lain dalam path
network.
T/S : Menentukan tipe dari path network, Time dipilih apabila perpindahan elemen
diukur berdasarkan waktu. Speed & Distance dipilih apabila perpindahan
elemen diukur menggunakan jarak dan kecepatan elemen.
Paths : Menunjukan jumlah path yang sudah dibuat. Dengan menekan path, kita dapat
menentukan jalur yang akan dibuat. Titik awal dan akhir dari masing-masing
jalur yang dibuat merupakan node, yang dapat disambungkan dengan path
lainnya.
Interfaces : Menentukan node atau titik dari path yang dibuat. Jika entitas akan diambil
dari suatu lokasi oleh resources, maka lokasi tersebut harus terkoneksi
dengan node pada suatu path network.
Mapping : Jumlah entries pada tabel mapping.
Nodes : Jumlah dari titik yang muncul dalam pembuatan jalur. Nodes otomatis terbuat
ketika membuat path network pada setiap awal dan akhir garis yang
dibentuk. Pada tabel nodes, anda dapat menentukan node secara manual
maupun menentukan limit dari node (batasan berapa resource yang dapat
menempati satu node pada saat yang sama).

3.3 COST
ProModel memiliki kemampuan untuk menghitung biaya dalam sistem selama simulasi
berlangsung. Dengan demikian, pengambilan keputusan dapat didasarkan pada efisiensi
biaya. Adapun elemen yang dapat diasosiasikan dengan biaya adalah entitas, lokasi, dan
resource. Satuan biaya yang digunakan oleh ProModel adalah $. Untuk mendefinisikan biaya,
elemen cost dapat diakses melalui BUILD > COST.

COST DIALOG BOX


Cost Dialog Box digunakan untuk mendefinisikan biaya untuk lokasi, entitas, dan resource.
Masing-masing elemen mempunyai kolom pengisian yang berbeda-beda. Menu Object Type
digunakan untuk mengganti elemen yang ingin didefinisikan biayanya. Apabila ingin
mendefinisikan biaya pada lokasi tertentu, ubah object type menjadi locations, apabila ingin
mendefinisikan biaya pada entitas, ubah object type menjadi entities, dst.

Laboratorium Perancangan Tata Letak & Fasilitas 27


Model Building: Buku Panduan Penggunaan ProModel

LOCATIONS COSTING

Untuk mendefinisikan biaya lokasi, terdapat 2 komponen utama yang perlu ditentukan,
yakni operation rate dan unit of rate (Per). Operation rate merupakan biaya yang dikeluarkan
oleh lokasi tertentu saat memproses suatu unit, dan unit of rate (Per) merupakan satuan waktu
untuk operation rate. Per dapat diisi dengan sec, min, hr, dan day sesuai dengan satuan waktu
yang diinginkan. Komponen yang dihitung menjadi biaya pada lokasi tertentu adalah pada saat
suatu entitas pada lokasi tertentu menjalankan perintah WAIT() atau USE(). Pada contoh
diatas, Bor Duduk akan memerlukan biaya sebesar 100 setiap menit digunakan.

RESOURCE COSTING

Dalam mendefinisikan biaya resource, terdapat 2 pendekatan, yaitu dengan menggunakan


regular rate dan cost per use. Dengan regular rate, biaya yang dikeluarkan untuk sebuah
resource didasarkan pada waktu simulasi berjalan. Dengan kata lain, resource memiliki biaya
yang konstan, tanpa memperhatikan beban kerja resource tersebut. Contoh penggunaan
regular rate adalah untuk mendefinisikan gaji operator. Cost Per use digunakan apabila biaya
yang dikeluarkan oleh resource didasarkan pada frekuensi penggunaan resource tersebut.
Dengan demikian, semakin sering resource tersebut digunakan, maka semakin besar biaya
yang dikeluarkan resource tersebut. Contoh penggunaan cost per use adalah untuk biaya
penggunaan bensin forklift. Pada contoh diatas, bor duduk akan mengeluarkan biaya sebesar
100 setiap digunakan selama satu menit.

Laboratorium Perancangan Tata Letak & Fasilitas 28


Model Building: Buku Panduan Penggunaan ProModel

ENTITIES COSTING

Untuk mendefinisikan biaya entitas, hanya terdapat 1 komponen yang perlu didefinisikan,
yakni initial cost. Initial cost merupakan biaya yang dikeluarkan untuk entitas yang memasuki
sistem dengan menggunakan perintah CREATE(), ORDER(), maupun dijadwalkan dengan
menggunakan ARRIVALS. Dengan demikian, setiap terdapat satu entitas yang memasuki
sistem, ProModel otomatis akan menghitung initial cost entitas tersebut. Pada contoh diatas,
setiap mendatangkan sebuah resin kedalam sistem dibutuhkan biaya sebesar 3000.
ProModel secara otomatis mengaktifkan pilihan Disable Cost pada simulation options. Dengan
demikian, apabila pada model yang dibuat terdapat elemen biaya, centang pada kotak Disable
Cost perlu dihilangkan terlebih dahulu

3.4 ATTRIBUTES

Attribute adalah elemen yang merepresentasikan informasi tertentu mengenai suatu


lokasi dan entitas. Atribut memiliki karakteristik seperti variabel, perbedaannya adalah
atribut selalu menempel pada lokasi atau entitas tertentu. Atribut dapat diisi dengan tipe
angka integer ataupun real. Atribut dapat diakses melalui BUILD > ATTRIBUTES atau dengan
menggunakan hotkey CTRL + T.
Terdapat 2 jenis atribut, entity attributes atau ‘atribut pada entitas’ dan location attributes
atau ‘atribut pada lokasi’. Apabila suatu entitas dengan atribut tertentu menjalankan perintah
SPLIT(), CREATE(), ORDER(), ataupun perintah lain yang mengakibatkan multiple output,
atribut dari entitas awal akan disalin dan dimiliki oleh semua entitas baru yang terbentuk.
Apabila terdapat perintah JOIN() atau LOAD() antara beberapa entitas dengan masing-masing
atribut yang berbeda-beda, maka entitas yang merupakan output akan memiliki atribut sesuai
dengan atribut entitas yang berperan sebagai base. Apabila terdapat proses GROUP() antara
entitas dengan masing-masing atribut yang berbeda-beda, maka entitas yang telah menjadi
grup tidak memiliki atribut. Namun, pada saat dijalankan UNGROUP() setiap entitas akan
kembali mendapatkan atribut awalnya. Pada proses COMBINE(), entitas terakhir yang masuk
kedalam proses COMBINE() akan mewariskan atribut pada entitas hasil kombinasi baru.

Laboratorium Perancangan Tata Letak & Fasilitas 29


Model Building: Buku Panduan Penggunaan ProModel

3.5 VARIABLES
Variables memiliki dua tipe: global dan lokal. Variabel Global adalah variabel yang
mendefinisikan perubahan nilai numerik selama simulasi berlangsung dan dapat diakses oleh
semua elemen dalam sistem (global). Sedangkan variabel lokal adalah variabel yang akan
tersedia jika terdapat perintah yang membangkitkan variabel tersebut. Variabel dapat
mengandung nilai real dan integer, yang biasanya digunakan untuk pengambilan keputusan
dan merekam informasi. Variabel lokal dapat diakses menggunakan perintah INT() dan REAL()
pada logic builder. Variabel global dapat diakses melalui BUILD > VARIABLES atau dengan
menggunakan hotkey CTRL + B.

VARIABLES EDIT TABLE

Icon : Status indikator variabel pada layout window. Apabila kolom icon berisi
‘Yes’, maka variabel memiliki indikator untuk menunjukkan nilainya pada
layout window.
ID : Menunjukan nama dari variabel yang dibuat
Type : Nilai variabel apakah bilangan bulat (Integer) atau bilangan desimal (Real)
Initial Value : Nilai awal dari variable ketika simulasi di mulai
Stats : Tipe data statistik yang diambil
 None = Tidak ada data statistik yang diambil selama simulasi
 Basic = Mengambil statistik dasar seperti total changes, average
minutes per change, current value, dan average value
 Time series = Mengambil semua data statistik dasar dan nilai dari masa
lalu berdasarkan waktu atau observasi. ProModel mengumpulkan
statistik berbasis weighted time atau observasi untuk variable
tergantung pada jenis yang dipilih

MENAMPILKAN VARIABEL DI LAYOUT WINDOW


Variabel dapat ditampilkan di layout window ataupun tidak. Apabila variabel hendak
ditampilkan dalam layout window, perubahan nilai variabel tersebut dapat dilihat selama
simulasi berlangsung. Variabel ditampilkan dalam bentuk counter. Counter dapat diatur
ukuran, warna, font, dan bentuk frame-nya.

Laboratorium Perancangan Tata Letak & Fasilitas 30


Model Building: Buku Panduan Penggunaan ProModel

Cara memasukan variable ke dalam layout:


1. Buka variable editor,
2. Pilih variable yang ingin di munculkan,
3. Klik dimana variable ingin di letakan pada
layout, dan
4. Atur ukuran dan letak variable dengan cara
men-drag kotak variabel tersebut.

LOCAL VARIABLE
Selain dengan menggunakan cara diatas, variabel dapat dibuat secara langsung melalui
logic, yang dinamakan local variable. Local variables adalah atribut sementara yang dapat
digunakan untuk menjelaskan suatu logika tertentu pada model simulasi. Variabel lokal sangat
berguna untuk mendapatkan nilai unik untuk setiap entitas pada suatu lokasi. Contoh dari
variabel lokal adalah sebagai berikut:

Pada logic diatas, setiap entitas yang masuk dalam lokasi akan diberikan unique value
secara random diantara 0 dan 1. Kemudian IF THEN ELSE() digunakan untuk menentukan
kualitas dari bahan yang datang, jika nilainya lebih kecil dari 0.6 maka kualitas material jenis 1,
jika lebih dari 0.6 dan lebih kecil dari 0.9, maka kualitas material jenis 2, jika lebih dari 0.9,
maka kualitas material jenis 3.

 Perintah WAIT UNTIL() tidak dapat digunakan pada local variables


 Local variables hanya perlu dimunculkan jika dibutuhkan pada logic sebelum di
referensikan.

3.6 MACROS
Macros merupakan elemen dalam ProModel yang merepresentasikan suatu ekspresi yang
sering digunakan dalam sistem. Berbeda dengan subroutine, macro hanya menggantikan
suatu ekspresi dan tidak dapat melakukan penghitungan atau mendapatkan data tertentu.

Laboratorium Perancangan Tata Letak & Fasilitas 31


Model Building: Buku Panduan Penggunaan ProModel

Dengan demikian, macros hanya berperan sebagai pengganti suatu nilai. Macros dapat
diakses melalui BUILD > MACROS atau dengan menggunakan hotkey CTRL + M.
 Macro dapat digunakan pada berbagai elemen dalam ProModel, namun untuk beberapa
kasus hanya dapat berupa ekspresi numerik seperti 1, 500, N(10,2), Var5, Att3, dll
 Pada logic, macro dapat berupa serangkaian teks yang membentuk fungsi.

ID : Nama macro sebagai identitas macro


Text : Suatu ekspresi (berbentuk teks atau angka) yang direferensi pada saat
memanggil macro tersebut.
Options : mengatur parameter macro tersebut.

SCENARIO PARAMETERS
Scenario Parameter memungkinkan sebuah macro untuk diubah nilainya sebelum simulasi
berlangsung. Dengan demikian, simulasi dapat dijalankan untuk beberapa kemungkinan yang
dikehendaki tanpa perlu mengubah model secara langsung.

Parameter Name : Nama macro yang menjadi identitas macro tersebut.


Prompt : Diisi dengan informasi mengenai macro tersebut, yang menjelaskan
macro tersebut.
Unrestricted Text : Opsi ini membuat macro dapat menggantikan teks apapun,
contohnya distribusi N(10,2)
Record Range : Opsi ini membuat macro dapat mengganti shift atau arrival yang
cocok dengan model tersebut.
Numeric Range : Opsi ini mendefinisikan batas bawah dan batas atas dari parameter
tersebut apabila tipe data macro adalah numerik.

Laboratorium Perancangan Tata Letak & Fasilitas 32


Model Building: Buku Panduan Penggunaan ProModel

Kolom From dan To pada bagian bawah scenario parameter window perlu diisi apabila
record range atau numeric range dipilih. Apabila pada numeric range kolom ini berperan
sebagai batas atas dan batas bawah nilai yang memungkinkan, pada record range kolom ini
berperan sebagai jumlah minimum dan maksimum dari index number shift atau arrival yang
hendak diubah. Contohnya apabila terdapat 3 jenis arrival dengan karakteristik yang berbeda
beda seperti contoh dibawah:

Kita dapat menentukan kolom From dan To pada


macro menjadi From 1 To 3. Apabila pada text di
macros window diisi oleh angka 1, maka arrival
dengan index number satu atau baris pertama akan
dijalankan, sementara baris kedua dan ketiga akan
menjadi disabled dan tidak dijalankan.

Laboratorium Perancangan Tata Letak & Fasilitas 33


BAB IV
ELEMEN LANJUTAN

Elemen lanjutan merupakan elemen dalam ProModel yang berperan untuk mendukung
jalannya suatu model. Sama halnya dengan elemen pendukung, elemen lanjutan tidak harus
digunakan dalam membuat model. Perbedaan antara elemen pendukung dan elemen lanjutan
adalah elemen lanjutan tidak akan diajarkan ataupun diharuskan untuk digunakan dalam
modul praktikum simulasi komputer. Dengan demikian, elemen lanjutan tidak perlu
menggunakan elemen lanjutan dalam mengerjakan tugas yang diberikan selama praktikum
simulasi komputer berlangsung, tetapi Anda tetap dapat menggunakannya untuk
“mempercantik” model yang anda buat.

Pemaparan materi untuk elemen lanjutan tidak diberikan dengan lengkap, dan hanya
diberikan pemaparan secara sekilas. Untuk mendalami elemen-elemen tersebut, Anda dapat
membaca ProModel User Guide yang memberikan penjelasan lengkan mengenai elemen-
elemen lanjutan (sayangnya dalam bahasa inggris ).

4.1 ARRAYS
Array adalah sebuah matriks atau kumpulan cell yang berisi nilai integer atau real. Setiap
sel dalam array bekerja mirip seperti variable, dan sebuah reference untuk cell dalam array
dapat digunakan dimana saja selama variable dapat digunakan. Sebuah array 1 dimensi dapat
dibayangkan sebagai sebuah kolom nilai. Sebuah array 2 dimensi adalah seperti memiliki dua
atau lebih kolom nilai (mirip seperti spreadsheet). Elemen Array dapat diakses melalui menu
BUILD > ARRAY.
Untuk mereferensikan sebuah cell dalam array, berikan nama dari array dan masukan
nomor dari cell tersebut. Contoh, jika anda memiliki sebuah array dengan 10 nilai di dalamnya
yang diberi nama OpnArray, untuk mereferensikan cell ke 5, anda dapat menggunakan
OpnArray[5]. Sedangkan untuk mereferensikan sebuah cell dalam array 2 dimensi, secara
sederhana gunakan nama array dan nomor dari baris dan kolom, misalnya OpnArray[3,4].
Kemudian untuk mereferensikan cell pada array 3 dimensi, anda dapat memasukan nomor
dimensi ketiga terlebih dahulu, misalnya OpnArray[3,3,4]. Dimensi maksimum dari Array
adalah 20.
Nilai cell pada array dapat dimasukan dengan cara seperti anda memasukan nilai pada
variable. Contoh, anda ingin memasukan nilai 18 ke baris ke 5 dan kolom kedua maka
perintahnya adalah:

34
Model Building: Buku Panduan Penggunaan ProModel

Arr1[5,2]=18

ID : Nama dari array


Dimensions : Ukuran dari setiap dimensi dari array dalam cell. Contoh, array 1 dimensi
dengan 100 cell adalah “100”. Sedangkan array 2 dimensi dengan 50 baris
dan 5 kolom adalah “50,5”. Tuliskan jumlah baris terlebih dahulu, baru
diikuti tanda koma dan jumlah kolom. Array tidak dapat lebih dari 20
dimensi.
Import File : Nama dari spreadsheet yang anda ingin gunakan untuk mengisi array.
Export File : Nama dari spreadsheet dimana anda ingin menyimpan array yang anda
buat.
Disable : Dapat digunakan jika anda ingin menonaktifkan array yang dibuat tanpa
menghapus array tersebut
Persist : Ketika menjalankan model, anda dapat memilih untuk mengubah nilainya
di setiap replikasi atau tidak mengubahnya.
Notes : catatan jika anda ingin menuliskan informasi mengenai array.

INITALIZING ARRAYS
Secara default, semua cell dalam
sebuah array diisi oleh nilai 0. Inisialisasi
nilai cell ke nilai lain harus dilakukan dalam
initialization logic. Perintah WHILE DO
sangat berguna untuk menginisialisasikan
nilai cell pada array. Contohnya seperti
logic pada contoh disamping.

CARA MENGIMPORT DATA KE DALAM ARRAY


Untuk memasukkan data ke dalam array
yang bersumber dari file excel, langkah-
langkah yang perlu dilakukan adalah:
1. Pilih arrays pada menu Build
2. Pilih atau buat array yang anda ingin
import
3. Click tombol import file pada dialog
array

Laboratorium Perancangan Tata Letak & Fasilitas 35


Model Building: Buku Panduan Penggunaan ProModel

4. Pada field File Masukan nama file dari spreadsheet yang anda ingin gunakan
5. Pada field Sheet name, masukan nama dari worksheet yang berisi data yang ingin anda
gunakan.
6. Masukan pada field Import Start Cell. Nilai ini akan menjadi posisi awal array
7. Masukan pada field Import End Cell. Nilai ini akan menjadi posisi akhir array.
8. Click OK
Selain mengambil data dari Excel spreadsheet, Import data array juga dapat dilakukan
melalui SQL Database:

1. Pilih Arrays pada menu Build


2. Pilih atau buat array yang ingin anda import
3. Click tombol Import File
4. Click tombol Database
5. Pada Connection String, masukan string yang diperlukan untuk menghubungkan
database yang diinginkan
6. Pada Query or Stored Procedure, masukan query SQL atau stored Procedure name yang
akan digunakan untuk mempopulasikan array ketika melakukan inisialisasi
7. Click OK

CARA MENGEXPORT DATA KE DALAM SPREADSHEETS


Selain mengambil data array dari file diluar ProModel, ProModel juga memiliki
kapabilitas untuk mengubah array dalam ProModel menjadi bentuk spreadsheet. File akan
dibentuk setelah simulasi selesai dijalankan. Adapun langkah-langkah yang perlu dilakukan:

Laboratorium Perancangan Tata Letak & Fasilitas 36


Model Building: Buku Panduan Penggunaan ProModel

1. Pilih Arrays pada menu Build


2. Klik Export File
3. Masukan nama dari spreadsheet file yang ingin anda gunakan
4. Click OK

KEGUNAAN ARRAY
Dengan menggunakan array, model dapat disederhanakan. Contohnya apabila anda ingin
memodelkan sebuah lini perakitan yang merakit komponen komputer ke motherboard.
Kemudian, anda ingin melacak tingkat penggunaan komponen yang digunakan. Tanpa array,
anda akan membutuhkan ratusan entitas individu dengan tipe yang sangat bervariasi untuk
menggambarkan setiap komponen aktual. Untuk tetap melacak komponen akan sangat
kompleks, belum lagi semua operasi perakitan dan penggabungan. Sebaliknya, berbagai sel
dalam array 1 dimensi dapat melacak jumlah setiap jenis komponen yang digunakan dalam
simulasi.
Sebuah array juga dapat membuat pekerjaan menjadi lebih efisien. Misalnya data
persediaan awal setiap komponen dapat dibaca melalui array ketika simulasi dijalankan. Cell
pertama dapat berisi jumlah persediaan komponen 1, yang kedua berisi persediaan komponen
2, dsb. Ketika komponen assembly datang ke lokasi perakitan maka anda dapat melakukan
perubahan pada nilai array. Dengan demikian, model dapat disederhanakan sehingga entitas
yang dibutuhkan menjadi lebih sedikit.
 Jika waktu wam up ditentukan, array tidak akan di reset.
 Array dapat disarangkan (nested). Misalnya, jika Arr1[2,3] adalah 3, maka Arr2[5,Arr1[2,3]]
akan sama dengan Arr2[5,3]
 Anda dapat memeriksa nilai sel pada array dalam simulasi dengan memilih informasi
kemudian Array. Informasi juga dapat dicetak.
 Array dapat digunakan dengan perintah WAIT UNTIL.
 Statistik tidak dihasilkan pada Array. Jika anda ingin melihat nilai akhir dari array, anda
dapat menggunakan fitur export ke spreadsheet atau gunakan perintah PAUSE pada
termination logic.

4.2 TANK
Tanks merupakan elemen lokasi dalam
ProModel dimana apabila pada elemen
LOCATIONS digunakan sistem entity routing
(entitas masuk, diproses, kemudian,
dipindahkan ke lokasi lain) pada Tanks
digunakan sistem level. Tanks tidak dapat
mendefinisikan entitas apa saja yang berada
didalam tanks dan berapa jumlahnya, melainkan digantikan dengan menggunakan tingkat

Laboratorium Perancangan Tata Letak & Fasilitas 37


Model Building: Buku Panduan Penggunaan ProModel

pengisian tangki. Dengan demikian, Tanks cocok untuk memodelkan aliran entitas berupa
cairan yang bersifat continuous. Dan juga, dengan dikombinasikan dengan ProModel yang
merupakan discrete event simulator, dapat dimungkinkan memodelkan proses pemindahan
barang dari satuan continuous menjadi satuan diskrit (Contoh: mengisi galon air dari tangki
air, mengisi minuman pada restoran, dll).
Secara garis besar, tidak terdapat perbedaan yang signifikan antara menggunakan tank
dan menggunakan pendekatan lain seperti multi-capacity location. Beberapa perbedaan yang
muncul antara lain:
 Tidak memerlukan entitas untuk mendefinisikan cairan didalam tangki, sehingga tidak
membingungkan
 Tank akan dianggap sebagai single capacity location (lokasi dengan kapasitas 1) walaupun
pada kapasitas lokasinya diberi angka lebih dari 1. Hal ini memudahkan dalam melihat
output yang diberikan

4.3 SUBROUTINES
Sebuah subroutine adalah perintah yang dapat dipanggil untuk melalukan sebuah logika
dan secara opsional mengembalikan suatu nilai. Subroutine dapat memiliki parameter (local
variables) dimana akan berperan dalam subroutine dan mengambil nilai dari argumen melewati
subroutine.
Promodel mengatur subroutine dengan 3 cara. Pertama, sebuah subroutine dapat di proses
dengan cara calling logic seolah olah subroutine adala bagian dari calling logic. Cara ini adalah
cara yang paling umum digunakan, dan dilakukan dengan sederhana mereferensikan nama
dari subroutine ke dalam logic. Kedua, sebuah subroutine dapat di proses secara independen
dengan calling logic, maka calling logic dapat dilanjutkan tanpa menunggu subroutine selesai.
Metode ini memerlukan perintah ACTIVATE() diikuti nama dari subroutine yang digunakan.
Lihat ACTIVATE() untuk informasi lebih lanjut. Ketiga, ProModel mengizinkan subroutines
tertulis pada bahasa pemrograman lain yang dapat dipanggil dengan XSUB() function.
Subroutine dapat diakses melalui BUILD > SUBROUTINES atau dengan menggunakan hotkey
CTRL + B.

ID : Nama dari subroutine


Type : Tipe dari nilai numerik yaitu Real, Integer, None atau Interactive. Gunakan
Real dan Integer jika subroutine menghasilkan return value dan None
ketika tidak ada return value.

Laboratorium Perancangan Tata Letak & Fasilitas 38


Model Building: Buku Panduan Penggunaan ProModel

Parameters : Argumen yang diteruskan ke subroutine yang dapat dimasukan ke variable


local. Sesuatu yang diteruskan dapat memiliki nama yang berbeda dengan
paramater yang diterima. Parameter dapat bernilai real atau integer.
Parameter pertama menerima argumen pertama, parameter kedua
menerima argumen kedua, dan seterusnya.
 Jika subroutine bertipe integer dan return value bernilai real, maka return value akan
terpotong kecuali anda menggunakan perintah ROUND().
 Jika anda tidak ingin subroutin yang berdiri sendiri di referensi sebagai perintah tunggu
implisit, ubah tipe subroutine sebagai None.
 Ketika anda menggunakan perintah ACTIVATE, maka calling logic akan tetap berjalan
tanpa menunggu subroutine selesai. Keduanya akan berjalan secara paralel.
 Independent subroutine tidak dapat mengandung entitas atau lokasi yang spesifik.

SUBROUTINE FORMAT
Sebuah subroutine memiliki nama yang unik. Cara yang umum digunakan untuk memanggil
subroutine adalah:

Catatan:
1. Jika tidak ada argumen yang jelas, tanda () tetap diperlukan
2. Pernyataan dalam subroutine harus valid dalam logic pada subroutine yang dipanggil.
Contoh, jika subroutine dipanggil pada suatu operation logic, subroutine seharusnya
hanya berisi perintah yang valid untuk operation logic. Subroutines yang dipanggil
menggunakan ACTIVATE atau dari Interact Menu dapat memiliki perintah umum,
termasuk WAIT.
3. Sebuah subroutine dapat digunakan pada semua logic field. Selain itu, subroutine dapat
digunakan semua expression field asalkan perintah RETURN digunakan pada expression
fields. Expression fields diantaranya adalah kolom Qty each, arrivals edit table dan routing
table untuk processing.
4. Jika sebuah subroutine tidak mengembalikan expression dengan perintah RETURN,
maka nilai 0 akan digunakan pada subroutine bertipe Real dan Integer. Tidak ada nilai
yang akan dikembalikan pada tipe None dan Interactive.

CONTOH PENGGUNAAN SUBROUTINE


Anda membangun sebuah model Copy Center dan anda perlu mendefinisikan waktu proses
dari mesin yang dibantu operator sebagai sebuah fungsi 2 parameter. Parameter dari fungsi

Laboratorium Perancangan Tata Letak & Fasilitas 39


Model Building: Buku Panduan Penggunaan ProModel

tersebut adalah Order Quantity dan Quality Level.


Sebagai tambahan, anda juga ingin menuliskan waktu
proses pada mesin copy ke dalam file bernama
Report.dat
Karena logic operasi dari kedua mesin identik,
sebuah subroutine dapat digunakan untuk
mengeksekusi beberapa perintah yang diperlukan.
Perhatikan logic proses yang digambarkan bahwa
OrderTime dalam subroutine dipanggil, dan setiap
OrderQuantity, Quality, dan atribut ticket dilewati
sebagai argumen. Argumen ke tiga secara sederhana adalah nilai konstan, 1 atau 2, yang
merepresentasikan lokasi dimana subroutine di panggil (contoh: 1 jika dipanggil dari Operator
1 atau 2 jika dipanggi operator 2). Logika operasi, yang disebut subroutine, dan routing
diperlihatkan dibawah. Subroutine sendiri akan dijelaskan di akhir sesi ini.

SUBROUTINES VS MACROS
Meskipun bagaiman subroutines dan macros bekerja keduanya mirip, mereka memiliki
beberapa perbedaan. Semua logic bisa digunakan pada macros dan subroutines. Perbedaan
utamanya adalah tujuan penggunaannya. Hanya subroutines yang dapat digunakan ketika
anda ingin melewati argumen dan mendapatkan return value, atau mengatifkan logic
independen pada model. Hanya macros yang dapat digunakan untuk membuat skenario.
Macros dapat digunakan di semua expression field, tetapi macros hanya dapat berisi
expression. Ketika macro digunakan dalam logic field, macro dapat berisi elemen logic yang
valid untuk logic field.
Subroutines juga dapat digunakan pada expression field yang menyediakan perintah
RETURN untuk mengembalikan nilai ke expression field. Ketika subroutine digunakan untuk
mewakili satu atau lebih logic, subroutine dapat memberikan pernyataan valid untuk konten
tertentu.

4.4 ARRIVAL CYCLES


Arrival Cycle adalah elemen yang digunakan untuk mendefinisikan pola kedatangan yang
muncul dalam satu periode waktu tertentu. Salah satu contohnya adalah kedatangan
pelanggan restoran, dimana pada jam makan siang kedatangannya akan meningkat dan
kembali turun apabila jam makan siang telah selesai. Dengan demikian, arrival cycle
mendefinisikan pola tersebut sehingga jumlah pelanggan setiap kedatangan dapat berbeda-
beda dan berulang membentuk sebuah siklus. Arrival Cycles dapat diakses melalui BUILD >
MORE ELEMENTS > ARRIVAL CYCLES.

Laboratorium Perancangan Tata Letak & Fasilitas 40


Model Building: Buku Panduan Penggunaan ProModel

CONTOH ARRIVAL CYCLE


Berdasarkan data masa lalu, didapatkan bahwa kedatangan mahasiswa menuju tata usaha
adalah sebagai berikut:
08:00 – 10:00 = 5 orang
10:00 – 13:00 = 20 orang
13:00 – 14:30 = 30 orang
14:30 – 16:00 = 15 orang
Berdasarkan data diatas, kita dapat membuat siklus untuk mendefinisikan pola tersebut.
Pada 2 jam pertama terdapat 10 orang yang datang ke tata usaha. Apabila penulis hendak
menggunakan persentase, maka didapatkan 5 orang/(5+20+30+15) orang = 0.071%. Kemudian,
3 jam berikutnya datang 0.286% mahasiswa. Kolom Time (Hours) diisi secara kumulatif,
sedangkan kolom Qty/% diisi sesuai dengan pengaturan pada arrival cycle table (dalam hal ini
penulisan dilakukan secara non-kumulatif. Dengan demikian, arrival cycle yang dibuat
menjadi seperti berikut:

Setelah didefinisikan, arrival cycle perlu ditetapkan pada arrival agar


dapat berjalan sesuai dengan keinginan. Terdapat beberapa hal yang
berubah dalam mengatur arrival apabila digunakan arrival cycle. Arrival
cycle dapat diakses pada bagian Qty Each dalam arrival edit table. Pada
gambar disamping, digunakan arrival cycle kedatangan_mahasiswa dan
jumlah 100. Jumlah 100 menandakan bahwa setiap siklus terdapat total
100 mahasiswa yang datang dimana kedatangannya dibagi sesuai pola arrival cycle.
Occurrences menandakan total siklus yang dijalankan, dengan demikian terdapat 10 siklus
yang disimulasikan pada model ini. Frequency menandakan selang waktu antara 1 siklus
dengan siklus lainnya, dengan demikian setiap siklus memiliki selang waktu 1 hari atau 24 jam.
Jadi, setiap hari terdapat 100 mahasiswa yang mengunjungi tata usaha setiap harinya, dan
simulasi dijalankan selama 10 hari.

4.5 TABLE FUNCTION


Subroutines juga dapat digunakan pada expression field yang menyediakan perintah
RETURN untuk mengembalikan nilai ke expression field. Ketika subroutine digunakan untuk

Laboratorium Perancangan Tata Letak & Fasilitas 41


Model Building: Buku Panduan Penggunaan ProModel

mewakili satu atau lebih logic, subroutine dapat memberikan pernyataan valid untuk konten
tertentu.
Table Functions merupakan elemen yang digunakan untuk mendapatkan suatu nilai
dependen dari nilai independen yang diberikan. Table Function dapat diakses melalui BUILD >
MORE ELEMENTS > TABLE FUNCTIONS.

CONTOH TABLE FUNCTION


Dengan menggunakan table function diatas, apabila terdapat kondisi dimana kualitas yang
dihasilkan apabila memiliki nilai dibawah 1.3 akan dipindahkan menuju stasiun B untuk
dilakukan rework, sedangkan sisanya akan diteruskan menuju warehouse. Berdasarkan
kondisi tersebut, perintah yang disusun menjadi seperti berikut.

Parameter nilai independen yang didefinisikan pada table window harus disusun dan ditulis
secara berurutan untuk menghindari munculnya error.

4.6 USER DEFINED DISTRIBUTIONS


User Defined Distributions merupakan elemen yang digunakan untuk mendefinisikan
distribusi yang merepresentasikan suatu kumpulan data secara langsung. Pada dasarnya,
terkadang terdapat beberapa distribusi dalam ProModel yang dapat 100% merepresentasikan
suatu dataset tertentu. Untuk itu, ProModel memberikan fitur yang memperbolehkan user
mendefinisikan distribusinya sendiri. User Defined Distribution dapat diakses melalui BUILD
> MORE ELEMENTS > USER DEFINED DISTRIBUTIONS.

4.7 EXTERNAL FILES


External Files dapat digunakan dalam simulasi untuk menuliskan laporan mengenai data
output dalam simulasi. Files juga dapat digunakan untuk merincikan sesuatu seperti waktu
operasi, subroutine, jadwal kedatangan, jadwal shift, dll. Semua external file harus
didaftarkan pada External Files editor dalam menu build. External files dapat diakses melalui
BUILD > MORE ELEMENTS > EXTERNAL FILES.

Laboratorium Perancangan Tata Letak & Fasilitas 42


Model Building: Buku Panduan Penggunaan ProModel

FILE TYPE
External Files memiliki beberapa tipe file, diantaranya adalah sebagai berikut:
 General Read File berisi nilai numerik yang dimodelkan menggunakan perintah READ().
Nilai harus dipisahkan dengan spasi, koma, atau titik. Setiap data non numerik akan
dilewat secara otomatis untuk mendapatkan nilai numerik berikutnya
 General Write File berisi text dan nilai numerik yang dimodekan menggunakan perintah
WRITE dan WRITELINE. Text dilampirkan ke dalam file menggunakan tanda “…”, sehingga
anda dapat mengatur output file yang akan dibuat.
 Entity-Location File merupakan sebuah spreadsheet yang berisi data numerik mengenai
entitas dan nama lokasi. Entitas akan muncul di baris atas sedangkan lokasi akan muncul
di kolom kiri.

 Arrivals File merupakan sebuah spreadsheet yang berisi seperti arrivals editor. Urutan
pengisian kolom pada arrival files harus mengikuti sebagai berikut:

 Shift File secara otomatis terbuat ketika anda melakukan define shift pada shift editor.

4.8 STREAMS
Streams merupakan elemen yang mengatur kumpulan bilangan acak yang digunakan oleh
ProModel. Dalam menentukan nilai dalam distribusi, baik untuk menentukan kedatangan,
waktu proses, dll, ProModel membangkitkan bilangan acak untuk mereplikasi sifat sistem
yang memiliki hasil random atau tidak selalu sama. Dengan stream, kita dapat memastikan
bahwa suatu distribusi dapat menghasilkan angka yang sama. Streams dapa diakses melalui
BUILD > MORE ELEMENTS > STREAMS.
Salah satu contoh penggunaan streams adalah untuk memastikan bahwa suatu kejadian
akan dialami oleh 2 elemen secara bersamaan, seperti pada saat menjalani downtime, atau
hal lainnya.

Laboratorium Perancangan Tata Letak & Fasilitas 43


BAB V
ELEMEN TAMBAHAN

Elemen Tambahan merupakan elemen-elemen yang termasuk kedalam elemen lain, dan
dapat ditambahkan ataupun tidak sesuai dengan kebutuhan pengguna. Elemen tambahan
juga membahas mengenai hal-hal yang perlu diketahui dalam membuat model dengan
menggunakan ProModel.

5.1 GRAPHIC EDITOR


Elemen Tambahan merupakan elemen-elemen yang termasuk kedalam elemen lain, dan
dapat ditambahkan ataupun tidak sesuai dengan kebutuhan pengguna. Elemen tambahan
juga membahas mengenai hal-hal yang perlu diketahui dalam membuat model dengan
menggunakan ProModel.
Graphic editor merupakan elemen yang digunakan untuk mengatur gambar dan tampilan
dari entitas, lokasi, ataupun resource didalam layout window. Dengan graphic editor, gambar
entitas, lokasi, ataupun resource dapat disesuaikan dengan kondisi aktual. Contohnya apabila
terdapat entitas drum, kita dapat menambahkan gambar drum agar model yang dibuat
menjadi lebih representatif. Graphic editor dapat diakses melalui BUILD > GRAPHIC EDITOR.

Untuk menambahkan gambar baru, klik pada kotak kosong pada bagian atas, kemudian klik
EDIT > IMPORT GRAPHIC. File gambar yang hendak dimasukkan harus dalam format WMF,
BMP, PCX, atau GIF. Kemudian, gambar dapat diubah dengan menggunakan toolbar pada
bagian kiri. Apabila hendak menyimpan file gambar, klik tombol save pada bagian kanan atas.

5.2 SIMULATION OPTIONS


Elemen Tambahan merupakan elemen-elemen yang termasuk kedalam elemen lain, dan
dapat ditambahkan ataupun tidak sesuai dengan kebutuhan pengguna. Elemen tambahan

44
Model Building: Buku Panduan Penggunaan ProModel

juga membahas mengenai hal-hal yang perlu diketahui dalam membuat model dengan
menggunakan ProModel.
Simulation options merupakan menu yang memiliki pengaturan mengenai jalannya
simulasi. Dengan demikian, pengaturan seperti jumlah replikasi, run hour, dst dapat diatur
pada simulation options. Simulation options dapat diakses melalui SIMULATION > OPTIONS.

Terdapat 3 bagian utama dalam simulation options, yakni output reporting, clock
precision, dan run length. Output reporting merupakan bagian yang mengatur jumlah
replikasi, dan dapat digunakan apabila hendak menjalankan simulasi secara batch mean
ataupun untuk mencari warm up hour. Clock precision merupakan bagian yang digunakan
untuk mengatur satuan terkecil dari waktu simulasi.
Clock precision berpengaruh terhadap maksimum waktu simulasi yang dapat dijalankan.
Semakin kecil time unit yang dikehendaki, maka maksimum waktu simulasi yang dapat
dijalankan akan semakin kecil. Dengan kata lain, tingkat presisi 0.001 akan memiliki maximum
run length lebih kecil dibandingkan dengan tingkat presisi 0.01. Bagian dibawah time unit
menandakan satuan yang hendak ditampilkan pada saat simulasi berlangsung.
Bagian run length merupakan bagian yang digunakan untuk mengatur lama waktu simulasi
berlangsung. Waktu simulasi dapat berupa time only (waktu simulasi hanya memiliki satuan
jam), weekly time (waktu simulasi memiliki satuan minggu, hari, dan jam) ,ataupun calendar
date (waktu simulasi memiliki satuan tahun, bulan, tanggal, dan jam).

5.3 TRACING & DEBUG


Tracing & Debug merupakan elemen yang dapat digunakan untuk melakukan verifikasi
pada model. Dengan demikian, tracing dan debug dapat digunakan untuk memastikan apakah
model yang dibuat telah sesuai dengan model konseptual yang dikehendaki.

DEBUG
Debug merupakan metode yang digunakan untuk melihat jalannya perintah yang diberikan
pada model selama simulasi berjalan. Dengan menggunakan debug, kita dapat melihat
perintah yang diberikan kepada entitas, nilai atribut entitas yang diamati, posisi entitas, dan
entitas yang diamati. Semua informasi tersebut akan muncul dalam bentuk window.

Laboratorium Perancangan Tata Letak & Fasilitas 45


Model Building: Buku Panduan Penggunaan ProModel

Debug dibagi menjadi 2 jenis, yakni debug local dan global. Debug local merupakan debug
yang muncul dengan menggunakan perintah DEBUG() pada logic. Dengan demikian, hanya
entitas tertentu dalam lokasi tertentu saja yang mampu memunculkan debugger window.
Sedangkan, debug global diakses pada saat simulasi sedang
berlangsung dengan mengakses OPTIONS > DEBUG.
Dengan menggunakan debug global, semua entitas di
semua lokasi akan memunculkan debugger window. Debug
cocok digunakan untuk melihat letak kesalahan perintah
yang kita berikan secara spesifik, baik dengan melihat nilai
atribut ataupun perintah yang kita berikan.

TRACING
Sama halnya seperti debug, tracing juga berfungsi untuk melihat jalannya perintah yang
dijalankan oleh model selama simulasi berlangsung. Perbedaannya adalah tracing
menampilkan semua proses yang terjadi dalam sistem secara detail. Dengan demikian, kita
dapat mengetahui setiap proses yang dijalankan oleh model, baik itu perubahan nilai variabel,
perubahan nilai atribut, proses split, proses join, dll. Tracing merupakan suatu tools yang
sangat cocok untuk melakukan verifikasi terhadap model. Namun, semakin kompleks model
yang dibuat, maka tracing yang dilakukan akan semakin sulit.

Laboratorium Perancangan Tata Letak & Fasilitas 46


Model Building: Buku Panduan Penggunaan ProModel

Terdapat 2 jenis trace yang dapat digunakan, antara lain trace step dan trace continuous.
Trace step membuat hasil tracing yang muncul akan muncul secara perlahan, sedangkan trace
continuous membuat hasil tracing muncul secara cepat. Selain
kedua jenis trace tersebut, terdapat juga filtered trace yang
digunakan apabila trace ingin difokuskan kepada elemen-
elemen tertentu saja, dan output to file untuk menyimpan hasil
tracing kedalam bentuk file.

5.4 DOWNTIMES
Downtime merupakan sebuah event yang muncul pada kondisi tertentu, mengakibatkan
elemen yang mengalami downtime tidak dapat digunakan. Downtime dapat digunakan untuk
mendefinisikan waktu maintenance, setup, ataupun waktu untuk mempersiapkan mesin
dalam kondisi tertentu. Dalam ProModel, downtime diatur pada masing-masing elemen yang
memungkinkan adanya downtime. Sehingga, downtime tidak memiliki bagian independen
dalam ProModel. Adapun downtime dapat muncul pada lokasi (location downtime) ataupun
pada resource (resource downtime).

LOCATION DOWNTIME
Location Downtime membuat lokasi berhenti beroperasi. Lokasi dalam kondisi down tidak
dapat dipergunakan untuk sementara waktu, seperti pada saat istirahat, maintenance mesin,
penggantian komponen mesin, dll. Terdapat beberapa jenis downtime, antara lain clock
downtime, entry downtime, usage downtime, setup downtime, dan called downtime.

Clock Downtime: downtime yang muncul pada rentang waktu yang telah ditentukan, seperti
dalam 5 jam, dalam 1 hari, dll. Clock downtime tidak memperhatikan jumlah entitas yang telah
diproses didalam lokasi tersebut. Contoh penggunaan clock downtime adalah untuk
maintenance rutin mesin.

Frequency : menggambarkan selang waktu (interval) antara downtime.


First time : diisi dengan selang waktu dari simulasi dimulai hingga downtime terjadi.
Apabila dibiarkan kosong, maka selang waktu pertama menyesuaikan
dengan frekuensi downtime.
Priority : merupakan prioritas terjadinya downtime.
Scheduled : merupakan pilihan untuk menentukan apakah downtime terjadwal atau
tidak. Apabila ya, maka downtime tersebut tidak akan diperhitungkan

Laboratorium Perancangan Tata Letak & Fasilitas 47


Model Building: Buku Panduan Penggunaan ProModel

dalam menghitung utilisasi, percent down (persentase lokasi tidak dapat


digunakan), dll.
Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT.
Pada tabel diatas, downtime pada Loc1 terjadi setiap 4 jam, dengan durasi 30 menit, dan
bukan merupakan downtime yang terjadwal.

Entry downtime: downtime yang muncul setelah lokasi memproses sejumlah unit entitas.
Kebalikan dari clock downtime, entry downtime tidak memperhatikan waktu lokasi tersebut
berjalan. Salah satu contoh penggunaan entry downtime adalah printer, dimana perlu ada
pengisian kertas apabila kertas pada printer sudah habis.

Frequency : menggambarkan jumlah entitas yang dapat diproses sebelum


downtime terjadi.
First occurrence : merupakan jumlah entitas yang dapat diproses sebelum downtime
pertama terjadi.
Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT.
Pada tabel diatas, Mesin_Injeksi perlu menunggu selama 10 detik setelah memproses 5
entitas.

Usage downtime: downtime yang muncul setelah suatu lokasi telah beroperasi selama jangka
waktu tertentu. Usage downtime memiliki perbedaan dengan clock downtime. Clock
downtime didasarkan pada waktu simulasi berjalan, sedangkan usage downtime didasarkan
pada waktu suatu lokasi berada pada status operating/sedang beroperasi.

Frequency : menggambarkan selang waktu (interval) antara downtime.


First time : diisi dengan selang waktu dari simulasi dimulai hingga downtime terjadi.
Apabila dibiarkan kosong, maka selang waktu pertama menyesuaikan
dengan frekuensi downtime.
Priority : merupakan prioritas terjadinya downtime.

Laboratorium Perancangan Tata Letak & Fasilitas 48


Model Building: Buku Panduan Penggunaan ProModel

Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT().
Pada tabel diatas, downtime terjadi selama 20 detik setiap mesin potong dijalankan selama
N(2,5) menit

Setup downtime: downtime yang muncul pada karena suatu lokasi membutuhkan setup
untuk memproses entitas yang berbeda. Setup downtime hanya muncul pada saat entitas
yang diproses berbeda. Salah satu contoh penggunaan setup downtime adalah untuk mesin
yang mempunyai cetakan berbeda untuk setiap entitas.

Entity : merupakan entitas yang akan diproses oleh lokasi


Prior entity : merupakan entitas yang telah diproses oleh lokasi tersebut sebelumnya
Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT.
Pada tabel diatas, downtime terjadi apabila entitas yang diproses berganti, baik dari fender
front menjadi cover speedlight, maupun dari cover speedlight menjadi fender front, yang
dilakukan selama 20 detik

Called downtime: downtime yang muncul pada saat perintah DOWN dijalankan. Dengan
demikian, apabila perintah DOWN dijalankan, maka downtime akan dijalankan.

Name : merupakan nama called downtime yang akan digunakan dalam perintah
DOWN.
Priority : merupakan prioritas terjadinya downtime.
Scheduled : merupakan pilihan untuk menentukan apakah downtime terjadwal atau
tidak. Apabila ya, maka downtime tersebut tidak akan diperhitungkan
dalam menghitung utilisasi, percent down (persentase lokasi tidak dapat
digunakan), dll.
Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT.
Pada tabel diatas, downtime terjadi selama 20 detik setiap mesin potong dijalankan selama
N(2,5) menit

Laboratorium Perancangan Tata Letak & Fasilitas 49


Model Building: Buku Panduan Penggunaan ProModel

 Untuk Single-capacity Locations, semua downtime dapat digunakan. Namun, Multi-


Capacity Location hanya dapat menggunakan clock downtime dan called downtime.
 Lokasi tidak dapat menjalankan downtime apabila sedang dalam status blocked, ataupun
apabila entitas didalamnya sedang menunggu resource.

RESOURCE DOWNTIME
Downtime pada resource mengacu pada waktu resource tersebut tidak dapat beroperasi,
baik karena kejadian yang telah dijadwalkan sebelumnya, maupun karena kejadian khusus
seperti sakit ataupun halangan lainnya. Untuk kejadian yang telah dijadwalkan sebelumnya
(contohnya istirahat) mendefinisikan waktu resource tidak dapat digunakan dapat dilakukan
menggunakan shift editor (lihat bagian SHIFT & BREAKS hlm xx) . Terdapat 2 jenis downtime
yang dapat digunakan pada sebuah resource, yakni clock-based downtime dan usage-based
downtime.

Clock-based downtime: downtime yang muncul setelah simulasi berjalan selama jangka
waktu tertentu. Clock-based downtime berfokus pada waktu simulasi berjalan, sehingga
penggunaan resource tidak diperhatikan.

Frequency : menggambarkan selang waktu (interval) antara downtime.


First time : diisi dengan selang waktu dari simulasi dimulai hingga downtime terjadi.
Apabila dibiarkan kosong, maka selang waktu pertama menyesuaikan
dengan frekuensi downtime.
Priority : merupakan prioritas terjadinya downtime.
Scheduled : merupakan pilihan untuk menentukan apakah downtime terjadwal atau
tidak. Apabila ya, maka downtime tersebut tidak akan diperhitungkan
dalam menghitung utilisasi, percent down (persentase lokasi tidak
dapat digunakan), dll.
List : mendefinisikan resource manakah yang akan menjalani downtime.
Apabila downtime berlaku untuk semua resource tersebut, maka isi kolom
ini dengan ALL, namun dapat juga diisi dengan angka apabila tidak semua
resource mengalami downtime. Contohnya: terdapat 5 resource operator
yang akan menjalani downtime, gunakan:
1,2 apabila hanya operator 1 dan 2 yang menjalani downtime
1-3,5 apabila semua operator menjalani downtime kecuali operator 4
none apabila tidak ada operator yang menjalani downtime

Laboratorium Perancangan Tata Letak & Fasilitas 50


Model Building: Buku Panduan Penggunaan ProModel

Kolom List dapat diisi dengan macro. Dengan demikian, dapat didefinisikan perubahan
operator yang menjalani downtime dengan menggunakan macro.

Node : menggambarkan lokasi dimana resource akan tinggal dan menjalani


downtime pada jalur resource tersebut.
Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT.
Pada tabel diatas, penjahit akan beristirahat selama 10 menit pada N3 setiap selang waktu
30 menit, yang dimulai pada saat simulasi berlangsung.

Usage downtime: downtime yang muncul setelah sebuah resource telah beroperasi selama
jangka waktu tertentu. Usage downtime memiliki perbedaan dengan clock downtime. Clock
downtime didasarkan pada waktu simulasi berjalan, sedangkan usage downtime didasarkan
pada waktu suatu resource tersebut digunakan baik untuk perpindahan entitas maupun untuk
memproses entitas.

Frequency : menggambarkan selang waktu (interval) antara downtime.


First time : diisi dengan selang waktu dari simulasi dimulai hingga downtime terjadi.
Apabila dibiarkan kosong, maka selang waktu pertama menyesuaikan
dengan frekuensi downtime.
Priority : merupakan prioritas terjadinya downtime.
Scheduled : merupakan pilihan untuk menentukan apakah downtime terjadwal atau
tidak. Apabila ya, maka downtime tersebut tidak akan diperhitungkan
dalam menghitung utilisasi, percent down (persentase lokasi
tidak dapat digunakan) dll.
List : mendefinisikan resource manakah yang akan menjalani downtime.
Apabila downtime berlaku untuk semua resource tersebut, maka isi kolom
ini dengan ALL, namun dapat juga diisi dengan angka apabila tidak semua
resource mengalami downtime. Contohnya: terdapat 5 resource operator
yang akan menjalani downtime, gunakan:
1,2 apabila hanya operator 1 dan 2 yang menjalani downtime
1-3,5 apabila semua operator menjalani downtime kecuali operator 4
none apabila tidak ada operator yang menjalani downtime
Node : menggambarkan lokasi dimana resource akan tinggal dan menjalani
downtime pada jalur resource tersebut.

Laboratorium Perancangan Tata Letak & Fasilitas 51


Model Building: Buku Panduan Penggunaan ProModel

Logic : merupakan perintah yang dilakukan pada saat terjadi downtime, umumnya
digunakan perintah WAIT.
Pada tabel diatas, downtime terjadi pada operator setiap operator tersebut bekerja selama
10 menit dengan durasi downtime sebesar 1 menit. Operator akan beristirahat di N3

5.5 PRIORITIES & PREEMPTION


Prioritas digunakan untuk menentukan proses mana yang akan dijalankan lebih dulu atau
downtime mana yang akan terjadi terlebih dahulu dalam suatu lokasi apabila pada saat yang
bersamaan terdapat lebih dari satu entitas yang perlu diproses dan downtime yang muncul
pada lokasi tersebut. Prioritas berkisar antara 0-999, dimana semakin tinggi nilainya maka
akan semakin diprioritaskan. Untuk kasus sederhana, prioritas dapat digunakan dari 0-99
saja. Prioritas diatas 99 digunakan untuk proses preempting (mendahului, baik mengganti
maupun mendahului) entitas ataupun downtime yang sedang menggunakan lokasi tersebut.

SHIFTS & BREAKS PRIORITY


Untuk shift dan break, prioritas dibagi menjadi empat bagian dimana setiap bagian
memiliki prioritasnya masing-masing. Adapun keempat bagian tersebut adalah:
 Priority for Ending Shift merupakan prioritas untuk mengakhiri shift reguler. Entitas atau
downtime harus memiliki level prioritas yang lebih tinggi untuk mnencegah sebuah lokasi
atau resource untuk mengakhiri shiftnya, menyebabkan entitas atau downtime tersebut
dapat diproses walaupun shift telah berakhir.
 Off Shift Priority merupakan prioritas bagi lokasi ataupun resource untuk tetap berada
diluar shift. Dengan kata lain, entitas atau downtime dengan level prioritas diatas off shift
priority akan memaksa suatu resource atau lokasi untuk mulai bekerja sebelum shift
dimulai.
 Priority for Starting Break merupakan prioritas untuk memulai istirahat. Sebuah entitas
yang memiliki level prioritas lebih besar dapat memaksa lokasi atau resource untuk tetap
bekerja pada waktu istirahat.
 Break Priority merupakan prioritas untuk suatu resource atau lokasi agar tetap
beristirahat. Dengan demikian, apabila terdapat entitas atau downtime dengan prioritas
yang lebih tinggi maka lokasi atau resource dapat dipaksa untuk bekerja sebelum waktu
istirahat berakhir.

LOCATION PRIORITIES & PREEMPTION


Prioritas digunakan untuk menentukan entitas mana yang akan diproses lebih dulu atau
downtime mana yang akan terjadi terlebih dahulu dalam suatu lokasi apabila pada saat yang
bersamaan terdapat lebih dari satu entitas yang perlu diproses dan downtime yang muncul
pada lokasi tersebut. Prioritas berkisar antara 0-999, dimana semakin tinggi nilainya maka
akan semakin diprioritaskan. Untuk kasus sederhana, prioritas dapat digunakan dari 0-99

Laboratorium Perancangan Tata Letak & Fasilitas 52


Model Building: Buku Panduan Penggunaan ProModel

saja. Prioritas diatas 99 digunakan untuk proses preempting (mendahului, baik mengganti
maupun mendahului) entitas ataupun downtime yang sedang menggunakan lokasi tersebut.
Prioritas dibagi kedalam 10 level (0-99,100-199,200-299, … ,900-999). Dengan adanya 10
level prioritas, maka entitas/downtime yang bersifat preemptive (prioritas > 99) dapat
didahului oleh entitas/downtime preemptive lain dengan nilai yang lebih tinggi.
Untuk dapat mendahului entitas yang sedang menggunakan suatu lokasi, entitas/downtime
tersebut harus memiliki prioritas minimal SATU level diatas level prioritas entitas yang sedang
diproses. Untuk dapat mendahului downtime yang sedang berjalan, entitas tersebut harus
memiliki prioritas minimal DUA level diatas level downtime tersebut. Downtime tidak dapat
mendahului downtime lainnya.
Contohnya apabila terdapat model dengan karakteristik sebagai berikut:

Dikarenakan terdapat clock downtime, maka 8 menit pertama loket pembayaran tidak
dapat digunakan. Sehingga rakyat dan pejabat yang memiliki nilai prioritas berturut-turut 0
(level 1) dan 100 (level 2) tidak dapat mendahului clock downtime dengan nilai prioritas 99 (level
1). Namun, CEO dengan nilai prioritas 300 (level 4) dapat mendahului clock downtime, sehingga
setelah menunggu 5 menit CEO dapat langsung menuju loket pembayaran tanpa menunggu
clock downtime selesai. Karena pejabat tidak dapat menempuh rute menuju loket
pembayaran karena terdapat clock downtime, maka pejabat menempuh rute backup yaitu
EXIT.

Laboratorium Perancangan Tata Letak & Fasilitas 53


Model Building: Buku Panduan Penggunaan ProModel

Setelah CEO selesai diproses di loket pembayaran, maka clock downtime kembali berjalan
dengan waktu yang tersisa (8 menit – 4 menit = 4 menit). Dengan demikian, clock downtime
akan selesai pada menit ke 13.33 (8 menit + 0.33 menit move logic CEO + 5 menit waktu proses
CEO).

Setelah itu, loket pembayaran akan memproses rakyat selama 5 menit hingga menit ke
18.66. Pada menit ke 17, pejabat kembali datang dan karena pejabat memiliki prioritas yang
lebih tinggi dibandingkan rakyat, maka pejabat akan mendahului rakyat dan mulai diproses di
loket pembayaran pada menit ke 17.66 (+0.33 move logic + 0.33 setup downtime).

Dengan demikian, pejabat akan masuk ke wahana pada menit ke 22.99 dan rakyat setelah
melanjutkan prosesnya akan masuk ke wahana pada menit ke 24.66.

RESOURCE PRIORITIES & PREEMPTION


Prioritas pada resource dapat didefinisikan melalui perintah GET(), JOINTLY GET(), atau
USE(). Pada saat suatu resource yang sedang digunakan oleh sebuah entitas didahului oleh
entitas ataupun downtime, proses yang sedang dijalankan karena perintah USE() akan
tertunda sampai entitas atau downtime yang mendahului telah diselesaikan terlebih dahulu.
Apabila suatu entitas menggunakan resource lain pada saat sedang menggunakan resource
yang didahului dari entitas lain, maka resource yang didahului akan tetap berada pada entitas
tersebut hingga pemrosesan entitas tersebut selesai. Namun, apabila suatu resource
downtime mendahului resource downtime lain, maka resource downtime yang didahului akan
dihentikan dan tidak akan dilanjutkan lagi, sehingga resource akan menjalani downtime baru
yang mendahului.
 Resource yang sedang memindahkan barang tidak dapat didahului hingga resource
tersebut mencapai tujuan perpindahannya. Dengan demikian, resource akan
memindahakan entitas tersebut sampai tujuan, kemudian melakukan pemrosesan
entitas atau downtime yang didahulukan.
 Resource yang sedang berpindah tanpa membawa entitas dapat didahului oleh entitas
ataupun downtime lain. Dengan demikian, resource akan berhenti di node berikutnya dan
melakukan pemrosesan entitas atau downtime yang didahulukan.
Pada saat menjalani downtime, apabila suatu resource dipanggil kembali oleh sebuah
entitas ataupun lokasi untuk didahulukan prosesnya, maka pada jumlah jam yang tertera pada

Laboratorium Perancangan Tata Letak & Fasilitas 54


Model Building: Buku Panduan Penggunaan ProModel

scheduled hours (output statistics) tetap sesuai dengan waktu resource tersebut seharusnya
bekerja. Namun, total waktu penggunaan (total usage time) untuk resource tersebut akan
lebih dari scheduled hours yang ditetapkan karena memperhitungkan waktu dia melakukan
proses diluar jam yang ditentukan.

Contohnya apabila seorang teknisi memiliki shift dari jam 08:00-17:00 (9jam), dan pada jam
16:50 teknisi tersebut mendapati adanya mesin yang membutuhkan maintenance yang
memakan waktu sekitar 30 menit dan tidak dapat ditunda, maka teknisi akan melakukan
maintenance pada mesin tersebut hingga pukul 17:20, baru kemudian pulang. Pada contoh
teknisi sebelumnya, waktu yang telah dijadwalkan untuknya adalah selama 9 jam mulai dari
jam 08:00. Namun, total waktu penggunaan resource tersebut adalah sebesar 9 jam 20 menit.
Dengan kata lain, utilisasi teknisi pada hari tersebut mencapai lebih dari 100%.
 Apabila suatu entitas hendak mengambil alih resource yang sedang memproses entitas
lain, atau suatu downtime hendak mendahului entitas atau downtime lain yang sedang
berjalan, maka entitas/downtime tersebut harus memiliki prioritas minimal SATU LEVEL
diatas entitas yang akan didahului.
 Apabila suatu entitas hendak mengambil alih resource yang sedang menjalani downtime,
maka entitas tersebut harus memiliki prioritas minimal DUA LEVEL diatas prioritas
downtime yang akan didahului.
Pada saat resource dijadwalkan untuk menjalani downtime (beristirahat) pada saat sedang
melakukan pemrosesan, proses tersebut dapat dilakukan oleh resource lain sehingga
entitas/lokasi tersebut tidak perlu menunggu resource yang sama untuk melanjutkan proses
yang tertunda. Hal ini cocok untuk menggambarkan kondisi dimana operator shift 2 akan
melanjutkan pemrosesan operator shift 1 apabila sudah waktunya berganti shift. Untuk
memahami cara kerja prioritas pada resource, terdapat beberapa ilustrasi berikut:
Pada ilustrasi ini, DT1 yang dijadwalkan dari berjalan
dari T1 hingga T4 akan berhenti pada saat DT2
berlangsung dan tidak akan dilanjutkan kembali.
Dengan kata lain, waktu total resource tersebut
menjalani downtime adalah dari T1 hingga T3.

Pada ilustrasi ini, DT2 tidak dapat mendahului DT1,


sehingga DT2 akan berjalan setelah DT1 selesai. Hal ini
terlihat dari DT2 aktual yang bergeser dan menunggu
hingga DT1 telah sepenuhnya dijalankan

Laboratorium Perancangan Tata Letak & Fasilitas 55


Model Building: Buku Panduan Penggunaan ProModel

Pada ilustrasi ini, DT tidak dapat mendahului


pemrosesan suatu entitas, dengan demikian DT akan
tertunda hingga entitas tersebut telah sepenuhnya
diproses oleh resource. Dengan demikian, resource akan
menjalani downtime apabila resource tersebut telah
selesai memproses entitas yang sedang diproses.

Pada ilustrasi ini, DT dapat mendahului pemrosesan


entitas, sehingga entitas tersebut tertunda
pemrosesannya hingga resource selesai menjalankan
downtime tersebut.

Pada ilustrasi ini, Entitas 2 dapat mendahului entitas 1.


Dengan demikian, pemrosesan entitas 1 akan dilanjutkan
setelah entitas 2 sepenuhnya telah diproses.

Pada ilustrasi ini, downtime yang sedang berjalan dapat


didahului oleh entitas yang hendak diproses. Dengan
demikian, resource akan memproses entitas tersebut
kemudian melanjutkan sisa waktu downtime yang telah
berjalan sebelumnya.

Laboratorium Perancangan Tata Letak & Fasilitas 56


BAB VI
LOGIC & FUNCTION

Logic & Function merupakan bahasa pemrograman yang digunakan untuk mendefinisikan
suatu kegiatan, kondisi, ataupun proses yang terjadi. Segala bentuk kegiatan, proses, dan
kondisi yang terjadi dalam sistem diterjemahkan kedalam bentuk logic & function agar dapat
dimengerti oleh ProModel. Logic & Function digunakan pada banyak elemen dalam ProModel,
khususnya elemen PROCESSING. Perbedaan antara logic dan function adalah logic merupakan
perintah yang digunakan untuk melakukan suatu event, kegiatan, atau pemilihan keputusan
tertentu. Sedangkan, function merupakan perintah yang digunakan untuk mendapatkan nilai
dari suatu parameter tertentu.

6.1 LOGIC
Logic merupakan suatu pendekatan yang digunakan untuk memerintahkan ProModel
untuk menjalankan sesuatu pada saat tertentu ataupun untuk melakukan decision making
sesuai dengan kondisi yang telah kita tentukan.

ACCUM
ACCUM <quantity>

Accum merupakan perintah yang digunakan untuk mengumpulkan entitas tanpa


menyatukan entitas tersebut. Accum berperan sebagai gerbang yang menahan entitas hingga
mencapai jumlah tertentu, kemudian apabila jumlah telah tercapai maka entitas akan
bergerak masing-masing atau sesuai perintah yang diberikan, tanpa bergantung satu dengan
lainnya. Accum hanya dapat digunakan pada operation window.
Accum memiliki satu parameter yaitu kuantitas. Dengan demikian, accum akan
menahan semua entitas hingga mencapai jumlah yang telah ditentukan tanpa melihat entitas
yang ditahan.

ACTIVATE
ACTIVATE <subroutine> (parameters)

Activate merupakan perintah yang digunakan untuk memanggil dan menjalankan


subroutine.

57
Model Building: Buku Panduan Penggunaan ProModel

ANIMATE
ANIMATE <speed >

Animate merupakan perintah yang digunakan untuk mengubah kecepatan animasi


ProModel. Semakin besar nilai yang diberikan, semakin cepat animasi berjalan. Kecepatan
yang dapat diatur berkisar antara 0-100, dimana kecepatan default animasi adalah 56. Nilai 0
membuat model akan melakukan disable animation.

ASSIGNMENT
<identifier> = <value>

Assignment merupakan perintah yang digunakan untuk mengatur nilai dari sebuah
parameter yang ada dalam model, baik variabel, atribut, ataupun array.

BEGIN & END


Begin merupakan perintah yang digunakan untuk menandakan mulainya decision yang
diberikan oleh perintah IF THEN ELSE(), WHILE DO(), DO WHILE(), atau DO UNTIL(). Setiap
perintah begin harus diakhiri dengan perintah end yang menandakan decision tersebut
berakhir hingga perintah tersebut. Dengan kata lain, begin dan end merupakan substitusi
untuk tanda ‘{‘ dan ‘}’ yang dicantumkan setiap membuat perintah decision making. Contohnya
apabila suatu atribut memiliki nilai < 10, maka ProModel akan melakukan perintah ORDER()
terhadap entitas A sebanyak 100 unit, dan meningkatkan nilai atribut sebesar 100 angka.
Dengan demikian, coding yang dibuat menjadi:

BREAK
Break merupakan perintah yang digunakan untuk mengakhiri loop secara langsung tanpa
melihat syarat loop tersebut berakhir. Apabila berada di luar loop, break akan mengakhiri logic
pada saat itu juga. Contohnya apabila melihat pada coding dibawah:

Coding diatas menunjukkan bahwa selama var1 memiliki nilai dibawah 10, entitas tersebut
akan menunggu selama 1 menit dan melakukan perintah ORDER() untuk entitas A menuju loc1.

Laboratorium Perancangan Tata Letak & Fasilitas 58


Model Building: Buku Panduan Penggunaan ProModel

Namun apabila entitas tersebut memiliki nilai attr1 > 5, entitas tersebut akan menunggu
selama 4 menit dan kemudian langsung melanjutkan perintah berikutnya diluar loop WHILE
DO() tanpa melihat nilai var1.

CLOSE
CLOSE <file_id>

Close merupakan perintah yang digunakan untuk menutup file yang sebelumnya telah
dituliskan dengan menggunakan perintah WRITE(), WRITELINE(), XWRITE(), atau dibaca
dengan menggunakan perintah READ(). Close dapat digunakan apabila pada model yang
dibuat melibatkan penggunaan external files.

COMBINE
COMBINE <quantity> AS <entity>

Combine merupakan perintah yang digunakan untuk menyatukan beberapa entitas menjadi
1 entitas. Berbeda dengan perintah GROUP(), combine menyatukan entitas secara permanen.
Combine memiliki 2 parameter yaitu quantity (jumlah entitas yang hendak disatukan) dan
entity (nama entitas baru setelah disatukan, namun sifatnya opsional).

COMMENT
#<comment>
// <comment>
/* <comment> */

Comment digunakan untuk menambahkan komentar yang bukan merupakan perintah


kedalam baris logic. Dengan demikian, dapat ditambahkan reminder, note, ataupun komentar
lainnya. # dan // digunakan untuk menambahkan 1 baris komentar, sedangkan apabila hendak
menambahkan komentar lebih dari 1 baris dapat menggunakan /* .. */.

CREATE
CREATE <quantity1> AS <entity> TAKE <quantity2> <resource>

Create merupakan perintah yang digunakan untuk membuat beberapat entitas baru pada
lokasi entitas awal dan menyalin semua atribut dari entitas awal kepada entitas baru.
Terdapat 4 parameter yang perlu diperhatikan, antara lain:

Laboratorium Perancangan Tata Letak & Fasilitas 59


Model Building: Buku Panduan Penggunaan ProModel

<quantity1> : mendefinisikan jumlah entitas baru yang hendak dibuat


<entity> : mendefinisikan nama entitas baru
<quantity2> : mendefinisikan jumlah resource yang hendak diambil
<resource> : mendefinisikan resource yang hendak disatukan dengan entitas tersebut.
Resource yang disatukan dengan entitas yang dibuat tidak dapat
digunakan kembali.
Parameter <quantity2> dan <resource> bersifat opsional dan dapat dihilangkan. Apabila
parameter <entity> tidak didefinisikan, maka entitas baru akan mengambil nama entitas awal.

DEBUG
DEBUG

Debug merupakan perintah yang digunakan untuk memunculkan debugger window


ProModel. Debugger window ProModel dapat digunakan untuk melihat perintah yang sedang
dijalankan oleh ProModel dan info mengenai entitas yang sedang diproses. Perintah ini
digunakan untuk melakukan debug local.

DEC & INC


DEC <identifier>, <value>
INC <identifier>, <value>

Dec digunakan untuk mengurangi nilai atribut, variabel, ataupun nilai dalam array. Terdapat
2 parameter dalam dec yaitu <identifier> (nama variabel, atribut, atau array) dan <value>
(besar pengurangan yang diberikan). Apabila parameter value tidak didefinisikan, maka
pengurangan yang dilakukan adalah sebesar satu.
Kebalikan dari dec, inc digunakan untuk menambah nilai atribut, variabel, ataupun nilai
dalam array.

DISPLAY
DISPLAY <message>

Display digunakan untuk menampilkan pesan pada


saat simulasi sedang berjalan dalam bentuk message
box. Parameter <message> dapat diisi dengan atribut,
variabel, ataupun teks (perlu menggunakan tanda
petik).

Laboratorium Perancangan Tata Letak & Fasilitas 60


Model Building: Buku Panduan Penggunaan ProModel

DO UNTIL
DO <statement> UNTIL <condition>

Do Until merupakan perintah yang digunakan untuk membentuk loop hingga suatu kondisi
tercapai. Selama <condition> tidak tercapai, <statement> akan terus dijalankan. Kondisi
harus berbentuk boolean dimana hanya terdapat 2 keputusan yaitu TRUE atau FALSE.
Contohnya selama nilai atribut suatu entitas belum mencapai nilai minimum sebesar 4, maka
entitas tersebut akan terus diproses di mesin tersebut.

DO WHILE & WHILE DO


DO <statement> WHILE <condition>
WHILE <condition> DO <statement>

Do While merupakan perintah yang digunakan untuk membentuk loop selama suatu kondisi
terpenuhi. Selama <condition> terpenuhi, maka <statement> akan terus dijalankan. Kondisi
harus berbentuk boolean dimana hanya terdapat 2 keputusan yaitu TRUE atau FALSE.
Contohnya selama nilai variabel yang menandakan jumlah produksi masih < 10, lakukan
perintah ORDER() untuk bahan baku agar dapat diproses.

DOWN
DOWN <downtime>

Down merupakan perintah yang digunakan untuk menandakan mulainya called downtime.
Perintah ini digunakan untuk menjalankan called downtime yang telah didefinisikan
sebelumnya (untuk informasi mengenai called downtime lihat DOWNTIME).

DYNPLOT
DYNPLOT <plotset>

Dynplot merupakan perintah yang digunakan


untuk menampilkan suatu data mengenai
model dalam bentuk grafik selama simulasi
berlangsung. Grafik atau dynamic plot set
perlu didefinisikan terlebih dahulu sebelum
dapat dipanggil menggunakan perintah
DYNPLOT().

Laboratorium Perancangan Tata Letak & Fasilitas 61


Model Building: Buku Panduan Penggunaan ProModel

FREE & FREE ALL


FREE <quantity> <resource>
FREE ALL

Free merupakan perintah yang digunakan untuk mengubah status resource dari “dipakai”
menjadi “bebas”. Free digunakan untuk melepaskan resource dari suatu entitas yang telah
menyatu sebelumnya menggunakan perintah GET() atau JOINTLY GET(). Resource yang
menyatu dengan entitas berarti resource tersebut akan tetap mengikuti entitas tersebut dan
tidak dapat mengolah atau memindahkan entitas lain. Perintah FREE() memiliki 2 jenis, yaitu
dengan parameter jumlah dan resource yang dapat ditentukan, atau menggunakan FREE ALL
untuk melepaskan semua resource yang menyatu dengan entitas tersebut.

GET
GET <quantity> <resource>, <priority>

Get merupakan perintah yang digunakan untuk menetapkan resource pada suatu entitas
tertentu. Dengan demikian, resource akan ditetapkan untuk entitas tersebut dan tidak dapat
berganti hingga mendapat perintah FREE(). Terdapat 3 parameter dalam get, yaitu <quantity>
(jumlah resource yang hendak ditetapkan), <resource> (resource yang hendak ditetapkan
untuk entitas), dan <priority> (prioritas perintah GET() yang dibuat)

GOTO
GOTO <label ID>

Goto merupakan perintah yang digunakan untuk membuat ProModel langsung berpindah
pada baris tertentu pada logic. Tujuan perpindahan goto ditandai dengan menggunakan label
ID, yang dituliskan dengan nama label ID dan diberikan titik dua disebelah nama tersebut.

Pada contoh diatas, apabila atribut penyedias memiliki nilai 1, maka perintah ORDER()
untuk entA ke storage dilakukan dua kali, menghasilkan dua entitas A. Sedangkan, apabila nilai
penyedias pada entitas tersebut bernilai satu, maka perintah ORDER untuk entA dilakukan
satu kali, menghasilkan satu entA.

Laboratorium Perancangan Tata Letak & Fasilitas 62


Model Building: Buku Panduan Penggunaan ProModel

GRAPHIC
GRAPHIC <graphic number>

Graphic merupakan perintah yang digunakan untuk mengganti gambar entitas atau
resource. Graphic dapat digunakan untuk mempercantik model yang dibuat dengan mengubah
gambar entitas apabila berada dalam suatu kondisi tertentu.

GROUP & UNGROUP


GROUP <quantity> AS <entity>
UNGROUP

Group merupakan perintah yang digunakan untuk mengelompokkan beberapa entitas


sementara. Dengan demikian, entitas gabungan dapat dipecah kembali dengan menggunakan
perintah UNGROUP(). Entitas gabungan tidak memiliki nilai atribut yang sama dengan entitas
yang digabung.

IF THEN ELSE
IF <condition>THEN <statement1> ELSE <statement2>

If then else merupakan perintah yang digunakan untuk melakukan decision making
terhadap suatu kondisi tertentu. Apabila kondisi terpenuhi, maka statement 1 akan dijalankan.
Namun apabila kondisi tidak terpenuhi, maka statement 2 yang akan dijalankan. Statement
dimulai dengan ‘{‘ atau BEGIN() dan diakhiri dengan ‘}’ atau END().

INCENTCOST, INLOCCOST, INCRESCOST


INCENTCOST <cost>
INCLOCCOST <cost>
INCRESCOST <cost>, <resource>

Ketiga perintah ini digunakan untuk mengubah nilai cost selama simulasi berjalan.
Incentcost merupakan perintah yang digunakan untuk mengubah biaya entitas sebesar
<cost> yang dituliskan. Nilai <cost> dapat berupa angka negatif. Incloccost merupakan
perintah yang digunakan untuk mengubah biaya lokasi sebesar <cost> yang dituliskan. Nilai
<cost> dapat berupa angka negatif. Increscost merupakan perintah yang digunakan untuk
mengubah biaya resource sebesar <cost> yang dituliskan. Nilai <cost> dapat berupa angka
negatif.

Laboratorium Perancangan Tata Letak & Fasilitas 63


Model Building: Buku Panduan Penggunaan ProModel

INT & REAL


INT <name> = <value>
REAL <name> = <value>

INT merupakan perintah yang digunakan untuk membangkitkan suatu variabel lokal
dengan tipe integer (bilangan). Variabel yang dibangkitkan hanya dapat digunakan pada logic
tersebut. Apabila entitas melakukan perpindahan, maka variabel yang dibangkitkan melalui
INT tidak dapat digunakan kembali.
Berbeda dengan INT, REAL merupakan perintah yang digunakan untuk membangkitkan
suatu variabel lokal dengan tipe real (bilangan desimal). Variabel yang dibangkitkan hanya
dapat digunakan pada logic tersebut. Apabila entitas melakukan perpindahan, maka variabel
yang dibangkitkan melalui REAL tidak dapat digunakan kembali.

JOIN
JOIN <quantity> <entity>, <priority>

Join merupakan perintah yang digunakan untuk menyatukan beberapa jenis entitas
menjadi 1 entitas baru. Penyatuan dengan menggunakan JOIN() bersifat permanen. JOIN()
mampu menyatukan beberapa jenis entitas, dan memerlukan base untuk menyatukan entitas.
Base merupakan entitas yang menggunakan perintah JOIN pada logic, sedangkan entitas lain
yang hendak disatukan dapat menggunakan routing rules If Join Request menuju ke lokasi
entitas yang merupakan base. Entitas gabungan akan mewariskan nilai atribut dari entitas
base.

JOINTLY GET
JOINTLY GET <quantity> <resource>, <priority>

Jointly get merupakan perintah yang memiliki fungsi seperti perintah GET() yaitu untuk
menetapkan resource pada suatu entitas tertentu. Dengan demikian, resource akan
ditetapkan untuk entitas tersebut dan tidak dapat berganti hingga mendapat perintah FREE().
Perbedaan JOINTLY GET() dan GET() adalah JOINTLY GET() akan menetapkan beberapa
resource pada entitas secara bersamaan. Apabila tidak terdapat resource yang tersedia, maka
entitas akan menunggu hingga sejumlah resource tersedia baru menetapkannya pada entitas
secara bersamaan. Sedangkan, perintah GET() memperbolehkan resource untuk ditetapkan
satu persatu hingga mencapai jumlah yang diinginkan.

Laboratorium Perancangan Tata Letak & Fasilitas 64


Model Building: Buku Panduan Penggunaan ProModel

LOAD
LOAD <quantity> IFF <condition> IN <time>, <priority>
UNLOAD <quantity>

Load merupakan perintah yang digunakan untuk menyatukan beberapa entitas secara
sementara. Sama seperti JOIN, LOAD memiliki entitas base yang menjalankan perintah LOAD
di logic dan entitas yang memiliki routing rules If Load Request untuk di-load ke entitas base.
Tidak seperti JOIN, LOAD tidak dapat mendefinisikan entitas apa saja yang hendak di-load,
namun entitas dapat disortir dengan mengatur <condition> yang berupa atribut. Perintah load
perlu diiringi dengan perintah UNLOAD untuk melepaskan entitas yang telah disatukan.
Perintah UNLOAD dapat dilakukan untuk sejumlah entitas tertentu didalam gabungan entitas.

LOG
LOG “<string>”, <value>

Log merupakan perintah yang digunakan untuk menghitung waktu yang telah ditempuh
pada suatu model untuk kondisi tertentu. Dengan demikian, apabila suatu entitas hendak
dilihat waktunya selama berada didalam sistem dapat digunakan perintah LOG. Perintah ini
harus diiringi dengan penggunaan perintah CLOCK().

MATCH
MATCH <attribute>

Match merupakan perintah digunakan untuk membuat entitas menunggu hingga kedua
entitas dengan perintah MATCH mendapatkan nilai atribut yang sama kemudian melanjutkan
logic. Kedua entitas harus memiliki nilai yang sama untuk suatu atribut agar dapat
melanjutkan prosesnya. Untuk menggunakannya, perintah MATCH harus diberikan untuk
kedua entitas yang ingin disamakan nilai atributnya.

MOVE, MOVE FOR, MOVE ON, MOVE WITH


MOVE
MOVE FOR <time>
MOVE ON <path network>
MOVE WITH <resource>, <priority> FOR <time> (THEN FREE)

Move merupakan perintah yang digunakan untuk mengatur perpindahan entitas. Terdapat
jenis perintah MOVE(), antara lain:

Laboratorium Perancangan Tata Letak & Fasilitas 65


Model Building: Buku Panduan Penggunaan ProModel

 MOVE merupakan perintah dalam move logic yang digunakan untuk menggerakkan
entitas menuju akhir dari conveyor atau antrian.
 MOVE FOR merupakan perintah yang digunakan untuk mendefinisikan waktu
perpindahan entitas. Dengan demikian, entitas akan bergerak sesuai dengan waktu yang
telah didefinisikan pada MOVE FOR.
 MOVE ON digunakan untuk memaksa entitas untuk menggunakan suatu jaringan jalur
tertentu untuk berpindah. Dengan demikian, entitas akan mengikuti jalur yang telah
didefinisikan dalam path network.
 MOVE WITH digunakan untuk memanggil resource untuk memindahkan entitas tersebut.
Pada bagian akhir perintah MOVE WITH perlu ditambahkan THEN FREE untuk
memastikan bahwa resource akan dibebaskan untuk melakukan pekerjaan untuk entitas
lain setelah memindahkan entitas tersebut.

ORDER
ORDER <quantity> <entity> TO <location>

ORDER merupakan perintah yang digunakan untuk menambahkan entitas dalam model
pada saat simulasi berlangsung, seperti perintah CREATE. Perbedaan CREATE dan ORDER
adalah perintah ORDER dapat menentukan lokasi dimana entitas akan ditambahkan. Atribut
dari entitas yang melakukan perintah ORDER akan disalin kepada entitas yang ditambahkan.

PAUSE
PAUSE <message>

PAUSE digunakan untuk menghentikan jalannya simulasi sementara dan menampilkan


pesan berupa message box. Pesan dapat berupa nilai atribut, variabel, ataupun teks yang
ditulis dengan menambahkan tanda kutip. Simulasi dapat berjalan apabila tombol resume
simulation ditekan pada menu simulation, atau dengan klik kanan lalu klik resume simulation.

PROMPT
PROMPT<message>, <identifier>

PROMPT digunakan untuk menghentikan simulasi


sementara, dan menampilkan input box yang dapat
diisi pada saat simulasi berlangsung. Nilai yang
diisikan pada input box dapat dihubungkan ke atribut
atau variabel melalui <identifier>.

Laboratorium Perancangan Tata Letak & Fasilitas 66


Model Building: Buku Panduan Penggunaan ProModel

READ
READ <file ID>, <identifier>

READ digunakan untuk mendapatkan nilai numerik dari suatu file dan memberikan nama
untuk nilai tersebut. File yang dibaca oleh perintah READ didefinisikan pada external files.

RENAME
RENAME AS <entity>

RENAME digunakan untuk mengganti nama entitas menjadi entitas lain. Setelah di-
rename, entitas tersebut akan mengikuti bentuk entitas baru.

REPORT
REPORT (WITH RESET) AS <report_name>

REPORT digunakan untuk menghitung dan melaporkan statistik sementara ke output


database. Dengan demikian, statistik pada titik tertentu saat simulasi berjalan dapat dilihat
dan diketahui. Perintah REPORT dapat diikuti dengan WITH RESET untuk me-reset statistik
setelah report dimasukkan kedalam database.

RESET
RESET <file_id>

RESET digunakan untuk mengulang proses pembacaan file dari awal kembali. Perintah ini
biasanya digunakan pada initialization logic atau termination logic. File yang diberikan
perintah RESET adalah file yang didefinisikan pada external files.

RESET STATS
RESET STATS

RESET STATS digunakan untuk me-reset statistik simulasi. Dengan demikian,


pengumpulan data statistik untuk output akan dimulai dari awal kembali setelah perintah
RESET STATS.

Laboratorium Perancangan Tata Letak & Fasilitas 67


Model Building: Buku Panduan Penggunaan ProModel

ROUTE
ROUTE <block>

ROUTE digunakan untuk mengarahkan entitas menuju salah satu blok rute tertentu yang
didefinisikan pada routing window. ROUTE dapat digunakan untuk kondisi yang memerlukan
decision making, sehingga terdapat lebih dari kemungkinan (blok) rute yang ditempuh.

SEND
SEND <quantity> <entity> TO <location>, <priority>

SEND digunakan untuk mengirimkan suatu entitas kepada lokasi tertentu. Entitas yang
hendak dipindahkan memiliki routing rules If Send. Dengan demikian, entitas yang hendak
dipindahkan dengan SEND akan menunggu hingga perintah SEND dijalankan, kemudian baru
dapat berpindah sesuai dengan lokasi yang ditentukan pada perintah SEND.

SOUND
SOUND <sound_file>

SOUND digunakan untuk memutar file suara (wavefiles) pada saat simulasi berlangsung.
Dengan demikian, ProModel akan memutar file dengan format .WAV.

SPLIT
SPLIT <quantity> AS <entity>

SPLIT digunakan untuk memecah entitas menjadi beberapa entitas baru. Entitas awal akan
keluar dari sistem, dan entitas baru akan memiliki nilai atribut yang serupa dengan entitas
sebelumnya.

STOP
STOP <Message>

STOP digunakan untuk menghentikan simulasi pada saat tertentu, dan menampilkan
pesan dalam bentuk message box. Dengan demikian, simulasi akan langsung berhenti atau
akan berlanjut ke replikasi berikutnya.

Laboratorium Perancangan Tata Letak & Fasilitas 68


Model Building: Buku Panduan Penggunaan ProModel

TRACE
TRACE <command>
TRACE <message>

TRACE merupakan perintah yang digunakan untuk mengaktifkan tracing pada ProModel
(penjelasan mengenai tracing dapat dilihat pada TRACING & DEBUGGING). Terdapat 2 jenis
perintah trace, menggunakan command dan message. Dengan message, pesan akan tampil
pada trace window pada saat simulasi berlangsung. Terdapat beberapa command untuk
TRACE, yakni STEP (mengaktifkan trace step), CONT (mengaktifkan trace continuous), OFF
(menonaktifkan tracing), CLOSE (menonaktifkan tracing dan menutup tracing window)

USE
USE <quantity> <resource>, <priority> FOR <duration>

USE digunakan untuk menetapkan resource pada entitas tertentu untuk diolah selama
durasi waktu yang telah ditentukan. Setelah durasi waktu tersebut, resource akan dilepaskan
dari entitas dan dapat mengerjakan pekerjaan lain.

VIEW
VIEW <view>

VIEW digunakan untuk mengganti posisi pandangan pada layout window. VIEW perlu
didefinisikan terlebih dahulu pada layout window. VIEW dapat digunakan untuk melihat
bagian-bagian dalam model apabila model yang dibuat besar dan ingin melihat animasi secara
detail.

WAIT
WAIT <time>

WAIT digunakan untuk mensimulasikan waktu yang digunakan entitas untuk diproses pada
lokasi tertentu. Dengan demikian, entitas tersebut akan menunggu sementara model akan
terus berjalan. Daialm output, wait untuk entitas akan dihitung sebagai waktu memproses
entitas tersebut.

Laboratorium Perancangan Tata Letak & Fasilitas 69


Model Building: Buku Panduan Penggunaan ProModel

WAIT UNTIL
WAIT UNTIL <condition>

WAIT UNTIL digunakan untuk memaksa entitas untuk menunggu hingga suatu kondisi
tercapai. Dengan demikian, selama kondisi tersebut belum tercapai, entitas akan menunggu
pada lokasi tersebut.

WARM UP
WARM UP

WARM UP digunakan untuk mengakhiri simulasi pada waktu tertentu, me-reset semua
statistik, kemudian melanjutkan kembali simulasi. WARM UP digunakan untuk mendefinisikan
periode warm up melalui perintah.

6.2 FUNCTION
Function merupakan perintah yang digunakan untuk mendapatkan suatu nilai terkait
simulasi yang sedang berjalan, untuk digunakan dalam logic. Dengan demikian, function dalam
ProModel sebagian besar akan memberikan hasil berupa angka.

CALYEAR, CALMONTH, CALDOM, CALDAY, CALHOUR, CALMIN


Perintah-perintah dengan awalan CAL memiliki fungsi untuk mengkonversi / mengubah
data waktu simulasi agar dapat digunakan dalam logic. CALYEAR digunakan untuk
mengetahui tahun jalannya simulasi, apabila simulasi dijalankan selama satu tahun atau lebih.
Dengan begitu, antara tahun pertama dan tahun kedua dapat diberikan perbedaan dari segi
logic (contohnya tahun kedua akan memproduksi barang dengan ukuran batch yang lebih
besar). Selain CALYEAR, terdapat perintah lain yang berkaitan dengan mengubah data waktu
jalannya simulasi, yakni:
CALMONTH : Mendapatkan nilai bulan jalannya simulasi pada saat perintah diberikan.
Nilai yang didapatkan berkisar antara 1 hingga 12.
CALDOM : Mendapatkan nilai tanggal jalannya simulasi pada saat perintah diberikan.
Nilai yang didapatkan berkisar antara 1 hinga 31.
CALDAY : Mendapatkan nilai hari jalannya simulasi pada saat perintah diberikan yang
dikonversi menjadi bentuk numerik. Dengan demikian, senin akan
memberikan nilai 1, selasa akan memberikan nilai 2, dst.
CALHOUR : Mendapatkan nilai jam jalannya simulasi pada saat perintah diberikan. Nilai
yang bisa didapatkan berkisar antara 0 hingga 23, karena mengikuti
format waktu 24 jam.

Laboratorium Perancangan Tata Letak & Fasilitas 70


Model Building: Buku Panduan Penggunaan ProModel

CALMIN : Mendapatkan nilai menit jalannya simulasi pada saat perintah diberikan.
Nilai yang bisa didapatkan berkisar antara 0 hingga 59.
Perintah-perintah diatas dapat digunakan apabila simulasi yang dijalankan menggunakan
calendar date untuk satuan waktunya (dapat dilihat di menu SIMULATION > OPTIONS).

CAP
CAP merupakan perintah yang digunakan untuk mendapatkan nilai kapasitas suatu lokasi.
Apabila lokasi tersebut merupakan multi-unit location, maka nilai kapasitas yang didapatkan
merupakan total kapasitas semua unit lokasi tersebut.

CHAR
CHAR merupakan perintah yang memiliki angka yang merepresentasikan simbol-simbol
tertentu. Dengan demikian, apabila hendak menggunakan karakter dalam logic (contohnya
untuk menampilkan total biaya) dapat menggunakan CHAR dan tidak perlu memasukkan
karakternya secara langsung.

CLOCK
CLOCK memiliki fungsi yang serupa dengan CAL, yaitu untuk mendapatkan nilai waktu
simulasi. Namun, berbeda dengan CAL, CLOCK mendapatkan nilai waktu simulasi dari awal
hingga perintah dijalankan (kumulatif). Dengan demikian, didapatkan nilai yang
merepresentasikan berapa lama simulasi telah berjalan, sesuai dengan satuan waktu yang
didefinisikan pada perintah.

CONTENTS
CONTENT merupakan perintah yang digunakan untuk mengetahui jumlah entitas yang
berada dalam suatu lokasi tertentu. Dengan demikian, data yang didapatkan dapat digunakan
untuk melakukan decision making.

ENT
ENT berfungsi untuk merujuk suatu entitas untuk digunakan dalam logic. Entitas dirujuk
dengan menggunakan index number yang dimiliki masing-masing entitas (lihat bagian INDEX
NUMBER untuk informasi lebih lanjut)

ENTITY
ENTITY berfungsi untuk merujuk suatu entitas untuk digunakan dalam logic, serupa
dengan perintah ENT. Perbedaan dengan ENT adalah ENTITY digunakan untuk mendapatkan

Laboratorium Perancangan Tata Letak & Fasilitas 71


Model Building: Buku Panduan Penggunaan ProModel

nama entitas yang dirujuk, sedangkan ENT digunakan untuk merujuk pada entitas tersebut
untuk digunakan pada condition yang dibangun.

ENTRIES
ENTRIES digunakan untuk memberikan informasi berupa angka numerik mengenai jumlah
entitas yang memasuki lokasi tertentu.

EXP
EXP digunakan untuk mendapatkan nilai eksponen dari suatu nilai yang diberikan.

FREECAP
FREECAP merupakan perintah yang memberikan hasil yang berkebalikan dari perintah
CONTENTS. Dengan kata lain, FREECAP memberikan data mengenai kapasitas yang tersedia
pada suatu lokasi.

FREEUNITS
FREEUNITS merupakan perintah yang digunakan untuk mendapatkan nilai mengenai
jumlah resource yang tersedia dan tidak sedang mengerjakan tugas apapun ataupun
menjalani downtime.

GETCOST
GETCOST merupakan perintah yang digunakan untuk mendapatkan nilai total biaya yang
dibebankan untuk entitas tersebut. Dengan demikian, biaya yang dikeluarkan untuk mengolah
entitas tersebut dapat diketahui dan digunakan untuk perhitungan lainnya.

GETREPLICATION
GETREPLICATION digunakan untuk mendapatkan nilai numerik mengenai replikasi yang
sedang dijalankan. Dengan demikian, dapat diketahui pada titik tersebut simulasi sedang
berjalan untuk replikasi ke-n.

GETRESRATE
GETRESRATE digunakan untuk mendapatkan nilai numerik mengenai biaya operasional
suatu resource tertentu yang telah didefinisikan pada bagian COST sebelumnya.

Laboratorium Perancangan Tata Letak & Fasilitas 72


Model Building: Buku Panduan Penggunaan ProModel

GROUPQTY
GROUPQTY merupakan perintah yang digunakan untuk mengetahui jumlah entitas dalam
suatu entitas yang merupakan hasil penggabungan sementara (group atau load).

LN
LN merupakan perintah yang digunakan untuk mendapatkan nilai Natural Logarithm suatu
bilangan.

LOC
LOC berfungsi untuk merujuk suatu lokasi untuk digunakan dalam logic. Lokasi dirujuk
dengan menggunakan index number yang dimiliki masing-masing lokasi (lihat bagian INDEX
NUMBER untuk informasi lebih lanjut)

LOCATION
LOCATION berfungsi untuk merujuk suatu lokasi untuk digunakan dalam logic, serupa
dengan perintah LOC. Perbedaan dengan LOC adalah LOCATION digunakan untuk
mendapatkan nama lokasi yang dirujuk, sedangkan LOC digunakan untuk merujuk pada lokasi
tersebut untuk digunakan pada condition yang dibangun.

LOCSTATE
LOCSTATE digunakan untuk mendapatkan nilai numerik yang mengindikasikan kondisi
lokasi tersebut. Nilai yang didapatkan berkisar antara satu hingga tujuh, dimana masing-
masing nilai merepresentasikan kondisi tertentu

OWNEDRESOURCE
OWNEDRESOURCE digunakan untuk mendapatkan nilai index number dari resource yang
sedang ditetapkan untuk entitas tersebut.

PERCENTOP
PERCENTOP digunakan untuk mendapatkan nilai persentase waktu operasi untuk single-
capacity location pada satu titik waktu tertentu. Apabila digunakan pada multi-capacity
location, maka hasil yang diberikan akan selalu 0.

Laboratorium Perancangan Tata Letak & Fasilitas 73


Model Building: Buku Panduan Penggunaan ProModel

PERCENTUTIL
PERCENTUTIL digunakan untuk mendapatkan nilai utilisasi lokasi pada satu titik waktu
tertentu.

PREEMPTEDRES
PREEMPTEDRES digunakan untuk mendapatkan index number dari resource yang sedang
didahului.

RAND
RAND merupakan perintah yang digunakan untuk membangkitkan nilai diantara 0 hingga n,
dimana n merupakan nilai yang didefinisikan pada perintah.

RES
RES merupakan perintah yang digunakan untuk merujuk suatu resource dengan
menggunakan index number sebagai acuan.

RESOURCE
RESOURCE berfungsi untuk merujuk suatu resource untuk digunakan dalam logic, serupa
dengan perintah RES. Perbedaan dengan RES adalah RESOURCE digunakan untuk
mendapatkan nama resource yang dirujuk, sedangkan RES digunakan untuk merujuk pada
resource tersebut untuk digunakan pada condition yang dibangun.

RESQTY
RESQTY merupakan perintah yang digunakan untuk mendapatkan jumlah unit resource
yang sedang ditugaskan untuk entitas tertentu.

ROUND
ROUND merupakan perintah yang digunakan untuk membulatkan angka sesuai dengan
ketentuan matematis.

SQRT
SQRT merupakan perintah yang digunakan untuk mendapatkan nilai akar kuadrat dari nilai
tertentu.

Laboratorium Perancangan Tata Letak & Fasilitas 74


Model Building: Buku Panduan Penggunaan ProModel

TIMESUSED
TIMESUSED digunakan untuk mengetahui berapa kali sebuah resource dipakai.

TRUNC
TRUNC digunakan untuk melakukan pembulatan terhadap angka dengan cara
menghilangkan nilai desimal angka real. Dengan demikian, pembulatan selalu dilakukan
kebawah (round down). ProModel secara default menggunakan trunc untuk membulatkan
angka real menuju integer.

UNITS
UNITS digunakan untuk mendapatkan nilai yang menggambarkan total unit dari suatu
lokasi ataupun resource.

Laboratorium Perancangan Tata Letak & Fasilitas 75


BAB VII
STAT::FIT

Stat::fit merupakan salah satu tools


dalam ProModel yang berfungsi untuk
melihat kecocokan suatu kumpulan data
dengan distribusi tertentu. Simulasi
cocok digunakan untuk kondisi sistem
yang probabilistik, sehingga dapat
menggunakan distribusi tertentu dalam
membangun logic pada model. Dengan
menggunakan stat::fit, kita dapat
melihat kecocokan data terhadap
distribusi, dan menggunakannya dalam membangun logic pada model. Stat::fit dapat diakses
melalui TOOLS > STAT::FIT atau dengan menekan tombol stat::fit pada shortcut panel.
Stat::fit memiliki banyak fungsi yang dapat digunakan untuk menunjang pembuatan
model. Namun, dalam praktikum tidak semua fungsi digunakan. Adapun fungsi yang sering
digunakan adalah:
1. Melihat karakteristik data, seperti mean, mode, median, variance¸ dst. Setelah menginput
data kedalam data table, fungsi ini dapat diakses melalui STATISTICS > DESCRIPTIVE.
2. Melakukan uji independensi. Dalam stat::fit, uji independensi dapat dilakukan dengan 3
cara, yakni run test, autocorrelation, dan scatter plot. Fungsi ini dapat diakses melalui
STATISTICS > DESCRIPTIVE.
3. Melihat kecocokan data terhadap distribusi
tertentu. Fungsi ini dapat diakses melalui menu FIT
> AUTO::FIT. Pada auto::fit, terdapat beberapa
pengaturan untuk menentukan jenis distribusi
yang hendak dilihat kecocokannya. Pertama,
apabila data tersebut merupakan data diskrit,
maka pilih discrete distributions. Namun, apabila
data merupakan data kontinu, maka pilih
continuous distributions. Kedua, kita perlu
menentukan apakah distribusi bersifat unbounded (tidak memiliki batas), lower bound
(memiliki batas bawah dengan nilai paling kecil adalah 0), ataupun assigned bound
(memiliki batas bawah dengan nilai paling kecil ditentukan pada kotak lowest allowed
value). Adapun hasil yang diberikan oleh auto::fit memiliki 2 komponen penting yang perlu

76
Model Building: Buku Panduan Penggunaan ProModel

diperhatikan, yakni rank dan acceptance. Acceptance menandakan apakah distribusi


tersebut cocok atau tidak dengan data yang dimiliki, dan rank menunjukkan tingkat
kecocokan data dengan distribusi tersebut. Semakin besar rank yang ditampilkan maka
kecocokannya semakin baik.

Laboratorium Perancangan Tata Letak & Fasilitas 77


BAB VIII
SIMRUNNER

Salah satu fungsi utama simulasi adalah ntuk mencari suatu cara / solusi yang lebih baik
untuk diterapkan pada sistem sesuai dengan hasi yang diinginkan tanpa perlu mengeluarkan
biaya yang besar untuk melakukannya secara aktual. Dengan kata lain, kita hendak
mengoptimalkan kondisi sistem saat ini dengan melakukan perubahan pada beberapa faktor
tertentu dalam sistem. Dalam ProModel, optimisasi dapat dilakukan dengan menggunakan
bantuan Simrunner. Salah satu contohnya apabila hendak melakukan penambahan tenaga
kerja, dapat dilakukan simulasi dengan mengatur jumlah tenaga kerja sebagai faktor yang
dapat berubah untuk melihat apakah penambahan tenaga kerja akan membuat nilai yang
diamati menjadi lebih baik.
Simrunner memungkinkan kita melihat perubahan suatu nilai dalam sistem apabila
terdapat perubahan pada faktor tertentu. Jumlah skenario yang muncul akan sejalan dengan
jumlah kombinasi yang dimungkinkan. Perubahan faktor diatur dengan menggunakan macros
(lihat bagian MACROS). Semakin banyak jumlah macros dan semakin besar range macros
tersebut, maka jumlah kombinasi yang didapatkan akan semakin besar pula. Simrunner dapat
diakses melalui SIMULATION > SIMRUNNER atau dengan menekan tombol Simrunner pada
shortcut panel.

PENGGUNAAN SIMRUNNER
Untuk menggunakan Simrunner untuk melakukan optimisasi terhadap skenario, terdapat
beberapa langkah yang perlu dilakukan antara lain:
1. Persiapkan model yang hendak diamati.
2. Atur macros pada faktor-faktor yang dapat diubah
3. Buka Simrunner, akan muncul tampilan seperti ini.

78
Model Building: Buku Panduan Penggunaan ProModel

4. Klik Next pada bagian kanan bawah hingga muncul tampilan seperti ini. Kemudian atur
objective (nilai yang hendak dilihat perubahannya). Klik untuk menetapkan nilai tersebut
sebagai objective. Perhatikan juga karakteristik dari objective, apakah maksimasi,
minimasi, atau harus mencapai suatu nilai tertentu. Terdapat weight yang digunakan
apabila terdapat lebih dari 1 objective yang digunakan untuk menandakan bobot dari
masing-masing objective. Kemudian klik Next.

5. Selanjutnya, akan muncul tampilan untuk mengatur input factor (faktor yang diubah untuk
melihat perubahan pada objective). Tetapkan macros yang hendak dijadikan factor ke

bagian bawah dengan menekan untuk memindahkannya ke bagian bawah. Perhatikan


pula jenis data, nilai awal, batas atas dan batas bawah dari factor tersebut. Kemudian klik
Next.

6. Akan muncul tampilan analyze model untuk menentukan jumlah replikasi yang
dibutuhkan, klik Next karena penentuan jumlah replikasi tidak dilakukan dengan
menggunakan Simrunner.

Laboratorium Perancangan Tata Letak & Fasilitas 79


Model Building: Buku Panduan Penggunaan ProModel

7. Klik Next hingga muncul tampilan optimize model. Pada bagian ini hanya perlu mengatur
mengenai optimization profile. Optimization Profile digunakan untuk menentukan besar
populasi yang hendak diamati. Terdapat 3 kategori optimization profile, yakni aggressive
(kecil), moderate (menengah), dan cautious (besar). Kemudian klik Next.

8. Klik Run, hingga muncul window yang menampilkan grafik nilai objective yang dihasilkan
dari masing-masing kombinasi. Tunggu hingga semua kombinasi dijalankan.

Laboratorium Perancangan Tata Letak & Fasilitas 80


BAB IX
MODELLING 101

“Dari tadi teori terus nih, kasih contoh model dong”. Untuk melatih penggunanya dalam
mengoperasikan ProModel dengan baik, ProModel memiliki beberapa contoh model yang
dikhususkan untuk penggunaan fitur-fitur tertentu dalam ProModel, seperti logic,

Model Training
Dalam model latihan yang diberikan terdapat 9 fase yang dapat anda tempuh untuk
menyelesaikan latihan yang diberikan. Untuk mengakses model latihan dapat melalui folder
MODELS > TRAINING. Secara default, lokasi folder adalah:

C:\Program Files (x86)\ProModel\Models\Training

Model Example
Selain model latihan, ProModel juga menyediakan model acuan untuk membantu
memahami cara kerja perintah-perintah dalam logic ProModel, seperti ACCUM(), CALDAY(),
COMBINE(), CREATE(), dll. Untuk melihat contoh model acuan tersebut, dapat diakses melalui
folder MODELS > REFS. Untuk instalasi default, lokasi folder adalah:

C:\Program Files\ProModel\Models\Refs

Selain contoh yang disediakan oleh ProModel, terdapat beberapa contoh model yang
dapat anda lihat dengan mengakses drive berikut: https://cutt.ly/9fbZTrJ (data-data yang
digunakan dalam contoh model merupakan data fiktif yang digunakan hanya untuk keperluan
contoh saja)

81
DAFTAR PUSTAKA

Harrell, C, et al..2012. “Simulation Using ProModel” - Third Edition. Penerbit McGraw-Hill

ProModel Corporation. ProModel User Guide

You might also like