8-20 takımlı lig veya turnuvada haftalık/günlük maç programını çıkarmak — adil dağılım, seyahat süresi, saha ve yayın kısıtlarıyla (literatürde Round-Robin Tournament).
Kısaca
Tanıdık geliyor mu?
- Sezon başında lig yönetimi 1-2 hafta toplantı yapıp fikstürü çıkarıyor; sonra kulüpler '3 deplasman üst üste oldu' diye itiraz ediyor
- Yayıncı (TV veya internet yayın hakkı) belirli haftalar için belirli maçlar talep ediyor — manuel ayarlama zor
- Derbiler (rakip kulüpler arası gerilim maçları) yıl içinde dengeli dağıtılamıyor
- Bayram, milli takım kampı, fakülte sınav haftası gibi 'boş hafta' ihtiyaçları unutuluyor, son anda kaydırma yapılıyor
- Aynı şehir takımları (örnek aynı üniversitede iki fakülte) maç yapacağı hafta saha bulunamıyor
- Üniversiteler arası turnuvada öğrencilerin ders programıyla maç saatleri çakışıyor
- Profesyonel olmayan ligde fikstür bir hesap tablosunda elle çıkarılıyor, sonraki sezon her şey sıfırdan yapılıyor
Niye önemli?
Nasıl çözülür?
Teknik derinlik
Nasıl çözülür?
Teknik derinlikTek satırla: Önce sert kurallar (her takım her takımla iki kez, çakışma yok) — sonra adillik (ardışık deplasman ≤ 2, derbi dağılımı sezona yayılsın, seyahat mesafesi dengeli). Sırayı tersine çevirirsen ‘çakışmasız ama imkansız fikstür’ çıkarır, baştan başlamak zorunda kalırsın.
Yazılımın yaptığı iş şu: senin lig yönetimi ekibinin 1-2 haftada elle çıkardığı fikstürü, 16-20 takımlı çift devreli lig için saniyelerde kurar; yayıncı talebi veya kulüp itirazı geldiğinde dakikalar içinde yeniden hesaplar. Üç aşama hâlinde anlatalım:
1. Önce takım, saha, takvim, kısıt verisini toplar. Takım listesi ve her takımın saha bilgisi, geçen sezon performans skoru (eğer seri tohumlama gerekli), seyahat mesafeleri (şehirler/şehirlerarası), milli takım kampı veya benzer takvim boşlukları, yayıncı talepleri (örnek ‘A maçı 3. hafta Cumartesi 20:00’), derbi tanımları, tribün kapasitesi ile uyumlu zaman dilimleri. Pedagojik tercihler (ardışık deplasman ≤ 2, ardışık ev maçı ≤ 2, derbi sezonun en az 4 farklı dönemine yayılsın) yumuşak kısıt olarak girer.
2. En iyi fikstürü çıkarır. Yazılım tüm olası eşleşmeleri denemez — 16 takımlı çift devreli lig için 16!/(2!)^8 × 30 hafta kombinasyonunun astronomik olduğu biliniyor. Onun yerine operasyon araştırması (matematik ve bilgisayarla iş kararı veren disiplin) ve kısıt programlama (‘bu kural + şu kural + öteki kural hepsi birden tutsun’ tarzı yöntem) alanından gelen ‘round-robin tournament’ (her takım her takımla aynı sayıda karşılaşır) ve ’traveling tournament’ (deplasman seyahat mesafesi de optimize edilir) algoritmalarıyla akıllı kestirme yapar: önce sıkı kısıtları tutar (her takım diğer her takımla iki kez, çakışma yok), ardından yumuşak tercihleri optimize eder (seyahat mesafesi, break sayısı, derbi dağılımı). Sonuç dakikalar içinde gelir — tam fikstür: hangi takım, hangi hafta, kimle, nerede oynayacak.
3. Onay ve yayın sürecine geçer. Lig yönetimi taslağı görür; gerektiğinde belirli maçları sabitler (‘derbiler 8., 17. ve 26. haftalarda olsun’); yazılım kısıtları ekleyip yeniden hesaplar. Onaylanan fikstür kulüplere, yayıncılara ve federasyona PDF/CSV çıktısı olarak iletilir. Sezon ortasında erteleme veya yeniden çizelgeleme gerektiğinde yazılım sadece etkilenen haftaları yeniden hesaplar.
Lig yönetiminin sezonsal kararlarını ortadan kaldırmaz; 8-10 takımlı turnuvada elle yaptığın işi 16-20 takımlı çift devreli lige ölçekleyen ve kısıt çakışmalarını saniyelerde tespit eden bir hesap makinesi gibi düşün. Karar yine senin, ama ‘matematik olarak mümkün mü, derbi dağılımı adil mi’ soruları sayısal olarak cevaplanır.
Alternatifler
Hesap tablosu + elle çıkarma
ÜcretsizÜcretsiz (yönetici zamanı maliyet)
Kim için: 6-10 takım, tek devreli turnuva, basit kısıtlar
- + Sıfır yazılım maliyeti
- + Esnek — anlık değişiklik kolay
- + Yatırım kararı gerekmez
- − 12+ takım çift devreli ligde 1-3 hafta yönetici emeği
- − Adil seyahat dağılımı sayısal kontrol edilemez
- − Yayıncı/derbi kısıtları el ile gözetilince hata yaygın
- − Sezon ortası erteleme planı tamamen bozar
Yerel federasyon/lig yönetim yazılımı
Kurumsal15.000–60.000 TRY kurulum + aylık 2.000–8.000 TRY (TR pazar gözlemi)
Kim için: Federasyon, bölgesel lig, üniversite spor koordinatörlüğü
- + Türkçe arayüz ve destek
- + Hakem ataması, lisans yönetimi, kart sistemi entegre
- + Kulüp ve yayıncı iletişimi merkezi
- − Fikstür modülü genelde 'şablon doldurma' düzeyinde — gerçek tournament scheduling optimizasyonu yok
- − Seyahat mesafesi ve break optimizasyonu zayıf
- − Üniversite ölçeği veya çoklu lig senaryosu için yetersiz
Uluslararası uzmanlaşmış tournament scheduling yazılımı
Kurumsal10.000–80.000 EUR yıllık lisans veya proje 25.000–200.000 EUR
Kim için: Profesyonel lig, çoklu yarış grubu, milli federasyon
- + Olgun: round-robin + traveling tournament + break minimization tam destekli
- + Yayıncı kısıt entegrasyonu hazır
- + Algoritması yıllar boyunca olgunlaşmış (Avrupa futbol ligleri kullanır)
- − Yüksek lisans + danışmanlık maliyeti
- − Kurulum 2-4 ay sürer
- − Türk lig/federasyon yapısı için özel adaptasyon
Açık kaynak çözücü ile özel yazılım
Açık KaynakLisans ücretsiz; geliştirme 8-16 hafta kendi ekibinle veya 150.000-500.000 TRY danışmanlık
Kim için: Spor federasyonu veya çoklu lig işleten kuruluş
- + Lisans maliyeti yok
- + Tam özelleştirme — kendi lig kurallarına göre
- + Buluta veya kendi sunucuna kurulabilir
- − İçeride teknik kapasite + tournament scheduling uzmanlığı şart
- − Sürekli bakım gerekir
- − Kural değişikliği matematiksel modele yansıtılmalı
Tavsiye
Çözüm görüşmesinde sor
- Fikstür motoru gerçek round-robin/traveling tournament optimizasyonu mu yapıyor, yoksa basit şablon doldurma mı?
- Break minimization (ardışık ev veya deplasman maçı sayısını en aza indirme) algoritması destekleniyor mu?
- Yayıncı kısıtları (belirli maç + belirli hafta/saat) kısıt olarak modele girer mi? Yumuşak vs sıkı ayrımı yapılabilir mi?
- Seyahat mesafesi hesaplama hangi yöntemle yapılıyor (şehir merkezi mesafesi, gerçek seyahat süresi)?
- Sezon ortası erteleme veya tekrar maçı durumunda fikstür ne kadar sürede yeniden hesaplanır?
- Türkiye'ye özel kısıtlar (milli takım kampı haftaları, derbi yasakları, fakülte sınav takvimi) hazır mı, ek adaptasyon mu?
- Pilot dönemini nasıl kurguluyorsunuz — kaç takım, kaç hafta, başarılı sayılma kriteri nedir?
- Bizimle çalışmayı bırakırsak takım, fikstür ve geçmiş sezon verisini nasıl alırız? Standart format export var mı?
Teknik detay
Editör notu
Bu problem halk dilinde “fikstür çıkarma”, “lig programı” veya “turnuva düzeni” diye anılır. Akademik literatürde adı Round-Robin Tournament Scheduling veya Traveling Tournament Problem (TTP) — Türkçesi “çiftli devreli lig çizelgeleme problemi”. 1990’larda Nemhauser ve Trick’in büyük bir Amerikan üniversite basketbol ligi için yaptığı çalışmayla operasyon araştırması literatürüne girmiş; sonra Avrupa profesyonel futbol liglerinde standart yaklaşım haline gelmiş. Türkiye’deki üst düzey futbol, basketbol ve voleybol ligleri gibi profesyonel organizasyonlar OR tabanlı fikstür çözümlerinden yararlanır. Bunu bilmeden bir yazılım firmasıyla görüşmeye gidersen, sana satılmaya çalışılan “fikstür modülü"nün gerçekten matematiksel optimizasyon yapan bir motor mu, yoksa sadece elle düzenlenen şablon mu olduğunu test edemezsin.
Sektörde en sık atlanan nokta: çoğu lig yönetim yazılımı “fikstür çıkarır” diyerek reklam verir ama altında sadece rastgele eşleştirme + manuel düzeltme vardır. Gerçek tournament scheduling motoru, round-robin yapısının matematiksel özelliklerini (her takım diğer her takımla iki kez, ev-deplasman dengesi, break minimization) korurken seyahat mesafesi, yayıncı kısıtları ve derbi dağılımı gibi yumuşak tercihleri optimize eder. Demo gösteriminde mutlaka 16 takım + 2 derbi + 4 yayın yapılacak maç + 2 milli takım kampı haftası senaryosu üzerinden ‘fikstür dakikalar içinde çıkıyor mu, break sayısı en az mı’ diye sor.
Adım adım yol — KOBİ için
Aşama 1 — Önce ölç, sonra plan. Geçmiş 1-2 sezon için dört şeyi bir tabloya kaydet:
- Yönetici/koordinatörün fikstür hazırlama saatleri
- Sezon ortasında erteleme veya değişiklik sayısı
- Kulüplerin ardışık deplasman/ev maçı şikayetleri
- Toplam takım seyahat mesafesi ve yıllık seyahat masrafı
Bu veri olmadan hangi yazılımın hangi sonucu vereceğini hesaplayamazsın.
Aşama 2 — Takım ve takvim tablosunu çıkar. Takım listesi, her takımın ana sahası ve şehri, milli takım kampı haftaları, akademik takvim (üniversite ligi için sınav haftası), yayıncı sözleşmesindeki özel slot talepleri, derbi tanımları (rakip kulüpler). Bu tablo senin bilgi sermayen — hangi yazılım gelirse gelsin önce bunu soracak.
Aşama 3 — Pilot dönem. Bir sezon başında, yazılımın hazırladığı fikstür ile manuel fikstür karşılaştırılır. Başarı kriterin önceden yazılı olsun: örnek “yönetici zamanı yarıya inmeli, ardışık deplasman sayısı %50 azalmalı, toplam seyahat mesafesi %15 düşmeli.” Hedef tutmazsa pilot iptal — sözleşmede bu hak açıkça yazılı olmalı.
Aşama 4 — Yaygınlaştırma. Pilot başarılıysa sonraki sezon tüm yarış kategorilerine yay. Lig koordinatörü ve federasyon yetkilisi eğitimi 1-2 hafta; kulüp ve yayıncı tarafına basit raporlama yeterli.
Riskler — ne yanlış gidebilir
- Kısıtların eksik girilmesi. ‘Milli takım kampı haftaları boş’ gibi tacit kurallar yazılıma girmezse karşılanmaz. Pilot dönemde tüm sezon kısıtlarını yazılı listele.
- Kulüp direnci. “Yazılım bana fikstür dayatmasın” tepkisi büyük kulüplerde yaygın. Pilot dönemde kulüplerle beraber sonuçları gözden geçir; yazılım hangi kuralı uyguladığını ve neden bu fikstürü ürettiğini şeffaf göstermeli.
- Yayıncı sözleşme uyumsuzluğu. Yayıncı, belirli maçların belirli slotlarda olmasını talep edebilir (rate parity benzeri). Bu kısıt önceden modele girilmezse fikstür yayıncı tarafından reddedilebilir.
- Tek tedarikçiye bağımlılık. Takım, fikstür ve geçmiş sezon verisi kendi özel biçiminde tutulan yazılımdan, yıllar sonra çıkmak zor. Sözleşmede “verimizi standart açık formatlarda (CSV, JSON gibi) istediğimiz zaman alma hakkımız var” maddesi yazılı olsun.
İlgili acı ders (yayına geçince linkli olur): “Orta ölçekli bir bölgesel lig federasyonunda 10 ayda terk edilen fikstür yazılımı — neyi atladılar”.
Çözüm yöntemine teknik bakış
Bu bölüm, yazılım ekibiyle veya danışmanla konuşurken ihtiyaç duyacağın temel bilgileri tutar. Lig koordinatörünün günlük ekranında göreceği şey değil — perde arkasında olan iş.
Tournament scheduling için kullanılan ana yaklaşımlar:
| Yaklaşım | Türkçe adı | Tipik kullanım | Çözüm süresi | En iyi sonucu garanti eder mi? |
|---|---|---|---|---|
| Berger tabloları | Sabit round-robin şablon | Küçük lig, sade kısıt | Saniyeler | Hayır (kısıtsız varsayım) |
| Kısıt programlama (CP) | Constraint programming | 8-16 takım, tam kısıt | 1-15 dakika | Evet (mümkünsüz sonuç verir) |
| MIP | Karma tam sayılı programlama | 12-20 takım, makul kısıt | 5-60 dakika | Evet (yeterli süre) |
| Hibrit CP+MIP | Birleşik yaklaşım | 20+ takım, karmaşık | 5-30 dakika | Pratik olarak yakın-en iyi |
| Metaheuristic | Sezgisel yöntemler | 24+ takım, büyük lig | 1-15 dakika | Hayır (yakın-en iyi) |
Pratik öneri: 12 takım altı amatör/yerel lig için Berger tabloları + manuel düzenleme yeterli. 12-20 takım profesyonel lig için CP veya hibrit yaklaşım. 24+ takımlı çoklu kategori veya milli federasyon ölçeği için metaheuristic + senaryo analizi.
Hedef fonksiyonu seçimi çözümün biçimini değiştirir:
- Toplam seyahat mesafesi: “Maliyet en az olsun” — kulüp maliyetlerinin önemli olduğu lig için
- Break sayısı (ardışık ev/deplasman): “Adalet en yüksek” — kulüp şikayetlerine duyarlı federasyon için
- Yayıncı tatmini (sözleşme uyumu): “Reklam geliri en yüksek” — yayın hakkı geliri ağırlıklı lig için
- Tribün doluluğu öngörüsü: “Seyirci geliri en yüksek” — biletli maç gelirine bağlı kulüpler için
Çoğu pratik vakada bu dördünün ağırlıklı bir karışımı kullanılır.
Akademik kaynaklar
Sayfanın sources bölümünde listelidir. Türkçe akademik çalışmalar için: YÖK Tez Merkezi’nde “lig fikstürü” veya “turnuva çizelgeleme” anahtar kelimesiyle 60+ tez bulunur — özellikle endüstri mühendisliği ve spor bilimleri yüksek lisans tezleri Türkiye Süper Lig fikstür yapısına yakındır. Tournament scheduling alanı 1990’lardan bu yana operasyon araştırmasının en görsel başarı hikayelerinden biri; Avrupa profesyonel futbol ligleri ile büyük Amerikan beyzbol ve basketbol liglerinde standart yaklaşım haline gelmiş.
Kaynaklar
- Easton, K., Nemhauser, G. ve Trick, M. (2003). Solving the travelling tournament problem: A combined integer programming and constraint programming approach. PATAT 2002 Selected Papers, Lecture Notes in Computer Science — tournament scheduling alanının temel makalesi.
- Goossens, D. ve Spieksma, F. (2012). Soccer schedules in Europe: an overview. Journal of Scheduling, 15. cilt — Avrupa futbol ligleri fikstür uygulamalarının derlemesi.
- Ribeiro, C. C. (2012). Sports scheduling: Problems and applications. International Transactions in Operational Research, 19. cilt — alanın kapsamlı modern derlemesi.
- YÖK Tez Merkezi — anahtar kelime: ’lig fikstürü’, ’turnuva çizelgeleme’, ‘sports scheduling’ — TR akademisinden 60+ tez. tez.yok.gov.tr
Sözlük
- Turnuva Çizelgeleme
- Bir spor liginin veya turnuvanın hangi takım hangi haftada hangi takımla, nerede oynayacağına dair fikstür oluşturma problemi.
- Round-Robin
- Bir turnuva yapısı: her katılımcı diğer her katılımcıyla eşit sayıda kez karşılaşır.
- MIP
- Karar değişkenlerinin bir kısmının tam sayı (örn. 'kaç kamyon', 'kaç vardiya') olduğu optimizasyon türü.