2022 프로야구 일정 톺아보기
-
내가 만든 2022 KBO 일정2022 프로야구 일정 톺아보기 2022. 3. 31. 15:58
AI Constraints Solver인 Optaplanner를 활용하여 계획을 수립하였습니다. 이론적 배경, AI Constraints 엔진인 Optaplanner에 대한 소개, Optaplanner를 활용한 개발 과정은 별도의 시리즈에서 상세하게 공유하겠습니다. 정석대로라면 위의 순서를 밟고 결과를 보여드려야 하는데, 이렇게 순서를 정한 이유는 먼저 결과를 보여드려야, 뒤에 이어질 내용이 다소 깊어지더라도 흥미를 가지고 읽으실 수 있으실 것 같아서 이렇게 작성해보았습니다. 또한 개발자가 아닌 일반인분들도 즐겁게 읽어주셨으면 합니다. 2022 전체 일정 아래는 제가 수립한 2022년 KBO일정입니다. 펼쳐보시면 되겠습니다. 더보기 표1. 엔진이 생성한 2022년 일정표 일자 홈 원정 경기장 경기 수 주..
-
2022 KBO 일정을 세워보자(2)2022 프로야구 일정 톺아보기 2022. 3. 31. 14:53
KBO의 2022년 일정은 몇 점일까요? 정의한 제약 조건과 목적 함수 기준으로 KBO가 수립한 2022년 일정은 몇 점일까요? 계산해 본 결과 아래와 같습니다. 1. 제약 조건 - 모든 제약 조건에 대해 준수함 : 0 score 2. 목적 함수 KBO가 수립한 2022년 일정에 대한 각 Soft Constraints에 대한 결과는 아래와 같습니다. 팀 별 총 이동거리의 분산 : -111.57 score 팀 별 주말 및 휴일 분산 : -6 score 모든 팀의 총 통행거리 : -86290.7 score 표1. 구단 별 총 이동거리에 대한 점수 구단 A. 구단 별 이동거리 B. 평균 (AVG(SUM(A))) C. 평균 차이 (A-B) D. 분산 ( C^2) 한화 8,121.1 8,629.1 507.97 -..
-
2022 KBO 일정을 세워보자(1)2022 프로야구 일정 톺아보기 2022. 3. 31. 14:16
이제 본격적으로 2022년 프로야구 일정을 세워보도록 하겠습니다. 무엇이 좋은 계획인가? 우리가 원하는 것은 실현 가능한 각 구단별로 총 통행거리와 주말 및 휴일 배정 건수가 공정한 계획을 원합니다. 그러나 컴퓨터가 이를 어떻게 판단할 수 있을까요? 따라서 생성된 계획을 어떻게 평가할지를 생각해야 합니다. 여기서부터가 모든 계획의 시작입니다. 딥러닝이든 강화학습에서는 이를 목적 함수라 부릅니다. 첫 시작은 이 목적함수를 정의하는 것에서 시작합니다. 무엇을 최소화하고 무엇을 최대화해야 할까요? 예를 들어 두 명의 플래너가 있습니다. 두 명의 플래너가 수립한 계획의 구단별 총 통행거리가 아래와 같다고 가정해보겠습니다. 무엇이 좋은 계획일까요? 표1. 이동거리 예시 팀 A B 두산 8000 7700 NC 81..
-
2022 KBO 일정 톺아보기2022 프로야구 일정 톺아보기 2022. 3. 31. 12:43
데이터 구성하기 1. Distance Matrix 구성 롯데 사례로 본 한-미-일 이동수단 백태기사에 따르면 각 구단들은 심야시간에 버스로 이동하는 것으로 보입니다. 따라서 오후 10시 이후에 카카오맵에서 각 구단의 경기장에서 이동거리를 측정하여 아래와 같은 표로 만들었습니다. (귀차니즘으로 기종점의 이동 거리는 대칭이라고 가정하였습니다. 즉 고척돔에서 광주챔피언스필드의 거리가 311.7km이라면 광주챔피언스필드에서 고척돔까지 거리도 311.7km이라고 가정하였습니다.) 표1. 각 구장 별 이동거리 (단위 km) 고척돔야구장 광주챔피언스필드 대구삼성라이언즈파크 문학경기장 사직야구장 수원KT위즈파크 잠실종합운동장 창원NC파크 한화이글스파크 고척돔야구장 0 311.7 308.2 24.9 407.2 39.2 ..
-
얼마나 복잡한 문제인가?2022 프로야구 일정 톺아보기 2022. 3. 31. 12:02
경우의 수 확인하기 모든 알고리즘 책의 첫번째 시작은 문제의 복잡도를 분석하는 것입니다. 즉 경우의 수를 따져보는 것이지요. 현재 KBO 리그는 10개 팀으로 운영되고 있습니다. 그렇다면 한 경기에서 나올 수 있는 경우의 수는 어떻게 될까요? 10개 팀에서 2개 팀을 고르는 경우의 수는 90개입니다. (10개에서 2개를 고르는 조합이 아닌 순열 의 개수입니다. 순서가 변경되면 홈/어웨이의 차이가 발생하게 됩니다.) 그러면 남은 8개 팀에서 2개 팀을 고르는 경우의 수는 56입니다. 그렇다면 10개 팀에서 5개의 경기를 만드는 경우의 수는 3,628,800개가 됩니다. (10!입니다. 물론 Feasible한 것만 따져보면 경우의 수가 많이 줄어들겠지만, 일반적으로 알고리즘에서 문제의 복잡도를 따져볼 때는 ..
-
드디어 시작하다.2022 프로야구 일정 톺아보기 2022. 3. 31. 12:02
연휴에 스토브리그를 보다가 올해 초 기술블로그를 만들어야겠다고 다짐은 했지만, 어디서부터 시작을 해야 할지 결정을 내리지 못하고 있었습니다. 어떻게는 이번 설 연휴 전에는 무언가 행동을 취해야 한다고 결심했지만 목표대로 모든 사람들의 관심을 가질 수 있는 무언가를 찾는 것이 어려웠습니다. 초조해지는 마음을 뒤로하고 환기하는 차원에서 WATCHA에서 스토브리그라는 드라마를 보게 되었습니다. 원래 야구를 보는 것을 좋아하고, 평가도 좋았던 드라마였기 때문에 정주행을 하다가 이 장면을 보게 되었습니다. (단장회의의 한 장면입니다.) 서울, 수도권에 굉장히 많은 팀들이 몰려있기 때문에 지방팀들이 경기를 하기 위해서 이동을 하다 보면 버스 안에서 굉장히 많은 시간을 보내게 됩니다. 저는 이것이 불합리적으로 적용될..