Göstermeye ve otomatikleştirmeye çalıştığım gerçek bir dünya sorunum var. Basitleştirdim ve aşağıdakilere kadar soyutladım:
- N iş yeri var (P1, P2, ..., Pn).
- Her yerde, Pn'in bir anahtarı var, Kn.
- M İşçi var (W1, W2, ..., Wm).
- Pn'de çalışmak için bir işçinin Kn'a sahip olması gerekir.
- Her anahtar bir işçi tarafından tutulabilir veya Exchange, E'de bırakılabilir.
Bir işçi, talep edilmemiş bazı anahtarları almak veya başkalarının kullanması için bazı anahtarları bırakmak için istediği zaman Exchange'e seyahat edebilir.
Şimdi, katı bir sırayla tamamlanması gereken ekzojen bir çalışma programı var. Örneğin:
- 2016-04-21 W1, P6'da çalışmalı
- 2016-04-21 W2, P3'te çalışmalıdır
- ** anahtar değişimi gerekli **
- 2016-04-22 W3, P3'te çalışmalıdır
- 2016-04-22 W2 P6'da çalışmalı
Herhangi bir sayıda işçi, aynı gün hiçbir zaman olmamasına rağmen, programlarının bir noktasında Pn'de çalışmak zorunda kalabilir
Biliyoruz:
- İşçilerin veya E'nin tüm tuşlarının başlangıç konumu
- Her işçinin yerine getirmesi gereken gelecekteki iş emirleri
Bu yüzden, tüm bu durumu modellemek için mücadele ediyorum. Veri yapısı ve algoritmaları inceleyebilir ve her bir çalışan için değişim gezilerini optimize etmeye başlayabilir miyim?
En aza indirmek istediğim şey, E'ye yapılan toplam seyahat sayısıdır. İkincil bir hedef, hiçbir işçinin orantısız sayıda gezi yapmamasını sağlamak olacaktır.
Şimdiden teşekkürler!!