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

Benzer belgeler
TP SORUNLARININ ÇÖZÜMLERİ

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

TAMSAYILI PROGRAMLAMAYA GİRİŞ

İleri Yöneylem Araştırması Uygulamaları Tam Sayılı Programlama

EM302 Yöneylem Araştırması 2 Doğrusal Olmayan Programlamaya Giriş. Dr. Özgür Kabak

TAMSAYILI PROGRAMLAMA

doğrusal programlama DOĞRUSAL PROGRAMLAMA (GENEL)

GEZGİN SATICI PROBLEMİ. Feasible Çözümler? Optimal Çözüm?

Yöneylem Araştırması II

YÖNEYLEM ARAŞTIRMASI - I

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

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

DOĞRUSAL PROGRAMLAMADA DUALİTE (DUALITY)

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

Genel Graf Üzerinde Mutlak 1-merkez

İÇİNDEKİLER. Bölüm 1 YÖNEYLEM ARAŞTIRMASINA GİRİŞ Temel Kavramlar Modeller Diğer Kavramlar 17 Değerlendirme Soruları 19

Başlangıç Temel Programının Bilinmemesi Durumu

YÖNEYLEM ARAŞTIRMASI - II

YÖNEYLEM ARAŞTIRMASI - I

Doğrusal Programlama. Prof. Dr. Ferit Kemal Sönmez

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

Applied Management Science: Modeling, Spreadsheet Analysis, and Communication for Decision Making

Temelleri. Doç.Dr.Ali Argun Karacabey

Genetik Algoritmalar. Bölüm 1. Optimizasyon. Yrd. Doç. Dr. Adem Tuncer E-posta:

Yöneylem Araştırması I Dersi 2. Çalışma Soruları ve Cevapları/

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

KISITLI OPTİMİZASYON

Yrd.Doç.Dr. Safiye Turgay Doç.Dr. İsmail Erol Fulya Türkmen Abant Izzet Baysal Universitesi

Üçüncü adımda ifade edilen özel kısıtları oluģturabilmek için iki genel yöntem geliģtirilmiģtir:

YÖNEYLEM ARAŞTIRMASI YÜKSEK LİSANS DERSİ

YÖNEYLEM ARAŞTIRMASI - III

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜMÜ YÖNEYLEM ARAŞTIRMASI DERSİ LINDO

KOMBİNATORYAL OPTİMİZASYON

Zeki Optimizasyon Teknikleri

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

Yöneylem Araştırması III

BÖLÜM I: Hedef Programlama. Prof.Dr. Bilal TOKLU. HEDEF PROGRAMLAMAYA GİRİŞ HEDEF PROGRAMLAMA MODELLERİNİN ÇÖZÜMÜ

Doğrusal Programlamada Grafik Çözüm

YAEM 2012 Sunumu. Atık BitkiselYağların Biyodizel Üretimi İçin i Toplanmasını Modelleyen Seçici i ve Devirli Bir Envanter Rotalama Problemi

YÖNEYLEM ARAŞTIRMASI - I

YÖNEYLEM ARAŞTIRMASI İLE İLGİLİ ÇÖZÜMLÜ ÖRNEKLER

DOĞRUSAL OLMAYAN PROGRAMLAMA -II- Tek değişkenli doğrusal olmayan karar modelinin çözümü

EM302 Yöneylem Araştırması 2 Çok değişkenli DOP ların çözümü. Dr. Özgür Kabak

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

YÖNEYLEM ARAŞTIRMASI - III

Bir Doğrusal Programlama Modelinin Genel Yapısı

Türk-Alman Üniversitesi. Ders Bilgi Formu

Bu bölüm, tamsayılı programlamanın uygulamalarıyla başlamakta, ardından da TDP algoritmaları sunulmaktadır.

GAMS Kullanım Notları

BLM-431 YAPAY ZEKA. Ders-5 Bilgili Arama Yöntemleri. Yrd. Doç. Dr. Ümit ATİLA

SİMPLEKS ALGORİTMASI! ESASLARI!

KONU 13: GENEL UYGULAMA

Türk-Alman Üniversitesi İktisadi ve İdari Bilimler Fakültesi İşletme Bölümü Ders Bilgi Formu

DENİZ HARP OKULU ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Önsöz... XIII Önsöz (Hava Harp Okulu Basımı)...XV BÖLÜM 1 1. YÖNEYLEM ARAŞTIRMASINA GİRİŞ... 1

DOĞRUSAL OLMAYAN PROGRAMLAMA -I-

5. KISA MESAFE MAL NAKLİYE PLANLAMASI VE YÖNETİMİ

ENDÜSTRİ MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

DOĞRUSAL PROGRAMLAMA

GEDİZ ÜNİVERSİTESİ SİSTEM MÜHENDİSLİĞİ YÜKSEK LİSANS PROGRAMI SMY 544 ALGORİTMALAR GÜZ 2015

BİRİNCİ BÖLÜM: TEDARİK ZİNCİRİ YÖNETİMİNE GİRİŞ

Endüstri Mühendisliği Yöneylem Araştırması I

GAMS Kurulumu ve Temel Özellikleri GAMS ile Modellemeye Giriş, Örnek Problemler

EMM4131 Popülasyon Temelli Algoritmalar (Population-based Algorithms)

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

Kısıtsız Optimizasyon OPTİMİZASYON Kısıtsız Optimizasyon

Kredi Limit Optimizasyonu:

EBEKE MODELLERİ. ebeke Yapısına Giriş. Konu 3

Algoritmalara Giriş. Prof. Erik Demaine. November 16, 2005 Copyright by Erik D. Demaine and Charles E. Leiserson L18.1

END331 YÖNEYLEM ARAŞTIRMASI I DERS NOTLARI

ÜNİTE LOJİSTİK YÖNETİMİ. Yrd. Doç. Dr. Ufuk KULA İÇİNDEKİLER HEDEFLER ULAŞIM FAALİYETLERİNİN OPTİMİZASYONU

Yöneylem Araştırması II (IE 323) Ders Detayları

Simpleks Yöntemde Duyarlılık Analizleri

YÖNEYLEM ARAŞTIRMASI - III

END331 YÖNEYLEM ARAŞTIRMASI I DERS NOTLARI

YÖNEYLEM ARAŞTIRMASI - I

EM302 YÖNEYLEM ARAŞTIRMASI 2. YARIYILİÇİ SINAVI Y.Doç.Dr. Özgür Kabak SORULAR VE CEVAPLAR

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

ĐST 349 Doğrusal Programlama ARA SINAV I 15 Kasım 2006

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

Zeki Optimizasyon Teknikleri

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

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

ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

EMM3208 Optimizasyon Teknikleri

MATRİSEL ÇÖZÜM TABLOLARIYLA DUYARLILIK ANALİZİ

Stok Kontrol. Önceki Derslerin Hatırlatması. Örnek (Ekonomik Sipariş Miktarı Modeli)(2) Örnek (Ekonomik Sipariş Miktarı Modeli)(1)

DOĞRUSAL PROGRAMLAMANIN ÖZEL TÜRLERİ

MAT223 AYRIK MATEMATİK

MAT223 AYRIK MATEMATİK

Stok Kontrol. Ders 6. Farklı Bir Stok Yönetimi Durumu. Önceki Derslerin Hatırlatması

Stok Kontrol. Önceki Derslerin Hatırlatması. Örnek (Ekonomik Sipariş Miktarı Modeli)(1) Örnek (Ekonomik Sipariş Miktarı Modeli)(2)

Montaj Hatti Tasarımı ve Analizi - 5

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

END331 YÖNEYLEM ARAŞTIRMASI I DERS NOTLARI

EMM3208 Optimizasyon Teknikleri

Gezgin Satıcı Probleminin İkili Kodlanmış Genetik Algoritmalarla Çözümünde Yeni Bir Yaklaşım. Mehmet Ali Aytekin Tahir Emre Kalaycı

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

ÖNCE DAĞIT SONRA TOPLA

Transkript:

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

TP Çözümü TP problemlerinin çözümü için başlıca iki yaklaşım vardır kesme düzlemleri (cutting planes) dal sınır (branch and bound) tüm yaklaşımlar tekrarlı bir şekilde DP ler çözmeyi içerir.

TP için çözüm yöntemleri iki sınıfa ayrılabilir: Genel amaçlı: herhangi bir TP yi çözebilecek yapıda) fakat etkin işlem yapamayan (göreli olarak daha küçük sorunları çözen; Özel amaçlı: Belirli bir tipteki TP sorunu için geliştirilen ve daha etkin işlem yapabilen. TP çözüm yöntemleri çözüme gitmeleri açısından sınıflandırması: En iyi (Optimal) Sezgisel (Heuristic) Ders kapsamı: Genel amaçlı en iyi çözümü veren yaklaşımlar Sayma, Dal sınır

Doğrusal programlama gevşetmesi (LP relaxation) Bir tam sayılı programlama modelinde tamsayı veya 0-1 tam tamsayı değişkenlerin sürekli (normal) karar değişkeni olarak kabul edilmesi ile elde edilen doğrusal programlama modeli Karma tam sayılı programlama modeli maks z = x 1 + x 2 +x 3 öyle ki x 1 + 6x 2 + x 3 8 x 1 + 2x 2 +1,5x 3 2 2x 1 + x 2 + 5x 3 8 x 1 0, x 2 tamsayı, x 3 {0,1} Modelin DP gevşetmesi maks z = x 1 + x 2 +x 3 öyle ki x 1 + 6x 2 + x 3 8 x 1 + 2x 2 +1,5x 3 2 2x 1 + x 2 + 5x 3 8 x 1,x 2 0 0 x 3 1 En büyükleme probleminde: DP gevşetmesinin en iyi çözümü TP modelinin en iyi çözümü 4

TP ve DP gevşetmesi ilişkisi Eğer DPG nin en iyi çözümündeki tüm değişkenler tamsayılı değerler alıyorlarsa bu durumda bulunan en iyi çözüm orijinal TP sorununun da en iyi çözümüdür (doğal tamsayılı DP) DPG, TP sorununa göre daha az kısıtlı (gevşek) olduğundan aşağıdaki durumlarla karşılaşılabilir: Eğer TP enbüyükleme sorunu ise, DG nin en iyi amaç değeri TP ninkine eşit veya daha büyüktür. Eğer TP enküçükleme sorunu ise, DG nin en iyi amaç değeri TP ninkine eşit veya daha küçüktür. Eğer DG olurlu değilse (olurlu çözümü yoksa), TP de olurlu değildir. Bu durumda DG nin çözülmesinin bir bilgi vereceği açıktır: en iyi amaç değeri sınırı belirlenir ve şanslıysak en iyi amaç değerini buluruz. Fakat en iyi çözümdeki değişken değerlerini tamsayı değerlere yuvarlamak genel olarak en iyi TP çözümünü vermeyebilir; hatta yeni çözüm olurlu bile olmayabilir.

Örnek maks z = 21x 1 + 11x 2 öyle ki 7x 1 + 4x 2 13 x 1, x 2 tamsayı 6

Sayma Yöntemi DP den (değişkenlerin sürekli aralıkta değerler alabildiği (>=0)) farklı olarak TP de (tüm değişkenler tamsayılı) her değişken sadece sonlu sayıda kesikli (tamsayı) değerler alabilir. Sayma Çözüm yaklaşımı Tüm olası çözümleri sayma (enumerate) her biri için amaç fonksiyon değerini hesaplama olurlu çözümlerden en iyisini seçme

Sayma Yöntemi - Örnek Maks 0.2 x 1 + 0.3 x 2 + 0.5 x 3 + 0.1 x 4 Öyle ki 0.5 x 1 + 1.0 x 2 + 1.5 x 3 + 0.1 x 4 < 3.1 0.3 x 1 + 0.8 x 2 + 1.5 x 3 + 0.4 x 4 < 2.5 0.2 x 1 + 0.2 x 2 + 0.3 x 3 + 0.1 x 4 < 0.4 x j = 0 veya 1 j = 1,, 4

Dal Sınır Algoritması Dal Sınır Algoritması Sistematik bir şekilde olurlu çözümlerin sayılarak en iyi tamsayılı çözümün bulunması için kullanılan genel amaçlı bir DP tabanlı ağaç arama (LP-based tree search) yöntemi 1960 ların başında Land ve Doig tarafından önerilmiştir.

Dal sınır algoritması Örnek Enb z= 8x1+ 5x2 Öyle ki: x1+ x2 6 9x1+5x2 45 x1,x2>0 ve tamsayı

Dal sınır algoritmasında ilerleme LIFO (Last in last out): son giren ilk çıkar Son ürettiğin alt problemi önce çöz İzlediğin yoldan geri dön (Backtracking) Atlamalı (jumptracking) En iyi z değerine sahip alt problemden dallandır

Dal Sınır Algoritması - Örnek Maks 0.2 x 1 + 0.3 x 2 + 0.5 x 3 + 0.1 x 4 Öyle ki 0.5 x 1 + 1.0 x 2 + 1.5 x 3 + 0.1 x 4 < 3.1 0.3 x 1 + 0.8 x 2 + 1.5 x 3 + 0.4 x 4 < 2.5 0.2 x 1 + 0.2 x 2 + 0.3 x 3 + 0.1 x 4 < 0.4 x j = 0 veya 1 j = 1,, 4 LINDO İLE DPG yi çöz: Max 0.2 x1 + 0.3 x2 + 0.5 x3 + 0.1 x4 st 0.5 x1 + 1.0 x2 + 1.5 x3 + 0.1 x4 < 3.1 0.3 x1 + 0.8 x2 + 1.5 x3 + 0.4 x4 < 2.5 0.2 x1 + 0.2 x2 + 0.3 x3 + 0.1 x4 < 0.4 x1 <1 x2 <1 x3 <1 x4 <1 end

Karışık TP problemlerinin çözümü Bu tarz problemlerin dal sınır algoritması ile çözümünde sadece tamsayı değişkenler üzerinden dallanma yapılır. Örnek Enb z = 2 x1+ x2 Öyle ki 5 x1 + 2 x2 8 x1+ x2 3 x1, x2 0; x1 tamsayı

Sırt Çantası Problemi Sadece bir kısıtı olan herhangi bir TP sırt çantası sorunu olarak isimlendirilir. Bir diğer özellik de kısıtın ve amaç fonksiyonunun katsayıları negatif olmayan sayılardır. Örneğin aşağıdaki model sırt çantası sorunudur: max z = 8x 1 + 11x 2 + 6x 3 + 4x 4 Öyle ki; 5x 1 + 7x 2 + 4x 3 + 3x 4 14 x j = 0 or 1 (j = 1,2,3,4) Geleneksel öykü, bir sırt çantasında (örnekte kapasitesi 14 dür) bazı eşyaları (dört çeşit eşya) taşımak ile ilgilidir. Her eşyanın bir büyüklüğü ve taşıma sonucu elde edilecek bir değeri vardır (eşya 2 için büyüklük 7, değer 11 dir). Amaç, sırt çantasına sığabilecek eşyaların toplam değerini enbüyüklemektir. Sırt çantası sorunları genellikle kolay çözülürler. Enb z = c 1 x 1 + c 2 x 2 + + c n x n Öyle ki a 1 x 1 + a 2 x 2 + + a n x n b x i = 0 veya 1 (i = 1, 2,, n)

Sırt çantası problemlerinin çözümü Enb z = c 1 x 1 + c 2 x 2 + + c n x n Öyle ki a 1 x 1 + a 2 x 2 + + a n x n b x i = 0 veya 1 (i = 1, 2,, n) DP gevşetmesini çözmek için r i = c i /a i (i.değişkenin kullandığı her kaynak miktarın başına sağlanan fayda) En büyük r i oranına sahip değişkenler sırt çantasına eklenir.

Sırt çantası problemlerinin çözümü Örnek max z = 8x 1 + 11x 2 + 6x 3 + 4x 4 Öyle ki; 5x 1 + 7x 2 + 4x 3 + 3x 4 14 x j = 0 or 1 (j = 1,2,3,4)

Gezgin Satıcı Problemi için Dal sınır algoritması Bir satıcı on adet şehiri birer kez ziyaret edip evine dönecektir. Satıcının yapacağı bu gezide katedeceği toplam uzaklığı enazlayacak rota (şehir sırası) nasıl olmalıdır? sorunu Gezgin Satıcı Sorunu (GSS; Traveling Salesperson Problem TSP) olarak isimlendirilir.

GSS TP formülasyonu N adet şehir olduğunu varsayalım ij için c ij = şehir i den şehir j ye uzaklık ve c ii = M (gerçek uzaklıklara göre çok büyük bir uzaklık) olsun Aynı zamanda x ij aşağıdaki şekilde bir 0-1 değişken olarak tanımlansın: x ij = 1, GSS çözümü şehir i den şehir j ye gitmeyi önersin x ij = 0, aksi takdirde GSS formülasyonu: N N min i=1 j=1 c ij x ij N öyle ki i=1 x ij = 1 her j için N j=1 x ij = 1 her i için u i u j + Nx ij N 1 her ij için; i=2,3,,n; j=2,3,,n Her x ij = 0 veya 1, Her u i > 0

Gezgin Satıcı Problemi için Dal Sınır Algoritması Problemi döngü engelleyici kısıtlar olmadan atama problemi gibi Macar Yöntemi ile çöz. Döngü oluşursa; en kısa döngüyü engelleyecek kısıtlar ile dallandır.

Gezgin Satıcı Problemi için Dal Sınır Algoritması - Örnek ATK-Beyaz dört müşterisinin verdiği siparişlerin dağıtımını gerçekleştirecektir. Tabloda depo ve müşteriler arası mesafeler km. olarak verilmiştir. Depodan çıkan aracın tüm müşterilerin siparişlerini teslim ettikten sonra tekrar depoya dönme süresini en küçükleyecek rotayı bulunmak istenmektedir. Depo M1 M2 M3 M4 Depo 0 13 22 16 6 M1 13 0 29 20 8 M2 22 29 0 11 30 M3 16 20 11 0 20 M4 6 8 30 20 0

Örnek - Çözüm Alt problem 1 için maliyet matrisi Depo M1 M2 M3 M4 Depo M 13 22 16 6 M1 13 M 29 20 8 M2 22 29 M 11 30 M3 16 20 11 M 20 M4 6 8 30 20 M Macar yöntemi uygulanırsa: Depo M1 M2 M3 M4 Depo M 0 11 10 0 M1 0 M 16 12 0 M2 6 11 M 0 19 M3 5 7 0 M 14 M4 0 0 24 19 M Alt problem 1 Z=49 x 04 =x 01 =x 10 =x 23 =x 32 =1

Alt problem 1 Z=49 x 04 =x 01 =x 10 =x 23 =x 32 =1 x 23 =0 x 32 =0 Alt problem 2 Alt problem 3 Depo M1 M2 M3 M4 Depo M 13 22 16 6 M1 13 M 29 20 8 M2 22 29 M M 30 M3 16 20 11 M 20 M4 6 8 30 20 M Depo M1 M2 M3 M4 Depo M 13 22 16 6 M1 13 M 29 20 8 M2 22 29 M 11 30 M3 16 20 M M 20 M4 6 8 30 20 M

Alt problem 1 Z=49 x 04 =x 01 =x 10 =x 23 =x 32 =1 x 23 =0 x 32 =0 Alt problem 2 Z=65 x 03 =x 32 =x 20 =x 14 =x 41 =1 Alt problem 3 x 14 =0 x 41 =0 Alt problem 4 Alt problem 5 Depo M1 M2 M3 M4 Depo M 13 22 16 6 M1 13 M 29 20 M M2 22 29 M M 30 M3 16 20 11 M 20 M4 6 8 30 20 M Depo M1 M2 M3 M4 Depo M 13 22 16 6 M1 13 M 29 20 8 M2 22 29 M M 30 M3 16 20 11 M 20 M4 6 M 30 20 M

Alt problem 1 Z=49 x 04 =x 01 =x 10 =x 23 =x 32 =1 x 23 =0 x 32 =0 Alt problem 2 Z=65 x 03 =x 32 =x 20 =x 14 =x 41 =1 Alt problem 3 x 14 =0 x 41 =0 Alt problem 4 Z=67 x 04 =x 41 =x 13 =x 32 =x 20 =1 Alt problem 5 Z=70 x 03 =x 32 =x 21 =x 14 =x 40 =1 X Aday çözüm!

Alt problem 1 Z=49 x 04 =x 01 =x 10 =x 23 =x 32 =1 x 23 =0 x 32 =0 Alt problem 2 Z=65 x 03 =x 32 =x 20 =x 14 =x 41 =1 Alt problem 3 Z=65 x 02 =x 23 =x 30 =x 14 =x 41 =1 x 14 =0 x 41 =0 Alt problem 4 Z=67 x 04 =x 41 =x 13 =x 32 =x 20 =1 Alt problem 5 Z=70 X x 03 =x 32 =x 21 =x 14 =x 40 =1 x14 =0 x 41 =0 Aday çözüm! En iyi çözüm! Alt problem 7 Alt problem 6 Z=70 X Z=92 x x 04 =x 41 =x 12 =x 23 =x 30 =1 02 =x 20 =x 14 =x 43 =x 31 =1 X