contoh simulasi yang lain

Minggu, 04 Oktober 2009


Pembangkit angka acak



Interface
Uses util, tipe;


{Type
tipe1 = array[1..5] of double;}
Var
tipe11 : tipe1;
{ 1 } Function Uniform (a,b : double) : double;
{ 2 } Function Eksponensial (beta : double) : double;
{ 3 } Function Erlang (n : longint ; beta : double) : double;
{ 4a} Function Gamma (alfa,beta : double) : double;
{ 4b} Function InvGamma (alfa,beta : double) : double;


{ 5 } Function Weibull (alfa,beta: double) : double;


{ 6a} Procedure Normal (mean,variance : double ; Var z1,z2 : double);
{ 6b} procedure lognormal (mean,varr : double; Var zln1,zln2 : double);


{ 7 } Function Beta (alfa1,alfa2,a,b : double) : double;
{ 8 } Function Bernoulli (p : double) : double;
{ 9 } Function Acak_Diskrit_Sebarang (n : longint ; x,probd : tipe1) : double;
{10 } Function Randi (n : longint ; probd : tipe1) : longint;
{11 } Function Binomial (n : longint ; p : double) : double;
{12 } Function Geometri (p : double) : double;
{13 } Function Binomial_Negatip (n : longint ; p : double) : double;
{14 } Function Poisson (beta : double) : double;
{15 } Function tdistribution(m:integer):double;


Implementation


Function Uniform (a,b : double) : double;
Var u : double;
Begin
u := random;
Uniform := (b-a) * u + a;
End;




Function Eksponensial (beta : double) : double;
Var u : double;
Begin
u := random;
Eksponensial := -beta * ln(u);
End;




Function Erlang (n : longint ; beta : double) : double;
Var u,sum : double;
i : longint;
Begin
sum := 1;
for i:=1 to n do
begin
u := random;
sum := sum * u;
end;
Erlang := -beta * ln(sum);
End;




Function Gamma (alfa,beta : double) : double;
Var selesai : boolean;
a,b,u,p,y,q,teta,d,u1,u2,v,w,z : double;
Begin
if alfa < 1 then
begin
b := 1 + alfa/exp(1);
Repeat
selesai := false;
u := random;
p := b * u;
if p > 1 then
begin
y := -ln((b-p)/alfa);
u := random;
if exp((alfa-1)*ln(y)) >= u then
begin
Gamma := beta * y;
selesai := true
end
end
else
begin
y := exp (ln(p)/alfa);
u := random;
if exp(-y) >= u then
begin
Gamma := beta * y;
selesai := true
end
end
Until selesai;
end
else
if (alfa > 0.99999999) and (alfa < 1.0000001) then
begin
y := Eksponensial (1);
Gamma := beta * y;
end
else
begin
a := 1 / sqrt(2*alfa-1);
b := alfa - ln(4);
q := alfa + 1/a;
teta := 4.5;
d := 1 + ln(teta);
Repeat
selesai := false;
u1 := random;
u2 := random;
v := a * ln(u1/(1-u1));
y := alfa * exp(v);
z := sqr(u1) * u2;
w := b + q * v - y;
if (w+d-teta*z >= 0) then
begin
Gamma := beta * y;
selesai := true;
end
else
if w >= ln(z) then
begin
Gamma := beta * y;
selesai := true
end
Until selesai;
end
End;


Function InvGamma(alfa,beta : double) : double;
Var temp : double;
begin
temp := gamma(alfa,beta);
InvGamma := sqrt(1/temp);
end;


Function Weibull (alfa,beta: double) : double;
Var u,z : double;
Begin
u := random;
z := -ln(u);
Weibull := beta * exp (ln(z)/alfa);
End;




Procedure Normal (mean,variance : double ; Var z1,z2 : double);
Var u1,u2,v1,v2,w,y,x1,x2 : double;
Begin
Repeat
u1 := random;
u2 := random;
v1 := 2 * u1 - 1;
v2 := 2 * u2 - 1;
w := sqr(v1) + sqr(v2);
if w <= 1 then
begin
y := sqrt ((-2*ln(w))/w);
x1 := v1 * y;
x2 := v2 * y;
z1 := sqrt (variance) * x1 + mean;
z2 := sqrt (variance) * x2 + mean;
end
Until w <= 1;
End;




Function Beta (alfa1,alfa2,a,b : double) : double;
Var u1,u2,y : double;
Begin
u1 := Gamma (alfa1,1);
u2 := Gamma (alfa2,1);
y := u1/(u1+u2);
Beta := a + (b-a) * y;
End;




Function Bernoulli (p : double) : double;
Var u : double;
Begin
u := random;
if u <= p then
Bernoulli := 1
else
Bernoulli := 0;
End;




Function Acak_Diskrit_Sebarang (n : longint ; x,probd : tipe1) : double;
Var u : double;
i : longint;
Begin
u := random;
for i:=1 to n-1 do
if u <= probd[i] then
begin
Acak_Diskrit_Sebarang := x[i];
exit
end;
Acak_Diskrit_Sebarang := x[i];
End;




Function Randi (n : longint ; probd : tipe1) : longint;
Var u : double;
i : longint;
Begin
u := random;
for i:=1 to n-1 do
if u <= probd[i] then
begin
Randi := i;
exit
end;
Randi := n;
End;




Function Binomial (n : longint ; p : double) : double;
Var sum,u : double;
i : longint;
Begin
sum := 0;
for i:=1 to n do
begin
u := Bernoulli(p);
sum := sum + u;
end;
Binomial := sum
End;




Function Geometri (p : double) : double;
Var u : double;
Begin
u := random;
Geometri := ln(u) / ln(1-p);
End;




Function Binomial_Negatip (n : longint ; p : double) : double;
Var sum,u : double;
i : longint;
Begin
sum := 1;
for i:=1 to n do
begin
u := random;
sum := sum * u;
end;
Binomial_Negatip := ln(sum) / ln(1-p);
End;




Function Poisson (beta : double) : double;
Var lamda,a,b,u : double;
i : longint;
Begin
lamda := 1/beta;
a := exp(-lamda);
b := 1; i := 0;
Repeat
u := random;
b := b * u;
if b < a then
Poisson := i
else
i := i + 1;
Until b < a;
End;


procedure lognormal (mean,varr : double;
Var zln1,zln2 : double);
Var y1, y2 : double;
begin
Normal (mean,varr,y1,y2);
zln1 := exp(y1);
zln2 := exp(y2);
end;


function tdistribution(m:integer):double;
{ created :
based on Principles of Random Variate Generation
by John Dagpunar, 1988
published by Claredon Press - OXFORD


please check if any other theory of t-distribution }


Label r2;
Var v,x,r,s,c,a,f,g,mm : real;
begin
mm:=0;
if m < 1 then
begin
writeln('impermissible degrees of freedom.');
halt;
end;
if (m <> mm) then
begin
s:=m;
c:=-0.25*(s+1);
a:=4/power((1+1/s),c);
f:=16/a;
if m>1 then
begin
g:=s-1;
g:=power(((s+1)/g),c)*sqrt((s+s)/g);
end else
g := 1;
mm:=m;
end;
r2:repeat
r:=random;
until r > 0.0;
x:=(2*random-1)*g/r;
v:=x*x;
if (v>(5-a*r)) then
begin
if ((m>=3) and (r*(v+3)>f)) then goto r2;
if (r>power((1+v/s),c)) then goto r2;
end;
tdistribution :=x;
end;


begin
tipe11[1]:=0.2;
tipe11[1]:=0.3;
tipe11[1]:=0.5;
tipe11[1]:=0.8;
tipe11[1]:=1.0;
end.


Fungsion Bernauli



program bernoul;
uses wincrt;
Function Bernoulli(p : real) : real;
Var u : real;
Begin
u:= random;
if u <= p then
Bernoulli := 1
else
Bernoulli := 0;
End;
var i,n:integer;
s,p:real;
begin
write('berapa peluang p =');read(p);
write('berapa data = ');read(n);
for i:=1 to n do
begin
s:=bernoulli(p);
writeln;
write('data',s:10:0);
end;
end.


Fungsion binomial

uses wincrt;
Function Binomial_Negatip (n : longint ; p : real) : real;
Var sum,u : real;
i : longint;
Begin
sum := 1;
for i:=1 to n do
begin
u := random;
sum := sum * u;
end;
Binomial_Negatip := ln(sum) / ln(1-p);
End;
var p,x:real;
j,n,m:integer;
begin
write('Banyak data yang akan dibangkitkan =');read(m);
write('Peluang suatu kejadian =');read(p);
write('Kejadian ke- =');read(n);
for j:=1 to m do
begin
x:=binomial_negatip(n,p);
writeln('data =',x:10:0);
end;
end.


Fungsion log normal

uses wincrt;
procedure normal(mean,variance:real; Var z1,z2 : real);
Var u1,u2,v1,v2,w,y,x1,x2: real;
Begin
Repeat
u1 := random;
u2 := random;
v1 := 2 * u1 - 1;
v2 := 2 * u2 - 1;
w := sqr(v1) + sqr(v2);
if w <= 1 then
begin
y := sqrt ((-2*ln(w))/w);
x1 := v1 * y;
x2 := v2 * y;
z1 := sqrt (variance) * x1 + mean;
z2 := sqrt (variance) * x2 + mean;
end
Until w > 1;
End;
procedure lognormal (mean,varr : real; Var zln1,zln2 : real);
Var y1, y2 : real;
begin
Normal (mean,varr,y1,y2);
zln1 := exp(y1);
zln2 := exp(y2);
end;
var a,b,c,d,e,f:real;
i,n:integer;
begin
write('mean =');read(a);
write('variance =');read(b);
write('
write('berapa data yang akan dibangkitkan ?');read(n);
for i:=1 to n do
begin
lognormal(a,b,c,d);
writeln('zln1 =',e);
writeln('zln2 =',f);
write('-------------------');
end;


Fungsion normal

uses wincrt;
procedure normal(mean,variance:real; Var z1,z2 : real);
Var u1,u2,v1,v2,w,y,x1,x2: real;
Begin
Repeat
u1 := random;
u2 := random;
v1 := 2 * u1 - 1;
v2 := 2 * u2 - 1;
w := sqr(v1) + sqr(v2);
if w <= 1 then
begin
y := sqrt ((-2*ln(w))/w);
x1 := v1 * y;
x2 := v2 * y;
z1 := sqrt (variance) * x1 + mean;
z2 := sqrt (variance) * x2 + mean;
end
Until w > 1;
End;
var p,o,i,u:real;
f,n:integer;
begin
write('mean =');read(p);
write('variance =');read(o);
write('berapa data yang dibangkitkan ?');read(n);
for f:=1 to n do
begin
normal(p,o,i,u);
writeln('z1 =',i:10:2);
writeln('z2 =',u:10:2);
writeln('---------------------------------');
end;


Fungsion Bublesort

program sorting;
uses wincrt;
type tipelarik=array [1..100] of real;




var e,c,m:integer;
d:tipelarik;


procedure tukarkan(var a,b:real);
var t:real;
begin
t:=a;
a:=b;
b:=t;
end;


procedure bublesort(var a:tipelarik;n:integer);
var i,j: integer;
begin
for i:=1 to n-1 do
for j:=1 to n-i do
if a[j]>a[j+1] then tukarkan(a[j],a[j+1])
end;




begin
write('jumlah data');readln(m);
for e:=1 to m do
readln(d[e]);


bublesort(d,m);


for c:=1 to m do
writeln(d[c]:0:0)


Fungsion median

function median (vektor:larik; N:integer);
var x,med:real;
begin
x:=n div 2
if n mod 2=0
med:=vektor[x]+vektor[x+1]/2;
else
med:=vektor[x+1]
end;
end.

Fungion run test

program sorting;
uses wincrt;
type tipelarik=array [1..100] of real;

var e,c,m,z:integer;
d,f,vektor:tipelarik;
med:real;


procedure tukarkan(var a,b:real);
var t:real;
begin
t:=a;
a:=b;
b:=t;
end;


procedure median(vektor:tipelarik;n:integer);
var x:integer;
begin
x:=n div 2;
if n mod 2=0 then
med:=(vektor[x]+vektor[x+1])/2
else
med:=vektor[x+1];
end;


procedure bublesort(var a:tipelarik;n:integer);
var i,j: integer;
begin
for i:=1 to n-1 do
for j:=1 to n-i do
if a[j]>a[j+1] then tukarkan(a[j],a[j+1])
end;


begin
write('jumlah data=');
readln(m);
writeln('masukkan data=');
for e:=1 to m do
readln(d[e]);


f:=d;
{mengecek bahwa f adalah data awal}
Write('data sebelum urut=');
writeln(f[1]);


writeln('data yang diurutkan=');
bublesort(d,m);


for c:=1 to m do
writeln(d[c]:0:0);


median(d,m);
write('median=');
writeln(med:0:2);


for z:=1 to m do
begin
f[z]:=f[z]-med;
writeln(f[z]:0:2);
end;


Beberapa contoh syntax pembangkit bilangan random bag. 1

Kali ini akan diberikan contoh beberapa syntak pembangkit bilangan random dari beberapa distribusi yaitu:
1. Distribusi uniform
2. Distribusi Eksponensial
3. Distribusi Normal
4. Distribusi Lognormal
5. Distribuso Weibull
6. Distribusi t-student
7. Distribusi fisher
Fungsi Distribusi Uniform
Function Uniform (a,b : double) : double;
Var u : double;
Begin
u := random;
Uniform := (b-a) * u + a;
End;
Fungsi Distribusi Eksponensial
Function Eksponensial (beta : double) : double;
Var u : double;
Begin
u := random;
Eksponensial := -beta * ln(u);
End;
Fungsi Distribusi Normal
Procedure Normal (mean,variance : double ; Var z1,z2 : double);
Var u1,u2,v1,v2,w,y,x1,x2 : double;
Begin
Repeat
u1 := random;
u2 := random;
v1 := 2 * u1 – 1;
v2 := 2 * u2 – 1;
w := sqr(v1) + sqr(v2);
if w <= 1 then begin y := sqrt ((-2*ln(w))/w); x1 := v1 * y; x2 := v2 * y; z1 := sqrt (variance) * x1 + mean; z2 := sqrt (variance) * x2 + mean; end Until w <= 1; End; Procedure Distribusi Lognormal procedure lognormal (mean,varr : double; Var zln1,zln2 : double); Var y1, y2 : double; begin Normal (mean,varr,y1,y2); zln1 := exp(y1); zln2 := exp(y2); end; Fungsi Distribusi Weibull Function Weibull (alfa,beta: double) : double; Var u,z : double; Begin u := random; z := -ln(u); Weibull := beta * exp (ln(z)/alfa); End; Fungsi Distribusi t-student function tdistribution(m:integer):double; Label r2; Var v,x,r,s,c,a,f,g,mm : real; begin mm:=0; if m <>1 then
begin
g:=s-1;
g:=power(((s+1)/g),c)*sqrt((s+s)/g);
end else
g := 1;
mm:=m;
end;
r2:repeat
r:=random;
until r > 0.0;
x:=(2*random-1)*g/r;
v:=x*x;
if (v>(5-a*r)) then
begin
if ((m>=3) and (r*(v+3)>f)) then goto r2;
if (r>power((1+v/s),c)) then goto r2;
end;
tdistribution :=x;
end;
begin
tipe11[1]:=0.2;
tipe11[1]:=0.3;
tipe11[1]:=0.5;
tipe11[1]:=0.8;
tipe11[1]:=1.0;
end.

Yang ge bingung ma jurnal autokorelasi

Sabtu, 12 September 2009

Aqu sih dapet ni alamat dari karlinarachmasita.blogspot.com cuy..!
alamat mengenai journal autokorelasi
http://en.wikipedia.org/wiki/Autocorrelation

http://www.duke.edu/~rnau/testing.htm

http://www.xycoon.com/autocorrelation.htm

http://74.125.153.132/search?q=cache:dq-gMQpze3wJ:homepages.uel.ac.uk/D.A.C.Boyd/FE2007%2520Autocorrelation.doc+autocorrelation+in+regression&cd=7&hl=id&ct=clnk&gl=id

http://www.bearcave.com/misl/misl_tech/wavelets/stat/index.html

http://www.google.com/books?hl=id&lr=&id=JxMj3UcSc_EC&oi=fnd&pg=PA237&dq=autocorrelation+in+econometrics&ots=ASR_UAHB3b&sig=5htf5-hr0S_Mk6VeRGzPwUSPbbc#v=onepage&q=autocorrelation%20in%20econometrics&f=false

http://www.jstor.org/pss/2938229

Kuliah simulasi minggu ke tiga

Pada kuliah minggu ke tiga, dibahas mengenai pembangkit bilangan acak.Pembangkitan bilangan acak dapat pula disebut dengan pseudo-random generation.Mengapa tidak disebut dengan random data generation??. Kata pseudo random generation sebenarnya berasal dari kata pseudo yang artinya semu atau bukan sebenarnya. Dalam hal ini, pseudo-random generation dapat diartikan sebagai barisan bilangan random yang dibangkitkan dengan menggunakan rumus sehingga masih bisa diduga apa yang akan muncul. Bilangan yang muncul dalam pseudo-random generation tidaklah benar-benar acak atau acak semu.

Pada kali ini diberikan contoh sebagai berikut:


Pada gambar diatas, yang dimaksud dengan modulo adalah sisa bilangan bulat dengan pembagian. Modulo diperbesar sampai 2k-1 adalah untuk membuat agar periode pengulangan terlihat panjang.
Jika m=5 maka bilangan yang mungkin muncul adalah 0,1,2,3,4.

Sedangkan rumus dari pseudo-random generation adalah sebagai berikut:



BILANGAN BINER

Dikutip dari http://id.wikipedia.org/wiki/Sistem_bilangan_biner Sistem bilangan biner atau sistem bilangan basis dua adalah sebuah sistem penulisan angka dengan menggunakan dua simbol yaitu 0 dan 1. Sistem bilangan biner modern ditemukan oleh Gottfried Wilhelm Leibniz pada abad ke-17. Sistem bilangan ini merupakan dasar dari semua sistem bilangan berbasis digital. Dari sistem biner, kita dapat mengkonversinya ke sistem bilangan Oktal atau Hexadesimal. Sistem ini juga dapat kita sebut dengan istilah bit, atau Binary Digit. Pengelompokan biner dalam komputer selalu berjumlah 8, dengan istilah 1 Byte. Dalam istilah komputer, 1 Byte = 8 bit. Kode-kode rancang bangun komputer, seperti ASCII, American Standard Code for Information Interchange menggunakan sistem peng-kode-an 1 Byte.
Bilangan desimal yang dinyatakan sebagai bilangan biner akan berbentuk sebagai berikut:



Sebagai contoh
bilangan biner terbesar 1 digit adalah 1
bilangan biner terbesar 2 digit adalah 11 atau 3
bilangan biner terbesar 3 digit adalah 111 atau 7
bilagan biner terbesar 32 digit adalah 11...1 atau 2k-1
Jika bilangan biner lebih dari 32 digit maka komputer dikatakan overflow.



1. Pada simulasi kali ini, diberikan contoh simulasi syntax yang digunakan untuk membangkitkan distribusi uniform x ~ u(a,b) dengan bahasa Pascal. Commandnya adalah sebagai berikut:

function uniform (a,b:real):real;
begin
uniform:=a+(b-a)*random;
end;

SIMULASI berdistribusi eksponensial

function expo(mean:real):real;
begin
expo:=-loge(random)*mean;
end;

3. Simulasi mengenai inverse transform

diberikan F(x)= u, u ~ u(0,1)dengan gambar distribusi sebagai berikut:


dapatkan persamaan untuk x?!
jawab:



Kuliah simulasi pertemuan ke dua

Rabu, 02 September 2009

Pada pertemuan kedua mata kuliah simulasi, dibahas mengenai contoh ssimulasi sederhana. Yang pertama adalah mencari pendekatan nilai pi, dan mencari pendekatan nilai variansi.

Untuk membuat simulasi dari pi, langkah-langkah yang harus ditempuh adalah sebagai berikut:

  1. Mulai

  2. I=0

  3. i=i+1

  4. Bangkitkan 10.000 titik

x~u0,1

y~u(o,1)

  1. π1=4*mn

  2. Jika i<1000 pergi ke 3

  3. π=i=11000πi1000

  4. Tulis π

  5. Selesai

    Sedangkan bila diterapkan pada program dhelpi adalah sebagai berikut:

    Program

    Var x,y,p,s:real;

    J,i,m,n:integer;

    Begin

    S:=0;

    For j:=1 to 1000 do

    Begin

    Randomize;

    N:-1000; m:=0;

    For i:=1 to n do

    Begin

    X:=random;

    Y:=random;

    If (x*x+y*y) <=1 then m:=m+1;

    End;

    P:=4*m/n; s:=s+p;

    P:=s/1000;

    Writeln (p);

    End.


Untuk membuat simulasi dari varians, langkah-langkah yang harus ditempuh adalah sebagai berikut:

  1. Mulai

  2. Bangkitkan x~N(60,1)sebanyak 100 sebagai populasi

  3. Ambil n sampel sebanyak 10

Hitung s12= (xi-x)2n

s22= (xi-x)2(n-1)


  1. Lakukan langkah nomor 3 sebanyak 1000 kali

  2. Hitung bias s12 & s22

  3. Selesai


Sabtu, 29 Agustus 2009

Mari Mempelajari Tentang Simulasi

Sindy febri antika
1307100066

A.Pengertian Simulasi

Sebelumnya kita perlu tahu terlebih dahulu apakah itu pengertian simulasi?. Simulasi merupakan suatu usaha Mencontoh atau mempergunakan gambaran sebenarnya dari suatu sistem kehidupan nyata tanpa harus mengalaminya pada keadaan yang sesungguhnya. Simulasi merupakan suatu penyederhanaan dari suatu realitas yang kompleks. Suatu simulasi dikatakan lengkap apabila dapat mewakili berbagai aspek dari realitas yang sedang dikaji. Sebagai contoh, boneka adalah model dari bentuk manusia; boneka yang dapat tertawa, menangis, dan berjalan adalah model manusia yang lebih lengkap, tidak hanya mewakili bentuk tetapi juga beberapa perilaku manusia.
Model memegang peranan penting di bidang ilmu pengetahuan. Biasanya dari segi ekonomi untuk menghemat (waktu,biaya) ataupun komoditi berharga lainnya. Pemodelan bisa juga dilakukan untuk menghindari resiko kerusakan sistem nyata. Dengan demikian sebuah model diperlukan bilamana percobaan dengan sistem nyata menjadi terhalang karena mahal, berbahaya ataupun merupakan sesuatu yang tidak mungkin untuk dilakukan. Taha (1992) bahwa asumsi sistem nyata diwujudkan dari sistem nyata dengan menentukan faktor-faktor dominan (variabel, kendala, dan parameter) yang mengendalikan perilaku dari sistem nyata. Phillips (1976) dalam operation research, yang dimaksudkan dengan model adalah representasi sederhana dari sesuatu yang nyata. Dengan pengertian ini menunjukkan bahwa model selalu tidak sempurna. Adakalanya lingkungan nyata terlalu rumit sehingga sekedar untuk memahaminya ataupun untuk mengkomunikasikan dengan orang lain diperlukan sebuah model yang representatif
Pada umumnya simulasi ini digunakan untuk menyelesaikan permasalahan- permasalahan yang memiliki kendala sebagai berikut:
􀁻Sangat sulit diselesaikan dengan cara analisis, misal dynamic programming, rangkaian listrik kompleks, dll.
􀁻Memiliki ukuran data dan kompleksitas yang tinggi, misal travellingsalesman problem, assignment, schedulling, dll.
􀁻Sangat sulit diimplementasikan secara langsung, karena biaya yang sangat tinggi,misal optimasi Radio Base Station atau optimasi channel assignment

Dibawah ini merupakan diagram yang menggambarkan sebuah penjelasan terperinci mengenai simulasi.


B.Model Simulasi

Model pada simulasi dapat dibedakan menjadi tiga jenis yaitu :
a)Model fisik (ikonik)
Model fisik replika atau tiruan dilaksanakan dengan menirukan domain /ruang/daerah dimana fenomena atau peristiwa alam tersebut terjadi. Tiruan domain dapat lebih besar ataupun lebih kecil dibandingkan dengan keadaan nyata di alam. Kesesuaian dari model ini ditentukan oleh seberapa mungkin kesebangunan (geometris, kinematis, dan dinamis) di alam dapat ditirukan ke dalam model. Misalnya, seorang ahli struktur yang mempelajari bagian struktur pesawat ruang angkasa dalam versi skala kecil. Contoh lainnya, umur rencana operasi pesawat terbang dipengaruhi oleh hasil penelitian model di dalam terowongan angin.
b)Model Analog(diagramatik)
Model analog dapat mewakili situasi dinamik, yaitu keadaan berubah menurut waktu. Model ini lebih sering dipakai daripada model ikonik karena kemampuannya untuk mengetengahkan karakteristik dari kejadian yang dikaji. Model analog banyak berkesusuaian dengan penjabaran hubungan kuantitatif antara sifat dan klas-klas yang berbeda. Dengan melalui transformasi sifat menjadi analognya, maka kemampuan membuat perubahan dapat ditingkatkan. Contoh model analog ini adalah kurva permintaan, kurva distribusi frekuensi pada statistik, dan diagram alir.
c)Model matematik
Model matematik adalah representasi ideal dari sistem nyata yang dijabarkan dinyatakan dalam bentuk simbol dan pernyataan matematik. Dengan kata lain model matematik merepresentasikan sebuah sistem dalam bentuk hubungan kuantitatif dan logika, berupa suatu persamaan matematik. Pada model matematik replika/tiruan dari feomena/peristiwa alam dideskripsikan melalui satu set persamaan matematik. Kecocokan model terhadap fenomena alam yang dideskripsikan tergantung dari ketepatan formulasi persamaan matematiknya.
Model matematik seringkali digunakan untuk mempelajari fenomena alam nyata yang kompleks dengan cara analisis, serta untuk menyelidiki hubungan antara parameter yang mempengaruhi fungsi sistem dalam proses yang kompleks. Dengan model matematik mempunyai lebih banyak keuntungan daripada mendeskripsikan permasalahan secara lisan, karena model ini mendeskripsikan permasalahan dengan sangat ringkas. Keseluruhan struktur permasalahan cenderung menjadi lebih dapat dipahami, serta membantu mengungkapkan hubungan sebab - akibat yang penting. Model matematik yang ditulis sesuai dengan bahasa pemrograman untuk digunakan pada komputer digital dinamakan model digital
Untuk lebih jelasnya konsep model matematik dapat dilihat pada gambar berikut ini. Bagian kiri dari Gambar 3, memperlihatkan sistem fisik/alam nyata. Tujuan untuk mengembangkan sebuah representasi konseptual dari sistem nyata, yang dikenal sebagai model diperlihatkan pada bagian kanan

Model matematik kemudian dibedakan kembali menjadi dua jenis yaitu:
1)Model Simulasi
Loucks dkk (1981), dua pendekatan dasar dalam menyelesaikan model-model perencanaan yaitu simulasi dan optimasi. Bisa jadi simulasi adalah metode yang paling luas penggunaannya dalam mengevaluasi berbagai alternatif sistem sumberdaya air. Teknik ini mengandalkan cara coba-banding (trial-and-error) untuk memperoleh hasil yang mendekati optimal. Model matematik yang telah melalui proses kalibrasi dan verifikasi dengan memuaskan, sudah memenuhi syarat sehingga dapat digunakan untuk simulasi.
Sudjarwadi (1989), model simulasi mempunyai maksud untuk mereproduksi watak esensial dari sistem yang dipelajari. Teknik simulasi dapat dibayangkan dengan percobaan (eksperimen), sebagai penyelesaian masalah untuk mempelajari sistem yang kompleks yang tidak dapat dianalisis secara langsung dengan cara analitik.
Beberapa pertimbangan berikut ini mungkin tepat dalam penggunaan analisis simulasi.
1.Simulasi memungkinkan untuk belajar serta bereksperimen terhadap interaksi yang kompleks dari sistem.
2. Melalui simulasi dapat dipelajari efek perubahan lingkungan,organisasi maupun informasi terhadap operasi sistem, dengan membuat perubahan pada model sistem serta mengamati efek perubahannya terhadap perilaku sistem.
3.Pengamatan yang mendetail terhadap sistem yang disimulasikan, memberikan pemahaman yang semakin baik mengenai sistem tersebut.
4.Pengalaman merancang model simulasi mungkin lebih berharga daripada simulasi itu sendiri. Pengetahuan yang diperoleh dalam merancang suatu studi simulasi, sering mendorong untuk mensimulasikan perubahan yang terjadi pada sistem. Melalui simulasi efek dari perubahan tersebut dapat diuji, sebelum menerapkannya pada sistem nyata.
5.Simulasi dari sistem yang kompleks dapat memberikan pemahaman yang mendalam terhadap variabel-variabel yang dominan dalam sistem, serta bagaimana variabelvariabel ini berinteraksi
6.Simulasi dapat berfungsi sebagai sarana uji coba untuk menilai kebijakan baru ataupun pengambilan keputusan dalam operasi sistem, sebelum memutuskan untuk menerapkannya pada sistem nyata.

Model Optimasi dalam hubungan matematik
Gill dkk (1993), metode optimasi dalam hubungan matematik biasanya menyangkut pengertian memaksimalkan atau meminimalkan. Setiap problem optimasi menurut Mays dan Tung (1992) memiliki dua bagian penting yaitu fungsi tujuan (objective function) serta serangkaian kendala (constraints). Fungsi tujuan menjelaskan kriteria yang ingin dicapai oleh sistem. Sedangkan kendala menjelaskan proses atau sistem yang sedang didisain atau dianalisis.
Bronson (1983), dalam suatu problem optimasi diusahakan untuk memaksimalkan ataupun meminimalkan suatu besaran spesifik sebagai “tujuan” (objective), yang tergantung dari input sejumlah variabel keputusan. Keputusan yang optimal menurut Mays dan Tung (1992) berupa serangkaian nilai variabel keputusan yang memberikan respons optimal terhadap fungsi tujuan serta masih memenuhi kendala. Berdasarkan sifat dari fungsi tujuan dan kendala maka problem optimasi dapat diklasifikasikan sebagai :
a.Linier vs non linier,
b.Deterministik vs stochastic
pada suatu sistem stochastic paling sedikit satu komponen dari input atau state sistem adalah random.
Model stokastik(probabilistik) merupakan Model yang mendasarkan pada teknik peluang danmemperhitungkan ketidakmenentuan (uncertainty). Dalam mengkaji suatu sistem, model ini sering dipakai karena perihalyang dikaji umumnya mengandung keputusan yang tidak tentu.
Model deterministik merupakan model kuantitatif yang tidak mempertimbangkan peluang kejadian. Contohnya adalah model pada program linear dan PERT. Model ini memusatkan penelaahannya pada faktor-faktor kritis yang diasumsikan mempunyai nilai eksak dan tertentu pada waktu yang spesifik.
c.Statik vs dinamik
pada sistem statis output hanya tergantung input saat ini dan tidak pada input-input sebelumnya.
d.Kontinu vs diskrit
pada suatu sistem continuous-state paling sedikit satu komponen (input, state) mempunyai rentang uncountable.
e.Parameter lump vs parameter distribusi.

Penggunaan metode optimasi tergantung dari :
a) tipe fungsi tujuan
b) tipe kendala,
c) jumlah variabel keputusan.
C. Teknik Simulasi
Berjalannya simulasi dibedakan menjadi dua jenis yaitu: Time-driven yaitu dimana simulasi berjalan pd interval waktu tertentu/fixed (mis. state ditentukan pada saat t, t + Dt, t + 2 Dt, …dan Event-driven yaitu dimana suatu simulasi berjalan dari event-ke-event (mis. state ditentukan pd titik waktu dari event berikutnya)
Terdapat dua jenis teknik simulasi diantaranya adalah:
I.Even
Untuk jenis teknik simulasi ini terdapat beberapa ketentuan yaitu sebagai berikut :
1.Suatu event adalah sembarang aktivitas dlm jaringan yg dp, secara potensial, menuju ke perubahan state atau ke event lain yg menuju ke perubahan state misalnya: Kedatangan paket pd suatu antrian, Penyelesaian transmisi, Kegagalan (failure) suatu link.
2.Utk setiap event, simulator harus meniru operasi sistem untuk Update state sistem , Update statistics, Menentukan event kedepan yg baru .
3.Time-driven simulation harus menentukan jika suatu event baru muncul pd setiap langkah waktu diskrit, dan jika suatu event telah terjadi, proses event tsb.
4.Event-driven simulation hanya perlu proses event pd titik waktu dimana suatu event terjadi .
5.Simulasi event-driven dp secara substansial lebih efisien secara komputasi dibandingkan dg simulasi time-driven.
Even sendiri kemudian dibedakan lagi menjadi dua jenis yaitu:
a.Continuous time: event-event sistem dp terjadi pd sembarang waktu (mis. kedatangan adalah Poisson)
b.Discrete time: event-event sistem dp terjadi hanya pd waktu-waktu tertentu (mis. kedatangan merupakan Bernoulli process)

II.State spac e
Sama halnya dengan even, state space juga memiliki ketentuan yaitu State sistem dapat disimulasikan berdasarkan pada waktu antar kedatangan dan waktu pelayanan
Waktu antar kedatangan dan waktu pelayanan dp berharga sembarang
Urutan pelayanan dp lain selain FIFO
Tdk dibatasi pd kedatangan Poisson dan waktu pelayanan eksponensial atau asumsi serupa utk model analitik.
State space terbagi menjadi dua jenis yaitu :
a.Continuous space: state pada simulasi adalah kontinyu (mis. arus melalui suatu resistor)
b.Discrete state: state pada simulasi adalah diskrit (mis. jumlah paket dlm antrian)

State sistem sebagai fungsi waktu










D.Bahasa simulasi dan sotware yang digunakan

Satu bahasa simulasi tidak dapat menjadi alat yang tepat untuk semua kasus permodelan simulasi. Pertama kita akan mempelajari terlebih dahulu mengenai anatomi bahasa simulasi. Kesuksesan analisis simulasi merupakan teknik campuran yang sangat tergantung pada keahlian dan keahlian analis.
Bahasa simulasi pertama yang dihasilkan untuk tujuan itu adalah GPSS (General Purpose Simulation System) yang dikembangkan oleh Geoffrey Gordon dan dipublikasikan pertama sekali tahun 1961. bahasa ini telah berevolusi dalam beberapa versi, yang pada umumnya dikembangkan ole IBM. Pengembangan terpisah versi GPSS, GPSS/H memungkinkan debugging kode interaktif. Akhir-akhir ini, GPSS tersedia pada umumnya untuk mainframe dan minikomputer, dan ada 2 versi untuk mikrokomputer IBM. Elemen GPSS dieknal mempunyai derajat isomorfis tinggi dengan elemen sistem diskrit.
GPSS diikuti dengan munculnya SIMSCRIPT tahun 1963, dikembangkan oleh perusahaan RAND. Bahasa ini memiliki kemampuan untuk permodelan sistem yang lebih kompleks. Untuk melakukan fungsi ini, elemen bahasa kurang jelas dihubungkan dengan dunia nyata. Penggunaan himpunan, kejadian, proses dan sumber daya menggambarkan secara utama pada struktur dan operasi program SIMSCRIPT.
Bahasa-bahasa pionir ini tidak lama diikuti pengemabngan bahasa-bahasa simulasi khusus lainnya dan jumlahnya sudah sangat banyak sampai saat ini.

a.Struktur Bahasa Simulasi

Kiviat mendefinisikan struktur statis bahasa simulasi terdiri dari 3, yaitu identifikasi objek dan karakteristik objek, relasa antara objek dan penurunan objek. Struktur dinamisnya didefinisikan sebagai metode penambahan waktu simulasi.
Objek adalah komponen model dan sistem yang menjadi perhatian utama analisis, misalnya nasabah bank, komponen dalam lini perakitan, pengguna dalam sistem jaringan, dll. Bahasa yang berbeda memberikan definisi yang berbeda pada objek, misalnya dalam SIMAN disebut entities, dalam GPSS disebut transactions. Masing-masing objek dalam sistem yang sama mempunyai karakteristik yang berbeda. Nasabah bank misalnya, ada yang ingin melakukan penarikan, ada yang ingin melakukan setoran, dll. Pendefinisian karakteristik dalam bahasa yang berbeda juga berbeda. Karakteristik dalam SIMAN dan SIMSCRIPT misalnya didefinisikan sebagai attributes sedangkan dalam GPSS didefinisikan sebagai parameters, dan ada juga yang menggunakan definisi properties, dll.
Cara setiap bahasa simulasi memfasilitasi ini sangat berbeda. Dalam beberapa kasus, mekanisme digunakan untuk menelusuri karakteristik akar bahasa kompiler darimana bahasa simulasi dikembangkan. Bahasa simulasi yang kurang dekat dengan konvensi struktur data dari kompiler tertentu menurunkan objek yagn sangat mirip dengan sudut pandang dunia bahasa. Sejalan dengan perbaikan kemampuan bahasa komputer umum (general purposes), bahasa simulasi khusus pada umumnya telah dikodean kembali seperti assembly, bahasa bebas mesin seperti C. Tetapi struktur awal penurunan objek tetap dalam bahasa simulasi.
Struktur statis bahasa simulasi menempatkan objek dalam ruangan model, yaitu dimana objek secara fisik ditempatkan dalam sistem. Struktur dinamis dibutuhkan untuk menempatkan objek dalam waktu dan memungkinkan keberlanjutan dari satu titik waktu ke titik lainnya. Ada dua pendekatan dasar yang digunakan dalam struktur dinamis, yaitu fixed-time step dan event-tracking.
Pendekatan fixed-time memeriksa sistem pada interval waktu tetap untuk menentukan apakah statusnya sudah berubah atau belum. Jika status masih sama, variabel waktu akan ditambahkan sebesar interval waktu-tetap. Meskipuns ecara logika pendekatan ini cukup sederhana, tapi metodenya sangat tidak efisien. Mungkin ada beberapa titik waktu dimana sistem tidak berubah statusnya, dan karenanya akan ada banyak pemeriksaan sistem yang tidak perlu. Akibatnya, tidak ada bahasa simulasi kejadian diskrit yang menggunakan pendekatan ini ke struktur dinamis.
Pendekatan event-tracking memeriksa sistem hanya jika ada perubahan status. Logika diamsukkan dalam model untuk menentukan kapan kejadian atau status sistem berubah, dan variabel waktu ditambahkan dengan tepat sampai titik sebelum sistem diperiksa. Logika yang dibutuhkan untuk melakukan ini lebih kompleks dibandingkan dengan langkah waktu-tetap, tetapi akan mengehmat waktu eksekusi model secara signifikan.

b.Karakteristik Bahasa Simulasi

Struktur dinamis dan statis bahasa simulasi menyediakan kebutuhan jelas untuk mengeksekusi mode simulasi. Beberapa sifat bahasa simulasi lainnya dibutuhkan atau sangat diinginkan untuk penggunaan efektif analisis simulasi sebagai teknik pembantu pengambilan keputusan..
Pengembangan kode model. Kebanyakan bahasa simulasi amsih membutuhkan pemasukan pernyataan kode untuk menciptakan kode model, tetapi kemampuan grafik mikrokomputer telah memungkinkan input grafik. Cara ini paling sesuai untuk bahasa yang fokus pada aliran objek melalui elemen atau blok model.
Debugging model. Begitu mode simulasi sudah dikodekan menggunakan bahasa simulasi yang dipilih, langkah selanjutnya adalah debugging kode sehingga model simulasi berjalan ke penghentian normal. Syntax errors (kesalahan sintaks) adalah permasalahan pertama dalam proses, dan analisis untuk mendeteksi ini sudah ditanam dalam bahasa simulasi umumnya. Kesulitan berikutnya yang dihadapi adalah perbaikan kesalahan selama eksekusi kode. Analisis bahasa simulasi umumnya tidak sesuai secara total dengan permasalahan ini. Setelah menemukan kesalahan seperti ini, program berhenti dan tidak memberikan alasan dalam bentuk logika model kenapa program berhenti.
Penurunan variabel acak. Untuk kebanyakan simulasi probabilistik, kemampuan mengekstrak sampel acak dari distribusi probabilitas tertentu sangat penting. Bahasa simulasi melakukannya dengan mudah.
Pengumpulan statistik. Penjalanan model simulasi tanpa mengumpulkan data ukuran kinerja sistem sama saja dengan tidak melakukan pengamatan pada sistem dunia nyata yang sedang berlangsung. Pengamat ada selama operasi sistem dunia nyata tetapi tidak mengamati dan mencatat apa yang terjadi. Bahasa simulasi harus memungkinkan pengguna dengan mudah menspesifikasikan beragam statistik yang dikumpulkan selama eksekusi model. Juga untuk membantu interpretasi output simulasi, kemampuan penggambaran grafik dan inferensi statistik diperlukan.
Disain percobaan. Karena analisis simulasi bersifat deskriptif, kesuksesan aplikasinya tergantung pada percobaan model. Rancangan percobaan efektif dan efisien benar-benar meningkatkan kualitas solusi yang didapatkan dari model simulasi.
Animasi grafis dan output dinamis. Kemampuan menggunakan bahasa simulasi pada mikrokomputer memungkinkan kemampuan grafis mesin ini untuk mengilustrasikan penjalanan mode simulasi atau outputnya. Ilustrasi objek yang mengalir melalui elemen model disebut sebagai animasi. Animasi biasanya menggunakan monitor berwarna dan dengan mudah mengenali simbol objek dan elemen model. Dengan mengamati aliran seperti itu, analisis dapat memperhatikan penyebaba permasalahan operasi dan dapat memperbaikinya. Animasi model akan memperlambat eksekusi model. Oleh akrena itu, animasi biasanya hanya dilakukan pada mikrokomputer cepat dengan memori besar.

c.Pemilihan Bahasa Simulasi

Beberapa hal yang perlu diperhatikan dalam pemilihan bahasa simulasi adalah kemudahan untuk dipelajari, kemudahan menjelaskan pada orang yang bukan teknik, biaya, kode standar untuk semua komputer dan cakupan permasalahan yang dapat ditangani oleh bahasa. Pada umumnya, semakin mirip elemen bahasa simulasi dengan elemen dunia nyata, semakin mudah elemen itu dipelajari. Kemudahan menjelaskan fungsi bahasa simulasi ke manajer yang mengeluarkan dana untuk pembelian perangkat lunak dan yang tidak memahami secara teknis juga digunakan dalam memilih bahasa simulasi.

Software yang digunakan untuk simulasi

Jumat, 28 Agustus 2009

Ada beberapa sumber di internet yang bisa digunakan untuk mengikuti perkembangan bahasa simulasi. Salah satu diantaranya adalah http://www.idsia.ch/~andrea. Dibawah ini adalah contoh software-software yang digunakan dalam simulasi antara lain adalah:

Software libraries

C++SIM

C++ libreries untuk simulasi sistem kejadian diskrit..

JavaSIM

Versi java C++SIM.

SimTools, Version 2.7

Review beberapa alat simulasi.

The Numerical Algorithms Group Ltd (NAG)

Arsip algoritma numerik.

Netlib

Arsip algoritma numerik

Simulations in Java

Arsip Sim Java

CSIM18

Mesquite CSIM berorientasi proses, general purpose simulation toolkit yang ditulis dengan fungsi umum bahasa C. The toolkit memungkinkan programmer menciptakan dan mengimplementasikan model orientasi proses dan simulasi kejadian diskrit.

Code by Law and Kelton

Contoh-contoh Code dalam C and FORTRAN dari buku "Simulation Modelling and Analysis, by A.V. Law and W.D. Kelton

SSS

A library (coded in C) untuk simulasi sistem kejadian diskrit oleh M. A. Pollatschek (visit his home page )

Mathtools

Suatu "portal" yang menyediakan akses gratis untuk MATLAB, Excel, C, C++, Fortran and Java.

Warped

WARPED adalah domain umum Time Warp simulation kernel ditulis dalam C++. The distribution includes a plug-in sequential kernel to support comparative analysis to parallel executions. Primary development has been on Linux-based Pentium PCs, Sun Workstations, a 4-processor Sun SparcCenter 1000, and the Intel Paragon

baseSim

iBright adalah evolusi baseSim Simulation Components (pertama dikembangkan oleh solutionsBase, sekarang oleh defunct) adalah kelompok Visual Components dirancang sebagai komplemen dan perluasan fungsi Borland Delphi v.4.0/5.0. Menyediakan alat untuk pemodelan simulasi sederhana maupun kejadian diskrit kompleks.

OpEMCSS

The Operational Evaluation Modelling for Context-Sensitive Systems (OpEMCSS) adalah tambahan Extend simulation environment. Memungkinkan bagi pemakai untuk merepresentasikan sistem adaptif kompleks relatif lebih mudah.

TomasWebTomasWeb
TomasWeb

TomasWeb memberikan simulasi orientasi objek yang diimplementasikan dalam Delphi 5 and 6. berbasis pendekatan orientasi proses : metode pendiskripsian, dimana beberapa kejadian (perubahan status) dikombinasikan kedalam proses tunggal. Oleh karenanya, tools ini mendukung simulasi orientasi proses. TomasWeb dikembangkan terutama untuk pendidikan dan penelitian. Perangkat lunak ini gratis, tapi memerlukan Borland's Delphi.

HighMAST object-oriented simulation library

HighPoint Software Systems menawarkan simulasi orientasi objek. Ditulis dalam C# , dan terdiri dari 200+ classes, 70+ interfaces. HighMAST framework dibangun sebagai open architecture library on Microsoft's capable .NET technology base.

DEx

DEx, the Dynamic Experimentation toolkit, bertujuan utnuk menyediakan kecepatan, fleksibel dan mudah digunakan untuk pengembangan, analisis dan visualisasi simulasi multi dinamis. Kernel and utility classes terdiri dari kerangka kerja yang dapat digunakan dalam C++ atau kombinasi dengan bahasa DEx, bahasa khusus domain berbasis C++ dirancang untuk percepatan prootip. Dikompile dalam Linux dan tersedia gratis di internet.



Alat visualisasi Simulasi


Extend

Extend (Imagine That, Inc.) digunakan untuk memodelkan, menganalisis dan mengoptimalkan proses. Memiliki sejumlah fitur seperti kumpulan komponen, hirarki model, link dengan MS Office dan memodelkan sistem kontinu, diskrit dan hybrid. Extend mempunyai bahasa pemodelan sendiri (ModL) yang mirip dengan C, dan mampu memanggil kode dari bahasa lainnya. Mempunyai paket khusus untuk sistem industri, riset operasional dan simulasi proses kontinu.

SIMUL8

SIMUL8 oleh Visual Thinking Intl. Simul8 memungkinkan pengguna mengambil dari himpunan objek simulasi dan distribusi statistik ayng sudah didefinisikan sebelumnya untuk menciptakan model. Simul8 juga memungkinkan pemodelan hirarki. Fokus utamanya adalah simulasi kejadian diskrit.

Dymola

Dymola oleh Dynasim, alat orientasi objek untuk pemodelan dan simulasi sistem kontinu. Fokus pada sistem robotik dan sistem mekanik. Sekarang terintegrasi dengan bahasa pemodelan Modelica. Modelica memungkinkan integrasi dan penggunaan kembali lingkungan simulasi dan permodelan berbeda.

VisSimVisSim

VisSim (Visual Solutions), bahasa diagram blok visual untuk simulasi dinamis nonlinear. Versi demo dapat didownload.

AwesimAwesim

Awesim menyediakan engien simulasi fokus pada produksi animasi model. Animasi dapat dibangun secara grafis dan pemakai dapat menentukan kontrol untuk membangun simulasi interaktif.

LabviewLabview

Labview (National Instruments): pemrograman visual yang memungkinkan interfase dengan pengukuran dan peralatan bervariasi.

Goldsim

GoldSim adalah general purpose simulator untuk hampir semua sistem fisika, keuangan, finansial dan organisasi. Models dibangun secara grafis. Goldsim Academic gratis untuk pelajar, professors dan guru. Goldsim maenyediakan sebuah pemain yang memungkinkan setiap orang dapat melihat model kita, tanpa harus menginstal keseluruhan paket. Goldsim juga dapat digunakan untuk modul contaminant transport, radionuclide decay. Simulasi Goldsim juga dapat dijalankan dalam lingkungan distribusi.

BuildSimBuildSim

BuildSim, oleh Tritera, lingkungan terintegrasi untuk disain, simulasi dan analisis sistem. BuildSim adalah aplikasi perangkat lunak interaktif yang mengintegrasikan analisis numerik, representasi matematik diagram blok, pemrosesan signal dan grafik. Memungkinkan untuk menurunkan source-code (C++ and Java). Tersedia untuk Macintosh. Ada versi download.

Optsim (was Artifex)Optsim (was Artifex)

OptSim adalah hasil penggabungan Artifex, a tool based on Class-based Extended Petri Nets dan RSoft LinkSim. OptSim adalah lingkungan simulasi dan permodelan intuitif yang mendukung disain dan evaluasi kinerja level transmisi sistem komunikasi optik.

MicroSaintMicroSaint

Micro Saint adalah produk perangkat lunak simulasi fleksibel dan general purpose. Micro Saint mempunyai interfase pemakai grafis dan didasarkan pada pendekatan diagram alur untuk pemodelan. Demo tersedia di internet.

EcosimProEcosimPro

EcosimPro adalah simulator sistem kontinu. Dapat menyelesaikan persamaan differensial aljabar. Ecosim mempunyai interfase pemakai grafis yang memfasilitasi tugas pemodelan. Ikon yang muncul dalam editor model bersesuaian dengan komponen riil sistem. Pemakai dapat menentukan model menggunakan bahasa EL, yang dapat memanggil routine FORTRAN dan C. Fitur menariknya adalah dukungan percobaan simulasi untuk model tertentu. Debugger juga tersedia.

SimCreatorSimCreator

SimCreator adalah permodelan dan simulasi grafis, digunakan untuk sistem kontinu. Bahasa ini sama dengan Mathworks's Simulink. Model yang lebih sederhana dapat dihubungkan untuk membangun mode kompleks. Model dapat bersarang. Spesifikasi grafis kemudian diterjemahkan ke kode C. Versi beta tersedia untuk download

Berleley MadonnaBerleley Madonna

Bahasa ini digunakan untuk program simulasi numeris pada komputer Windows dan Macintosh. Dirancang sebagai pemecah umum sistem persamaan differensial biasa. Diekmbangkan pada universitas California Berkeley untuk tujuan pengajaran dan penelitian.

XJ Technologies

XJ Technologies menyediakan sekumpulan alat, semuanya dengan lingkungan pengembangan visua, untuk bidang simualsi berbeda : simulasi hybrid (AnyLogic), sistem paralel (Covers), dan diagram status

SimprocessSimprocess

Simprocess adalah orientasi objek, pemodelan proses dan alat analisis. Menggabungkan kesederhanaan diagram alur dengan kehebatan simulasi, analisis statistik, pembiayaan berbasis biaya dam animasi.

SansGUISansGUI

SansGUI digunakan untuk mengembangkan dan menggunakan simulator ilmiah dan rekayasa tanpa harus menulis kode interface pemakai grafis. SansGUI saat ini tersedia untuk Microsoft Windows platforms. Microsoft Visual C++ and Compaq Visual Fortran didukung untuk menciptakan interaktif tinggi dalam simulator proses sementara bahasa lainnya dapat digunakan untuk pengembangan simulator proses eksternal.

SimCreatorSimCreator

SimCreator simulasi dan permodelan grafis sistem. Level paling tinggi adalah interface GUI yang memungkinkan penempatan dan koneksi berbagai komponen. Setiap komponen bisa sebagai subgrup yang dibentuk komponen tambahan atau suatu komponen kode C. Simcreator mirip dengan Simulink.

QX3D

QX3D adalah editor dan generator kdoe yang membantu visualsiasi dan animasi model mekanik. Dengan menghubungkan badan, atribut geometrinya (yaitu lokasi frame, orientasi) dan bentuk badan, akan menurunkan kode VRML untuk membuat visualisasi. Sejumlah besar bentuk dapat ditugaskan ke setiap badan. Kita juga dapat membuat animasi berdasarkan simulasi dinamis multibodi.

SimCad Pro

SimCAD Pro adalah alat permodelan dan simulasi proses yang memungkinkan permodelan top-down proses industrial kompleks. Aliran proses utama didefinisikan, kemudain setiap sel proses dilanjutkan ke proses individualnya.

SIGMA

SIGMA diklaim sebagai simulasi gafis pertama yang dijalankan di Windows. SIGMA merupakan alat pendidikan valid, karena memungkinkan pembuat model menggambarkan sistem menggunakan diagram alur proses. Juga dapat menangani sistem kompleks berkat graf kejadian. Graf kejadian dapat diedit meskipun simulasi sedang dijalankan.




Bond graphs


MS1MS1

MS1 oelh Lorenz Simulation adalag simualtor sistem kontinu yang memungkinkan pembuat model dapat menggunakan bahasa pemodelan berbeda seperti Bond Graphs, Linear Graphs, block Diagram dan Equational Model dan juag dapat menggunakan pemecah model alternatif seperti ACSL, ESACAP, CSSL IV, DASSL, etc.

20-sim20-sim

20-sim (dikembangkan oleh Controllab products, diturunkan dari TwenteSim) bond graphs and blocks modelling system untuk sistem kontinu. Dikembangkan di University of Twente. Demo download.

Symbols 2000Symbols 2000

Symbols 2000, produk ahsil penelitian dua dekade di Indian Institute of Technology of Kharagpur, adalah perangkat lunak pemodean grafis, simulasi dan kontrol. Menyedaikan alat pemodelan orientasi objek menggunakan bond graphs, block diagrams, dan equation models untuk memodelkan sistem dinamis. Simualsi online dengan penanganan kejadian. Pre-cast sub-models untuk komponen rekayasa lanjut. Kompatibel penuh dengan C++. Analog, digital dan analisis ruang status menggunakan model sistem kontrol.Demo untuk DOS and NT tersedia untuk download .

CAMP-GCAMP-G

Dapat digunakan untuk memodelkan mode Bond Graph dari sistem mekanikal, elektro, hidraulik, panas dan kontrol. CAMP-G adalah alat penurunan model yang menginterface bahasa seperti MATLAB , SIMULINK, ACSL dan lainnya untuk melaksanakan simulasi komputer sistem fisik dan kontrol.

MTTMTT

MTT, the Model Transformation Tools, terdiri dari sekumpulan alat untuk pemodelan sistem fisik dinamis menggunakan metodelogi bond graph dan mentransformasi model kedalam representasi yang sesuai untuk analisis, kontrol dan simulasi. Alat ini menggunakan dan menurunkan m files untuk, GNU Octave. MTT adalah perangkat lunak gratis di bawah GNU General Public License.




Integrated environments (modelling language + simulation environment)


MATRIXxMATRIXx

MATRIXx dijual oleh WindRiver, yang mengisukan Press Release revisi terbaru MATRIXx, dan dijalankan di bawahWindows 95/98/NT/2000/ME dan Solaris.

SIMULINK and MATLABSIMULINK and MATLAB

MATLAB: bahasa utama untuk perhitungan teknis, DSP, disain kotnrol, dst. SIMULINK menyediakan interface grafis ke beberapa fungsi MATLAB, sehingga memungkinkan pemakai mendisain model dan mengkontrol sistem secara grafis.

OctaveOctave and ScilabOctave and Octave and

Perangkat lunak yang bersaing dengan Matlab and MatrixX. Scilab adalah paket perangkat lunak ilmiah untuk perhitungan numerik yang user-friendly

SimLabSimLab

Ini adalah versi pertama perangkat lunak SimLab. Termasuk fungsionalitas matematik untuk perhitungan aljabar dan topologi dan kode untuk menciptakan triangulations area planar. Dikembangkan oleh Cornell University.

SDXSDX

SDX adalah FORTRAN kinerja tinggi didasarkan pada pemecahan amsalah dinamis (kontinu, diskrit,hybrid) aplikasi yang sesuai dalam ilmu dan rekayasa.

ACSL SimACSL Sim

ACSL dikembangkan oleh AEgis Technologies Group, Inc. ACSL Sim menggabungkan bahasa inti ACSL, dengan kumpulan lengkap ACSL runtime libraries, the ACSL translator, the ACSL system macro file, the ACSL builder, dan kemudahan menggunakan interface pemakai grafis sehingga interaktif dan user friendly.



Bahasa Simulasi


SimPy

SimPy (= Simulation in Python)adalah bahasa simulasi orientasi objek, berbasis proses kejadian diskrit didasarkan pada standar Python dan dikeluarkan di bawah GNU GPL. Menyediakan komponen model simualsi termasuk proses, untuk komponen aktif seperti pelanggan, pesan, peralatan dan sumber daya, untuk kompnen pasif yang membentuk kapasitas terbatas seperti server, counter pemeriksaan dan saluran. Juga menyediakan variabel monitor untuk mengumpulkan statistik. Variasi acak disediakan oleh modul acak standar Python. SimPy dilengkapi dengan kemampuan pengumpulan data. GUI dan paket plotting. Mudah diinterface dengan paket lainnya, seperti statistik, GUI, lembar kerja, dan basis data. SimPy masih aktif dikembangkan oleh tim pengembang internasional. Dapat didownlaod dengan gratis.

JiST

JiST adalah engine kinerja tinggi simulasi kejadian diskrit yang dijalankan atas mesin virtual Java standar. JiST adalah prototip pendekatan general-purpose baru untuk membangun simulator kejadian diskrit, disebut dengan mesin virtual berbasis simulasi, yang menggabungkan sistem tradisional dan disain simulator berbasis bahasaJiST dikembangkan oleh Cornell Research Foundation, Inc. Dan gratis untu penggunaan non komersial.

ACSL SimACSL Sim

ACSL (untuk sistem kontinu ) oleh AEgis Research kedalam ACSL Sim.

SLAM IISLAM II

Pritsker corptelah membentuk situs Simsource.com dimana kita dapat menemukan penjelasan Visual SLAM .

GPSS/HGPSS/H

The Wolverine General Purpose Simulation System. Bahasa untuk simulasi kejadian diskrit..

Ptolemy ProjectPtolemy Project

Ptolemy adalah proyek penelitian dan perangkat lunak yang berfokus ke disain sistem reaktif, menyediakan dukungan level tinggi untuk pemrosesan signal, komunikasi, dan kontrol waktu riil.

DSDS+
(http://groucho.gsfc.nasa.gov/
Code_520/Code_522/Projects/DSDSPlus/)
(site out of order 27 Sep 99)

The Data Systems Dynamic Simulator Plus (DSDS+) kejadian diskrit berbasis simulator yang memudahkan ketika menghadapi kesulitan dengan simulasi, laju data tinggi, sistem akhir-ke-akhir.

MODSIM IIIMODSIM III

Bahasa simulasi untuk orientasi objek dan proses. MODSIM akhir-akhir ini dijual ke Compuware.

Simscript II.5Simscript II.5

Bentuk bebas, bahasa pemodean dan pengembangan. SIMSCRIPT II.5 didisain untuk digunakan di kejadian diskrit dan kombinasi simulasi diskrit/kontinu.

Simple_1Simple_1

SIMPLE_1 mendukung pemodelan sistem diskrit dan kontinu menggunakan orientasi pemodelan jaringan. Fiturnya termasuk kemampuan pemakai untuk mendefinisikan variabel dan statistik yang dibutuhkan, melaksanakan operasi I/O pada file dan menganimasikan hasil simulasi dalam waktu riil menggunakan fitur bahasa yang ada. SIMPLE_1 menggunakan pendekatan pengulangan untuk menjalankan kontrol untuk memfasilitasi pemodelan pencarian tujuan dan definisi panjang penjalanan (run length) berdasarkan perilaku model. SIMPLE_1 sekarang dikeluarkan di bawah GNU GPL dan dikompile di bawah RedHat Linux.

SEMoLa

SEMoLa (Simple, Easy to use, MOdelling LAnguage) adalah bahasa bukan prosedural membangun model simulasi untuk penggerak kejadian/kontinu, sistem stokastik/deterministik, dikembangkan di Agricultural and Environmental Sciences Department, University of Udine (Italy). Sukses digunakan untuk memodelkan sistem biologi, ekologi dan pertanian pada skala berbeda dan level kompleks. Bahasa SEMoLaÊ terintegrasi yang menyederhanakan tugas pembangunan model, simulasi dan dokumentasi lebih jauh menyediakan kalibrasi, validasi, manajemen data, pembangunan jaringan neural, fitur unit verifikasi dan lainnya.

PasionPasion

Pasion adalah bahasa simulasi berorientasi objek. Mempunyai struktur proses/kejadian. Source code diterjemahkan ke Pascal, kompatibel dengan Delphi v3 atau yang terbaru. Dapat digunakan untuk memodelkan antrian, proses kontinu dan memungkinkan penggunaan paradigma Bond Graph. Demo dapat didownload dari situs.

WinSAAMWinSAAM

The WinSAAM versi berbasis windows of the SAAM dan sistem pemodelan Consam. Dikembangkan oleh auspices of the Laboratory of Experimental and Computational Biology, of the Division of the Cancer Biology and Diagnosis, of the National
Cancer Institute. Gratis untuk penelitian ilmiah.

MathCoreMathCore

MathCore AB menawarkan dua produk utama: MathCore C++, sebagai tambahan pada Mathematica yang mengkompile himpunan bagian matematika ke kode C++ efisiensi tinggi. MathCode C++ menyediakan platform untuk pengembangan cepat simulasi dan perhitungan mahal lainnya. MathModelica adalah implementasi Modelica dalam mathematica. MathModelica memungkinkan disain orientasi objek sistem fisik untuk simulasi dan pemrograman visual menggunakan editor grafik. MathModelica mengintegrasikan dokumentasi, kode yang dapat dijalankan, diagram koneksi grafik dan formula matematika.

ParsecParsec

Parsec adalah bahasa simulasi berbasis C, dikembangkan oleh Parallel Computing Laboratory di UCLA, untuk eksekusi paralel dan sekuensial mode simualsi kejadian diskrit. Juga dapat digunakan sebagai bahasa pemrograman paralel. Tersedia dalam bentuk biner hanya untuk institusi akademisi. Pengguna komersial dapat melakukan order pada Scalable Networks technologies.




Simulasi Berbasis Agen


SeSAmSeSAm

SeSAm (Shell for Simulated Agent Systems) untuk permodelan dan percobaan simulasi berbasis agen. Agen SeSAm terdiri dari badan, yang mengandung sekumpulan variabel status dan perilaku yang diimplementasikan dalam bentuk UML seperti diagram. Didasarkan pada sejumlah besar komponen primitif, pemakai dapat mendisain simulasis ecara grafis tanpa mengetahui sintaks bahasa pemrograman tradisional. Dituliskand alam Java dan dapat didownload gratis.

Ps-iPs-i

Bahasa simulasi untuk menjalankan simulasi berbasis agen. Model ditulis menggunakan bahasa Tcl/Tk standar dan interface grafis dapat juga digunakan.