Post on 01-Mar-2020
ÇUKUROVA ÜNİVERSİTESİ
FEN BİLİMLERİ ENSTİTÜSÜ
YÜKSEK LİSANS TEZİ
Banu SARIKAYA
OTOMOTİV YAN SANAYİNDE BİR ÜRETİM ÇİZELGELEME
PROBLEMİNİN İNCELENMESİ
ENDÜSTRİ MÜHENDİSLİĞİ ANABİLİM DALI
ADANA, 2005
İÇİNDEKİLER SAYFA
ÖZ…………………………………………………………………………………….I
ABSTRACT……………………………………………………………………….....II
TEŞEKKÜR………………………………………………………...……………….III
İÇİNDEKİLER………………………………………………………………...……IV
ŞEKİLLER DİZİNİ …………………..…………………...….…………………....VI
ÇİZELGELER DİZİNİ …………….……………….……...…………...……......VII
1.GİRİŞ……………………………………………….……………………..…..…....1
1.1. Problemin Tanımı………………………………………………………..1
1.2. Çalışmanın Amacı………………………………………………………..3
1.3. Çalışmanın Adımları……………………………………………………..4
1.4. Tezin Organizasyonu…………………………………………………....4
1.5. Varsayımlar…….………………………………………..……………....5
2. ÖNCEKİ ÇALIŞMALAR………………………………………………….……..6
3. MATERYAL VE METOD………………………………………………………14
3.1. Materyal………………………………………………………………...14
3.1.1.Mevcut Sistem Performans Ölçütleri………………………….19
3.2. Metod……………………………….…………………………………..20
3.2.1. Mevcut Sistemin Analizi………...……………………………20
3.2.2. Geliştirilen Algoritmanın Notasyonu…….…………………..21
3.2.3. Algoritma Öncelikleri………………….......……………...….22
3.2.4. Geliştirilen Algoritmanın Akış Diyagramı……………............25
3.2.5. Algoritmanın Hedefleri……………………...………………..26
3.2.6. Montaj Hattı Dengelenmesinde Simülasyon Tekniği………...26
3.2.7. Simülasyon Dilleri ve SIMAN……………………………….27
3.2.7.1. Simülasyon Aşamaları …..…………….....…………28
3.2.7.2. Simülasyonun Avantajları ve Dezavantajları.………30
4. BULGULAR VE TARTIŞMA……………………………………….…………..31
4.1. Performans Ölçütlerinin Değerlendirilmesi ...……...…………………..32
4.1.1. Siparişlerin Gelişlerarası Süresi ile Ortalama Akış Süresi…...32
IV
4.1.2. Siparişlerin Gelişlerarası Süresi ile Maksimum Akış Süresi ...33
4.1.3. Siparişlerin Gelişlerarası Süresi ile Geciken Parça Sayısı……35
4.1.4. Sipariş Gelişlerarası Süresi -Erken Biten Parça Sayısı……….36
4.1.5. Sipariş Gelişlerarası Süresi -Toplam Geç Kalma Süreleri...….38
4.1.6. Sipariş Gelişlerarası Süresi -Toplam Erken Bitme Süreleri…..39
5. SONUÇLAR VE ÖNERİLER……………………………………………………41
KAYNAKLAR……………………………………………………………...………43
ÖZGEÇMİŞ……………………………………………………...………………….46
EK 1.………………………………………………………………………………...47
EK 2.…………………………………………………………………………...……48
EK 3.…………………………………………………………………………...……53
EK 4.……………………………………………………………………………...…59
V
ŞEKİLLER DİZİNİ
Şekil 3.1. A ürünü iş akış şeması…………………………………………….……...15
Şekil 3.2. B ürünü iş akış şeması ………………………………………….………..16
Şekil 3.3. C ürünü iş akış şeması ………………………………..…………………17
Şekil 3.4. D ürünü iş akış şeması ……………………………...…………………....17
Şekil 3.5. Kuyruktaki bekleyen parçaları dengeleme………….……………………22
Şekil 3.6. Bekleyen parçaların minimizasyonu………………………….....………..23
Şekil 3.7. Toplam iş yükünü dengeleme…………..….………………..……..…..…24
Şekil 3.8. Geliştirilen Algoritmanın Akış Diyagramı………………….……………25
Şekil 4.1. Gelişlerarası Süre -Ortalama Akış Süresi……………………………...…33
Şekil 4.2. Gelişlerarası Süre -Maksimum Akış Süresi……………………………...34
Şekil 4.3. Gelişlerarası Süre -Geciken Parça Sayısı………………...…….………..36
Şekil 4.4. Gelişlerarası Süre -Erken Biten Parça Sayısı……………....…………….37
Şekil 4.5. Gelişlerarası Süre -Toplam Gecikme Süreleri……………....…...…...….39
Şekil 4.6. Gelişlerarası Süre-Toplam Erken Bitme Süresi…………………..……...40
VI
ÇİZELGELER DİZİNİ
Çizelge 4.1. Gelişlerarası Süre – Ortalama Akış Zamanı İlişkisi…………………...32
Çizelge 4.2. Gelişlerarası Süre – Maksimum Akış Zamanı İlişkisi……….....……...34
Çizelge 4.3 Gelişlerarası Süre -Geciken Parça Sayısı İlişkisi…………………....…35
Çizelge 4.4. Gelişlerarası Süre – Erken Biten Parça Sayısı İlişkisi…...……….……37
Çizelge 4.5. Gelişlerarası Süre – Toplam Geç Kalma……………………...……….38
Çizelge 4.6. Gelişlerarası Süre– Toplam Erken Bitme…………….……………..…39
VII
1. GİRİŞ Banu SARIKAYA
1. GİRİŞ
1.1. Problemin Tanımı
İşletmelerin günümüz rekabet ortamında ayakta kalabilmeleri, ürettikleri ürün
ya da hizmeti hem daha kaliteli hem de daha ucuza mal etmeleri ile mümkün
olmaktadır. Üretim faaliyetleri, her geçen gün gelişen üretim teknikleri ve büyüyen
üretim sistemleri nedeniyle karmaşıklaşmış, basit üretim kontrol faaliyetleriyle başa
çıkılmaz bir hale gelmiştir. Eskiden basit yaklaşımlarla iş sahipleri tarafından bile
kontrol edilebilen üretim faaliyetleri; zaman içinde, kullanılan yöntem, araç ve
teknoloji değişikliklerine bağlı olarak karmaşıklaşmış ve ancak üst düzeyde eğitimli
ve gelişen yöntemleri takip eden kişilerce yapılmasını zorunlu kılmıştır.
Üretim planlama ve kontrol faaliyetleri, üretilecek ürünün belirlenmesi,
gerekli donanımın saptanması,ürünlerin istenen sürede, doğru zamanlarda ve istenen
miktarlarda üretimini sağlayacak çizelgeleme ve programlama çalışmalarını kapsar.
Üretim planlama ve kontrol süreci, uzun dönemli planlama, orta dönemli
planlama ve kısa dönemli planlama olarak incelenebilir.
Uzun Dönemli Planlama: Kalite ve fiyat seviyelerinin, pazar payı
hedeflerinin, üretim gruplarının sermaye gerekleri ve yatırımların gerekliliği
açısından olurlu olup olmadığını kontrol eder. Uzun dönemli üretim hedeflerinin
yapılması için gerekli tesis, donanım ve işgücü ihtiyaçlarını belirleyerek, firmanın 2
yıldan 10 yıla kadar amaçlarını ve hedeflerini içeren planlama faaliyetlerini belirler
(Acar, 1984).
Orta Dönemli Planlama: Toplu üretim planlama temel ürün aileleri bazında
18 aya kadar gerekli işgücü ve stok seviyelerinin toplam üretim maliyetlerini
minimize edecek şekilde belirlenmesidir.
Ürün Talep Tahmini: Belli ürünler ve yedek parçalar için talep tahminlerinin
yapılmasını sağlar. Bu tahminler toplu üretim planı ile bütünleştiğinde ana üretim
çizelgesi ortaya çıkar.
Ana Üretim Çizelgesi: Her bir son ürün için üretim miktarlarının ve
tarihlerinin belirlenmesidir. Genellikle 6-8 hafta gibi kısa dönemler için sabitlenir.
1
1. GİRİŞ Banu SARIKAYA
Yaklaşık Kapasite Planlama: Kapasite kısıtlarının olup olmadığını, yeterli
ekipman ve işgücünün mevcudiyetini ve önemli tedarikçilerin yeterli kapasiteye
sahip olup olmadığını kontrol eder (Acar, 1983).
Kısa Dönemli Planlama: Malzeme planlama’da belirlenen son ürün
ihtiyaçlarını planlar ve alt montajlara kadar detaylandırır. Malzeme planı, parçaların
veya alt montajların üretilmesi veya satın alınması için gerekli iş emirlerini
belirleyerek, ürünlerin üretim çizelgelemesine göre üretilmesini sağlar.
Kapasite İhtiyaçları Planlama: Malzeme planında görülen planlanmış ve açık
iş emirlerine kapasite planının geçerliliğinin kontrolüdür.
Girdi/Çıktı Planlama ve Kontrol: Malzeme planında çıkartılan taleplerin ve
kapasite kullanımına ait çeşitli periyodik raporların çıkartılmasıdır.
Üretim Faaliyetleri Kontrolü: Çizelgeleme ve atölye kontrol faaliyetlerini
kapsayan yeni bir kavramdır. Üretim tesislerindeki günlük faaliyetlerin planlanması
ve kontrolüdür. Bu noktada ana üretim çizelgelemesi günlük iş programları
önceliklerine dönüştürülür.
Atölye tipi üretim sistemleri; yapısı itibarıyla üretim kontrolünün ve
çizelgelemesinin yapılması en zor olan üretim sistemleridir. Atölye tipi üretim
sistemlerinde çok sayıda sipariş olması ve her siparişin kendine özgü bir işlem
sırasının bulunması ve işlem sırasına bağımlı hazırlık süreleri çizelgeleme problemini
çok daha zor ve karmaşık hale getirecektir. Bu sebeple her geçen bu konudaki
çalışmalar artmakta ve yeni yaklaşımlar geliştirilmeye çalışılmaktadır (Acar, 1983).
Bu çalışmada, otomotiv sektöründe yer alan bir yan sanayi firmasının üretim
hattı incelenmiş olup istasyonlar üzerinde simülasyon tekniği araç olarak kullanılarak
bir takım analizler yapılmış ve elde edilen sonuçlar irdelenmeye çalışılmıştır.
Özellikle otomotiv sektörünün seçilmesinin nedeni, sektörün müşteri ihtiyaçlarının
sürekli değişmesi, buna uygun olarak teknolojinin hızla gelişmesi ve rekabetin
yoğun olarak yaşanmasıyla birlikte montaj hattının bu sektörde özellikle rastlanan bir
üretim sistemi olmasıdır.
2
1. GİRİŞ Banu SARIKAYA
1.2. Çalışmanın Amacı
Atölye üretim sistemlerinde yukarıda bahsedildiği gibi çok sayıda sipariş
olması ve her siparişin kendine özgü bir işlem sırasının bulunması ve işlem sırasına
bağımlı hazırlık süreleri nedeniyle çizelgeleme problemi çok daha zor ve karmaşık
hale gelmektedir. Bazı statik atölye tipi üretim sistemleri için optimal çözüm bulan
üretim çizelgelemeleri yaratmak mümkün olduğu halde, sistemler çoğunlukla
dinamik bir yapıya sahip olduklarından optimal çözüm yerine optimal sonuca yakın
değerler veren çizelgeleme algoritmaları kullanılması neredeyse zorunlu bir hal
almıştır.
Her sistem için gerçekleştirilmesi istenen performans ölçütü aynı olmayabilir,
yada çizelgeleme kuralları sistem için bazı performans ölçütlerinde çok iyi sonuçlar
verdikleri halde bazılarında kötü sonuçlar verebilirler.
Genel olarak çizelgeleme kurallarının hedefleri:
- Gecikme sürelerinin minimizasyonu,
- Geciken iş sayısının minimizasyonu
- Ara stok düzeyi minimizasyonu
- Akış zamanlarının azaltılması
- Makine kullanım oranlarının ayarlanması
- Hazırlık sürelerinin azaltılması
olarak sıralanabilir.
Bu çalışmada geliştirilen algoritma ile hedeflenen amaç ise şöyledir:
- Siparişlerin gecikme sürelerinin minimizasyonu,
- Makinelerin kullanım kapasitelerinin dengelemesi
3
1. GİRİŞ Banu SARIKAYA
1.3. Çalışmanın Adımları
Çalışma aşağıdaki sırayı izlemektedir
1. Problemin tanımı, amacı, adımları ve varsayımları belirlenmiştir.
2. Detaylı bir şekilde geçmiş çalışmaların araştırması yapılmış ve bu teze olan
katkıları ortaya çıkarılmıştır.
3. Analiz edilecek olan problem için algoritma geliştirilmiştir.
4. Geliştirilen algoritmanın mevcut sisteme göre performansının güçlü ve zayıf
yanları ele alınmıştır.
5. Karşılaştırma yapılacak algoritmalar seçilmiştir.
6. Performans kriterleri ile geliştirilen algoritma ve mevcut sistem karşılaştırılmıştır.
7. Simülasyon deneyinde kullanılacak model tasarlanmıştır.
8. Algoritma için simülasyon modeli çalıştırılarak sonuçlar şekil ve çizelgeler ile
özetlenmiştir.
9. Geliştirilen algoritma ile başka sezgisel algoritmaların karşılaştırılması yapılmıştır.
10. Sonraki çalışmalar için öneriler ve sonuçlar vurgulanmıştır.
1.4. Tezin Organizasyonu
Tez organizasyonunun ilk adımı, problemin tanımı, çalışmanın amacı,
adımları, tezin organizasyonu ve varsayımlardan oluşan giriş bölümü ile
başlamaktadır. Geçmiş yıllarda yapılan çalışmaların incelenmesiyle oluşan literatür
taraması ise ikinci adımı oluşturmaktadır.
Üçüncü bölüm olan materyal ve metotta, sistemin genel özellikleri
belirlenecek, geliştirilen algoritma, performans kriterleri, algoritmayı uygulamak için
araç olarak kullanılan simülasyondan ve SIMAN simülasyon programlama dilinden
bahsedilecektir. Bu sonuçların analiz edilmesi ve açıklanması ile literatürdeki mevcut
çalışmalarla karşılaştırılması bulgular ve tartışma bölümü olan dördüncü bölümü
oluşturmuştur.
4
1. GİRİŞ Banu SARIKAYA
Sonuçların ve ileride konu ile ilgili yapılabilecek çalışmalara ışık tutabilecek
bir takım önerilerin geliştirilmesiyle de son bölüm olan sonuçlar ve öneriler ile
çalışma noktalanmıştır.
1.5. Varsayımlar
Çalışmada sistem ile ilgili olarak aşağıdaki varsayımlar ele alınmıştır;
• İstasyonlarda arıza söz konusu değildir, belirlenen kapasite
doğrultusunda çalışılmaktadır.
• Siparişler tek parti halinde üretilmektedir. Sipariş bölünmesi
yapılamaz.
• Kaynak yetersizliği v.b. dolayısıyla fazla mesai yaptırılamaz.
• Aynı işi yapan istasyonlar aynı kapasiteye sahiptirler.
• İş istasyonları arasında taşıma süreleri ihmal edilmiştir.
• İstasyona gelen sipariş reddedilemez.
• Kalitesizlik v.b. durumlardan dolayı siparişlerin tekrar ele alınması
söz konusu olamaz.
• Hazırlık zamanı iptal edilmiştir.
5
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
2. ÖNCEKİ ÇALIŞMALAR
Anderson, A., Nyirenda, B., (1990), gecikme zamanlarını minimize etmek
için, öncelik kurallarını incelemişler ve simülasyon teknikleri ile test etmişlerdir.
Biri, en kısa işlem zamanı ile kritik oran kurallarının kombinasyonunu diğeri, teslime
kalan zamanın kalan iş zamanı olmak üzere iki dağıtım kuralını dikkate almışlar ve
diğer tekniklerden daha iyi performans verdiklerini gözlemişlerdir.
Stern, D., Avivi, S., (1990), firmalarda siparişlerin kapasitesinin çok üzerinde
olduğu bir sistemi incelemişlerdir. Siparişlerin tesliminde teslim edilmesi şartıyla,
kabul edilecek siparişlerin satış gelirini maksimize edecek şekilde, siparişlerin
bazılarının red edilmesi gerektiğini ve red edilecek siparişlerin tespit edilmesi
konusunda çalışmalar yapmışlardır. Gerçek sistemlerden alınan verilerle,
geliştirdikleri algoritmanın en iyi sonuçtan en kötü durumda %4 sapma yaptığını
ifade etmişlerdir.
Chang, E., Sullivian, C., (1990), siparişlerin sıklık zamanlarının belli
olmadığı, her işlem için alternatif makinaların bulunduğu dinamik atölye tipi bir
işletme için Giffer ve Thampsons’un (1960) buldukları sezgisel metodu
geliştirmişlerdir.
Bu metod, dinamik üretim sistemi için olabilecek tüm çizelgeleme
alternatiflerini üretmekte, yalnız Giffer ve Thampsons’un metodu ile büyük çaplı
işletmelerin çizelgelemelerin hazırlanması çok fazla bilgisayar zmanı almasından
dolayı verimli kullanılamazken, Chang ve Sullivian oluşturulabilecek tüm
çizelgelemelerin sayısını azaltmak için, siparişlerin teslim zamanlarına, makinalara
proses rotasına göre işleri gruplandırmışlardır ve algoritmayı geliştirerek hem büyük
çaplı işletmeler çizelgelenebilmiş hem de çizelgeleme hemen revize edilerek
herhangi beklenmedik olay durumunda da performans kriterlerine uygun çizelgeleme
yapabilmişlerdir.
Stoyenko, S., Georgiadis, E., (1991), gecikme zamanları konusunda yapılan
çalışmaları incelemişler ve EDD, teslim zamanı en küçük olan birinci önceliklidir,
dağıtım kuralının kısıtlı iş sayısı olan ve işlem sürelerinin, teslim zamanlarının,
6
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
işlerin sisteme gelme zamanların bilindiği sistemlerde, gecikme zamanlarının
minimize edilmesi konusunda en iyi sonuçları verdiğini ifade etmişlerdir.
İşlem sürelerinin, işlerin sisteme varma zamanlarının, teslim zamanlarının ve
işlerin sınırsız olduğu bir sistemde, gecikme zamanlarını minimize etme konusunda
EDD kuralını ele almışlardır. EDD kuralının, gecikme zamanlarını işlerin geliş
zamanlarının çok sık olduğu durumlarda dahil minimize ettiğini, sistemde bir işin
akış süresini maksimize ettiğini, sistemde teslimi gecikmiş işin var olduğu süreyi
minimize ettiğini belirtmiştir.
Aynı sistemde EDD ve SPT (En kısa işlem süresine sahip olan işin önceliği)
kuralının kombinasyonu şeklindeki dağıtım kuralını ele almışlardır. Bu kuralın
geciken iş sayısını daha fazla azalttığını, diğer performans kriterlerinde belli fark
olmadığını belirtmişlerdir.
Lio, I., You, G., (1992), m makineli n işli atölye tipi üretim sisteminde
çizelgeleme problemine tamsayı programlama tekniği ile yaklaşmışlardır.
1961 yılındaki Manne modelini kendilerine baz almışlar ve amaç
fonksiyonuna, alt ve üst sınırlar getirerek ve Manne’nin tamsayı olarak tanımladığı
bazı değişkenleri sürekli değişken olarak tanımlayarak bilgisayardan çok daha kısa
sürede sonuçlar alabilmişlerdir. Tüm işlerin tamamlanma süresi ve akış zamanlarını
azaltma kriterlerinde olumlu sonuçlar vermemiştir.
Serafini, I., Sperenza, Z., (1992), tekstil endüstrisinde üretim çizelgeleme
konusunda çalışmalar yapmışlardır. Toplam gecikmeyi minimize etmeyi
hedefledikleri çalışmalarında, tüm tezgahların aynı olduğu, siparişlerin müşteriyle
anlaşılarak teslim edildiği bir sistemi analiz etmişlerdir.
Gecikmeyi minimize etmek için, ne zaman tezgaha tipin girilmesi ve kaç
tezgahta ne kadar miktarda olması gerektiğini belirlemek gerektiğini ifade
etmişlerdir. Doğrusal programlama yaklaşımıyla probleme çözüm getirmişlerdir ve
optimal çözümü bulmanın mümkün olduğunu, fakat bilgisayarda hesaplama
zamanının hala ciddi bir problem olduğunu belirtmişlerdir.
Nakasuka, Y., Yoshida, B., (1992), atölye tipi üretim sistemlerinde
kullanılan dinamik kuralların, gerçek sistem bilgisinden yoksun olarak
hazırlandığını, bu sebeple noksanlıkları olduğunu ifade etmişlerdir.
7
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
Geliştirdikleri sistem, bir yandan gerçek üretim sistemini analiz etmekte ve
SPT (Shortest Proses Time), MST (Minimum Slack Time) ve SRPT (Shortest
Remaining Proses Time) dağıtım kuralı kullanarak çizelgeleme yapmakta ve üç
dağıtım kuralından en iyi sonucu vereni uygulamakta, oluşan kısıtları kaydetmekte
ve ikili karar ağacı sistemi ile çözüm üretmişlerdir.
Sun, D., I.in, L., (1994), her bir işin kendine ait bir işlem rotasının
bulunduğu, her bir makinenin aynı anda bir iş yapabildiği, bir işlem yapılırken, işlem
bitene kadar kesinlikle durdurulmadığı ve her bir işlemin ne kadar süreceği kesin
olarak önceden bilindiği varsayılarak n işin m makinenin bulunduğu dinamik yapıya
sahip atölye tipi üretim sistemlerinde çizelgeleme problemine, MRP ve JIT
sistemlerinde kullanılan geri çizelgeleme yöntemini kullanarak çalışmalar
yapmışlardır.
Birçok statik geri çizelgeleme problemi çözülerek, sistemin bütününün
çizelgelemesini yapmışlardır. Ovacık ve Uzsoy’un yaptığı çalışmalarda, bir
makinenin önünde bekleyen işler kümesi, kesin olarak bilinmemekte iken bu
algoritmada bilinebilmekte ve ilk işlemine başlanılacak sipariş belirlenebilmekte ve
yeni bir işin teslimini hesaplamak mümkün olmaktadır.
Algoritma, bu yönüyle, diğer yaklaşımlara göre üstünlük taşımaktadır.
Yalnız, teslim zamanlarının hesaplanmasında, akış zamanlarının minimize edilmesi
ve işlerin zamanında bitirilmesi konularında daha iyi sonuçlar alınması için daha
fazla çalışmalar yapılması gerektiğini ifade etmişlerdir.
Ovacık, M., Uzsoy, R., (1994), hazırlık zamanlarının sürelerinin işlem
sırasına bağlı olduğu, tek makineli bir üretim sisteminde hazırlık zamanlarını
minimize etmek için geliştirdikleri sezgisel algoritmayı simülasyon modelleri
oluşturarak test etmişlerdir.
Bu sezgisel algoritmayı tek makine için test edip, dal-sınır tekniği ile bir çok
alt problemi çözerek çok karmaşık atölye tipi üretim sistemlerini
çizelgelemektedirler.
Geliştirilen algoritma, dinamik sistemler için geliştirilmiş olup,
çizelgelemenin yapılabilmesi için sistemin, her an için sistemde hangi işlerin
8
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
beklediği, o an için işlem görüp görmediği, yapılmamış işlemler, teslim zamanı ve
makinalardaki hazırlık zamanları ve duruş zamanlarının bilinmesi gerekmektedir.
Atölye tipi üretim sistemlerinde kullanılan dağıtım kurallarından en büyük
farkı, sistemin bir kısmını dikkate almaktansa, tüm sistemi bütün olarak dikkate
alarak çizelgeleme yapılabilmesidir. Algoritmanın test edildiği üretim sisteminde,
sipariş sayısı sınırsız, teslim zamanları, işlem süreleri ve işlerin sisteme gireceği
zaman bilinmektedir.
Algoritma, her bir makine için t zamanı içinde gerçekleştireceği iş kümesini
belirliyor ve bu kümeden en erken teslim zamanına sahip k kadar iş seçiliyor. Bu k
kadar iş dal-sınır metodu ile optimal olarak sıralanmaktadır. Çizelgelemesi yapılan
bu k kadar işin içinden de x kadar iş çizelgeleniyor ve makineye ataması yapılıyor.
Zaman t, çizelgelemesi yapılan işlerin en sonuncusunun bitme süresine
eşitlenmektedir. Kalan işler için tekrar aynı işlemler uygulanıyor ve bu tür sistemin
çizelgelemesi yapılıyor.
Algoritma 1000 ayrı sistemde, 72 parametre kombinasyonu için test
edilmiştir. Yapılan simülasyon çalışmalarında, en iyi performans veren değerleri
belirlendikten sonra, EDD ve EDD-LI dağıtım kuralından sırasıyla %152, %132
daha iyi sonuçlar verdiği görülmüştür.
Stankovic, R., Ramamritham, W., (1994), sistemlerin doğru işletilmesi,
elde edilen sonuçların makul olması yanında, bu sonuçların ne zaman elde
edildiğinin de önemli olduğunu söyleyerek, çizelgeleme problemlerinde sistemi
dinamik olarak ele alan yaklaşımların başarılı olacağını ifade etmişlerdir.
Bilaut, C., Roubellat, Z., (1995), her siparişi bir teslim zamanı ve en erken
başlama zamanının olduğu, işlerin çok işlevli makinalarda aynı anda yapıldığı bir
dinamik üretim sistemi için bir karar-destek modeli tasarlamışlardır. Her kaynak için,
işlemlerin öncelik sıraları dikkate alınarak, yapılabilecek işlemlerin grupları
oluşturulmuş ve hem gruplar hem de grup içindeki işlemler sıralanarak alternatif
çizelgeler oluşturmuşlardır.
Ovacık, M., Uzsoy, R., (1995), hazırlık zamanlarının sürelerinin işlem
sırasına bağlı olduğu, tek makineli bir üretim sisteminde hazırlık zamanlarını
9
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
minimize etmek için geliştirdikleri sezgisel algoritmayı, paralel aynı makineler için
simülasyon modelleri oluşturarak test etmişlerdir.
Birçok bilgisayar hesaplamaları yaparak, diğer dağıtım ile kıyaslamışlar ve
hem ortalamada hem de en kötü değerlerde geliştirilen algoritmanın, belirlenen
performans kriterlerine göre daha iyi sonuç verdiğini gözlemlemişlerdir.
Geliştirilen algoritmanın, gelen siparişlerin makine kapasitesinden fazla
olduğu sistemlerde, çok daha etkili olduğunu ifade etmişlerdir.
Kaschel, A., Teich, C., Kobernik, S., Meier, M., (1995), ise çizelgeleme
konusundaki farklı metodların karşılaştırmasını yapmışlardır. Herbir kural iki farklı
yolla test edilmiştir. İlk olarak sonradan aktif hale çevrilecek yarı-aktif çizelgeleme
için test yapılmıştır.
İkinci olarak ise, kural tek adımda aktif çizelge yapmak için
gerçekleştirilmiştir. İkinci adımda öncelik kurallarının basit kombinasyonları test
edilmiştir.
Kopfer, F., Bierwirth, G., Mattfeld, R., Rixen, E., (1995), dinamik üretim
çizelgelemede genetik algoritmalardan faydalanmışlardır.
Dinamik model üç başlıktan oluşmaktadır;
1. Üretim Sistemi: m adet makine olduğu düşünülmüştür ve bununla beraber
sistemin ideal olduğu hiçbir makine bozulmasının gerçekleşmediği varsayılmıştır.
Sadece makine ilk olarak kullanılacağında hazırlık zamanı söz konusu olabilir, bunun
dışında diğer operasyonlar için hazırlık zamanları göz önünde bulundurulmamıştır.
2. Üretim Programı: n adet iş vardır. (Ji.....Jn) Herbir iş belli bir sırada
planlanmıştır.
3. Performans ölçümü: Makespan değeri ve ortalama akış süresi hesaplanır.
Duenyas, E., Van, C., Oyen, S., (1996), tek servisli paralel heterojen
kuyrukların olduğu bir sistemde ortalama bekleme maliyetini düşürmeyi
hedeflemişlerdir. Öncelikle iki kuyruklu bir sistemde, bir işin diğer kuyruğa
geçmesinin en doğru zamanı belirlemek için sezgisel bir algoritma geliştirmişler ve
bu kuralı birçok kuyruklu sistemde simülasyon tekniği ile test etmişler, geliştirdikleri
sezgisel yöntemin birçok problemde etkili olduğunu ifade etmişlerdir.
10
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
Garrido, A., Salido, A., Barber, T., López, W., (1996), üretim çizelgeleme
problemini şu şekilde ele almışlardır; J işlemler kümesinde J1’den Jn’e kadar
işlemler vardır. R ise mevcut kaynaklar kümesi olarak belirtilmiştir ve herbir Ji işi Qi
operasyonlarından oluşmaktadır. Qi operasyonları teslim zamanlarına ve mevcut
kaynaklara göre belirlenmektedir. Başlangıç zamanı Sti olarak kabul edilmiştir.
Bu çerçevede üretim çizelgeleme problemine, iki aşamada kısıtların yeterli
düzeye getirilmesi olarak çözüm sağlanmaktadır. İlk aşamada; öncelikli kısıtlar
belirlenir. Mevcut üretim ile ilgili olarak ağaç diyagramı oluşturulur ve bundan
faydalanılır. İkinci aşamada ise kapasite kısıtları tespit edilir. R kümesindeki her bir
kaynak yalnızca bir operasyonda kullanılmaktadır. Ayrıca olurluluk ve çizelgenin
etkinliği olmak üzere üretim çizelgelemede iki ana unsur olduğunu vurgulamışlardır.
Jensen, M., Hansen, T., (1997), üretim çizelgeleme problemlerine robust
çözümler sunan bir teknik üzerinde çalışmalarını gerçekleştirmişlerdir. Bu çalışmaya
göre makespan değeri bir performans ölçütü olarak düşünülmüştür. Çizelgenin
makespan değeri prosesin başlama zamanından en son bitiş zamanına göre
tanımlanmıştır. Ayrıca α ve β olmak üzere J(α,β) şeklinde iki binary değişken
tanımlanmıştır. Eğer çizelgede α, β’dan önce ise J(α,β) 1 değerini, aksi halde 0
değerini alır.
Bistline, V., Banerjee, S., (1997), çizelgeleme problemlerinin çözümünde
interaktif karar destek sistemi geliştirmişlerdir.
Geliştirilen bu sistemin adımları şu şekildedir;
1. Karar vermede önemli olan parametrelerin tanımlanması ve bu
parametrelerin ölçülmesi
2. Çizelgeleme parametrelerinin belirlenmesi
3. Bir kontrol parametresinin zaman niteleyici olarak spesifik hale
getirilmesi
4. Mevcut sistemin darboğaz oluşturan durumlardan kurtulması için daha iyi
bir sistem geliştirilmesi
5. Her bir makinadaki operasyonların gruplandırılması için objektif bir
parametrenin tanımlanması
6. Gerçekleştirilecek prosedürün tanımlanması
11
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
Luh, H., Zhao, L., Thakur, R., (1998), ise yaptıkları çalışmada h adet
makine türü ile I adet çizelgelenecek işlem olduğunu ve işlemlerin k zaman zarfında
yapılması gerektiğini belirtmişlerdir. Her bir işlemin teslim tarihi Di’dir ve önceliği
Wi’dir. İşlemlerin tamamlanması için sıra ile Ji operasyonlarının uygulanması
gerekir.
Bir makinada yapılacak proses ancak bir önceki operasyonun
tamamlanmasıyla gerçekleşebilir, operasyonun yarıda bırakılması söz konusu
değildir. Bununla beraber operasyonların sayısı k zamanında h çeşit makine
sayısından daha az yada eşit olmalıdır. Çizelgeleme probleminin çözümünde Lagranj
çarpanından (LRNN) yararlanılmıştır.
Thom, T., Lou, L., Ngin, G., (1998), EDD, SPT ve WINQ kurallarını göz
önünde bulundurarak çalışmalarında MQD (minimum kuyrukta bekleme süresi)
algoritmasını geliştirmişlerdir. MQD algoritmasının mevcut platform üzerinde
simülasyonu gerçekleştirilmiş ve sonuçlar dal-sınır algoritmasını kullanarak ideal
durum ile karşılaştırılmıştır.
Yapılan deneyler sonucu ideal durum ile MQD algoritmasının verdiği
sonuçlar arasındaki maximum fark kabul edilebilir ölçüde küçük çıkmıştır ve bu da
MQD algoritmasının kabul edilebilirliğini göstermektedir.
MQD algoritmasındaki varsayımları şu şekilde sıralamak mümkündür;
1. Her bir makine belli bir zamanda yalnızca bir işi yapabilir.
2. Bir iş, başka bir proses işleme alınmadan önce tamamlanmalıdır.
Kesintiler söz konusu olamaz.
3. Makine sayısı haricinde bir kısıt yoktur.
4. Makinaların bozulmadığı varsayılmıştır.
5. Paralel olarak çalışan makine yoktur.
Dirk, C., Mattfeld, F., Christian, B., (1999), çalışmalarında makespan
değerinin minimizasyonunu çizelgenin performansını ölçmek için yeterli
görmemişlerdir. Çünkü makespan değeri en son teslim tarihine sahip ürüne bağlıdır.
Çizelgelemede bunun yerine akış zamanına bağlı başka bir kriter kullanılabilir.
Özellikle orta seviyedeki proseslerin devamı için stoktan kaynaklanan elde
bulundurma maliyeti konusunda yarar sağlar.
12
2. ÖNCEKİ ÇALIŞMALAR Banu SARIKAYA
Bu konuda ayrıca, müşteri servisini geliştirmek yada teslim tarihinin
gecikmesini önlemek için bir takım kriterler de geliştirilmiştir. Standart atölye tipi
üretimde n adet işin uygulanacağı m adet makine vardır.
Operasyon proses zamanları sabittir ve bilinmektedir. İşler önceden belirlenen
sırada gerçekleşir. Her iş her makinadan belli sayıda geçerek toplam n*m adet
operasyon gerçekleştirilir. Tüm işlerin mevcut olan makinaların hepsinden geçmesi
şart değilken, herhangi bir makineden birden fazla sayıda işlem gerçekleştirilebilir.
Holthaus, H., (1999), ise çalışmasında teslim tarihini objektif olarak ele alıp
işlemlerin çizelgelemesini buna göre gerçekleştirmiştir. Yapılan araştırmada Baker
(1974), Haupt (1989) ve Ramasesh (1990)’in çalışmaları baz alınmıştır.
Her operasyon başladığında kesintisiz olarak devam ettirilip
tamamlanmalıdır. Gerekli hazırlık zamanları proses zamanlarına eklenir ve taşıma
zamanları göz önüne alınmaz. Proses zamanları stokastiktir. Makine boşalınca hangi
işin makinaya yükleneceği genelde bir öncelik zamanına göre yapılır.
13
3. MATERYAL VE METOD Banu SARIKAYA
3. MATERYAL VE METOD
3.1. Materyal
Çalışmanın bu bölümünde otomotiv yan sanayi olarak çalışan bir işletmede
üretilen ana mamullerin verimli olarak üretilmesi için gerekli üretim çizelgeleme
çalışmaları yer almaktadır. İstasyonlarda; delik delme, levye montajı, zımpara, küre
çakma, kapak takma, markalama ve yüzey temizleme ve ambalajlama işlemleri
gerçekleşmektedir. Her istasyonda ise bu işlemleri gerçekleştiren paralel makineler
yer almaktadır.
Otomotiv sektörüne parça imalatına yönelik üretim yapan bu işletmede
özellikle dört ana ürün üretilmektedir. Firmadaki son iki yılın satış bilgileri bilgileri
baz alındığı takdirde A, B, C ve D simgeleriyle ifade edilen bu ürünlerin toplam
siparişlerine göre ürün karışım oranları; A için %28, B için %26, C için %20, D için
ise %26 olarak sıralamak mümkündür.
İşletme politikası gereğince termin süresinin verilmesi ise yapılan son beş
işlemin ortalamalarının alınmasıyla belirlenmektedir. Böylece termin süresinin
belirlenmesinin dinamik bir yapıya sahip olduğunu vurgulamak da mümkündür.
14
3. MATERYAL VE METOD Banu SARIKAYA
A ürünü için iş akışı Şekil 3.1.’de açıklanmaktadır.
Şekil 3.1. A ürünü iş akış şeması
Şekil 3.1.’de de görüldüğü üzere A ürününün üretiminde gerçekleşen işlemler
sırasıyla; Delik delme-Levye Montajı- Zımpara- Delik delme- Zımpara-Levye
montajı-Delik delme- Ambalajlama şeklindedir.
15
3. MATERYAL VE METOD Banu SARIKAYA
B ürünü için ise iş akışı Şekil 3.2.’de açıklanmaktadır.
Şekil 3.2. B ürünü iş akış şeması
Şekil 3.2.’de de görüldüğü üzere B ürününün üretiminde gerçekleşen işlemler
sırasıyla; Levye Montajı- Delik delme- Levye montajı- Ambalajlama şeklindedir.
Üçüncü ürün olan C ürünü için iş akışı Şekil 3.3.’de belirtilmiştir.
16
3. MATERYAL VE METOD Banu SARIKAYA
Şekil 3.3. C ürünü iş akış şeması
Şekil 3.3.’de ifade edilen C ürününün imalatında gerçekleşen işlemler
sırasıyla; Delik delme- Zımpara- Levye montajı-Delik delme- Ambalajlama
şeklindedir.
D ürünü iş akışı Şekil 3.4.’de yer almaktadır.
Şekil 3.4. D ürünü iş akış şeması
17
3. MATERYAL VE METOD Banu SARIKAYA
Şekil 3.4.’de yera alan D ürününün üretiminde gerçekleşen işlemler sırasıyla;
Zımpara- Delik delme- Zımpara- Levye Montajı- Zımpara-Levye montajı
Ambalajlama şeklindedir.
Ürünlerini, ana otomotiv sanayi kuruluşlarına mamul olarak ve iç/dış piyasa
ihtiyacı için yedek parça olarak üreten işletmede artan otomotiv sanayi üretimi ve
yüksek piyasa yedek parça talebi nedeniyle kapasite yetersizliği ve terminlerin
zamanında karşılanamama sorunu ortaya çıkmaktadır. Bu nedenle üretim
kapasitesinin arttırılması açısından üretim çizelgeleme çalışmalarının önemli katkısı
olacağı öngörülmektedir.
İşlem benzerlikleri ve ortak işlemlerin bulunması nedeniyle hattın değişik
mamuller için hazırlanması kolay ve hazırlık maliyeti düşük olacaktır. Böylece aynı
hat üzerinde ürünlerin partiler halinde üretilmesi sonucu sabit maliyetler de
düşecektir. Üretim çizelgeleme gerçekleştirerek, istasyon sayısı arttırılarak metot
etüdü çalışmaları yapılarak veya bunlar gibi üretim hızını arttırıcı çalışmalarla
kapasite yeterli hale getirilebilecektir. Ancak gerekli olan üretimin durmaması
açısından ana sanayi kuruluşlarının talebinin zamanında karşılanması ve piyasa
talebinin temrini içinde üretilip satılabilmesi, müşteri kaybı ve pazar payının
düşmesinin önlenmesi açısından çok önemlidir.
Mevcut terminlerin zamanında karşılanabilmesi için bu durumda mamul
üretim ve sevkıyat periyotlarının daralması gerekecektir. Bu da değişik mamul
partilerinin hatta daha sık girmesi ve üretilecek belli mamul partilerinin miktarlarının
azalması durumunu ortaya koymaktadır. Değişik partilerin hatta daha sık olarak
girmesi hazırlık çalışması maliyetlerini arttırmaktadır. İncelenen mamullerin
üretildiği işletmede imalatı, diğer yan sanayilerde fason olarak üretilen parçaların
temini, kalite kontrolü, hatta alınması ve bu parçaların hat üzerinde montajı, kontrolü
ve ambalajlanması şeklinde gerçekleştirilmektedir. Üretim programı günlük
teslimatlarda ve bunu belirleyen siparişlere göre oluşturulmaktadır. Bu nedenle hatta
meydana gelecek arıza ve aksamlar temrin programını önemli ölçüde
aksatmaktadırlar. Üretilen mamullerin bir kısmı ana sanayi kuruluşlarında montaj
hattına alınmakta, kalanı ise iç ve(ya) dış piyasaya yedek parça olarak sunulmaktadır.
18
3. MATERYAL VE METOD Banu SARIKAYA
3.1.1. Mevcut Sistem Performans Ölçütleri
Mevcut sistemin incelenmesinin ardından belirlenen bir takım performans
ölçütleri ile çalışma irdelenmiştir. Materyal olarak kullanılan bu kriterlerin ilişkisi şu
şekilde sıralanmaktadır;
• Siparişlerin Gelişler Arası Süresi & Ortalama Akış Süresi
• Siparişlerin Gelişler Arası Süresi & Maksimum Akış Süresi
• Siparişlerin Gelişler Arası Süresi & Geciken Parça Sayısı
• Siparişlerin Gelişler Arası Süresi & Erken Biten Parça Sayısı
• Siparişlerin Gelişler Arası Süresi & Toplam Geç Kalma Süresi
• Siparişlerin Gelişler Arası Süresi &Toplam Erken Bitme Süresi
• Teslim Süresi-Ortalama Akış Süresi
• Teslim Süresi-Maksimum Akış Süresi
Yukarıda belirtilen performans kriterleri çerçevesinde elde edilen sonuçlar
yorumlanarak, karşılaştırılan algoritmalar ile geliştirilen algoritma arasında bir
kıyaslama yapılması mümkündür. Elde edilen sonuçların grafiklere aktarılması ile de
sipariş geliş hızları için belirtilen aralıklar arasında meydana gelen dalgalanmalar
gözlemlenebilecektir.
Böylece grafikteki her zaman aralığı için geliştirilen ve karşılaştırılan
algoritmaların performansları analiz edilebilecektir.
19
3. MATERYAL VE METOD Banu SARIKAYA
3.2. Metod
3.2.1. Mevcut Sistemin Analizi
Analizi yapılacak olan hat k iş istasyonu bulunan, iş rotası belli n kadar işin
geldiği ve di teslim zamanına sahip bir üretim hattıdır. Hattın özellikleri ile göz
önüne alınacak varsayımlar ise şu şekilde özetlenmektedir;
• İstasyonlarda arıza söz konusu değildir, belirlenen kapasite
doğrultusunda çalışmaktadır.
• Siparişler tek parti halinde üretilmektedir. Sipariş bölünmesi
yapılamaz.
• Kaynak yetersizliği v.b. dolayısıyla fazla mesai yaptırılamaz.
• Darboğaz oluşturan makineler haricinde başka bir arıza söz konusu
değildir.
• Aynı işi yapan istasyonlar aynı kapasiteye sahiptirler.
• İş istasyonları arasında taşıma süreleri ihmal edilmiştir.
• İstasyona gelen sipariş reddedilemez.
• Kalitesizlik v.b. durumlardan dolayı siparişlerin tekrar ele alınması
söz konusu olamaz.
• Hazırlık zamanı iptal edilmiştir.
20
3. MATERYAL VE METOD Banu SARIKAYA
3.2.2. Geliştirilen Algoritmanın Notasyonu
Geliştirilen algoritmada istasyonların ortalama iş yükleri ortalama kuyrukta
bekleme süreleri siparişlerin geriye kalan aylak zamanları gibi birtakım bilgiler
gerekmektedir. Dolayısıyla böyle bir algoritma için öncelikle iyi bir veritabanına
ihtiyaç vardır.
Problem formülasyonu için kullanılan notasyon aşağıdaki şekildedir;
i :sipariş numarası i=1,2,3,……n
k :istasyon numarası k=1,2,3,…..s
di :i siparişinin teslim tarihi
z :Üretime başlanan tarih
qi :i siparişinin miktarı (adet)
Si :i siparişinin aylak zamanı (dakika)
Wk(ort) :k istasyonunun ortalama kuyrukta bekleme süresi (dakika)
Pk :k istasyonunun kuyruk uzunluğu (adet)
Pk(ort) :k istasyonunun ortalama kuyruk uzunluğu (adet)
Pi(k→n) :i siparişinin k istasyonundan sonra uğrayacağı bir sonraki
istasyondaki kuyruk uzunluğu
tik :i siparişinin k istasyonundaki birim işlem süresi (adet/dakika)
ti(k→li) :i siparişinin k istasyonundan sonra uğrayacağı istasyondaki birim
işlem süresi (adet/dakika)
Kk :k istasyonunda bekleyen gecikmeli parçaların kümesi
Mk :k istasyonunda makinelerin yapmakta oldukları işleri bitirme
zamanlarının kümesi
Ykm :Atama yapılacak olan k istasyonundaki m makinesi
li : i siparişinin son istasyonu
21
3. MATERYAL VE METOD Banu SARIKAYA
3.2.3. Algoritma Öncelikleri
Asıl amacı gecikme sürelerinin minimizasyonu olarak saptanan bu
algoritmanın önceliklerini şu şekilde açıklamak mümkündür;
1. Öncelik: Kuyrukta beklerken oluşmuş beklemeli parçalar
İş istasyonundaki bir işlem tamamlandığında ve yerine hangi parça
alınacağına karar verilirken işlem görmek için bekleyen parçaların önce aylak
zamanları hesaplanır. En küçük değere sahip olan sipariş işlenmek üzere seçilir. Bu
önceliğe göre;
Si = di-z-( ti(k→li).qi) hesaplanır, sonra;
Si < 0 değilse üçüncü önceliğe geçilir
Si < 0 ise min(Si) є Kk değerine sahip olan parça boş istasyona atanır
Şekil 3.5. Kuyruktaki bekleyen parçaları dengeleme
22
3. MATERYAL VE METOD Banu SARIKAYA
2.Öncelik: İstasyondaki İş yükünü dengeleme:
Gecikebilecek parça olmadığı zaman istasyonlardaki iş yükünü dengelemeye
yönelik öncelik ilk olarak göz önüne alınan husus olur. Bu gerekçe ile; her bir iş
istasyonunun kuyruktaki parça sayıları hesaplanır.
Eğer bu değer ortalama kuyrukta bekleyen parça sayısından çok ise istasyon
yoğun olarak çalışmaktadır ve bu yoğunluğu minimize etmek için de kuyrukta
bekleyen ve işlem süresi minimum olan parça işlem görmek üzere boş istasyona
atanır.
Bu önceliğe göre;
Pk > Pk(ort) min(tik) değerine sahip olan parça boş istasyona atanır.
Pk < Pk(ort) 3. önceliğe geçilir.
Şekil 3.6. Bekleyen parçaların minimizasyonu
23
3. MATERYAL VE METOD Banu SARIKAYA
3. Öncelik: Toplam iş yükünü dengeleme
Gecikmesi söz konusu olan bir parça olmadığı durumlarda ve istasyon
önünde bekleyen parça sayısı ortalama sayının altında olduğu zamanlarda daha
sonraki istasyonların kuyrukta bekleyen parçalarını minimize etmek gerekir. Bu
gerekçe ile kuyruktaki parçaların bir sonraki istasyondaki işlem süreleri hesaplanır ve
minimum süreye sahip olan boş istasyona atanır.
Bu önceliğe göre;
min(ti(k→n)) değerine sahip olan sipariş boş istasyona atanır.
Şekil 3.7. Toplam iş yükünü dengeleme
24
3. MATERYAL VE METOD Banu SARIKAYA
3.2.4. Geliştirilen Algoritmanın Akış Diyagramı
Şekil 3.8. Geliştirilen Algoritmanın Akış Diyagramı
25
3. MATERYAL VE METOD Banu SARIKAYA
3.2.5. Algoritmanın Hedefleri
Rekabetçi piyasada yer alan tüm işletmeler değişen koşullar ile amaçlarında
da değişim göstermektedir. Öğrenen bir organizasyon olmak işletmelerin esas hedefi
olmakla birlikte müşteri odaklı üretim yapmak da kaçınılmaz olmuştur. Temel
amacın müşteri memnuniyeti olması doğrultusunda aşağıdaki hedefler saptanmıştır;
• Siparişlerin toplam gecikmesinin minimizasyonu
• İstasyonun iş yükü dengelemesi
3.2.6. Üretim Çizelgelemesinde Simülasyon Tekniği
Literatürde üretim çizelgeleme problemleri için geliştirilen bir çok yöntem
bulunmaktadır. Verimlilik ölçütünü optimize edecek şekilde bir ürünün üretimi için
gerekli işlemlerin hattaki iş istasyonlarına atanması olan üretim çizelgeleme
problemini, bir sistem olarak ele alıp performansının incelenmesi bileşenlerin
etkileşimi sonucuna bağlıdır. Sistemin performans değerlendirilmesi iki adımdan
oluşur; birinci adımda matematiksel model kurulur, ikinci adımda model çözülerek
sonuç irdelenir. Bu tür sistemlerin kompleks olması nedeniyle simülasyon tekniği,
denemeler yapmak ve alternatif sonuçlara ulaşarak yorumlamak için uygun bir
yöntemdir. Simülasyon mevcut sistemlerde yapılabilecek değişikliklerin,
düzenlemelerin etkilerini önceden görebilmek için bir analiz aracı ve alternatif
sistemlerin performansını tahmin etmek için de bir tasarım aracı olarak da
kullanılabilir. Yaygın bir teknik olan simülasyon; gerçek bir sistemin veya bir
prosesin çalışma zamanı boyunca işleyişinin taklit edilmesidir. Geliştirilen benzetim
modeli ile sistemin davranışları yapay olarak bilgisayarda denenir. Bu model genelde
sistem işleyişi ile ilgili kabullerden oluşur. Kabuller, sistemin matematiksel,
mantıksal ve ilgilenilen objeler arasındaki sembolik ilişkiler olarak ifade edilebilir.
Simülasyon;
1. Karmaşık sistemlerin içindeki alt sistemlerle veya sistemin
bütünüyle karşılıklı etkileşimlerin deneysel olarak çalışmasına
imkan verir.
26
3. MATERYAL VE METOD Banu SARIKAYA
2. Sistemin yapısı ve çevre şartları değişiklikleri taklit edilebilir ve
bunların model üzerindeki etkileri gözlenebilir.
3. Analitik çözüm metotlarını kuvvetlendirmek için kullanılır.
Bütün bu amaçlarla her türlü hizmet ve üretim sektöründe ayrıca akademik
çalışmalarda simülasyon tekniği yaygın olarak kullanılmaktadır (Dengiz, 1998).
3.2.7. Simülasyon Dilleri ve SIMAN
Tanımlanan problemi analiz etmek üzere SIMAN simülasyon dili araç olarak
kullanılacaktır. SIMAN da diğer özel amaçlı simülasyon dilleri gibi belli alanlarda
uzmanlaşmış ve kendilerine özgü komut setleri içermektedir. Bu dillerin kullanım
avantajları genel olarak şunlardır;
a) Simülasyon dilleri ile programlama zamanı azaltılabilir.
b) Simülasyon diliyle kodlanan bir modelin daha sonra değiştirilmesi
kolaydır.
c) Simülasyon dilleri ile kodlanmış modelde hata düzeltme imkanı
daha kolaydır.
SIMAN, SIMSCRIPT, SLAM II en çok kullanılan simülasyon dillerinden
olup bu tezde SIMAN IV kullanılmıştır. SIMAN, kesikli, sürekli ve/veya bunların
her ikisinin de bulunduğu sistemlerin modellenmesinde kullanılan genel amaçlı bir
simülasyon dilidir. SIMAN’ın bazı özellikleri aşağıda sıralanmıştır:
1. Üretim sisteminin modellenmesinin basitleştirilmesi ve geliştirilmesi için
oluşturulmuş özel amaçlı yapı setidir.
2. Model kurmak, deney tanımlamak ve çıktıları görmek için etkileşimli
grafik yeteneği vardır.
3. Simülasyon işletiminin kontrolü ve etkileşimli gözlemlenmesini
sağlayacak bir “Run Controller”dir.
4. Cinema; modellenen sistemin gerçek zamanlı, yüksek yoğunluklu, renkli
animasyonunu sağlar.
5. Diğer analiz teknikleriyle bütünleşmeyi sağlayacak modüler bir yapıya
sahiptir.
27
3. MATERYAL VE METOD Banu SARIKAYA
3.2.7.1. Simülasyon Aşamaları
Gerçek sistemlerin davranışlarını araştırmak için kullanılan simülasyon
çalışmalarının aşamaları aşağıda verilmektedir.
a) Sistemin İncelenmesi: Sistemin sınırlarını, kısıtlarını ve performans
ölçütlerini belirleme aşamasıdır. Bu aşamada sistem davranışları gözlenerek sistemin
işleyişi hakkında bilgi toplanır. Bu incelemede sistemin alt sistemleri belirlenerek alt
sistemler arasındaki etkileşim de saptanır. Sistemin iç işleyişi ile beraber sistemin
çevresi ve çevresi ile olan ilişkileri de belirlenir. İnceleme sırasında sistemin
işleyişine ilişkin olarak belirlenen problemler ve problemlerin giderilmesi için
çözümler geliştirilir. Problemlerin saptanması ve amaçların belirlenmesi sistemin
işleyişine ait bilgi ve verilerin toplanmasını, derlenmesini ve yorumlanmasını
gerektirir.
b) Modeli Formüle Etme: Sistemi mantıksal bir iş akışı diyagramına aktarma
işlemidir. Bir benzetim deneyinin planlanmasıyla ilgili çalışmaya başlamadan önce
araştırmanın amaçlarının açıkça tanımlanması gerekmektedir. Problemin önceki
durumları, problemin son uyarlamasından oldukça farklı olabilmektedir.
Çünkü, formülasyonu genellikle devamlılık ve yeniden düzenleme gerektiren
ardışık bir işlemdir. Simülasyon üzerinde çalışmaya iki önemli kararı verdikten sonra
başlanabilir. İlk olarak, araştırmanın amaçları üzerinde, ikinci olarak da deney
tarafından ulaşılan sonuçların doğruluk derecelerini değerlendirmek için bir ölçü
üzerinde karar verilir. Belirlenen problemler ve bunların giderilmesine yönelik
amaçların gerçekleştirilmesini sağlayacak bir model formüle edildikten sonra,
formüle edilen modelin genel amaçlı bir programlama dilinde veya özel amaçlı bir
benzetim dilinde bilgisayar programı yazılır.
c) Veri Analizi: Modelin gerektirdiği verileri tanımlama, toplama ve onları
kullanabilecek ölçülere indirgeme aşamasıdır. Sağlıklı veri derlemek benzetim
modelinden sonuç elde etmenin temelini oluşturmaktadır. Simülasyon, gerçeğin
temsili olduğuna göre, gerçeğin işleyişi yeterli ve doğru bilgi olmadan gösterilemez.
Veri toplama ve kaydetme işlemleri bir arada yapılmaktadır.
28
3. MATERYAL VE METOD Banu SARIKAYA
Toplanan verilerin ve kayıtların doğruluğunun kontrol edilmesi
gerekmektedir. Çünkü bu işlemler pahalıdır ve doğrulama, kodlama düzenleme,
hesapların kontrolünde oluşan taslaklar zaman almaktadır. Bir simülasyon modelinde
parametre tahmini ve modelin başlangıç değerlerinin belirlenmesi, toplanan verilerle
yapılır. Ayrıca geliştirilen modelin gerçeğe uygunluğu, gerçek verilerle
değerlendirilebilir.
d) Modelin Hazırlanması ve Kodlanması: Bilgisayar ortamında denenecek
simülasyon modelinin hazırlanması şu aşamalardan oluşur;
1.Akış şemalarının çizilmesi
2.Kodlama; Genel amaçlı derleyici veya özel amaçlı benzetim dilleri kullanarak
model kodlanır.
3.Hataların ayrılması
4.Verilerin kullanılması ve başlangıç koşullarının belirlenmesi
5.Verilerin üretilmesi
6.Çıktı raporlarının üretilmesi
Akış şemasının hazırlanmasından sonra özel amaçlı bir simülasyon dilinin
kullanılması, bilgisayar zamanından kazanç sağlar. Modelin kodlanmasında hata
olasılığı azalır. Bu tezde SIMAN simülasyon dili kullanılmıştır.
e) Modelin Geçerliliğini Araştırma: Modelin tüm proseslerinin ve her bir
prosesin davranışının gerçek sistemle ve davranışıyla karşılaştırılmasıdır. Model
geçerli ise, gerçek sistem için doğru bir benzetim olduğu söylenebilir. Modelde
düzeltmeler yapılarak, düzeltilmiş model gerçek sistem ile karşılaştırılır. Ardından
gerektiği takdirde modelde ilave düzeltmeler yapılarak yeniden karşılaştırılır.
İşlemlerin bu şekilde devam etmesinin sonucunda, gerçek sistemle modelden elde
edilen ortalamalar arasındaki fark istatistiksel olarak anlamlı ise, modelin gerçek
sistemi temsil eden uygun bir model olduğu kabul edilebilir.
f) Deney Tasarımı: İstenilen bilgiyi sağlayacak olan denemelerin tasarımıdır.
Burada, farklı şartlar altında benzetim modelinin denenmesine karar verilebilir. Etkin
bir çözüm için gerekli deneme sayısı belirlenir.
g) Deneme İşlemi: Belirlenen deney tasarımı gereğince modelin denemeleri
bilgisayarda yapılır.
29
3. MATERYAL VE METOD Banu SARIKAYA
h) Çıktı Analizi: Simülasyon modelinden elde edilen çıktılara istatistiksel
analiz uygulanarak performans ölçütleri tahmin edilebilir.
i) Sonuçların Raporlanması: Modelin sonuçları için rapor düzenleme ve
uygulamaya hazırlama aşamasıdır.
Belirtilen aşamalar arasında beşinci aşama olan modelin geçerliliğinin
araştırılmasından sonra model reddedilir ise tekrar modelin formüle edilmesi
aşamasına dönülür.
3.2.7.2. Simülasyonun Avantajları ve Dezavantajları
Avantajları:
1. Simülasyon, bir firmanın, endüstriyel bir sistemin, bir ekonomi
modelinin kendisiyle veya bunların herhangi birinin bir alt sistemi
ile, tüm karmaşık ilişkileri dikkate alarak çalışmayı ve deney
yapmayı mümkün kılar.
2. Simülasyon sayesinde değişik modeller yapılarak bu değişikliklerin
sistem davranışı üzerindeki etkilerini gözleyerek bu değişikliklerin
etkileri araştırılabilir.
3. Modelin daha detaylı incelenmesi, sistemin daha iyi anlaşılması ve
geliştirilmesi için yararlı olabilir.
4. Sistemdeki değişkenler ve bu değişkenlerin etkileşimleri hakkında
bilgi vermektedir.
5. Sistemde yeni değişiklikler ortaya çıktığında, sistemin davranışında
ortaya çıkabilecek değişiklikleri, sorunları ve darboğazları önceden
belirlemek mümkün olabilir.
Dezavantajları:
1. Modelin çözümü için bilgisayar gerekmektedir.
2. Hiçbir zaman optimum sonuca ulaşılamaz.
3. Bilgisayar zamanı nedeniyle pahalı bir çözüm tekniğidir (Erol,
2001).
30
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
4. BULGULAR VE TARTIŞMA
Geliştirilen algoritmanın performansının analiz edilmesi için karşılaştırma
yapılmak üzere iki adet sezgisel algoritma kullanılmıştır. Bunlar SPT (Shortest
Process Time=En kısa işlem süresi) ve EDD (Earliest Due Date=En erken teslim
tarihli sıralama) kurallarıdır. Seçilen kurallar statik olup, yapılan literatür
araştırmasında her iki kuralın da uygulamalarda sık olarak kullanıldığı ve performans
ölçütlerinin değerlendirilmesinde oldukça iyi sonuçlar verdiği gözlemlenmiştir.
Özellikle SPT kuralının ortalama akış süresinin minimizasyonunda ve dolayısıyla da
ara stok düzeyi ile gecikmelerde oldukça iyi sonuçlar vermesi beklenmektedir. EDD,
temrin zamanına göre hareket eden bir kural olduğu için gecikmeleri minimize
etmesi gerekmektedir.
Çalışmanın başlangıcında ortalaması 140 olan üstel dağılıma göre sipariş
gelişer arası sürenin belirlendiği bir sistem modellenmiştir. Bu sistemin EDD, SPT
ve geliştirilen algoritmaya göre simülasyon modelleri yazılmış, modellerin
çalıştırılmasıyla da performans ölçütleri incelenmiştir. Simülasyon modelleri EDD
kuralı için Ek 2’de, SPT için Ek 3’de yer alırken, geliştirilen algoritmanın modeli ise
Ek 4’de verilmiştir.
Gelişler arası süreyle performans değişkenlerinin değişimleri Ek-1’de
verilmiştir.
31
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
4.1. Performans Ölçütlerinin Değerlendirilmesi
4.1.1. Siparişlerin Gelişler arası Süresi ile Ortalama Akış Süresi
Aşağıda belirtilen çizelge 4.1 ile şekil 4.1’de geliştirilen algoritmayla EDD ve
SPT algoritmalarının kuralları ile birlikte, ortalama akış zamanı değişimleri
görülmektedir.
Sonuçlara göre, sipariş geliş hızları azaldıkça akış süreleri azalmakta, ancak
bu azalma eğilimi EDD ile SPT algoritmalarında birbirine benzer gerçekleşmektedir.
Çizelge 4.1. Gelişler arası süre – Ortalama Akış Zamanı İlişkisi
(dakika) EDD SPT Geliştirilen 140 216,22 219,58 128,29 150 213,46 214,37 124,14 160 207,65 210,57 120,58 170 207,64 209,10 120,36 180 205,54 206,49 118,44 190 197,27 199,12 114,96 200 193,10 192,97 112,92 250 193,10 185,99 109,28
Sonuçlara bakılınca SPT kuralı önceleri EDD’den daha kötü sonuçlar verdiği
halde gelişler arası süre arttıkça EDD’ye göre daha iyi sonuçlar vermeye başladığı
görülmektedir. Geliştirilen algoritma ise her iki yönteme göre yaklaşık olarak %40
daha iyi sonuçlar vermektedir.
32
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
0
50
100
150
200
250
140 150 160 170 180 190 200 250
Gelişler arası süre (dk.)
Orta
lam
a A
kış
Sür
esi (
dk.)
EDD SPT Geliştirilen
Şekil 4.1. Gelişler arası süre–Ortalama Akış Süresi
Geliş sıklıklarının azalması, sistem kaynaklarının kullanımındaki
yoğunluğunun azalmasına neden olmaktadır. Yoğunluk azalmasıyla da kuyrukta
beklemeler söz konusu olmayabilecektir.
4.1.2. Siparişlerin Gelişler arası Süresi ile Maksimum Akış Süresi
Çizelge 4.2 ile şekil 4.2’de geliştirilen ve seçilen algoritmalar ile birlikte,
maksimum akış zamanı değişimleri görülmektedir. Akış zamanının her kural için
gerçekleşen maksimum değerine bakılarak sistemin akış dengesinin tahmin edilmesi
açısından değerlendirilebilen bir ölçüt olarak düşünülmesi mümkündür. Bu durumda
EDD kuralının istikrarlı bir şekilde 400 ve 500 arasında değişmekte olduğu
gözlemlenmektedir.
33
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
Çizelge 4.2. Gelişler arası süre–Maksimum Akış Zamanı İlişkisi
(dakika) EDD SPT Geliştirilen 140 515,44 504,02 491,95 150 500,18 485,62 450,37 160 458,18 483,04 304,33 170 449,84 530,27 299,82 180 441,50 527,70 290,51 190 433,15 425,33 290,37 200 440,11 431,05 257,90 250 440,11 365,66 228,50
SPT kuralı ise genelde EDD ile uyumlu gitmesine rağmen özellikle 160-190
gelişler arası süre aralığında büyük bir dalgalanma göstermektedir. Geliştirilen
algoritma ise gelişler arası sürenin en yoğun olduğu dönemden başlayarak istikrarlı
bir şekilde azalmakta ve diğer kurallara göre daha iyi olduğu gözlemlenmektedir.
0,00
100,00
200,00
300,00
400,00
500,00
600,00
140 150 160 170 180 190 200 250
Gelişler arası süre (dk.)
Mak
sim
um A
kış
Sür
esi (
dk.)
EDD SPT Geliştirilen
Şekil 4.2. Gelişler arası süre–Maksimum Akış Süresi
Gelişler arası sürenin artması başka bir deyişle geliş sıklıklarının azalması,
kaynak kullanımının azalmasıyla birlikte maksimum akış sürelerinde de belli bir
ölçüde azalmaya neden olmaktadır.
34
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
4.1.3. Siparişlerin Gelişler arası Süresi ile Geciken Parça Sayısı
Çizelge 4.3 ile şekil 4.3’de geliştirilen ve seçilen algoritmalar ile birlikte,
geciken parça sayısı değişimleri görülmektedir.
Çizelge 4.3. Gelişler arası süre– Geciken Parça Sayısı İlişkisi
(dakika) EDD SPT Geliştirilen 140 27,00 28,00 6,00 150 25,00 22,00 4,00 160 19,00 21,00 2,00 170 18,00 20,00 0,00 180 17,00 20,00 0,00 190 14,00 17,00 0,00 200 13,00 14,00 0,00 250 13,00 11,00 0,00
EDD, SPT algoritmalarıyla geliştirilen algoritmada gelişler arası süre
arttığında geç kalan sipariş sayıları azalmaktadır. Bu zaten beklenen bir durumdur.
Geliş sıklığının, kaynak kullanım değerlerini etkilemeyecek kadar azalması
halinde, bu performans kriterinin her üç algoritma için de farkı kalmayacaktır.
Geliştirilen algoritma ile geç kalan parça sayısında yaklaşık %78’lik bir iyileşme
sağlanmıştır.
35
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
0,00
5,00
10,00
15,00
20,00
25,00
30,00
140 150 160 170 180 190 200 250Gelişler arası süre (dk.)
Geç
Kal
an P
arça
Sayısı (
adet
)
EDD SPT Geliştirilen
Şekil 4.3. Gelişler arası süre–Geciken Parça Sayısı
Geliş sıklıklarının azalması yani gelişler arası sürenin artması, hattaki
beklemelerin azalmasına paralel olarak geç kalan parça sayılarının azalmasına da
neden olmaktadır.
4.1.4. Sipariş Gelişler arası Süresi -Erken Biten Parça Sayısı
Çizelge 4.4 ve şekil 4.4’de geliştirilen ve seçilen algoritmalar ile birlikte,
erken biten parça sayısı değişimleri görülmektedir. Simülasyon modelinin
çalıştırıldığı süre boyunca, modellenen her algoritmada sisteme giren sipariş sayısı
aynıdır. Bunun böyle olması karşılaştırma yapabilmek açısından da bir gerekliliktir.
36
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
Çizelge 4.4. Gelişlerarası Süre – Erken Biten Parça Sayısı İlişkisi
(dakika) EDD SPT Geliştirilen 140 91,00 90,00 112,00 150 83,00 86,00 104,00 160 81,00 80,00 98,00 170 80,00 78,00 99,00 180 73,00 70,00 90,00 190 72,00 69,00 86,00 200 69,00 68,00 82,00 250 69,00 50,00 61,00
EDD ve SPT kurallarında erken biten parça sayıları arasında büyük farklar
gözlenmemektedir. Geliştirilen algoritma ile yaklaşık %20’lik bir iyileşme
sağlanmıştır.
0,00
20,00
40,00
60,00
80,00
100,00
120,00
140 150 160 170 180 190 200 250Gelişler arası süre (dk.)
Erk
en B
iten
Par
ça S
ayısı
(ade
t)
EDD SPT Geliştirilen
Şekil 4.4 Gelişler arası süre–Erken Biten Parça Sayısı
37
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
4.1.5. Sipariş Gelişler arası Süresi -Toplam Geç Kalma Süresi
Çizelge 4.5 ve şekil 4.5’de geliştirilen ve seçilen algoritmalar ile birlikte,
toplam geç kalma süreleri değişimleri görülmektedir. Siparişlerin toplam geç kalma
süreleri karşılaştırıldığında, en kötü sonuç EDD kuralı ile elde edilirken SPT kuralı
ile oldukça iyi sonuçlara ulaşılmıştır.
Çizelge 4.5. Gelişler arası süre–Toplam Geç Kalma
(dakika) EDD SPT Geliştirilen 140 62,08 71,58 42,95 150 69,03 21,23 12,74 160 57,83 34,83 20,90 170 52,46 29,46 17,68 180 0,00 0,00 0,00 190 0,00 0,00 0,00 200 0,00 0,00 0,00 250 0,00 0,00 0,00
Geliştirilen algoritma ile EDD kuralına göre ortalama %65, SPT kuralına göre
ise ortalama %40’lık bir iyileşme sağlanmıştır.
38
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
0,00
10,00
20,00
30,00
40,00
50,00
60,00
70,00
80,00
140 150 160 170 180 190 200 250Gelişler arası süre (dk.)
Topl
am G
ecik
me
Sür
eler
i (dk
.)
EDD SPT Geliştirilen
Şekil 4.5 Gelişler arası süre–Toplam Gecikme Süreleri
Gelişler arası sürenin artması sonucu toplam gecikme sürelerindeki azalma
sistemdeki yoğunluğun azalması, parçaların beklemelerinin minimize edilmesi ve
hattın daha verimli bir şekilde daha yüksek kapasitede çalışacak durumda olması
anlamına gelmektedir.
4.1.6. Sipariş Gelişler arası Süresi -Toplam Erken Bitme Süresi
Çizelge 4.6 ile şekil 4.6’da geliştirilen ve seçilen algoritmalar ile birlikte
ortalama akış zamanı değişimleri görülmektedir.
Çizelge 4.6. Gelişler arası süre– Toplam Erken Bitme (dakika) EDD SPT Geliştirilen 140 2105,56 2073,56 2695,63 150 2174,40 2012,20 2615,86 160 2077,91 2031,91 2641,48 170 1696,35 1650,35 2145,45 180 1719,66 1673,66 2175,76 190 1466,29 1466,29 1906,17 200 1404,78 1404,78 1826,22 250 1404,78 1226,65 1594,64
39
4. BULGULAR VE TARTIŞMA Banu SARIKAYA
EDD ve SPT kurallarında sonuçların birbirine yakın çıkmasıyla birlikte
geliştirilen algoritmada yaklaşık %28’lik bir artış sağlanmıştır.
0,00
500,00
1000,00
1500,00
2000,00
2500,00
3000,00
140 150 160 170 180 190 200 250Gelişler arası süre (dk.)
Topl
am E
rken
Bitm
e S
üres
i (dk
.)
EDD SPT Geliştirilen
Şekil 4.6. Gelişler arası süre–Toplam Erken Bitme Süresi
Gelişler arası sürenin artması başka bir deyişle parçaların sisteme geliş
sıklıklarının azalması sonucu toplam erken bitme sürelerindeki azalma sistemdeki
yoğunluğun azalması, kuyruktaki beklemelerinin minimize edilmesi ve hattın daha
yüksek kapasitede çalışacak durumda olması şeklinde yorumlanabilir.
40
5. SONUÇLAR VE ÖNERİLER Banu SARIKAYA
5. SONUÇLAR VE ÖNERİLER
Önceleri işletmelerin temel hedefi karlılık iken günümüzde temel hedef
müşteri tatmini haline gelmiştir. Müşteri varsa işletmede vardır. Müşteriyi tatmin
edecek ürün veya hizmeti üretecek sistemi kurmak başarının temel kriteridir. Bu
bağlamda çizelgeleme algoritmaları sistemi kurma ve yönetmede yarar sağlar.
Müşteriye belirlenen teslim tarihinde, gecikme olmaksızın hizmet sunabilir aynı
zamanda kar artışı, kaynakların daha etkin kullanımı vs. konularda ilerleme
kaydedilebilir.
Bu noktasında sürekli üretim yapan sistemlerin çizelgeleme problemi ortaya
çıkmaktadır. Üretim hızının arttırılması, sağlıklı bir tasarlama yapılması ve
işletmenin ekonomik sorunlarına çözüm getirmeye yönelik olmasından dolayı,
üretim çizelgeleme konusu endüstride büyük önem taşımaktadır. Kaliteli ve yüksek
hızda bir üretim düzeyine ulaşmak gerçekte çizelgeleme çalışmalarının detaylı ve iyi
bir şekilde yapılması ise sağlanır.
Ayrıca alternatif çözümler sağlayabilmekle beraber sonuca ulaşmayı
kolaylaştıran ve bilgisayar destekli çizelgeleme çalışmalarına kolaylıkla uyum
sağlayan sezgisel yöntemler daha yaygın olarak kullanılmaktadır. Ayrıca bu tür
problemler için, son dönemlerde geliştirilen bilgisayar programlarının
kullanılmasının sağladığı yarar da kaçınılmazdır.
Literatürde bu konuda çok fazla çalışma gerçekleşmiştir. Optimal sonuca
yönelik algoritmalar kadar sezgisel algoritmalara da yer verilmiştir. Bu çalışmada
incelenen problem çoklu makine çoklu sipariş problemidir. Her siparişin kendine ait
bir iş rotası vardır. Geliştirilen algoritmanın amacı siparişlerinin gecikme sürelerinin
minimizasyonu, makinelerini kapasitelerin dengelenmesidir.
Bu tez çalışmasında otomotiv yan sanayi firması olan bir kuruluştaki üretim
istasyonları analiz edilmiş, ilgili problemler belirlenmiştir. Bu amaçla geliştirilen
algoritma, EDD ve SPT kuralları ile karşılaştırılmıştır. Sistemin mevcut durumu için
geliştirilen yöntem ile diğer kurallar için birtakım denemeler yapılmış ve belirlenen
performans kriterlerinde gösterdikleri etkinlikler karşılaştırılmıştır.
41
5. SONUÇLAR VE ÖNERİLER Banu SARIKAYA
Sonuç olarak;
1. Geciken parça sayılarında ortalama %78’lik,
2. Erken biten parça sayılarında ortalama %20’lik,
3. Ortalama akış süresinde yaklaşık %40’lık ve
4. Toplam geç kalma sürelerinde EDD kuralına göre %65, SPT kuralına
göre %40’lık bir iyileşme sağlanmıştır.
Değişen durumlar için, örneğin sipariş geliş hızlarının değişmesi veya teslim
zamanlarının farklı olması gibi geliştirilen algoritma ve EDD ile SPT kurallarının
etkinlikleri yeniden değerlendirilmiş, farklı durumlarda bu kuralların farklı sonuçlar
verebileceği görülmüştür. Geliştirilen algoritma ise tüm bu durumlarda, en iyi
sonuçları verdikleri belirlenmiştir.
Algoritmada belirli bir hedef saptanmış ve bu konudaki tüm ihtimaller
formüle edilmeye çalışılmıştır. Yapılan çalışmada siparişlerin tek partide üretilmesi
baz alınmıştır.
Eğer partilerin bölünebileceği esasına göre algoritmalar geliştirilse daha iyi
sonuçlar alınabilir.Aynı işlemi yapan makinelerin işlem sürelerinin aynı olduğu
kabul edilmiş olup bu faktör sonraki çalışmalarda değiştirilebilir.
Makine duruşları, tekrar işlenme v.b konular göz ardı edilmiştir. Bu konuların
da analizi yapılarak çalışma farklı bir boyut kazanabilir
42
KAYNAKLAR
ACAR, N., 1983. Üretim Planlama Yönetim ve Uygulamaları. MPM Yayınları,
Ankara, 230.
ACAR, N., 1984. Kesikli Seri Üretim Sistemlerinde Planlama ve Kontrol Çalışması.
MPM Yayınları, Ankara, 309.
ANDERSON, A., NYIRENDA B., 1990. Soving Stochastic Job Shop Scheduling
Problems by a Hybrid Method. University of Wolverhampton Working Paper
Series, United Kingdom, WP006/04.
ALPAY, Ş., YÜZÜGÜLLÜ N., 2004. Kaçırılan Teslim Zamanı Performanıs İçin Bir
Benzetim Çalışması. YA-EM XXIV. Ulusal Kongresi, Adana.
BAYKASOĞLU, A., ÖZBAKIR, L., 2004. Dil Teorisi Temelli Çok Amaçlı Esnek
Çizelgeleme Algoritmasının Performans Analizi. YA-EM XXIV. Ulusal
Kongresi,Adana.
BILAUT, C., ROUBELLAT, Z., 1995. Constrait-Based Optimization and
Approximation for Job-Shop Scheduling. Avenue Gallieni, France, 203-213.
BISTLINE, V., BANERJEE, S.,1997. A Grasp For Job Shop Scheduling. AT&T
Labs Research Technical Report,00.6.1.
CHANG, E., ve SULLIVIAN C., 1990. Coordinated Job Shop Scheduling and
Decision Point Bidding, Germany, 42-55.
DENGİZ, B., ALTIPARMAK, F., and BULGAK, A.A., 1998. Optimization of
Stochastic Systems Using Geneti Algorithms. Journal Of Operation
Research, 9(10):43-62.
DIRK, C., MATTFELD, F, CHRISTIAN, B., 1999. A Simulated Annealing
Algorithm for Multi-Agent Systems: A Job-Shop Scheduling Application.
South Bank Univeristy
Press, United Kingdom, 103.
DUENYAS, E., VAN, C., OYEN, S., 1996. Constrainedness and The Phase
Transition in Job-Shop Scheduling. University of Toronto Press , Canada,
45-55.
43
ENGİN, O., FIĞLALI, A., 2002. Akış Tipi Çizelgeleme Problemlerinin Genetik
Algoritma Yardımıyla Çözümünde Uygun Çaprazlama Operatörünün
Belirlenmesi. Doğuş Üniveristesi Dergisi, İstanbul, 27-35.
EROL, R., 2001. Simülasyon Ders Notları, Ç.Ü. Endüstri Mühendisliği, Adana.
GARRIDO, A., SALIDO A., BARBER, T., LOPEZ, W., 1996. Heuristic Methods
for solving Job-shop Scheduling Problems. University of Valencia Press,
Spain, 0345.
HOLTHAUS, H., 1999. Using Tabu Search to solve the Job Shop Scheduling
Problem with Sequence Dependent Set Up Times. Computers and Operation
Research,118-125.
JENSEN, M., HANSEN, T., 1997. Robust Solutions for Job-shop Scheduling.
Aarhus University Inc., Denmark,305.
KASCHEL, A., TEICH, C., KOBERNIK, S., MEIER, M., 1995. The Application of
Naturally-Inspired Algorithms to the Job-Shop Scheduling Problem. Rolls
Royce Strategic Research Centre, Belgium, 28-31.
KOPFER, F., BIERWIRTH, G., MATTFELD, R., RIXEN, E., 1995. Survey of Job
shop Scheduling Techniques. National Instute of Satandards, Gaithersburg,
47-55.
LIO, I., YOU, G., 1992. Evolutionary Algorithms for Job-Shop Scheduling. Int. J.
Appl. Math. Comput. Science,France, 91-103.
LUH, H., ZHAO, L., THAKUR, R., 1998. The Asymptotic Convergence of some
Flow-Shop Scheduling Heuristics. University of Waikato Press, 9, 47-55.
NAKASUKA, Y., YOSHIDA, B., 1992. Learning-Baesd Scheduling Of Flexible
Manufacturing Systems Using Case-Based Reasoning. European Journal of
Operational Research ,39, 18(3).
OVACIK, M., UZSOY R., 1994. Exploiting Shop Floor Status Information to
Schedule Complex Job Shops. Journal of Manufacturing Systems, 13, 73-84.
OVACIK, M., UZSOY R., 1995. Decomposition Methods for
SchedulingSemiconductor Testing Facilities. International Journal of
Flexible Manufacturing Systems, 8, 357-388.
44
SERAFINI, I., SPERENZA, Z., 1992. Adjustment of Heads and Tails for the Job
Shop Problem. European Journal of Operational Research,27, 78(2).
STANKOVIC, R., RAMAMRITHAM, W., 1994. Distributed scheduling of tasks
with deadlines and resource. IEEE Trans. On Computers, 38, 1110-1123.
STERN, D., ve AVIVI, S., 1990. Computer Simulation Techniques. Jon Willy
and Sons, Inc., New York,3.
STOYENKO, S., GEORGIADIS, E., 1991. Genetic Local Seearch for Job-Shop
Scheduling Problem. Torino University Press, Italy, 32-39.
SUN, D., LIN, L., 1994. Cell Formation Using Tabu Search. Computers & Industrial
Engineering Press, 485-494.
THOM, T., LOU, L., NGIN, G., 1998. An Adaptive Algorithm for Scheduling in a
Dynamic Job Shop. IEEE Computer Society,42, 123-132.
TORAMAN, A., ve GÖZLÜ, S., 1984. Üretim Planlama ve Kontrol. İstanbul Teknik
Üniversitesi Basımevi, 116.
USTA, Y., 2005. Robotlu Bir İmalat Hücresindeki Taşıma İşlemleri İçin Modele
Dayalı Bir Uzman Sistem Geliştirilmesi. Gazi Üniveristesi Müh Mim Fak.
Dergisi, Ankara, 275-288.
45
ÖZGEÇMİŞ
Banu Sarıkaya, 13 Şubat 1979 Mersin doğumludur. Mersin, İleri ilkokulunun
sonrasında İçel Anadolu Lisesini kazanmıştır. Lisans öğrenimini 1998-2002 yılları
arasında Çukurova Üniversitesi Mühendislik-Mimarlık Fakültesi Endüstri
Mühendisliğinde tamamladıktan sonra, 2003 yılında yüksek lisansa başlamıştır. Eş
zamanlı olarak TEMSA Sanayi ve Ticaret A.Ş.’de çalışmaya başlamış olup, halen
TEMSA’da Proje mühendisi olarak Ürün Geliştirme Departmanında çalışmaktadır.
46
EK-1: Gelişler Arası Süreyle Performans Değişkenlerinin Değişimleri
47
EK-2 EDD Kuralına Ait Experiment Dosyası:
begin;
project,simulation problem, BS;
variables:
toplamgecikme,0:toplamerken,0:gecikme,0:ortter,0:term5,0:term4,0:term3,0:term2,0
:term1:0:
orterkenbit,0:simson,4000;
attributes:
duedate: sipbuy: opttime:
timedelikdelme: timelevyemontaji: timezimpara: timekurecakma: timekapaktakma:
timemarkalama: timeyuzeytemizleme: gecikme:timein;
counters:
entnum:geckalanlar:erkenbitenler;
queues:
delikdelmeq,lvf(duedate): levyemontajıq,lvf(duedate): zimparaq, lvf(duedate):
kurecakmaq, lvf(duedate): kapaktakmaq, lvf(duedate): markalamaq, lvf(duedate):
yuzeytemizlemeq, lvf(duedate):ambalajlamaq;
resources:
delikdelmer:levyemontajır:zimparar:kurecakmar: kapaktakmar: markalamar:
yuzeytemizlemer:ambalajlamar;
stations:
delikdelme:levyemontajı:zimpara:kurecakma: kapaktakma: markalama:
yuzeytemizleme:ambalajlama;
sequences:
1,
delikdelme,opttime=0.0033,kos=7&levyemontaji,opttime=0.0046,kos=6&zimpara,
opttime=0.0012,kos=5&delikdelme,opttime=0.0083,kos=4&zimpara,
opttime=0.0031, kos=3&levyemontaji,opttime=0.0026,kos=2&delikdelme,
opttime=0.0040,kos=1&ambalajlama:
48
2,
levyemontaji,opttime=0.0046,kos=3&delikdelme,opttime=0.0083,
kos=2&levyemontaji,opttime=0.0026,kos=1&ambalajlama:
3,
delikdelme,opttime=0.0033,kos=4&zimpara,opttime=0.0012,kos=3&levyemontaji,
opttime=0.0031,kos=2&delikdelme,opttime=0.0040,kos=1&ambalajlama:
4,
zimpara,opttime=0.0040,kos=6&delikdelme,opttime=0.0026,kos=5&
zimpara,opttime=0.0031,kos=4&levyemontaji,opttime=0.0083,kos=3&zimpara,
opttime=0.0012,kos=2&levyemontaji,opttime0.0046,kos=1&ambalajlama;
tallies: flowtime;
dstats:
nq(delikdelmeq): nq(levyemontajiq): nq(zimparaq): nq(kurecakmaq):
nq(kapaktakmaq): nq(markalamaq): nq(yuzeytemizlemeq):
nq(delikdelmeq)+nq(levyemontajiq)+nq(zimparaq)+nq(kurecakmaq):
nq(kapaktakmaq)+nq(markalamaq)+nq(yuzeytemizlemeq):
nr(delikdelmer): nr(levyemontajir): nr(zimparar): nr(kurecakmar): nr(kapaktakmar):
nr(markalamar): nr(yuzeytemizlemer);
FILES:1,edd,”edd.txt”.SEQ.FRE;
REPLICATE, 5,0,20000,,,2500;
end;
49
EDD Kuralına Ait Model Dosyası:
BEGIN;
CREATE:exponential(140,1):MARK(Timein);
COUNT:entnum;
assign:NS=discrete(0.28,1,0.54,2,0.74,3,1.0,4):
sipbuy=discrete(0.4,5000,0.7,8000,1.0,10000);
assign:duedate=tnow+ortter
assign:term5=term4
assign:term4=term3
assign:term3=term2
assign:term2=term1
assign:term1=flowtime
route;
station,delikdelme;
queue,delikdelmeq;
seize:delikdelmer;
assign:timedelikdelme=opttime*sipbuy;
delay:timedelikdelme;
release:delikdelmer;
route;
station,levyemontaji;
queue,levyemontajiq;
seize:levyemontajir;
assign:timelevyemontaji=opttime*sipbuy;
delay:timelevyemontaji;
release:levyemontajir;
route;
station,zimpara;
queue,zimparaq;
seize:zimparar;
50
assign:timezimpara=opttime*sipbuy;
delay:timezimpara;
release:zimparar;
route;
station,kurecakma;
queue,kurecakmaq;
seize:kurecakmar;
assign:timekurecakma=opttime*sipbuy;
delay:timekurecakma;
release:kurecakmar;
route;
station,kapaktakma;
queue,kapaktakmaq;
seize:kapaktakmar;
assign:timekapaktakma=opttime*sipbuy;
delay:timekapaktakma;
release:kapaktakmar;
route;
station,markalama;
queue,markalamaq;
seize:markalamar;
assign:timemarkalama=opttime*sipbuy;
delay:timemarkalama;
release:markalamar;
route;
station,yuzeytemizleme;
queue,yuzeytemizlemeq;
seize:yuzeytemizlemer;
assign:timeyuzeytemizleme=opttime*sipbuy;
delay:timeyuzeytemizleme;
release:yuzeytemizlemer;
51
route;
station,ambalajlama;
queue,ambalajlamaq;
seize:ambalajlamar;
release:ambalajlamar;
assign:gecikme=duedate-tnow
BRANCH,1:
İf,gecikme<0,gec:
else,erken;
gec count:geckalanlar;
assign:toplamgecikme=toplamgecikme+abs(gecikme):next(son);
erken count:erkenbitenler;
assign:toplamerken= toplamerken+ abs(gecikme);
son tally:flowtime,int(timein):dispose;
assign:ortter=(term1+term2+term3+term4+term5)/5
create,1,simson:simson+1,1;
write,edd: nc(geckalanlar),toplamgecikme,
nc(erkenbitenler),toplamerken:dispose;
end;
52
EK-3 SPT Kuralına Ait Experiment Dosyası
begin;
project,simulasyon, BS;
variables:
toplamgecikme,0:toplamerken,0:gecikme,0:ortter,0:term5,0:term4,0:term3,0:term2,
:term1:0:
orterkenbit,0:simson,4000;
attributes:
gecikme2:kos:aylak:karar:timein:duedate:sipbuy:opttime:timedelikdelme:
timelevyemontaji: timezimpara: timekurecakma: timekapaktakma: timemarkalama:
timeyuzeytemizleme: gecikme:ttime;
counters:
entnum:geckalanlar:erkenbitenler;
queues:
delikdelmeq,lvf(karar): levyemontajıq,lvf(karar): zimparaq, lvf(karar): kurecakmaq,
lvf(karar): kapaktakmaq, lvf(karar): markalamaq, lvf(karar): yuzeytemizlemeq,
lvf(karar):ambalajlamaq;
resources:
resources:
delikdelmer:levyemontajır:zimparar:kurecakmar: kapaktakmar: markalamar:
yuzeytemizlemer:ambalajlamar;
stations:
delikdelme:levyemontajı:zimpara:kurecakma: kapaktakma: markalama:
yuzeytemizleme:ambalajlama;
sequences:
1,
delikdelme,opttime=0.0033,kos=7&levyemontaji,opttime=0.0046,kos=6&zimpara,
opttime=0.0012,kos=5&delikdelme,opttime=0.0083,kos=4&zimpara,
opttime=0.0031, kos=3&levyemontaji,opttime=0.0026,kos=2&delikdelme,
opttime=0.0040,kos=1&ambalajlama:
53
2,
levyemontaji,opttime=0.0046,kos=3&delikdelme,opttime=0.0083,
kos=2&levyemontaji,opttime=0.0026,kos=1&ambalajlama:
3,
delikdelme,opttime=0.0033,kos=4&zimpara,opttime=0.0012,kos=3&levyemontaji,
opttime=0.0031,kos=2&delikdelme,opttime=0.0040,kos=1&ambalajlama:
4,
zimpara,opttime=0.0040,kos=6&delikdelme,opttime=0.0026,kos=5&
zimpara,opttime=0.0031,kos=4&levyemontaji,opttime=0.0083,kos=3&zimpara,
opttime=0.0012,kos=2&levyemontaji,opttime0.0046,kos=1&ambalajlama;
tallies: flowtime;
dstats:
dstats:
nq(delikdelmeq): nq(levyemontajiq): nq(zimparaq): nq(kurecakmaq):
nq(kapaktakmaq): nq(markalamaq): nq(yuzeytemizlemeq):
nq(delikdelmeq)+nq(levyemontajiq)+nq(zimparaq)+nq(kurecakmaq):
nq(kapaktakmaq)+nq(markalamaq)+nq(yuzeytemizlemeq):
nr(delikdelmer): nr(levyemontajir): nr(zimparar): nr(kurecakmar): nr(kapaktakmar):
nr(markalamar): nr(yuzeytemizlemer);
FILES:1,simulasyon,”simulasyon.txt”.SEQ.FRE;
REPLICATE, 5,0,20000,,,2500;
end;
54
SPT Kuralına Ait Model Dosyası:
BEGIN;
CREATE:exponential(300,1):MARK(Timein);
COUNT:entnum;
assign:NS=discrete(0.28,1,0.54,2,0.74,3,1.0,4):
sipbuy=discrete(0.4,5000,0.7,8000,1.0,10000);
assign:duedate=tnow+ortter
assign:term5=term4
assign:term4=term3
assign:term3=term2
assign:term2=term1
assign:term1=flowtime
BRANCH, 1:
if,NS=1,ca2:
if,NS=2,ca3:
if,NS=3,ca4:
ELSE,ca5;
ca2 assign:time=sipbuy*0,0271:
aylak=duedate-tnow-ttime:
karar=aylak/7:next(ca6);
ca3 assign:time=sipbuy*0,0155:
aylak=duedate-tnow-ttime:
karar=aylak/3:next(ca6);
ca4 assign:time=sipbuy*0,0083:
aylak=duedate-tnow-ttime:
karar=aylak/4:next(ca6);
ca5 assign:time=sipbuy*0,0238:
aylak=duedate-tnow-ttime:
karar=aylak/6:next(ca6);
ca6 route;
station,delikdelme;
55
queue,delikdelmeq;
seize:delikdelmer;
assign:timedelikdelme=opttime*sipbuy;
delay:timedelikdelme;
release:delikdelmer;
assign: ttime=ttime-timedelikdelme:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,levyemontaji;
queue,levyemontajiq;
seize:levyemontajir;
assign:timelevyemontaji=opttime*sipbuy;
delay:timelevyemontaji;
release:levyemontajir;
assign: ttime=ttime-timelevyemontaji:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,zimpara;
queue,zimparaq;
seize:zimparar;
assign:timezimpara=opttime*sipbuy;
delay:timezimpara;
release:zimparar;
assign: ttime=ttime-timezimpara:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,kurecakma;
queue,kurecakmaq;
56
seize:kurecakmar;
assign:timekurecakma=opttime*sipbuy;
delay:timekurecakma;
release:kurecakmar;
assign: ttime=ttime-timekurecakma:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,kapaktakma;
queue,kapaktakmaq;
seize:kapaktakmar;
assign:timekapaktakma=opttime*sipbuy;
delay:timekapaktakma;
release:kapaktakmar;
assign: ttime=ttime-timekapaktakma:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,markalama;
queue,markalamaq;
seize:markalamar;
assign:timemarkalama=opttime*sipbuy;
delay:timemarkalama;
release:markalamar;
assign: ttime=ttime-timemarkalama:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,yuzeytemizleme;
queue,yuzeytemizlemeq;
seize:yuzeytemizlemer;
57
assign:timeyuzeytemizleme=opttime*sipbuy;
delay:timeyuzeytemizleme;
release:yuzeytemizlemer;
assign: ttime=ttime-timeyuzeytemizleme:
aylak=duedate-tnow-ttime:
karar=aylak/kos;
route;
station,ambalajlama;
queue,ambalajlamaq;
seize:ambalajlamar;
release:ambalajlamar;
assign:gecikme= duedate-tnow;
BRANCH,1:
İf,gecikme<0,gec:
else,erken;
gec count:geckalanlar;
assign:toplamgecikme=toplamgecikme+abs(gecikme):next(son);
erken count:erkenbitenler;
assign:toplamerken= toplamerken+ abs(gecikme): next(son);
son tally:flowtime,int(timein):dispose;
assign:ortter=(term1+term2+term3+term4+term5)/5
create,1,simson:simson+1,1;
assign:ortgecikme=toplamgecikme;
assign:orterkenbit=toplamerken/nc(erkenbitenler);
write,simulasyon: nc(geckalanlar), ortgecikme, toplamgecikme,
nc(erkenbitenler), ortgecikme, toplamerken:dispose;
end;
58
EK-4 Geliştirilen Algoritmaya Ait Experiment Dosyası:
begin;
project,developed,BS;
variables:
toplamgecikme,0:toplamerken,0:gecikme,0:ortter,0:term5,0:term4,0:term3,0:term2,0
:term1:0:
orterkenbit,0:simson,4000;
attributes:
duedate: time: sipbuy: sopttime:
i1j1:i2j1:i3j1: i4j1:i5j1:i6j1:i7j1:
opttime:timedelikdelme:timelevyemontaji:timezimpara:timekurecakma:
timekapaktakma: timemarkalama: timeyuzeytemizleme:
gecikme:i2öncelik:i1öncelik:i3öncelik:i4öncelik:i5öncelik:i6öncelik:i7öncelik:
timein;
counters: entnum:geckalanlar:erkenbitenler;
queues:
delikdelmeq,lvf(i1öncelik): levyemontajıq,lvf(i2öncelik): zimparaq, lvf(i3öncelik):
kurecakmaq, lvf(i4öncelik): kapaktakmaq, lvf(i5öncelik): markalamaq,
lvf(i6öncelik): yuzeytemizlemeq, lvf(i7öncelik):ambalajlamaq;
resources:
delikdelmer:levyemontajır:zimparar:kurecakmar:kapaktakmar:markalamar:
yuzeytemizlemer:ambalajlamar;
stations:
delikdelme:levyemontajı:zimpara:kurecakma:kapaktakma:markalama:
yuzeytemizleme:ambalajlama;
sequences:
1,
delikdelme,opttime=0.0033,sopttime=0.0046&
levyemontaji,opttime=0.0046,sopttime=0.0012&
59
zimpara, opttime=0.0012, sopttime=0.0083&
delikdelme, opttime=0.0083, sopttime=0.0031&
zimpara, opttime=0.0031, sopttime=0.0026&
levyemontaji,opttime=0.0026, sopttime=0.0040&
delikdelme, opttime=0.0040, sopttime=0&
ambalajlama:
2,
levyemontaji,opttime=0.0046, sopttime=0.0083&
delikdelme,opttime=0.0083, sopttime=0.0026&
levyemontaji,opttime=0.0026, sopttime=0&
ambalajlama:
3,
delikdelme,opttime=0.0033,sopttime=0.0012&
zimpara,opttime=0.0012,sopttime=0.0031&
levyemontaji,opttime=0.0031,sopttime=0.0040&
delikdelme,opttime=0.0040,sopttime=0&
ambalajlama:
4,
zimpara,opttime=0.0040,sopttime=0.0026&
delikdelme,opttime=0.0026,sopttime=0.0031&
zimpara,opttime=0.0031,sopttime=0.0083&
levyemontaji,opttime=0.0083,sopttime=0.0012&
zimpara,opttime=0.0012,sopttime=0.0046&
levyemontaji,opttime0.0046, sopttime=0&
ambalajlama;
tallies: flowtime;
dstats:
60
nq(delikdelmeq): nq(levyemontajiq): nq(zimparaq): nq(kurecakmaq):
nq(kapaktakmaq): nq(markalamaq): nq(yuzeytemizlemeq):
nq(delikdelmeq)+nq(levyemontajiq)+nq(zimparaq)+nq(kurecakmaq):
nq(kapaktakmaq)+nq(markalamaq)+nq(yuzeytemizlemeq):
nr(delikdelmer): nr(levyemontajir): nr(zimparar): nr(kurecakmar): nr(kapaktakmar):
nr(markalamar): nr(yuzeytemizlemer);
FILES:1,gelistirilen,”alg.txt”.SEQ.FRE;
REPLICATE, 5,0,20000,,,2500;
end;
61
Geliştirilen Algoritmaya Ait Model Dosyası:
BEGIN;
CREATE:exponential(300,1):MARK(Timein);
COUNT:entnum;
assign:NS=discrete(0.28,1,0.54,2,0.74,3,1.0,4):
sipbuy=discrete(0.4,5000,0.7,8000,1.0,10000);
assign:duedate=tnow+ortter
assign:term5=term4
assign:term4=term3
assign:term3=term2
assign:term2=term1
assign:term1=flowtime
i1oncelik=999:
i2oncelik=999:
i3oncelik=999:
i4oncelik=999:
i5oncelik=999:
i6oncelik=999:
i7oncelik=999;
branch, 1:
if,NS=1,pa2:
if,NS=2,pa3:
if,NS=3,pa4:
ELSE , pa5;
pa2 assign:time=sipbuy*0.0271:next(pa6)
pa3 assign:time=sipbuy*0.0155:next(pa6)
pa4 assign:time=sipbuy*0.0083:next(pa6)
pa5 assign:time=sipbuy*0.0238:next(pa6)
pa6 route;
station,delikdelme;
62
search,delikdelmeq:min(duedate-tnow-ttime);
assign:i1j1=j;
branch,1:
if,i1j1==0,islem1:
else,asama 11;
asama11 branch,1:if,
aque(delikdelmeq,i1j1,1)-tnow-aque(delikdelme,i1j1,2)<0,asama 12:
else, asama 14;
asama12 remove:i1j1,delikdelmeq,asama13;
asama13 assign:i1öncelik=1:next(islem1);
asama14 branch,1:if,nq(delikdelme)<2,asama16:
else, asama17;
asama16 search,delikdelmeq:min(opttime*sipbuy);
branch,1:if,j==0:asama18:
else, islem1;
asama18 remove:j,delikdelmeq,asama15
asama17 search,delikdelmeq:min(sopttime*sipbuy);
branch,1:if,j==0,asama19
else,islem1;
asama19 remove:j, delikdelmeq,asama15;
asama15 assign:i1oncelik=2:next(islem1);
islem1 queue,delikdelmeq;
seize: delikdelmer;
assign:timedelikdelme=opttime*sipbuy;
delay: timedelikdelme;
release: delikdelmer;
assign:ttime=ttime-timedelikdelme:
i1oncelik=999;
route;
63
station,levyemontaji;
search, levyemontajiq:min(duedate-tnow-ttime);
assign:i2j1=j;
branch,1:
if,i2j1==0,islem:
else,asama 1;
asama1 branch,1:if,
aque(levyemontajiq,a2j1,1)-tnow-aque(levyemontajiq,i2j1,2)<0,asama 2:
else, asama 4;
asama2 remove:i2j1, levyemontajiq,asama3;
asama3 assign:a2oncelik=1:next(islem);
asama4 branch,1:if,nq(levyemontajiq)<2,asama6:
else, asama7;
asama6 search, levyemontajiq:min(opttime*sipbuy);
branch,1:if,j==0:asama8:
else, islem;
asama8 remove:j, levyemontajiq,asama5
asama7 search, levyemontajiq:min(sopttime*sipbuy);
branch,1:if,j==0,asama9
else,islem;
asama9 remove:j, levyemontajiq,asama5;
asama5 assign:i2oncelik=2:next(islem);
islem queue, levyemontajiq;
seize: levyemontajir;
assign:timelevyemontaji =opttime
delay: timealevyemontaji;
release: levyemontajir;
assign:ttime=ttime-time levyemontaji:
i2oncelik=999;
route;
64
station,zimpara;
search, zimparaq:min(duedate-tnow-ttime);
assign:i3j1=j;
branch,1:
if,i3j1==0,islem3:
else,asama 31;
asama31 branch,1:if,
aque(zimparaq,i3j1,1)-tnow-aque(zimparaq,i3j1,2)<0,asama 32:
else, asama 34;
asama32 remove:i3j1, zimparaq,asama33;
asama33 assign:i3oncelik=1:next(islem3);
asama34 branch,1:if,nq(zimparaq)<2,asama36:
else, asama37;
asama36 search, zimparaq:min(opttime*sipbuy);
branch,1:if,j==0:asama38:
else, islem3;
asama38 remove:j, zimparaq,asama35
asama37 search, zimparaq:min(sopttime*sipbuy);
branch,1:if,j==0,asama39:
else,islem3;
asama39 remove:j, zimparaq,asama35;
asama35 assign:i3oncelik=2:next(islem3);
islem3 queue, zimparaq;
seize: zimparar;
assign:timezimpara=opttime*sipbuy;
delay: timezimpara;
release:azimpara;
assign:ttime=ttime-timezimpara:
ia3oncelik=999;
route;
65
station,kurecakma;
search, kurecakmaq:min(duedate-tnow-ttime);
assign:i4j1=j;
branch,1:
if,i4j1==0,islem4:
else,asama 41;
asama41 branch,1:if,
aque(kurecakmaq,i4j1,1)-tnow-aque(kurecakmaq,i4j1,2)<0,asama 42:
else, asama 44;
asama42 remove:i4j1,a4,asama43;
asama43 assign:i4oncelik=1:next(islem4);
asama44 branch,1:if,nq(kurecakmaq)<2,asama46:
else, asama47;
asama46 search, kurecakmaq:min(opttime*sipbuy);
branch,1:if,j==0:asama48:
else, islem4;
asama48 remove:j, kurecakmaq,asama45
asama47 search, kurecakmaq:min(sopttime*sipbuy);
branch,1:if,j==0,asama49:
else,islem4;
asama49 remove:j, kurecakmaq,asama45;
asama45 assign:i4oncelik=2:next(islem4);
islem4 queue, kurecakmaq;
seize: kurecakmar;
assign:timekurecakma =opttime*sipbuy;
delay: timekurecakma;
release: kurecakmar;
assign:ttime=ttime-timekurecakma
i4oncelik=999;
route;
66
station,kapaktakma;
search, kapaktakmaq:min(duedate-tnow-ttime);
assign:i5j1=j;
branch,1:
if,i5j1==0,islem5:
else,asama 51;
asama51 branch,1:if,
aque(kapaktakmaq,i5j1,1)-tnow-aque(kapaktakmaq,i5j1,2)<0,asama 52:
else, asama 54;
asama52 remove:i5j1, kapaktakmaq,asama53;
asama53 assign:i5oncelik=1:next(islem5);
asama54 branch,1:if,nq(kapaktakmaq)<2,asama56:
else, asama57;
asama56 search, kapaktakmaq:min(opttime*sipbuy);
branch,1:if,j==0:asama58:
else, islem5;
asama58 remove:j, kapaktakmaq,asama55
asama57 search, kapaktakmaq:min(sopttime*sipbuy);
branch,1:if,j==0,asama59:
else,islem5
asama59 remove:j, kapaktakmaq,asama55;
asama55 assign:i5oncelik=2:next(islem5);
islem5 queue, kapaktakmaq;
seize: kapaktakmar;
assign:timekapaktakma=opttime*sipbuy;
delay: timekapaktakma;
release: kapaktakmar;
assign:ttime=ttime-timekapaktakma
i5oncelik=999;
route;
67
station,markalama;
search, markalamaq:min(duedate-tnow-ttime);
assign:i6j1=j;
branch,1:
if,i6j1==0,islem6:
else,asama 61;
asama61 branch,1:if,
aque(markalamaq,i6j1,1)-tnow-aque(markalamaq,i6j1,2)<0,asama 62:
else, asama 64;
asama62 remove:i6j1, markalamaq,asama63;
asama63 assign:i6oncelik=1:next(islem6);
asama64 branch,1:if,nq(markalamaq)<2,asama66:
else, asama67;
asama66 search, markalamaq:min(opttime*sipbuy);
branch,1:if,j==0:asama68:
else, islem6;
asama68 remove:j, markalamaq,asama65
asama67 search, markalamaq:min(sopttime*sipbuy);
branch,1:if,j==0,asama69:
else,islem6
asama69 remove:j, markalamaq,asama65;
asama65 assign:i6oncelik=2:next(islem6);
islem6 queue, markalamaq;
seize: markalamar;
assign:timemarkalama =opttime*sipbuy;
delay: timemarkalama;
release: markalamar;
assign:ttime=ttime-timemarkalama
i6oncelik=999;
route;
68
station,yuzeytemizleme;
search, yuzeytemizlemeq:min(duedate-tnow-ttime);
assign:i7j1=j;
branch,1:
if,i7j1==0,islem7:
else,asama 71;
asama71 branch,1:if,
aque(yuzeytemizlemeq,i7j1,1)-tnow-aque(yuzeytemizlemeq,i7j1,2)<0,asama
72:
else, asama 74;
asama72 remove:i7j1, yuzeytemizlemeq,asama73;
asama73 assign:i7oncelik=1:next(islem7);
asama74 branch,1:if,nq(yuzeytemizlemeq)<2,asama76:
else, asama77;
asama76 search, yuzeytemizlemeq:min(opttime*sipbuy);
branch,1:if,j==0:asama78:
else, islem7;
asama78 remove:j, yuzeytemizlemeq,asama75
asama77 search, yuzeytemizlemeq:min(sopttime*sipbuy);
branch,1:if,j==0,asama79:
else,islem7
asama79 remove:j, yuzeytemizlemeq,asama75;
asama75 assign:i7oncelik=2:next(islem7);
islem7 queue, yuzeytemizlemeq;
seize: yuzeytemizlemer;
assign:timeyuzeytemizleme =opttime*sipbuy;
delay: timeyuzeytemizleme;
release: yuzeytemizlemer;
assign:ttime=ttime-timeyuzeytemizleme:
i7oncelik=999;
route;
69
station,ambalajlama;
queue,ambalajlamaq;
seize:ambalajlamar;
release:ambalajlamar;
assign:gecikme=duedate-tnow;
BRANCH,1:
İf,gecikme<0,gec:
else,erken;
gec count:geckalanlar;
assign:toplamgecikme=toplamgecikme+abs(gecikme):next(son);
erken count:erkenbitenler;
assign:toplamerken=toplamerken+abs(gecikme);
son tally:flowtime,int(timein):dispose;
assign:ortter=(term1+term2+term3+term4+term5)/5
create,1,simson:simson+1,1;
write,my: nc(geckalanlar),toplamgecikme,
nc(erkenbitenler),toplamerken:dispose;
end;
70