2010-07-27 31 views
5

i gibi bir combinatoric sorun var:Makine zamanlama problemi

Sen N test verilmiştir.

Her bir test cihazı M farklı tiplerden biridir.

Her test cihazı, P farklı yapılandırmalardan birini kullanacak şekilde yapılandırılabilir. .

Her ürün sadece Tester tarafından test edilebilir

sadece belirli Tester türüne test edilebilir Her ürün,

Sen test etmek ürünlerin L çok var

, belirli Yapılandırml ile yapılandırılmış. Configs'in bazıları birden fazla ürüne uygulanabilir. Herhangi bir test cihazı üretim sırasında konfigürasyonunu değiştirebilir, ancak test cihazı konfigürasyonundaki her değişiklik ek zamana (U) neden olacaktır. Her lotun test zamanını belirleyen bir lot boyutu vardır, Q.

Şimdi çok fazla zamanlama algoritması çıkmam gerekiyor ki, bu sayede testlerin tamamlanmasının tamamlanmasının süresi minimumdur.

Bu tür sorunların üstesinden gelmek için en iyi yaklaşımlar nelerdir?

+1

Bu ev ödevi mi? – PeterK

+0

Hayır. Bu benim gerçek işim. Problemi daha önce basitleştirdiğim değişken sayısını azalttım. Bu durumda, Handler, Handler changekit, Setup time..etc vb. Gibi daha fazla değişken var. – tensaix2j

cevap

3

iş boyutu 1. Ne yazık ki iş sayısı serbest birçok 10.

vardır> zaman optimum bir bulmak oldukça zor olur nerede olduğunu kurulum süreleri ile bir Job-Shop sorun (JSP) olarak modellenebilir Orada örnek bir sorun olarak Job-Shop içeren orada çözücü uygulamaları: C++ kullanıyorsanız, Gecode iyi. Seçmekte serbestseniz, ECLiPSe Prolog, JSP için kaynak kodu içerir. (yerine optimal birinin) bir iyi çözümü, ben açgözlü bir algoritma (JSP için, açgözlü algoritmalar genellikle optimum% 10'u dahilinde çözümler vermek kullanmanızı öneririz ile yapabiliyorsa

- Ben bazı deneyimi vardı bu). Birini düşüneceğim ve buraya geri döneceğim (problem, 'kurulum zamanı kısıtlamaları' olarak adlandırılan, yani test yapılandırmasının değiştirilmesinden kaynaklanan kısıtlamalar).