KATLI ATAMA PROBLEMİ VE ÇÖZÜMLERİ

Benzer belgeler
ATAMA (TAHSİS) MODELİ

ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ

Genel Graf Üzerinde Mutlak 1-merkez

Her bir polis devriyesi ancak bir çağrıyı cevaplayabilir. Bir çağrıya en fazla bir devriye atanabilir.

ULAŞTIRMA MODELİ VE ÇEŞİTLİ ULAŞTIRMA MODELLERİ

KISITLI OPTİMİZASYON

Simpleks Yönteminde Kullanılan İlave Değişkenler (Eşitliğin yönüne göre):

a2 b3 cij: birim başına ulaşım maliyeti xij: taşıma miktarı

KONU 4: DOĞRUSAL PROGRAMLAMA MODELİ İÇİN ÇÖZÜM YÖNTEMLERİ I

Bir Doğrusal Programlama Modelinin Genel Yapısı

3.2. DP Modellerinin Simpleks Yöntem ile Çözümü Primal Simpleks Yöntem

YÖNEYLEM ARAŞTIRMASI - I

EM302 Yöneylem Araştırması 2. Dr. Özgür Kabak

İleri Diferansiyel Denklemler

DOĞRUSAL PROGRAMLAMANIN ÖZEL TÜRLERİ

Lineer Cebir. Doç. Dr. Niyazi ŞAHİN TOBB. İçerik: 1.1. Lineer Denklemlerin Tanımı 1.2. Lineer Denklem Sistemleri 1.3. Matrisler

EM302 Yöneylem Araştırması 2. Dr. Özgür Kabak

MAK 210 SAYISAL ANALİZ

DOĞRUSAL OLMAYAN PROGRAMLAMA -I-

VEKTÖR UZAYLARI 1.GİRİŞ

8.Konu Vektör uzayları, Alt Uzaylar

ii) S 2LW 2WH 2LW 2WH S 2WH 2LW S 3( x 1) 5( x 2) 5 3x 3 5x x Maliye Bölümü EKON 103 Matematik I / Mart 2018 Proje 2 CEVAPLAR C.1) C.

EŞİTLİK KISITLI TÜREVLİ YÖNTEMLER

doğrusal programlama DOĞRUSAL PROGRAMLAMA (GENEL)

Yöneylem Araştırması II

YÖNEYLEM ARAŞTIRMASI - III

A GRUBU Noktaları adlandırılmış K 6 tam çizgesinin tam olarak 3 noktalı kaç tane alt çizgesi vardır? A) 9 B) 20 C) 24 D) 60 E) 160

Macar Algoritmasının Sıfırları Kapatma Alt Yordamı Üzerine On a Subroutine for Covering Zeros in Hungarian Algorithm

SİMPLEKS ALGORİTMASI Yapay değişken kullanımı

İkinci dersin notlarında yer alan Gepetto Marangozhanesi örneğini hatırlayınız.

ÖZEL EGE LİSESİ FİBONACCİ DİZİLERİ YARDIMIYLA DEĞERİNİ HESAPLAYAN BİR FORMÜL

KONU 8: SİMPLEKS TABLODA KARŞILAŞILAN BAZI DURUMLAR - II 8.1. İki Evreli Yöntem Standart biçime dönüştürülmüş min /max Z cx (8.1)

BÖLÜM III: Şebeke Modelleri. Şebeke Kavramları. Şebeke Kavramları. Şebeke Kavramları. Yönlü Şebeke (Directed Network) Dal / ok

Zeki Optimizasyon Teknikleri

Atatürk Anadolu. Temel Kavramlar Üzerine Kısa Çalışmalar

İleri Diferansiyel Denklemler

BÖLÜM 1: MADDESEL NOKTANIN KİNEMATİĞİ

Bu bölümde; Çok ölçütlü karar verme yöntemlerinden biri olan TOPSİS yöntemi anlatılacaktır.

YÖNEYLEM ARAŞTIRMASI - III

HESSİEN MATRİS QUADRATİK FORM MUTLAK ve BÖLGESEL MAKS-MİN NOKTALAR

Rakam : Sayıları yazmaya yarayan sembollere rakam denir.

ÜNİTE. MATEMATİK-1 Doç.Dr.Erdal KARADUMAN İÇİNDEKİLER HEDEFLER ÖZDEŞLİKLER, DENKLEMLER VE EŞİTSİZLİKLER

Algoritmalar ve Karmaşıklık

SAYILAR DOĞAL VE TAM SAYILAR

Zeki Optimizasyon Teknikleri

1 Vektör Uzayları 2. Lineer Cebir. David Pierce. Matematik Bölümü, MSGSÜ mat.msgsu.edu.tr/~dpierce/

Matris Cebiriyle Çoklu Regresyon Modeli

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir?

ÖZDEĞERLER- ÖZVEKTÖRLER

köşe (vertex) kenar (edg d e)

2. Aşağıdaki pseudocode ile verilen satırlar işletilirse, cnt isimli değişkenin son değeri ne olur?

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

İleri Diferansiyel Denklemler

Mühendislik Mekaniği Statik. Yrd.Doç.Dr. Akın Ataş

1. Fonksiyonlar Artan, Azalan ve Sabit Fonksiyon Alıştırmalar Çift ve Tek Fonksiyon

13.Konu Reel sayılar

Graf Veri Modeli. Düğümler kümesi. Kenarlar kümesi

Diziler. Yukarıdaki bilgileri bilgisayar belleğinde saklamak için aşağıdaki gibi değişkenler tanımlanır ve değerler bu değişkenlere aktarılır :

SINAV YÖNERGESİ. Numarası : CEVAP. Adı Soyadı : ANAHTARI A) 512 B) 513 C) 256 D) 1024 E) 1025 A) 252 B) 256 C) 3024 D) 126 E) =?

Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans:

BÖLÜM FORMÜLLER ve OTOMATİK TOPLAM Formüller

Ulaştırma ve Atama. Konu 2. Ulaştırma Modeli. Doç. Dr. Fazıl GÖKGÖZ

Örnek. Aşağıdaki veri setlerindeki X ve Y veri çiftlerini kullanarak herbir durumda X=1,5 için Y nin hangi değerleri alacağını hesaplayınız.

28 C j -Z j /2 0

Motivasyon Matrislerde Satır İşlemleri Eşelon Matris ve Uygulaması Satırca İndirgenmiş Eşelon Matris ve Uygulaması Matris Tersi ve Uygulaması Gauss

YÖNEYLEM ARAŞTIRMASI - III

Doğrusal Programlamada Grafik Çözüm

Graflar bilgi parçaları arasındaki ilişkileri gösterirler.

Maksimizasyon s.t. İşçilik, saat) (Kil, kg)

4. BÖLÜM DOĞRUSAL DENKLEM SİSTEMLERİ


EXCEL 2007 ELEKTRONİK ÇİZELGE

: Matematik. : 9. Sınıf. : Sayılar. : (6) Ders Saati

Yrd. Doç. Dr. A. Burak İNNER

HSancak Nesne Tabanlı Programlama I Ders Notları

yöneylem araştırması Nedensellik üzerine diyaloglar I

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

(m+2) +5<0. 7/m+3 + EŞİTSİZLİKLER A. TANIM

8. HAFTA BLM323 SAYISAL ANALİZ. Okt. Yasin ORTAKCI.

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

ALGORİTMA VE PROGRAMLAMA I

Kaynak: A. İŞLİER, TESİS PLANLAMASI, 1997

Diziler İndisli Değişkenler

MATLAB a GİRİŞ. Doç. Dr. Mehmet İTİK. Karadeniz Teknik Üniversitesi Makine Mühendisliği Bölümü

DEÜ MÜHENDİSLİK FAKÜLTESİ MÜHENDİSLİK BİLİMLERİ DERGİSİ Cilt: 13 Sayı:1 sh.1-8 Ocak 2011

MARKOV ZİNCİRLERİNDE DURUMLARIN SINIFLANDIRILMASI

Mustafa Sezer PEHLİVAN. Yüksek İhtisas Üniversitesi Beslenme ve Diyetetik Bölümü

Optimizasyon İçin Kök(Generic) Model (Doğrusal-Olmayan Programlama Modeli)

Konu 2. Y. Doç. Dr. Fazıl GÖKGÖZ

Taşkın, Çetin, Abdullayeva 2. ÖZDEŞLİKLER,DENKLEMLER VE EŞİTSİZLİKLER

x 0 = A(t)x + B(t) (2.1.2)

İleri Diferansiyel Denklemler

4- Turbo Pascal Bilgisayar Programlamada Kullanılan Şart Yapıları

İleri Diferansiyel Denklemler

Matrisler ve matris işlemleri

Matlab - Giriş (İleri Yapı Statiği II. Kısım)

SOBA BORUSU AÇINIM LEVHALARININ KESİLMESİNDE MALİYETLERİN ENKÜÇÜKLENMESİ

Tanım 2.1. X boş olmayan bir küme olmak üzere X den X üzerine bire-bir fonksiyona permütasyon denir.

Transkript:

EGE ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ (YÜKSEK LİSANS TEZİ) KATLI ATAMA PROBLEMİ VE ÇÖZÜMLERİ Güray ŞENER Matematik Anabilim Dalı Bilim Dalı Kodu : 403.06.01 Sunuş Tarihi : 22.06.2007 Tez Danışmanı : Prof. Dr. Pınar DÜNDAR Bornova-İZMİR

Güray ŞENER tarafından YÜKSEK LİSANS tezi olarak sunulan KATLI ATAMA PROBLEMİ VE ÇÖZÜMLERİ başlıklı bu çalışma E.Ü. Lisansüstü Eğitim ve Öğretim Yönergesi nin ilgili hükümleri uyarınca tarafımızdan değerlendirilerek savunmaya değer bulunmuş ve. tarihinde yapılan tez savunma sınavında aday oy ile başarılı bulunmuştur. Jüri Üyeleri : İmza Jüri Başkanı : Prof.Dr. Pınar DÜNDAR.. Üye : Prof.Dr. Urfat NURİYEV.. Üye : Yard.Doç. Mücella GÜNER..

ÖZET KATLI ATAMA PROBLEMİ VE ÇÖZÜMLERİ ŞENER, Güray Yüksek Lisans Tezi, Matematik Bölümü Tez Yöneticisi: Prof. Dr. Pınar DÜNDAR Haziran 2007, 42 sayfa Günümüzde işletme ve mühendislik problemlerinde optimizasyon teorisinin temel modellerinden olan atama problemi sıkça karşılaşılan bir problemdir. İhtiyaca bağlı olarak atama problemi modelinde ; bir işçiye bir iş, bir işçiye birden fazla iş atanması problemleriyle karşı karşıya kalınır. Atama probleminde; iki küme arasında atama yapılabildiği gibi, ikiden fazla küme arasında da atama gerekebilir. Böyle problemlere katlı atama problemi adı verilir. Bu çalışmada öncelikle iki kümeli birebir atama problemi modeli incelenmiştir. Daha sonra iki küme üzerinde çoklu atama problemi ve n küme üzerindeki çoklu atama problemi ve matematiksel modeli ele alınmıştır ve bu problemlerin her birine çözüm yöntemi verilerek birer örnekle açıklanmıştır. Anahtar Sözcükler: Atama Problemi, Katlı Atama Problemi, Macar Metodu.

ABSTRACT MULTİ-DİMENSİONAL ASSİGNMENT PROBLEM AND SOLUTİONS ŞENER, Güray MSc in Mathematics Supervisor: Prof. Dr. Pınar DÜNDAR June 2007, 42 pages At the present day, one of the basic models of the optimization theory is assignment problem which is often met in the business and engineering problems. Depending on need, at the assignment problem, the cases such as one work to one worker and more works to one worker can be used. At the assignment problem, the assignment can be done between two sets. In addition, the assignment can be done between more than two sets. This kind of problems is called Multi-Dimensional Assignment Problem. Firstufully, the model of one-to-one assignment problem between two sets was analysed. Then multi-assignment problem between two sets and multi-assignment problem between n sets were analysed. The mathematical models of these problems were expressed. Finally, some solution methods were given for these problems and the problems were explained by giving an example to each one. Keywords: Assignment Poblem, Multi-Dimensional Assignment Problem, Hungarian Method

TEŞEKKÜR Bu çalışmanın oluşturulmasında ve tamamlanmasında değerli önerileri ve bilimsel bilgileri açısından bana destek olup, samimi yardımlarını esirgemeyen sayın hocam Prof.Dr. Pınar DÜNDAR a ve beni her zaman destekleyen, teşvik eden ve anlayış gösteren aileme teşekkür ederim.

İÇİNDEKİLER Sayfa ÖZET...V ABSTRACT.VII TEŞEKKÜR...IX 1.GİRİŞ.1 2.ATAMA PROBLEMİ...2 3. İKİ KATLI ATAMA PROBLEMİ...22 4. N KATLI ATAMA PROBLEMİ...31 5.SONUÇ...40 KAYNAKLAR DİZİNİ..41 ÖZGEÇMİŞ 42

1. GİRİŞ Doğrusal programlamadaki önemli problemlerden bir tanesi atama problemidir. Ulaştırma tipi doğrusal programlama probleminde iki nokta arasında bir ticari malın akışı söz konusu iken, atama problemlerinde iki nokta arasında bir bağ kurmak söz konusudur. Karar değişkenleri 0-1 türündendir. Atama problemleri, iki ayrı türdeki nesnelerin optimal eşleştirilmesiyle ilgili problemleri kapsar. Örneğin, makinelere atanacak işler, müşterilere atanacak satış temsilcileri vb. gibi. Bazı durumlarda da birebir atamanın dışında, bir nesnenin birden fazla atanabildiği durumlar da vardır. İki ve çok katlı atama problemlerinde, değişkenler yine 0-1 değerlerini alabileceği gibi 1 den yüksek değerler de alabilirler. N katlı atama probleminde n küme üzerinden atama yapılır. Bu atamanın yapılabilmesi için her kümede, her işi yapabilen joker elemanlar kullanılır. Atamalar, bu joker elemanların o işi yapma maliyetleriyle, kümedeki diğer elemanların aynı işi yapma maliyetleri karşılaştırılarak yapılır. Böylece yapılması istenen iş, joker eleman sayesinde kümedeki tüm elemanların kullanılmasına gerek kalmadan minimum maliyetle yapılabilir.

2.ATAMA PROBLEMİ Atama probleminde yapılması gereken n tane iş vardır. Bu görevleri yapmaları için de n ayrı kişi bulunmaktadır. Burada her işçinin üzerine aldığı her iş için verimliliğinin sabit olduğu varsayımı altında toplam başarının maksimum olduğu bir düzenleme aranmaktadır. Yani her göreve mutlaka bir kişinin verilmesi ve bir kişinin sadece tek bir göreve atanması koşuluyla en küçük toplam maliyeti doğuracak birebir kişi-görev eşleşmesinin bulunması istenmektedir. Bu problemin modeli aşağıdaki gibi düzenlenir. Atama Modeli Verilen n işin n işlem noktasına dağıtımına dönük problemler için geliştirilen modellere Atama Modeli denir. Genel Model Atama probleminin parametreleri, karar değişkenleri ve amacı şöyle özetlenebilir. Parametreler: Sistemin özelliğine bağlı olarak belirlenen iş ve işlem noktalarının yanında, problemin kontrol edilemeyen değişkeni(parametresi), i inci işin j inci işlem noktasına verilmesinin sistem etkinliğine katkı(kâr,maliyet,v.b) göstergesi c ij lerdir.

Karar değişkenleri: Problemin çözümüyle i inci işin hangi işlem noktasına verileceği belirleneceğinden,problemin karar değişkenleri; X ij = 1, i inci iş j inci işleme atanırsa X ij = 0, diğer durumlarda şeklindedir. Amaç: Toplam etkinliği (çoğu kez toplam maliyeti en küçüklemek) en iyilemektir. Kısıtlar: Problemin oluşturduğu sistemin özel yapısının gerektirdiği kısıtlar (belirli bir işin belirli bir işlem noktasına yaptırılamayacağı vb. gibi) dışında, problemin temel kısıtlarını, her işin yalnız bir işlem noktasına, her işlem noktasına yalnız bir işin atanacağı oluşturur. Karar değişkenlerinin 0 veya 1 değerlerini alabilmelerinin yanında, her iş yalnız bir işlem noktasına; her işlem noktasına da yalnız bir iş atanacağından; atama modeli, n xij= 1, j için, i= 1 n xij= 1, i için, j= 1 x ij =0 veya 1 kısıtları altında,

Eniyi x 0 = cij xij şeklinde yazılır. i j Atama modeli ile ilgili aşağıdaki açıklanan özellikler geçerlidir. Özellik 1: Her işlem noktasına bir iş verileceğinden, yapılan bir atama sonrası modelin bağlı satır ve sütunu işlem dışı kalacaktır. Toplam maliyet, ayrı ayrı atama maliyetlerinin toplamına eşit olduğundan, bir hücreye atama yapıldıktan sonra, dağıtım tablosunun tüm maliyetleri toplamı,ilgili satır ve sütun maliyetlerinden atama yapılan hücre maliyetinin farkları kadar azalır. Böylece, bir satırda en küçük maliyetli hücreye atama yapıldığında, ilgili satır öğelerinden, seçilen hücre maliyetinin farklarıyla bulunan değerler(indirgenmiş öğeler), dağıtım tablosu toplam maliyetlerine esas alınabilir. Bağlı olarak, atama modelinin çözümünde dağıtım tablosunun indirgenmiş tablosu kullanılabilir. Özellik 2: Bir atama modelinin en iyi çözümünde n tane karar değişkeni sıfırdan büyüktür. Bu nedenle, atama modelinde amaç fonksiyonunun en iyi değerini veren birden fazla çözüm olabilir. O halde, amaç fonksiyonunun en küçük değeri araştırılan ve c ij 0 olan bir atama modelinin,indirgenmiş tablosunda, indirgenmiş tablo değerleri sıfır olan bir uygun çözüm en iyi çözüm olur. (İndirgenmiş maliyetin alabileceği en küçük değer sıfırdır.)

TABLO I (1) (2) (j) (n) (1) (2) (i) (n) c 11 c 12.. c 1j.. c 1n c 21 c 22.. c 2j.. c 2n............ c i1 c i2.. c ij.. c in c n1 c n2.. c nj.. c nn şeklinde bir tablo verilmiştir; m n olsa da dengeli hale dönüştürülebileceğinden m=n alınmıştır. Aşağıdaki teorem, atama probleminin özel yöntemle çözümünü oluşturmaya yöneliktir. Tablo I in i numaralı satırlarından p i (1 i n) sayılarını, c ij (1 i n, 1 j n) fiyatları j numaralı sütunlarından k j (1 j n) sayılarını çıkarırsak c ij =c ij -p i -k j (1 i n, 1 j n) şekline dönüşür; yani TABLO I ile verilen esas problem, aşağıdaki TABLO II ile verilen yeni bir atama problemine dönüşür.

TABLO II İşler (1) (2) (j) (n) p i İşçiler c 11 c 12.. c 1j.. c 1n c 21 c 22.. c 2j.. c 2n............ c 1i c 2i.. c ij.. c in............ c n1 c n2.. c nj.. c nn p 1 p 2 p i p n k 1 k 2.. k j.. k n Bu yeni atama probleminde, amaç fonksiyonu : Min z = n n J= 1 i= 1 c x ij ij dir. TEOREM: TABLO II ile verilen yeni atama probleminin z amaç fonksiyonunu minimum yapan atama, TABLO I ile verilen esas atama probleminin amaç fonksiyonunu da minimum yapar.

İspat: n n n n z = c x = ( c p k ) x i j i j i j i j i j j= 1 i= 1 j= 1 i= 1 = n n n n n n c x p x k x dir. i j i j i i j j i j j= 1 i= 1 j= 1 i= 1 j= 1 i= 1 Bu toplamda i) n n c ij xij= z, j= 1 i= 1 ii) n n n n n n n p x = p x = p ( x ) = p i ij i ij i ij i j= 1 i= 1 i= 1 j= 1 i= 1 j= 1 i= 1 iii) n n n n n k x = k ( x ) = k j i j j i j j j= 1 i= 1 j= 1 i= 1 j= 1 olup yazarak bunları yeni atama probleminin z amaç fonksiyonunda yerlerine n n z = z ( p+ k ) i i= 1 j= 1 j dir.

n n pi+ k j ifadesi x ij değişkenlerinden bağımsız olduğundan yeni i= 1 j= 1 problemin z amaç fonksiyonunu minimum yapan atama, esas problemin z amaç fonksiyonunu da minimum yapar. Sonuç: i, j indisleri çözümdeki (atamadaki) değişkenlere, yani x ij =1 lere ait olmak üzere ve yeni problemdeki koşuluyla c i j fiyatlarının hiçbiri negatif olmamak Min z = 0 c ij = 0 (1 i<n, 1 j<n) ve bu taktirde n n z = z ( p + k ) i j Min z = i= 1 j= 1 n n p i+ k j dir. i= 1 j= 1 Şu halde esas problemi, satır yada sütunlarından çıkararak c ij fiyatlarının hiç biri negatif olmayan yeni bir atama problemine dönüştürülüp Min z = 0 atamasına ulaştığımız zaman, bu atama aynı zamanda esas problemin z amaç fonksiyonunu da minimum yapan atamadır. 2.1. MACAR METODU Macar çözüm yöntemi, Kuhn tarafından geliştirilmiş sade, kolayca anlaşılabilen ve son derece etkili bir çözüm yöntemidir. Macar yöntemi aşağıdaki gibi ifade edilmektedir:

Adım 1: Maliyet matrisinin her satırı için, satırdaki en küçük değere sahip elemanı satırdaki tüm elemanlardan çıkarılır. Adım 2: Yukarıdaki işlemlerden sonra maliyet matrisinin her sütunu için, sütundaki en küçük değere sahip elemanı sütundaki tüm elemanlardan çıkarılır. Adım 3: Yukarıda yapılan işlemlerden sonra elde edilen matrise indirgenmiş matris denir. İndirgenmiş matris üzerinde oluşan sıfır elemanlarını kapatmak üzere gerekli satır ve sütunların üzerine çizgi çekilir. Burada dikkat edilmesi gereken, en az sayıda çizgi kullanılmasıdır. Eğer kullanılan en az çizgi sayısı maliyet matrisinin boyutu olan sayıya eşit ise o taktirde en iyi çözüm bulunmuş demektir. İşlem durdurulur. Aksi halde Adım 4 e gidilir. Adım 4: Sıfır elemanlarını kapatmak için satır ve sütunların üzerine çizilmiş çizgilerin kapatmadığı elemanlar arasından en küçük değere sahip olanı bulunur. Bu değer üzerinden çizgi geçmeyen elemanlardan çıkarılır ve üzerinden iki çizgi geçen elemanlara eklenir. Böylece yeni bir indirgenmiş matris elde edilir. Adım 3 e geri dönülür. Macar yönteminde sade bir anlatım vardır fakat problemin büyüklüğü arttıkça, bilgisayarda çözüm gündeme geldiğinde, üçüncü adımda istenen tüm

sıfırları kapatmak üzere en az sayıda çizgilerin çizilmesi işi için sistematik bir yöntem tarif edilmesi gerekir. Bu iş için yapılan çeşitli çalışmalardan aşağıda bahsedilmiştir. Bunlardan ilki Gillett (1976) tarafından önerilen basit ve etkili bir sezgisel yöntemdir. Küçük problemler için kolay ve basitçe uygulanabilir bir yapıdadır. Diğer bir yöntem ise Bazaraa ve diğerleri (1990) tarafından önerilen en yüksek ağ akış yöntemidir. Genel olarak bu yöntem; bir G(V,E) grafında, bir kaynak K tepesi ile bir son S tepesi arasında oluşan ağ üzerindeki tüm bağların kapasitesi 1 olarak sınırlandırılacak şekilde en yüksek akış miktarının hesaplanması biçimindedir. Çünkü bu Macar yöntemindeki üçüncü adımda gereken en az sayıdaki çizgi sayısını vermektedir. Bir diğer yöntem ise Papadimitrou ve Steiglitz (1982) tarafından önerilen ikiye ayrılabilir çizgelerde ağırlıklı eşleme (Weighted matching problem in bipartite graphs) yöntemidir. Bu yöntem oldukça karmaşık olup derinlemesine ağ bilgisi ve ağırlıklı eşleme yöntemine aşina olmayı gerektirir. Lotfi (1989) tarafından gerçekleştirilen çalışmada Gillett yönteminin sakıncalı yönleri gösterilmiş ve bu yöntemin belirli problemler için çalışmayacağı ispat edilmiştir. Bütün bu çalışmalar arasında, maliyet matrisinin üzerinden ayrılmadan işlemleri yürütecek daha sade ve kolay bir yöntem üzerinde çalışılmıştır. Geliştirilen çözüm yönteminde ilk iki adım, Macar yöntemindeki ilk iki adımla aynıdır. Macar yönteminin üçüncü adımı ona uygun sade bir şekilde çizgilerin sistematik bir yöntemle çizilmesini sağlayacak şekilde tamamlanır. Çizgilerin çekilmesi işleminin ana hatları şunlardır:

Sıfır eleman sayısı 1 olan bir sütun seçerek sıfır elemanının bulunduğu bir satıra yatay bir çizgi çizilir. Bu satıra çizgi çizildiğinde başka sütunlarda da üzeri çizilen sıfır elemanları olabilir. Üzeri çizilen sıfır elemanları nedeniyle ilgili sütundaki sıfır eleman değerleri birer düşürülür. Bu durumda sıfır eleman sayısı 1 olan yeni sütunlar ortaya çıkabilir. Bu işlem sıfır eleman sayısı 1 olan hiçbir sütun kalmayıncaya kadar devam eder. Bu işlemin aynısı satırlar için yapılır. Sıfır eleman sayısı 1 olan her satırdaki sıfır elemanı hangi sütunda ise o sütuna dikey çizgi çizilir. Çizilen bu çizgi ile üzeri çizilen sıfır elemanları nedeniyle ilgili satırlardaki sıfır eleman değerleri birer düşürülür. Eğer önceki adımda çizilen yatay çizgiler, sıfır eleman sayısı 1 olan bir satıra çizilmişse bu yatay çizgiler kaldırılır. Hala üzeri kapatılmamış sıfır elemanları varsa, üzerine çizgi çekilmemiş ve sıfır eleman sayısı 2 veya daha fazla sütun ve satır sayıları bulunur. Sütun sayısı fazla ise tüm sıfırlar yatay çizgilerle kapatılır,aksi halde dikey çizgilerle kapatılır. Bu işlemlerden sonra tüm sıfırlar en az sayıda çizgi ile kapatılmış olur. Bundan sonra yeniden Macar metoduna dönülerek çözüme devam edilir. Geliştirilen çözüm yöntemini adımları aşağıdaki gibidir:

2.1.1. Geliştirilen Çözüm Yöntemi Adım 1: Maliyet matrisinin her satırı için, satırdaki en küçük değere sahip olan eleman bulunup, o satırdaki tüm elemanlardan çıkarılır. Adım 2: Maliyet matrisinin her sütunu için, sütundaki en küçük değere sahip olan eleman bulunup, o sütundaki tüm elemanlardan çıkarılır. Adım 3: Yukarıdaki işlemlerden sonra elde edilen indirgenmiş matriste; -Adım 3.1: Matriste her satır ve her sütundaki sıfır elemanı sayıları bulunup, bu sayıları matriste satır ve sütunların karşısına yazılır. -Adım 3.2: Önce sütunlardaki sıfır elemanı sayıları incelenir. Eğer tüm sütunlardaki sıfır eleman sayıları 2 veya daha fazla ise Adım 3.3 e gidilir. Aksi halde Adım 3.4 e gidilir. -Adım 3.3: En az sıfır elemanına sahip sütun seçilerek, bu sütunda yer alan sıfır elemanlarının satırlarına çizgi çizilir. Her çizgi çizildiğinde, o satırın başka sütunlarında üzeri çizilen sıfır elemanları da olabilir. Üzeri çizilen sıfır

elemanları nedeniyle ilgili sütunlardaki sıfır elemanı değerleri birer düşürülür. Daha sonra sütunlardaki sıfır elemanı sayıları bir kez daha incelenir. Eğer tüm sütunlarda sıfır elemanı sayısı 2 veya daha fazla ise Adım 3.5 e gidilir. Aksi halde Adım 3.4 e gidilir. -Adım 3.4: Sıfır eleman sayısı 1 olan bir sütun seçilerek sıfır elemanının bulunduğu satıra yatay bir çizgi çizilir. Çekilen bu çizgi ile başka sütunlarda da üzeri çizilen sıfır elemanları olabilir. Üzeri çizilen sıfır elemanları sebebiyle ilgili sütunlardaki eleman sayıları birer düşürülür. Bu durumda sıfır eleman sayısı 1 olan yeni sütunlar ortaya çıkabilir. Bu işleme sıfır elemanı sayısı 1 olan hiçbir sütun kalmayıncaya kadar devam edilir. -Adım 3.5: Satırlardaki sıfır eleman sayıları incelenir. Eğer tüm satırlarda sıfır eleman sayısı 2 veya daha fazla ise Adım 3.6 ya gidilir. Aksi halde Adım 3.7 ye gidilir. -Adım 3.6: En az sıfır elemanına sahip satır seçilerek, bu satırdaki sıfır elemanlarının sütunlarına çizgi çizilir. Çizilen her çizgi ile başka satırda da üzeri çizilen sıfır elemanları olabilir. Üzeri çizilen sıfır elemanları sebebiyle ilgili satırlardaki sıfır eleman değerleri birer düşürülür. Eğer tüm satırlarda sıfır elemanı sayısı 2 veya daha fazla ise Adım 3.8 e gidilir. Aksi halde Adım 3.7 ye gidilir.

-Adım 3.7: Sıfır elemanı sayısı 1 olan her satırdaki sıfır elemanı hangi sütunda ise o sütuna dikey çizgi çizilir. Çizilen bu çizgi ile üzeri çizilen diğer sıfır elemanları sebebiyle ilgili satırlardaki sıfır elemanı sayıları birer düşürülür. Daha önce çizilen yatay çizgiler, eğer sıfır elemanı sayısı 1 olan bir satıra çizilmişse bu yatay çizgiler kaldırılır. -Adım 3.8: Üzerine çizgi çekilmeyen satır ve sütunlarda sıfır elemanı varsa,sıfır elemanı sayısı 2 veya daha fazla olan ve üzerine çizgi çekilmemiş sütun ve satır sayıları bulunur. Sütun sayısı fazla ise tüm sıfırlar yatay çizgilerle kapatılır. Aksi halde tümü dikey çizgilerle kapatılır. Böylece tüm sıfırlar en az çizgi ile kapatılmıştır. Eğer çizgi sayısı, işlemin boyutuna eşitse işlem durdurulur. Aksi halde Adım 4 e gidilir. Adım 4: Sıfır elemanlarını kapatmak için satır ve sütunların üzerine çizilmiş çizgilerin üzerinden kapatmadığı elemanlar arasından en küçük değere sahip olanı bulunur. Bu değer, üzerinden çizgi geçmeyen tüm elemanlardan çıkarılır ve üzerinden iki çizgi geçen elemanlara eklenir. Yeni bir indirgenmiş matris elde edilmiştir. Adım 3 e geri dönülür. 2.1.2. SONUÇ: Geliştirilen bu yöntem ile Macar yönteminin üçüncü adımındaki boşluk daha sade ve kolay bir şekilde doldurulmaktadır. Bu yöntem,bilgisayar

ortamında çözümler için programlama açısından da kullanışlıdır. Diğer tüm yöntemler, önerilen bu yöntemden daha karmaşık işlemleri kapsarlar. 2.2. Atama Modelinde Özel durumlar Karşılaşılan atama problemi için geliştirilen karar modeli, daha önce bahsedilen modele tam olarak benzemeyebilir. Böyle durumlarda da, modelde uygun düzenlemeler yapılarak problemin çözümü sağlanabilir. Tanım 2.2.1 : İşlem noktası sayısı iş veya iş gören sayısı eşit değilse, problemin yapısı da göz önüne alınarak, modele yeterince aylak satır veya sütun eklenip, karşı gelen c ij =0 alınarak en iyi çözüm bulunur. Bu tip problemlere dengelenmiş atama problemi denir. Tanım 2.2.2 : Dengelenmiş atama problemlerinde dikkat edilmesi gereken nokta; satır ve sütun sayısını eşit hale getirmektir. Bu da denge koşulu olarak adlandırılır. Bazı işlem noktalarında bazı işlemlerin yapılması mümkün değilse, ilgili hücreye yeterince büyük maliyet yüklenerek, karşı gelen karar değişkeninin değerinin sıfır olması sağlanır.

Problemin özelliği gereği tabloda eksi işaretli parametreler var ise, ilgili satır veya sütun öğelerine, eksi işaretli parametreyi sıfır yapacak büyüklükte eklentiler yapılır. Şimdi bahsedilen atama problemini örneklerle açıklayalım: Örnek 1 : Toplam giderlerin en küçüklenmesi istenen bir atama modeline ilişkin değerler aşağıdaki tabloda verilmiştir. Modelin en iyi çözümünü bulunuz. İşlem Noktaları İşler 1 2 3 4 1 5 6 3 2 2 4 3 2 4 3 5 4 3 2 4 6 5 4 3 Birinci Adım:İlk satır içindeki en küçük {c ij }=c 14 =2 ve izleyen satırlar için de en küçük değerler c 23 =2, c 34 =2, ve c 44 =3 olduğundan, çıkarma işlemlerinden sonra aşağıdaki tablo elde edilir. 1 2 3 4 1 3 4 1 0 2 2 1 0 2 3 3 2 1 0 4 3 2 1 0

İkinci Adım: Yukarıdaki satırlara göre indirgenmiş tabloda bu kez sütunlara göre en küçük değerler seçilir ve çıkarma işlemleri yapılırsa, aşağıdaki indirgenmiş tablo bulunur. 1 2 3 4 1 1 3 1 0 2 0 0 0 2 3 1 1 1 0 4 1 1 1 0 Üçüncü Adım: İkinci adımın sonunda bulunan tabloda sıfır öğeleri taşıyan en az doğru sayısı 2 olup, işlem noktası sayısından küçüktür. O halde en iyi çözüme erişilmemiştir. Dördüncü Adım: Doğrular üzerinde olmayan en küçük öğe 1 dir. Doğrular üzerinde olmayan her öğeden 1 çıkartılır, doğruların kesim noktalarında olan öğelere 1 bir eklenir ise aşağıdaki tablo bulunur. 1 2 3 4 1 0 2 0 0 2 0 0 0 3 3 0 0 0 0 4 0 0 0 0 Yeni tabloda sıfırları taşıyan en az doğru sayısı dört olup, işlem noktası sayısına eşittir. Böylece en iyi çözüme erişilmiştir.

Beşinci Adım:Dördüncü adımın sonunda bulunan tabloya göre, birinci işlem noktasına işgörenlerden herhangi biri, ikinci işlem noktasına birinci işgören dışında diğerlerinden biri, üçüncü işlem noktasına herhangi biri ve son olarak ta, dördüncü işlem noktasına ikinci işgören dışında kalanlardan birirnin atanmasıyla en iyi çözümün bulunacağı anlaşılmaktadır. Sözgelimi, diğer x ij =0 olmak üzere, x 11 =1, x 22 =1, x 33 =1, x 44 =1 bu çözümlerden biridir. Benzer şekilde, x 14 =1, x 21 =1, x 32 =1, x 43 =1 de en iyi çözüm olmaktadır. Görüldüğü gibi modelin birden fazla en iyi çözümü vardır, ancak amaç fonksiyonunun bu çözümlere karşı gelen değerleri aynıdır. Amaç fonksiyonunun yukarıda verilen iki ayrı en iyi çözüme karşı değerleri araştırılırsa, her ikisi için de x 0 =14 olduğu görülür. Örnek 2 : Bir işletmede geliştirilen dört yeni üretim biçiminin, üç kaynak kullanılarak uygulanması düşünülmektedir. Yeni üretim biçimlerinin ilgili kaynakta uygulanmasıyla birim kâr artışları şöyledir. KAYNAKLAR Üretim Biçimleri 1 2 3 1 4 5-3 2 3 1-3 6-8 4-2 3 4

Yeni üretim biçiminin uygulanmasıyla elde edilecek kârın en büyük değeri araştırılan bu problemde, işlem sayısı iş sayısından küçük olup, birinci tür üretimin üçüncü kaynakta işleme girmesi üç birim zarara neden olurken, dördüncü tür üretimin birinci kaynakta işleme girmesi iki birim zarara neden olur. Ayrıca, ikinci tür üretimin üçüncü işlem noktasında ve üçüncü tür üretimin ikinci işlem noktasında yapımı da mümkün olmamaktadır. Verilen bu problemin çözümü için öncelikle gerekli düzenlemeler yapılmalıdır. Birinci satırdaki öğelerin her birine 3 er birim eklenir, dördüncü satırdaki öğelerin her birine 2 şer birim eklenir, ikinci ve üçüncü satırdaki yapımı mümkün olmayan öğelerin katkısı -10 birim alınır ve bu iki satırdaki öğelerin her birine 10 ar birim eklenirse, aylak işlem noktası 4.işlem olmak üzere, atama tablosu; 1 2 3 4 1 7 8 0 0 2 13 11 0 0 3 16 0 18 0 4 0 5 6 0 şeklinde olmaktadır. Atama programları ile bir maksimum problemi, belirli ayarlama işlemleriyle kazanç tablosunun masraf tablosu haline dönüştürülerek çözümlenebilir.

Kazanç tablosunun masraf tablosu haline dönüştürülmesi için kazanç tablosunda yer alan en büyük sayı saptanır ve tablonun diğer tüm sayıları en büyük sayıdan çıkarılır. Böylece elde edilen yeni tablo kazanç azalmalarını ifade eder. Kazanç azalmalarının minimum yapılması ise, gerçekte kazancın maksimum yapılması demektir. Bu amaçla, tablonun en büyük katkı göstergesi olan c 33 =18 den, diğer öğeler çıkartılırsa aşağıdaki tablo bulunur. 1 2 3 4 1 11 10 18 18 2 5 7 18 18 3 2 18 0 18 4 18 13 12 18 Atama tablosunun satırlarına göre bulunan indirgenmiş tablo aşağıdaki gibidir: 1 2 3 4 1 1 0 8 8 2 0 2 13 13 3 2 18 0 18 4 6 1 0 6 Bu tabloda sütunlara göre indirgeme işlemi yapılıp, sıfır öğelerine göre dikey ve yatay doğrular çizilirse aşağıdaki tablo bulunur.

1 2 3 4 1 1 0 8 2 2 0 2 13 7 3 2 18 0 12 4 6 1 0 0 Bu tabloda bulunan sıfırlar üzerinden geçecek ve en az sayıda, yatay ve düşey çizgiler geçirilerek sıfır değerleri çizilirler. Bu çizgilerin sayısı tablonun satır veya sütun sayısına eşit ise o tablonun sıfırlarının bulundukları yerlerle uygun atamaların yapılması, bizi en elverişli çözüme götüren bir kriter sayılmıştır. Elde edilen indirgenmiş tabloda çizilen doğru sayısı işlem noktası sayısına eşit olduğundan en iyi çözüme ulaşılmıştır. Çözüme, tablonun en az sıfırının bulunduğu satır veya sütuna ilk atamanın yapılması ile başlamak kolaylık getirmektedir. Tablonun her satır ve sütununa bir ve ancak bir atama yapmak üzere, tablo tamamlanarak çözüm bitirilir. Son indirgenmiş tabloya göre bir tek en iyi çözüm olup, diğer tüm i ve j ler için x ij =0 olmak üzere, en iyi çözümü veren karar değişkenleri, x 12 =x 21 =x 33 =x 44 =1 dir. Amaç fonksiyonunun karşı gelen değeri ise, ilk tablodaki değerler ile ; En büyük x 0 =5x1 + 3x1 + 8x1 + 0x1 En büyük x = 16 birim olarak bulunur.

3. İKİ KATLI ATAMA PROBLEMİ İki boyutlu atama problemi, m nesneli bir küme ile (örneğin işler), n nesneli bir kümenin (örneğin işçiler) eşleşmesini sağlar. Ek özellik olarak burada her işe atama yapılma zorunluluğu yoktur ve her işçi de kullanılmak zorunda değildir. Bir atama probleminin formülasyonu, a ij ayrıtlarının belirtilmesini gerektirir. Bir a ij ayrıtı,ilk kümeden i nesnesi ile ikinci kümeden j nesnesi arasında bir atama belirtir. Her a ij ayrıtına bir c ij maliyeti karşılık gelir. Problemin genel gösterilimi için alınan herhangi I ve J kümeleri üzerinde bazı tanımlar kullanacağız. I={0,1,,m} ve J={0,1,.,n} olsun. Tanım 3.1.1. : A kümesi ; her biri c ij maliyetli ayrıtların bir alt kümesidir. Yani A {(i,j) (i,j) IxJ} Tanım 3.1.2. : A(i); kökünü ilk kümedeki i elemanından alan, 2.kümedeki uygun elemanların kümesini gösterir. A(i)={j (i,j) A }

Tanım 3.1.3. : B(j); sonu ikinci kümedeki j elemanı olan, 1. kümedeki uygun elemanların kümesini gösterir. B(j)={i (i,j) A } i I için 0 A(i) ve j J için 0 B(j) olur. Buradan hareketle A(0)=J ve B(0)=I yazılabilir. Genelleme verilebilir. Örneğin i nesnesi yapabilmek için nesnelerin çoklu atamalarına izin m i 1 kez ve benzer şekilde j nesnesi de n j 1 kez atanabilir. Sonuç olarak atama probleminin modeli aşağıdaki gibidir: c x Z min= ij ( i, j) A ij xij= mi (i=0,1,..,m) j A( i) xij= n j (j=0,1,...,n) i B( j) xij { 0,1} i 0 ve j 0 için; xij {0,1,., m i } j=0 ve i=0,1,.,m için; xij {0,1,., n j } i=0 ve j=0,1,.,n için; xij {0,1,,min{ m 0, n 0 }} i=0 ve j=0 için.

1 ve 1 dir. m i n j m i ; 1.kümedeki i nesnesi için, 2.kümedeki 0 elemanından farklı atanabileceği elemanların sayısını belirtir. n j ; 2.kümedeki j nesnesi için, 1.kümedeki 0 elemanından farklı atanabileceği elemanların sayısını belirtir. Tanım 3.1.4. : m i 1 ve n j 1 olduğundan m 0 = n j ve n 0 = mi olarak tanımlanır. i I için 0 A( i) ve j J için 0 B( j) özelliği sağlandığından; A(i) ve B(j) nin eleman sayıları, i I için m+ 1 A( i) n j= 1 ve j J için n + 1 B( j) koşullarını sağlar. j m i= 1 i 3.2. Maliyetler: Maliyet hesabı, var olan c ij maliyetleri üzerinden hesaplanacak olan c ij maliyetleri ile yapılır. Bu iki maliyet türü arasındaki ilişki, c ij =c ij - c i0 c 0j + c 00 şeklindedir. Burada c ij maliyetinin tanımından da görüleceği gibi c 0= 0, c = ve c 00= 0 olur. Her bir ayrıt için ayrı ayrı hesaplanacak olan c ij 0 j 0 maliyetleri ile yapılmak istenen, 0 numaralı eleman ile diğer elemanları i karşılaştırmaktır. c ij maliyetinin pozitif olanları çözüm kümesine alınmaz.

Çünkü c ij maliyetinin pozitif olması demek, 0 numaralı elemanın aynı işi daha ucuza yaptığı anlamına gelir. Dolayısıyla ilgili ayrıtlar çözüm kümesinden silinirler. verilebilir: 2 boyutlu atama probleminin çözümüne yönelik şöyle bir algoritma A 0: Başla A 1: Z min = cij xij A 2: i = 0,,m için A(i)={ j (i,j) A } leri yaz. j = 0,.,n için B(j)={ i (i,j) A } leri yaz. A 3: i = 1,,m için m i leri bul. j = 1,.,n için n j leri bul. A 4: m 0 = n n j, n 0 = j= 1 m i= 1 m i A 5: xij= m i ( i=0,,m), j A ( i ) xij= n j ( j=0,.,n) i B ( j )

A 6: For i : 1 to m For j : 1 to n If c ij > 0 then End. End. c ij =c ij - c i0 c 0j + c 00 A 7: : For i : 1 to m If For j : 1 to n c ij 0 then X ij değişkenlerini S çözüm kümesine at. End. End. A 8: S çözüm kümesindeki X ij leri amaç fonksiyonu Z min de yerine koy. A 9: Z min hesapla. A 10: Bitir. Şimdi iki boyutlu atama problemini bir örnekle açıklayalım: Örnek: I={0,1,2,3,4} ve J={0,1,2,3,4,5} alalım. A={(0,0),(0,1),(0,2),(0,3),(0,4),(0,5),(1,0),(2,0),(3,0),(4,0),(1,3),(1,5),(2,4), (2,5),(3,1),(3,4),(4,1),(4,2)}

A(0)=J B(0)= I A(1)={0,3,5} B(1)={0,3,4} A(2)={0,4,5} B(2)={0,4} A(3)={0,1,4} B(3)={0,1} A(4)={0,1,2} B(4)={0,2,3} B(5)={0,1,2} Maliyetleri gösteren tablo ise şu şekilde olsun: c ij 0 1 2 3 4 5 0 10 14 15 6 11 8 1 8 - - 9-13 2 12 - - - 16 12 3 9 5 - - 10-4 7 8 12 - - - Amaç fonksiyonumuz: Z min =10x 00 +8x 10 +12x 20 +9x 30 +7x 40 +14x 01 +15x 02 +6x 03 +11x 04 +8x 05 +5x 31 +8x 41 +12x 42 +9x 13 +16x 24 +10x 34 +13x 15 +12x 25

şeklindedir. Bu problemde; m 1 =2 n 1 =2 m 2 =2 n 2 =1 m 3 =2 n 3 =1 m 4 =2 n 4 =2 n 5 =2 m 0 = n 1 + n 2 + n 3 + n 4 + n 5 =8 n 0 = m 1 m 2 m 3 m 4 + + + =8 olur. Buradaki kısıtların denklemleri ise şu şekildedir: X 00 +X 01 +X 02 +X 03 +X 04 +X 05 =m 0 =8 X 00 +X 10 +X 20 +X 30 +X 40 =n 0 =8 X 10 +X 13 +X 15 =m 1 =2 X 01 +X 31 +X 41 =n 1 =2 X 20 +X 24 +X 25 =m 2 =2 X 02 +X 42 =n 2 =1 X 30 +X 31 +X 34 =m 3 =2 X 03 +X 13 =n 3 =1 X 40 +X 41 +X 42 =m 4 =2 X 04 +X 24 +X 34 =n 4 =2 X 05 +X 15 +X 25 =n 5 =2

X ij { 0,1} i 0 ve j 0 için X ij { 0,1,2} i=1,2,3,4 ve j=0 için X ij { 0,1,2} X ij {0,1} i=0 ve j=1,4,5 için i=0 ve j=2,3 için X ij { 0,1,2,3,4,5,6,7,8} i=0 ve j=0 için olur. Bu problemi iş-işçi problemi şeklinde düşünürsek, 0.işi herkes yapabiliyor ve 0.işçi her işi yapabiliyor. Yani 0 elemanı her iki kümede de joker eleman olarak düşünülebilir. Çözümlerden biri X 00 =8 alınırsa 0 numaralı elemanı içeren ayrıtların hepsi 0 değerini alır ve diğer kalan ayrıtlara atama yapılır. Bilinen atama problemine döner. Maliyetlerle ilgili olarak, i 0 ve j 0 olmak üzere her ayrıt için ayrı ayrı c ij maliyetini hesaplayacağız ve bunların pozitif olanlarını çözüm kümesinden çıkaracağız. c 13 =c 13 -c 10 -c 03 +c 00 = 9-8-6+10=5>0 c 15 =c 15 -c 10 -c 05 +c 00 = 13-8-8+10=7>0 c 24 =c 24 -c 20 -c 04 +c 00 = 16-12-11+10=3>0 c 25 =c 25 -c 20 -c 05 +c 00 = 12-12-8+10=2>0

c 31=c 31 -c 30 -c 01 +c 00 = 5-9-14+10=-8<0 c 34 =c 34 -c 30 -c 04 +c 00 = 10-9-11+10=0 c 41=c 41 -c 40 -c 01 +c 00 = 8-7-14+10=-3<0 c 42 =c 42 -c 40 -c 02 +c 00 = 12-7-15+10=0 Görüldüğü gibi sadece c 31 ve c 41 ayrıtlarının yeni maliyeti negatiftir. Yani bu iki ayrıt, aynı işi 0 numaralı elemanın yaptığından daha ucuza yapmaktadırlar ve böylece çözüm kümesine alınırlar. Yeni maliyeti 0 olan c 34 ve c 42 ayrıtları ise aynı işi 0 numaralı eleman ile aynı maliyette yapıyorlar demektir. Böylece çözüm kümesine alınması keyfidir. Sonuç olarak bu problemin çözüm kümesi aşağıdaki gibi oluşur: S={ X 31 =1, X 41 =1, X 10 =2, X 20 =2, X 30 =1, X 40 =1, X 02 =1, X 03 =1, X 04 =2, X 05 =2, X 00 =2 } Bunları Z min de yerine yazarsak ; Z min =10.2+8.2+12.2+9.1+7.1+14.0+15.1+6.1+11.2+8.2+5.1+8.1+12.0+9.0+ 16.0+10.0+13.0+12.0 Z min = 148 birim bulunur.

4. N-KATLI ÇOKLU ATAMA PROBLEMİ N ayrık kümeli, her biri m k elemanlı A k ={0,1,.,m k } ve k K={1,2,.,N} olan bir grafımız olsun. Ayrıtlar kümesi olan A A 1 xa 2 x.a N olacak şekilde belirlenir. Tanım 4.1.1. : A kümesindeki bir ayrıt, n boyutlu bir vektör şeklinde tanımlanır. a=(a(1),a(2),.,a(n)) dir. Burada a(k) A k dır. Tanım 4.1.2. : a A için, a kl ; a(k)=l ve a(j)=0 (j k) şeklinde tanımlanır. A ayrıtlar kümesi, k=1,..,n ve l=0,1,..m k olmak üzere bütün a kl leri kapsar. Burada dikkat edilmesi gereken a k0 =(0,0,,0) k=1,..,n ve b ka(k) =(0,0,..,a(k),..,0) olduğudur. Tanım 4.1.3. : A kl ={a A a(k)=l } şeklinde tanımlanır. k K ve l=1,.,m k için a(k)=l yi sağlayan tüm ayrıtlar bu kümede yer alırlar. k K için A kl nin her bölümüne negatif olmayan bir d kl R değeri verilir. Bu tanımlar altında N-katlı çoklu atama problemi şöyle açıklanabilir: Z min = c a x a

xa =d kl a Akl k K ve l A k d kl ; l=1,..,m k için bahsedilen negatif olmayan değerdir. d k0 = N m j d jl +, j= 1( j k ) l= 1, ihmal edilebilir bir pozitif sayıdır. m k d kl = l= 0 m p d pl her k,p K için sağlandığı sürece, problemin bir l= 0 çözümü vardır. Her k K ve l=1,,m k için d kl 1 olduğundan d kl =n kl 1 alınabilir. Ek olarak; sıfırdan farklı en az iki indis içeren her a A değişkenleri, 0-1 değişkeni olarak kabul edilir. Kalan değişkenler, negatif olmayan tamsayı olarak kabul edilirler. Böylece N-katlı çoklu atama probleminin modeli aşağıdaki gibi olur: Z min = c a x a a A x a = n kl a A k l k K ve l A k için; x a { 0,1} ; sıfırdan farklı en az iki indis içeren tüm değişkenler için; x a { 0,1,.,n k l kl } x 0 Min { n 10,,n N0 }

Burada, n k0 = N m j n jl + olup,(j k) j= 1 l= 1, genelde sıfır alınan ihmal edilebilir bir sayıdır. Benzer şekilde yine m m k p n k l = n p l sağlandığı sürece problemin bir çözümü vardır. l= 0 l= 0 4.2. Maliyetler: Bu problemin maliyet hesaplaması şu şekilde yapılıyor: c = c c + ( N 1) c a a b ka ( k ) 0 Burada c olur. (Yani c 0= c 0 = 0 olmasına b = c ( ) 0 0... ( ) 0 0 ka k a k = i j karşılık gelmektedir.) c = c c + ( N 1) c > 0 ı sağlayan ayrıtlar problemin a a b ka ( k ) 0 çözümünden silinirler. Çünkü k=1,,n için x b ka ( k ) =1 almak daha ucuzdur. (0 numaralı merkez ile yapılan işi karşılaştırılıp, ucuz olan çözüm kümesine seçilir.) N katlı çoklu atama probleminin çözümü için şöyle bir algoritma verilebilir:

A 0: Başla A 1: Z min = c a x a A 2: k=1,..,n ve l= 0,1,..,m k için a kl leri yaz. A 3: k=1,.,n ve l= 1,..,m k için A kl kümesinin elemanlarını yaz. her biri için d kl leri belirle. A 4: x a = d kl a A k l k K, l A k kısıt denklemlerini oluştur. A 5: m m k p d kl= d p l k,p K için sağlanırsa; A 6 ya git. l= 0 l= 0 sağlanmazsa A 10 a git. A 6: c = c c + ( N 1) c a a b k a ( k ) 0 A 7: For k: 1 to N If End. for l: 0 to m k c a > 0 then x a çözüm kümesinden silinir. end. A 8: Çözüm kümesinde kalan değişkenlerin değerlerini Z min de yerine yaz.

A 9: Z min i hesapla. A 10: Bitir. Şimdi N=3 alarak N katlı çoklu atama problemini bir örnekle açıklayalım: Örnek: Aşağıda verilen kümelerde; ayrık 3 kümenin eleman numaraları verilmiştir.bütün kümelerdeki tüm elemanlar ile iş yapılması istendiğine göre yapılacak iş minimum maliyetle nasıl yapılır? A={0,1,2} B={0,1,2,3} C={0,1,2,3,4} A ayrıtlar kümesi ise şu şekilde olsun: A={(0,0,0),(0,0,2),(1,0,0),(2,0,0),(0,1,0),(0,3,0),(0,2,0),(0,0,3),(0,0,4),(0,0,1), (1,1,0),(2,0,4),(2,2,3),(1,3,4)} Bu ayrıtlara karşı gelen c maliyetleri ise sırasıyla şu şekilde olsun: C a ={ 1, 4, 2, 4, 2, 6, 4, 6, 8, 2, 4, 12, 14, 16 } Bu ayrıtlar ve maliyetler altında Z min amaç fonksiyonu şu şekilde oluşur: Z min =1.X 000 +4.X 002 +2.X 100 +4.X 200 +2.X 010 +6.X 030 +4.X 020 +6.X 003 +8.X 004 + 2.X 001 +4.X 110 +12.X 204 +14.X 233 +16.X 134

a kl tanımında; a(k)=l ve a(j)=0 (j k) idi. Bu problemdeki a kl ayrıtları şunlardır: (0,0,0),(0,0,2),(1,0,0),(2,0,0),(0,1,0),(0,3,0),(0,2,0),(0,0,3),(0,0,4),(0,0,1) dir. A kl şeklinde tanımlanan kümenin ayrıtları ise şu şekildedir: A kl ={ a A a(k)=l } idi. A 11 ={ a A a(1)=1 } = {(1,1,0),(1,3,4),(1,0,0)} d 11 = 3 A 12 ={ a A a(1)=2 } = {(2,0,0),(2,0,4),(2,2,3)} d 12 = 3 A 21 ={ a A a(2)=1 } = {(0,1,0),(1,1,0)} d 21 = 2 A 22 ={ a A a(2)=2 } = {(2,2,3),(0,2,0)} d 22 = 2 A 23 ={ a A a(2)=3 } = {(0,3,0),(1,3,4)} d 23 = 2 A 31 ={ a A a(3)=1 } = {(0,0,1)} d 31 = 1 A 32 ={ a A a(3)=2 } = {(0,0,2)} d 32 = 1 A 33 ={ a A a(3)=3 } = {(0,0,3),(2,2,3)} d 33 = 2 A 34 ={ a A a(3)=4 } = {(0,0,4),(1,3,4)} d 34 = 2 d kl ; l=1,.,m k için negatif olmayan talep değerleridir. Z min amaç fonksiyonu altında taleplerle ilgili kısıt denklemleri şöyle oluşur: xa= d kl idi. Buradan ; a Akl

X 110 +X 134 +X 100 = 3 X 200 +X 204 +X 223 = 3 X 010 +X 110 = 2 X 223 +X 020 = 2 X 030 +X 134 = 2 X 001 = 1 X 002 = 1 X 003 +X 223 = 2 X 004 +X 134 = 2 d k0 = N m j d jl + (j k), ihmal edilebilir bir pozitif sayıdır. j= 1 l= 1 3 m j Yani d 10 = d jl = d 21 +d 22 +d 23 +d 31 +d 32 +d 33 +d 34 = 12 j= 2 l= 1 Benzer şekilde d 20 =d 11 +d 12 +d 31 +d 32 +d 33 +d 34 = 12 d 30 =d 11 +d 12 +d 21 +d 22 +d 23 = 12 bulunur. m m l kl= d p l her k,p K için sağlandığından bu problemin bir l= 0 l= 0 k d çözümü vardır. k K ve l=1,.,m k için d kl 1 olduğundan d kl =n kl 1 alınabilir.

Ek olarak; sıfırdan farklı en az iki indis içeren a A değişkenleri, 0-1 değişkeni olarak kabul edilir.kalan değişkenler, negatif olmayan tamsayı olarak kabul edilirler. Böylece problem; 2 boyutlu atama problemi haline döner. Bu problemin modeli aşağıdaki gibi olur: Z min =1.X 000 +4.X 002 +2.X 100 +4.X 200 +2.X 010 +6.X 030 +4.X 020 +6.X 003 +8.X 004 + 2.X 001 +4.X 110 +12.X 204 +14.X 233 +16.X 134 X 204, X 110, X 223, X 134 { 0,1 } X 100, X 200 { 0,1,2,3 } X 010, X 020, X 030 { 0,1,2 } X 001, X 002 { 0,1 } X 003, X 004 { 0,1,2 } X 000 Min{n 10,n 20,n 30 }={ 0,1,,12 } n k0 = 3 m j n jl + (j k), ihmal edilebilir bir pozitif sayıdır. j= 1 l= 1 n 10 =n 20 =n 30 = 12 bulunur. Maliyetler: Maliyetler için iki boyutlu atama probleminden farklı bir maliyet hesaplaması ekleniyor. c = c c + ( N 1) c a a b ka ( k ) 0

şeklinde yapılan bu maliyet hesaplamasında c = c = c olur. bka ( k ) ka( k ) 00... a( k ) Kalan diğer ayrıtlar için verilen yeni maliyet hesaplaması uygulandığında ; c = c ( c + c + c ) + 2c = 4 (2+2+1) +2= 1 (1,1,0 ) (1,1,0 ) (1,0,0 ) ( 0,1,0 ) (0,0,0 ) ( 0,0,0 ) c = c ( c + c + c ) + 2c = 12 (4+1+8)+2= 1 (2,0,4) (2,0,4) (2,0,0) (0,0,0) (0,0,4) (0,0,0) c = c ( c + c + c ) + 2c = 14 (4+4+6)+2= 2 (2,2,3) (2,2,3) (2,0,0) (0,2,0) (0,0,3) (0,0,0) c = c ( c + c + c ) + 2c = 16 (2+6+8)+2= 2 (1,3,4 ) (1,3,4 ) (1,0,0) (0,3,0 ) ( 0,0,4) ( 0,0,0) Buradan görüldüğü gibi, c (1,1,0), c (2,0,4), c (2,2,3), c (1,3,4) ayrıtlarının yeni maliyet hesapları pozitif olduğundan çözüm kümesinden silinirler. Çünkü 0 numaralı elemanlar ile yapılan iş daha ucuza yapılmaktadır. Çözüm olarak; S={X 100 =3, X 200 =3, X 010 =2, X 020 =2, X 030 =2, X 001 =1, X 002 =1, X 003 =2, X 004 =2 } alınmalıdır. Böylece amaç fonksiyonunda yerine yazarsak; Z min =1.0+4.1+2.3+4.3+2.2+6.2+4.2+6.2+8.2+2.1+4.0+12.0+14.0+16.0 Z min = 76 bulunur.

5. SONUÇ Sonuç olarak, toplamda minimum maliyeti sağlayacak şekilde uygun elemanlar seçilerek, birebir eşlemenin dışında iki yada daha çok sayıda küme üzerinden atama yapabilmek te mümkündür. Bu atamanın yapılabilmesinde her kümede bulunan joker elemanların katkısı büyüktür. Bunlar sayesinde yapılması istenen iş, kümelerdeki tüm elemanların kullanılmasına gerek kalmayacak şekilde yapılabilir.

KAYNAKLAR DİZİNİ Bakır M.A., Altunkaynak B., 2003, Tamsayılı Programlama, Ankara, Nobel Yayın Dağıtım Bakoğlu H., 1982, Doğrusal Programlama, İzmir, Ege Üniversitesi BasımEvi Christofides N., 1986, Graph Theory An Algoritmic Approach, London, Academic Press Inc Kara İ., 1991, Doğrusal Programlama, Eskişehir, Bilim Teknik Yayınevi Öner A., Ülengin F., 2003, Atama Problemi İçin Yeni Bir Çözüm Yaklaşımı, İtüdergisi/d-Mühendislik Serisi, Cilt:2 Sayı:1, 73-79 sf Poore A.B., Gadaleta S., 2005, Some Assignment Problems Arising From Multiple Target Tracknig, Elsevier B.V

ÖZGEÇMİŞ 1983 yılında İzmir in Konak ilçesinde doğdu. İlkokulu Manisa Gazi İlkokulu nda tamamladıktan sonra Anadolu Liseleri sınavında başarılı olarak, Manisa Dündar Çiloğlu Anadolu Lisesi ni kazandı. Ortaokul ve lise öğrenimini burada tamamladıktan sonra 2001 yılında Ege Üniversitesi Matematik Bölümünü kazandı. 2005 yılında Uygulamalı Bilim Dalı ağırlıklı Matematikçi ünvanını alarak mezun oldu. Aynı yıl yine Ege Üniversitesi Matematik Bölümünde yüksek lisans eğitimine başladı.