• Sonuç bulunamadı

Tam Sayılı Programlamaya Genel Bir Bakış

N/A
N/A
Protected

Academic year: 2021

Share "Tam Sayılı Programlamaya Genel Bir Bakış"

Copied!
12
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Marmara Üniversitesi İ.İ.8.F. Dergisi, Yıl 1987, Cilt iV. Say" 1 -2

Tam

Sayılı

Programlamaya Genel Bir

Bakış

.

Bülent AYYl~DIZ (*)

1. GİRİŞ

Tam sayılı programlama (TSP) konusuna gelinceye kadar en iyi-leme (optim.izasyon) problemlerinde karar değişkenlerinin değişim · aralığındaki tüm değerleri aldıkları, yani devamlı karakterli oldukları bilinir. Fakat birçok problemde ise karar değişkenleri tam sayılı de-ğerler alabildikleri takdirde bir anlam kazanmaktadırlar. Örneğin, bir uçak f9brikasında üretilebilecek eniyj (optimum) uçak sayısını·· bul-mak. için· elde edeceğimiz çözümde, tam sayıdaki miktarların dışında ·

kalan miktarlar bizim için geçerli olmayacaktır. İşte bu nedenle kesikli eniyileme problemleri özel bir öneme sahiptir. Bu problemlerde ka-rar değişkenlerinin bazılarının veya tümünün, sadece saptanmış belli bir kesikli değerler grubunun değerlerini almakla sınırlandırılmış ol-dukları görülür. ·su çeşit problemler aynı zamanda çeşitli kombinas-yonlar arasında eniyi kombinasyonun bulunması problemini de içerir. Tüm bu problemler, karar değişkenlerinin bazıların.ın veya tümünün tam sayı olması kısıtının ilavesiyle, bir doğrusal programlama (DP) pr<?blemi olarak formüle edilebilir. Bu gibi problemler tam sayılı pro -gramlama problemleri olarak adlandırılırlar.

Bunlar iki sınıfa ayrılabilirler :

1. Tüm tam sayılı programlama ki, burada bütün karar değiş­ kenleri sadece tam sayılı değerleri almakla sınırlandırılmışlardır.

2. Karma tam sayılı programlama, b.urada ise karar değişken­ lerinin bazıları devamlı-karakterli, bazıları ise devamsız karakterli olup tam sayılardır.

Her iki sınıf da kendi içlerinde yine iki sınıfa ayrılırlar :

a) · Sadece tam sayılardan oluşan tüm karar değişkenlerinin O ve-ya 1 olarak değerler almakla sınırlı oldukları tam sayılı programlar.

(2)

b) Negatif olmayan tüm tamsayıların karar değişkeni

olabile-ceği programlar. ,

Çalışmamızda .. korar değişkenlerinin tümünün tam sayılı değer­ leri aldıkları programlama problemlerinin «Gomory Kesme Düzlemi Algoritması» ve «Dal-Sınır Teknigi» He çözümü konusunu inceleye-. ·ceğiz.

2. GOMORV KESME DÜZLEMİ ALGORİTMAŞI

, Tüm karar değişk~~leri tam sayı olan bir tam sayılı programlama problemini göz önüne alalım. Bu bizim orjinal· problemimiz olsun. Tam sayı olma kısıtlarının kaldırılması ile elde edilen probleme «İlişkin» · doğrusal programlama problemi (DPP) adı verilir. İlişkin

DPP'ni simp-lex yöntemi ile çözelim. En iyi çözümde, tüm karar değişkenleri tam ·sayı ise, bu TSP problemi içinde en, iyi çözümdür. Fakat bir veya daha

fazla karar değişkeni (Xj) tam sayı değilse bu çözüm TSP problemi

için geçersizdir. ·

TSP problemi için eniyi çözümün (Xj) değerlerinin en yekın tam sayılara yu_varlanarak elde edilebileceği ileri sürülebilir. Eğer model-deki karar değişkenlerinin oldukça büyük değerler ·alacağı

bekleni· yorsa veya değerlerde yuvarlama vaparken çözümün geçerliliği kı­ sıtlardan kolayca gözlenebiliyorsa, böyle bir yuvarlama yöntemi

pra-1

tikte kullanışlı olabilir. Fakat TSP modeli 0-1 değişkenlerini de içe-riyorsa, tam sayı olmayan degerleri en yakın tam sayıya yuvarlama anlamsız olacaktır. Bunun yanında (Xj) nin elemanı olduğu (n) bo-yutlu çözüm uzayında (XER0

) yuvarlama yapılabilecek 2° adet komşu

tam sayilı nokta olduğundan, yuvarlama yapmak için bunların

han-gilerinin seçileceği n büyük değerler aldığı zamar:ı çözümü güç bir problem olacaktır. Böyle bir komşu tam sayılı nokta bulunsa bile bu geçerli olmayabilir (1). Bir an bu tam sayılı noktanın geçerli olduğunu , kabul etsek bile, bunun eniyi çöz9inden uzak olması olasılığı

da vardır.

Böylece yuvarlama 'yöntemi basit bir TSP probleminde kullanı­

labilir olmakla beraber kombin.atoryal tercih değişkenleri içeren mo

-. dellerde ve küçük değerlerden oluşan modellerde

kullanılmaz. Kesme Düzlemi :

1) Murty, K., '«Line~r and Combinatorial Programming», John Wiley and Sons,

(3)

(X), ilişkin DPproblemlerinjn en ıyı tam sayılı olmayan cozumu olsun. Kesme düzlemi; (X) eniyi çözümü, tam sayılı çözüm setinden (kümesinden) tamamen ayıran bir çok boyutlu düzlem olarak tanım­ lanabilir (2

).

Kesme Düzlemi Yöntemi:

TSP problemini çözerken kullandığımız kesme düzlemi yöntemi şu şekildedir (3) :

1. İlişkin DP problemini ele alıp çözelim.

' • I

- Eğer bu problem geçersiz ise, orjinal TSP problemi de geçer -sizdir. İşlem durdurulur. ·

- Eğer eniyi çözüm tam sayı olma şartlarını da sağlıyorsa, bu orjinal TSP problemi için de eniyi çözümdür. İşlem durdurulur.

- Eğer DP .. problemi için bulunan eniyi .çözüm bazı değişkenler için tamsayı olma' şartını sağlamıyorsa, 2. adıma geçilir.

2. Kesme türetme yöntemi kullanılır .. Böylece bir kesme düzlemi

elde edilir. Eldeki problemin kısıtlarına bulunan kesme ilave edilir.

İşlem durana kadar yöntem sürdürülür.

-Genel olarak, eğer

~ am+ı.j X.i

=

bm+ı bir kesme düzlemiyse ve eğer j

~ am+ı. j

Xi

>

bın+ı (tam sayılı, geçerli çözümler için)

j

şartları gerçekleşiyorsa, ,,

~ am+ı.i X

.i

>

bm+ı kısıtı bir kesmedir. j

Kesme bir doğrusal eşitsizlik kısıtı olup.

1. ·Eldeki tam sayılı olmayan ilişkir:ı DP probleminin e.niyi çözü-münü eler.

2) lbid, s. 421.

3) CLAYCOMBE, W.W., SULLIVAN, W.C., «Foundations of Mathematical Pro· grami_ng», Reston Pub. Co .. 1975, s. 194-199.

(4)

2. TSP probleminin tüm geçerli tam sayılı cözümlerince bu kısıt sağlanır.

3. DAL-SiNiR TEKNİGİ

Amaç işlevinin en küçüklenmesi halini. ele alalım ve amaç işle­ vinin alacağı eniyi değer için bir üst sınır mevcut olsun (bu çoğun­ lukla amaç işlevinin, eniyi geçerli çözüm i.çin aldığı .değer olacaktır)

!

İlk adım, tüm gec~rli çözümler kümesini çeşitli alt kümelere ayır­ mak olacaktır. Ve herbir alt kümede amaç işlevinin olası çözümleri için bir alt sınır elde edil!r. Elde edilen bu alt sınırlar amaç işlevinin cari üst sınırını aşars~, söz konusu alt küme daha sonraki aşama· lorda göz önüne alınmaz. Yani elenmiş olur. Geriye kalan alt kümeler içinde en küçük alt sınıra sahip olanı, yine bir kaç alt kümeye ayrı­

lacaktır. (dallandırılacaktır). Sonra yeni bulunah .bu alt kümelerin, her birini.n sırasıyla alt sınırı bulunacaktır. Daha önce yapıldığı gibi bu alt sınırla~ yeni' alt kümelerin elenmesi veya dallandırılmasında

kul-lanılacaktır. Kalan alt kümelerden bir diğeri, daha i.leri dallandırma­ lar için kullanılacak ve böyle devam edilecektir. Bu işlem uygun ç0-zümü buluncaya kodar tekrarlanacakW. Bu Uygun çözümde amaç iş­ levine karşı gelen değer, herhangi bir alt kümedeki alt sınırdan bü-yük olmayacaktır (4

).

Dal-Sınır Tekniğinin Aşamaları :

Başlangıç Adımı - Göz önüne alınan tüm çözümler kümesi ile başlanacaktır (Elenmemiş herhangi bir çözüm de dahil olmak üzere). Bu bizim tek «Kalan Alt Küme»miz olacaktır. Burada Zü

==

oo kabul edilecektir.

Dal Adımı - Kalan alt kümelerden (elenmemiş veya dallandırıl­ , mamış olan) birini seçerek dallandırma kuralı uygulanır

ve bu alt kü-me iki veya daha fazlçı alt kümeye ayrılır.

Sınır Adımı - Her bir yenL alt küme için bir alt sınır (ZA) sapta-nır. Bu alt sınır, her bir alt kümede amaç işlevinin geçerli çözüm de-,

ğeri içindir.

veya

Eleme Adımı -:-- Her bir yeni alt küme için, eğer 1. ZA

>

=

Zü ise

4) HILLIER. F.S .. LIEBERMAN, G.J., «Operatiqns Research», Second Edition, Holden Day, ine., 1974, s. 699-700.

(5)

2. Alt küme geçerli bir çözüm içermiyorsa · veya

3. Alt kümede en geçerli çözüm belirlenmemiş ise, o zaman ZA, o çözüm için amaç işlevinin aldığı değer olacaktır. Eğer ZA

<

Zü yani yeni bulunan bu geçerli alt sınır daha önce belirlenmiş olan üst sı­

nırdan küçük olursa, o zaman yeni üst sınır Zü

==

ZA (bulduğumuz bu geçerli alt sınır yeni üst sınırımız olarak kabul edilir) olur ve bu çö-züm zorunlu çöçö-züm olarak ayrılır. Kalan tüm alt kümelere koşul 1. tekrar uygulanır.

Durma Kuralı - Eğer hiçbir altküme kalmamışsa (yani elenme-. miş alt küme yoksa) bu işlem durdurulur. En son zorunlu çözüm, en-iyi çözüm olmak kabul edilir. Aksi takdirde dallandırmaya devam edilir.

A/maç işlevinin en büyüklenmesi durumunda, yöntem aynı kal-makla birlikte, alt ve üst sınırların rolleri değişip, ters olarak işleye:. cektir. Böylelikle Zü'nün yerini ZA, ZA'nın yerini de Zü alacak,

+

oo ise - oo olacak ve eşitsizliklerin yönü de değişecektir.

Dallandırılacak alt kümelerin seçiminde en çok bilinen kurallar,

en iyi sınır (EİS): kuralı ve en yeni sınır (EVS) kuralıdır. EİS kuralı, en uygun alt kümeyi seçer (en küçükleme problemlerinde bu en küçük alt sınırlı kümedir). Çünkü bu alt küme, eniyi çözümü kapsamında bu-lundurma şansı en büyük olan kümedir. EYS .kuralı ise; en son

yara-tılan ve elenmemiş olan alt kümeyi ·seçer. Aynı anda oluşan alt

kü-meler arasında ise en uygun sınırlara sahip olanı seçer ( 5

) • . ·

Dal-Sınır Tekniğinin Uygulaması.:

Bir fabrikada A, B, C, D makineleri 1, 2, 3, 4 No.lu yerlere yerleş­ tirilecektirler. Yerleştirme ile ilgili maliyetler aşağıdaki tabloda veril- .

miştir. En az maliyeti sağlayacak, eniyi yerleştirmeyi dal-sınır

tek-niğini kullanarak yapalım.

Bulunan geçerli çözUmler içinde en az maliyetli

~erleştirme

dü-zeni; D makinasının 1 no.lu yere, B makinasının 2 no.lu yere, C ma-kinasının 3 no.lu. yere, A makinasının 4 no.lu yere yerleştirilmesi şek­ lidir. Bu şekilde yerleştirilince Z* =97 olur.

5) lbid, s. 701-704.

(6)

l 2 ' 3 . 4 A 94 1 54 68 Tablo. 1 B 74 10 88 82

c

62 88 6 7& . D 11 74 811 21 Çözüm:

4 - İKİLİ DÇ>GRUSAL PROGRAMLAMA İÇİN DAL-SiNiR

ALGORİTMASI

(0-1 TAM SAYILI PROGRA1MLAMA

İÇİN

DAL-SiNiR ALGORİTMASI)

Bir çok tam sayılı doğrusal programlama problemlerinin özel _bir yapısı vardır. Bu da tüm değişkenlerin O veya 1 gibi, sadece iki

de-ğeri almakla sınırlandırılmış olmalarıdır. Bunun nedeni de, tam sayılı·

karar değişkeni çoğu kez sadece olası bir faaliyetin yapılacağını

· (X = 1) veya yapılmayacağını (X =0) göstermek için kullanılır.

Burada üstlenilen faaliyetin derecesi veya seviyesi sabittir. Bu nedenle sa-dece iki değere ihtiyaç vardır. örpeğin, belirli bir araştırma ve geliş­

tirme projesinin uygulanıp lJYQUlanmayacağı, yeni bir fabrikanın

(7)

makinede yapılıp yapılmayacağı problemlerinde karar alabilmek için

0-1 tam sayılı doğrusal programlama . kullanılır. _Karar değişkenleri ikiden fazla değer alabiliyorsa tüm problemi 0-1 ikili biçime indir-geyebilmek için· ikili (binary) gösterim kullanllır (

6 ).

. \

0-1 Tam sayılı programlama probleminin genel yapısı şu şe­ kildedir. Amaç işlevi : n Min.

z

=

~

cjxj

j=l Kısıtlar: n ~

a

jj

xj

>

= bi , j=l. ve (i=1, 2, ... , m) (j=1, 2· .... , n)

Burada O

<

=

C1

< =

C2

< ... <

=

Cn dir. C.i parametreleri ' üzerindeki bu şart kısitlayıcı değildir. Çünkü başlangıçta Cj

<

O· ise; X.i, X/=0 veya 1 olmak ·kaydıyla (l-X/) ile değiştirilir. Böylece Xj , lerin amaç işlevinde katsayıları pozitif olur. Eğer gerekirse değişken­ ler katsayıların_ büyüklüğüne göre yeniden düzenlenir.

Özetlemek gerekirs·e problemi çözmek .. için kullanılan

algorltma-nın genel amacı kısıtların elverdiği ölçüde _değişkenleri sıfır

yapmak-tır. Bu arada bazı değişkenlere. 1 değeri vermek gerektiğinde önce-likle ilk değişkenler tercih edilecektir. Bu nedenle ilk. denemede bü-tün değişkenlere O vererek elde edilen çözümün. geçerli ve. aynı za-manda eniyi çözüm olup olmadığı araştırılır. Değilse

X

1'e 1 değeri verilerek çözüm irdelenir. Sonuç yine olumsuzsa X1'e

1

verildiğinde

X2 'ye de 1 verilir ve böyle deneme yanılma yoluyla d~vam edilir (7).

Bu fikri kullanarak, ikili DP problemi için bir dal-sınır algoritması sunacağız_; Bu algoritma bazı değişkenlere (Xı. X2' ...• XN) gibi

de-ğerler vererek alt kümeleri tanımlar. N, değer verilen değişkenlerin

sayısıdır. (Xı, X2 •...• XN) ise, cciri kısmi çözümdür. (Xı, X2 •.• ,.. XN,

6) CAVER. D.P., THOMPSON, G.L., «Programming And Probabilty Models

in

Operations Research», Wadsworth Pub. Co .. 1973, s. 224-247.

7) HILLIER. F.S .. LIEBERMAN. G.J .. a.g.e .. s. 705-706.

(8)

XN+ı · ... , XN) şeklindeki herhangi bir çözüm, yukarıdaki kısmi

çözü-mün tümleyeni olarak adlandırılır.

Dal adımı; dallandırma. işlemi (Xı, Xz, ... , XN) kısmi çözümünü

se-çerse, bu iki yeni alt kümeye ayrılır. Bu işlem (XN+ı = 1) ve (XN+ı =0) ola'rak yapılır. EYS kuralı, bu secimi yapmakta kullanılır.

Sınır adımı için (X

1, X:b ... ,

XN) kısm,i cÇ>zümünün alt sınırı ZA şu

şekildedir : N ~ cjxj, XN

=

1 ise j=l ZA = N-1 ~ !CjXj

+

CN+ı, XN.=

o

ise j=l

[XN=O iken CN+ı 'i eklememizin nedeni; algoritmanın daha

önce-den (Xı.Xz, ... ,XN_1 , XN=O, ... ,Xn) çözümü geçersiz bulmuş olması­

dır]. Bu yüzden XN= 1 için bulunan alt sınır

daima XN=O için bulu-nandan küçük veya eşittir. Eğer hiç biri elenmemişse, EYS kuralı

daima XN= 1 kısmi çözümü seçer. Bu yüzden XN kısmi çözümü elen-:

meden, XN=O kısmi çözüme eleme kuralı uygulamaz . . Eleme adımı, bir kısmi çözüme şöyle uygulanır:.

Test -1 : ZA

>

= Zü

Test -2 : Alt küme herhangi bir geçerli çözüm içermiyorsa, kıs­

mi çözümün tümleyeni tarafından ·herhangi bir kısıtın sağlanmama

durumu gözlenir. Eğer herhangi bir kısıt .,için;

N N

~ auXj

+

~ max [a1j, O]< bi (1 =1, 2, ... , m. Bazı i değerleri için) j=l j=N+l

Durumu varsa kısmi çözüm elenir.

Test -3 : Alt kümede eniyi geçerli cozüm bulunmuşsa, ZA 'ya

kar-şılık gelen çözümün [yani (kısmi ·çözüm)

+

(XN

=

1-XN) ve

tüm

di-ğer kalan değişkenler sıfır] gerçekten geçerli olup olmadığı gözlenir.

Bu yüzden N eğer bütün kısıtlar için, . ,

~ ·aij ai. N+ı (1-XN)

>

= bi, (i = 1, .2, ... , m. Tüm i değerleri için) j=l

(9)

H )l _, 1,o1,o..~ R M 14 555

(10)

ZA

< Zü

ise,

yeniden

ZA

'ya eşitlenip bu çözüm zorunlu çözüm

ola-rak saklanır.

O~ 1 Tam Sayılı Programlama Probleminin Dal-Sınır Tekniği

ile Çözümü:

Amaç İşlevi: Min. Z=5~1 +6X2+ 7X3+8X4+9X5

Kısıtlar . ~ 5. SONUÇ . : 3Xı - X2 + x3 + x4 - x5

>

= 2 'Xı + 3X2 - x3 - 2x4 + x5

>

=

o -Xı -

X

2

+ 3X3 + x4 + x5

>

=

1

xj

=o veya 1 (j=1, 2, 3, 4, 5)

Tam sayılı programlama; bazı veya tüm karar değişkenlerinin

tam sayı olma kısıtı ile birlikte ortaya çıkmaktadır. Bu problemler,

tam sayı kısıtı olmayan problemlere göre daha güç

· olmaktqdır. Bu

nedenle tam sayılı doğrusal programlama için eldeki algoritmalar,

simpleks yöntemine göre genellikle çok daha az etkindir.

Hesapla-ma sürecini belirleyen en önemli unsur tam sayılı değişkenlerin sa- '

yısıdır. Problem özellikle basit ,bir yapıya sahip

olmadıkça, yani tam

sayılı değişkenlerin sayısı bir iki düz.ineyi geçmedikçe problemi

çöz-mek olasıdır. Bu sayı, değişkenlerin sadece 0-1 olması halinde bir ·

dereceye kadar artar.

Bilgisayar uygulaması için, TSP algoritmaları çoğunlukla

mate-•

.

matiksel programlama paket programları halinde mevcuttur. Bu

al-goritmalar çoğunlukla dal-sınır tekniği ve varyasyonları

üzerinde

ku-rulmuştur.

Daha eski algoritmalardan birisi olan Gomory Kesme Düzlemi

algoritmasının başarısı, problemin yapısına bağlı olarak sınırlıdır.

Ko-nu ile ilgili diğer bir yaklaşım da matematiksel guruplar teorisinin

uy-gulamCJsıdır. BU yaklaşım ümit verici görülmektedir.

Pratikte problemler, bu algoritmaların herhangi birinin ele

ala-cağından çok daha geniştir.

B.u durumlarda simpleks yönteminin

kul-lanımı yaygındır. Elde edilen eniyi DP çözümü geçerli tam

sayılı

çö-. züme yuvarlanır. Bununla birlikte bilindiği gibi bu yaklaşım

bazen

yeterli ormaz .. Çünkü yuyarlama yapılacak geçerli tam sayılı çözüm

bulmak ·güçtür veya olanaksızdır. Bu bulunsa bile eniyi çözümden

(11)

bu-lunmasında, etkin bulgusal (heuristic) yöntemlerin geliştirilmesiyle

önemli bir ilerleme sağlanmıştır. Bu çözümler muhakkak eniyi çözüm

olmamakla, birlikte basit yuvarlama ·işleminden daha geçerlidir.

KAYNAKLAR

__. CAVER. Donald P .. THOMPSON. Gerald L.. «Programming And Probability Models in Operations Research», Wadsworth Pub. Co .. 1973.

1 - CLAYCOMBE, William W., SULLIVAN. William C., «Foundation Of Mathematieal

Programming», .Reston Pub. Co., 1975.

- HALAÇ, Osman. «Kantitatif Karar Verme Teknikleri», Arpaz Matbaeılık. İstanbul,

1978. .

- HILLIER. Frederic S .. LIEBERMAN, Gerald J,, «Operations Researeh», Seeond Editiön, Holden-Day, ine,, 1974.

- MURTY, Katta C .• «Linear And Combinatorial Programming», John Wiley and Sons. ine., 1976.

(12)

Referanslar

Benzer Belgeler

 Bu nedenle, hangi problemin DP’ye uygun olduğu ve DP’nin genel yapısını tespit etmek için özel yetenek gerekir,4.  Bu yetenek değişik DP problemleri üzerinde

[r]

} Eğer tamsayılı değişken sayısı birkaç yüzden fazla ise ve problemin özel bir yapısı yok ise TP’nin hesaplama maliyeti çok yüksek olacaktır. } Önerilecek TP’nin

b) (Değişik birinci fıkra; 15/5/1991 - 3742/1 md.) Bu Kanun gereğince haklarında 2547 sayılı Yükseköğretim Kanununun görevlendirmeye ilişkin hükümleri

Pratik bir gerçek yaşam optimizasyon probleminden yola çıkarak, Şekil 1 matematiksel programlama ve optimizasyon kullanarak bu problemi

(2014) çok seferli zaman pencereli araç rotalama problemi için rota havuzuna dayalı bir sezgisel yöntem geliştirmişlerdir.. Söz konusu çalışmada araçlar

Hacimsel kullanım oranı dikkate alındığında üç farklı palet yükleme oranına sahip problem grubunun çözüm değerleri arasında istatistiksel olarak anlamlı bir

A) Tam kare sayıların karekökü tam sayıdır. B) Karekök alma işlemi bir sayının hangi pozitif tam sayının karesi olduğunu bulma işlemidir. C) Pozitif bir tam kare