Birkaç düzine yarı zamanlı çalışanı olan küçük bir yerel işletme (benim durumumda bir köpek bakımı) düşünün. Amaç, otomatik olarak haftalık personel programları oluşturmaktır. Benim sorum, bu problem için hangi algoritmik yaklaşımların araştırılması gerektiğidir.
Akılda tutulması gereken birçok kısıtlama vardır, esasen (1) personelin mevcudiyeti ve (2) her vardiya için kaç personel değil, her vardiya için gereken beceriler (örneğin belirli bir vardiya için, köpeklerin kaldırılması / bırakılması için nasıl araba kullanacağını bilen birine, diğeri için köpek banyolarını nasıl vereceğini bilen birine ihtiyacınız olabilir).
Diğer kısıtlamalar arasında, bazı personel kombinasyonlarından kaçınma veya bunlara ihtiyaç duyma gibi şeyler olabilir - belki de bir yandan kişilik çatışmaları veya diğer taraftan bir kıdemliden genç personele osmoz eğitimi ihtiyacı.
Ayrıca, dikkate alınması gereken tercihler vardır. Bazı personel sabah, Pazartesi ve Perşembe gibi iki gün üst üste sabahları tercih eder. Herkesin tercihlerini her zaman karşılayamayacağımızı biliyoruz. Aslında, çalışanların seçimleriyle ilgili ilk dibleri alan bir hiyerarşimiz var.
Bu sorunu var olan, zaten çözülmüş bir algoritmaya indirgemek veya ifade etmek için bir yol var. Ama hangi algoritmaları keşfedeceğimi bilmiyorum. Hangi mevcut, spesifik algoritmalar en umut verici olurdu?