토너먼트 매치업을 예약하는 알려진 알고리즘이 있습니까?


10

토너먼트 일정 알고리즘이 이미 있는지 또는 약간 적응할 수 있는지 궁금합니다.

내 요구 사항은 다음과 같습니다.

  • 다양한 팀 / 클럽에 속한 다양한 수의 적을 상대와 짝을 이루어야합니다.
  • 두 명의 상대는 같은 클럽에 속할 수 없습니다
  • 홀수의 플레이어가 있다면, 그들 중 1 명이 무작위로 선택되어

이러한 종류의 요구 사항 세트와 관련된 알고리즘이 인정 될 것이다.

편집 : 나는 이것을 최대 한 번만 실행하면 토너먼트의 첫 번째 '라운드'에 대한 매치업을 만들 수 있습니다.


최대 일치 를 조사 할 수 있습니다 .
svick

답변:



1

20 초 전에 Wikipedia에 대한 간단한 시간부터 제거 전략을 먼저 결정해야 할 것 같습니다. Wikipedia를 참조하십시오.

  1. 스위스 시스템
  2. 단일 제거 _ 토너먼트
  3. 이중 제거 _ 토너먼트

단일 제거 기사는 꽤 일반적으로 (당신이 찾고있는 알고리즘) 기술을 파종으로 설명하며, 도움이 보였다 아니지만 알고리즘을.


나는 더블 / 싱글 제거와 달리 중간 순위를 제공하는 스위스를 선호하며 N 제거 토너먼트와 같은 수의 라운드에서 상위 N 명의 선수를 찾습니다.
Mooing Duck

1

내가 이것을 따라 가면 초기 매칭 알고리즘은 매우 간단합니다.

While two or more clubs have at least one member not paired  
    select the two clubs with the most unpaired members
    select a random unpaired member from each club
    pair those members

한 사람이 남아 있으면 한 사람을 제외하고는 임의의 사람이됩니다. 한 클럽이 모든 상대 플레이어보다 더 많은 회원을 보유하고 있다면 남은 클럽은 항상 해당 클럽에서 나옵니다. 현실적으로 이것은 매우 희귀 한 상황이며 다른 클럽에서 구매를 선택하면 더 많은 사람들이 남게됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.