(삼성화재배 했구나. 삼성화재배 결과와는 반대로 이 글은 좀 부정적인 이야기)
더 좋은 비교 스텟을 만들어보려는 의도로 잠시 테스트해보는 코드인데,
원래 ELO 기본값을 1500점 내외 주는데, 랜덤값을 적용하면 우째되는지 함 테스트.
ELO 기본값 = 기본 2000점에 0점~20000점 더 추가 = 즉 2000점~22000점 사이의 점수를 선수마다 랜덤으로 입력
(일부러 격차를 ㅈㄴ 심하게 2000점~22000점으로 잡아서 이게 극복되는지 보려는 것)
그리고, ELO_K = 1 코드가 보이는데,
ELO_K는 ELO에 단순히 곱해주는 값이고, 작으면 ELO 점수가 천천히 증감하고 크면 ELO 점수가 팍팍 증감.
K값을 보통 뉴비는 40, 쫌 치면 20, 어느 정도 고수가 되면 10을 쓴다는데, 이 테스트에서는 단일값으로 통일.
암튼, 그런 후에 나중에 이 값을 갖고,
아래아래에 나오는 코드에서 1회만 ELO를 계산하는 게 아니라,
2000점~22000점 랜덤 초기값으로 1회째 ELO 계산
→ 1회째의 ELO 값으로 다시 2회째 ELO 계산
→ 2회째의 ELO 값으로 다시 3회째 ELO 계산
→ ...
→ ...
→ ...
→ 99회째의 ELO 값으로 다시 100회째 ELO 계산
이런 방법을 써서 랜덤값으로 2000점~22000점을 입력해줘도 의미있는 순위가 나오는지 알아보겠다는 거야.
재계산 횟수는 100회 고정. (파이썬 새끼 속도가 느려터져서 100회도 몇 초 걸림)
ELO_K 값은
1 → 10 → 20 → 30 → 40 → 50 → 200
이런 식으로 늘려가며 테스트.
대국수 5회 이상 선수들만 대상으로.
대국수가 무척 적으면, 상위 선수를 1회라도 잡으면 순위 뻥튀기가 너무 심해지니까 대국수 적은 선수는 알아서 잘 가려 읽고.
ELO_K = 1
랜덤으로 2000점~22000점 사이의 점수를 받았기 때문에 ELO_K = 1 조건으로는 100회 재계산 때려도
랜덤값을 극복 못 해서 순위가 랜덤 순위나 마찬가지가 됨.
ELO_K = 10
약간 순위가 괜찮아짐.
ELO_K = 20
확실히 좋아졌지만, 여전히 대국수 5회 밖에 안 되는 선수가 1위. (0위부터 시작하므로 1위는 두 번째)
ELO_K = 30
순위가 훨씬 더 WHR 순위와 비슷해졌음.
즉, 랜덤으로 2000점~22000점으로 ELO 점수를 줘도 이런 식으로 반복해서 돌리면 순위가 정상화된다는 걸 알 수 있음.
하지만, 이치리키 료가 3위. 즉, 지나친 뻥튀기로 인해 ELO에 폐쇄집단 특성이 너무 강하게 반영됐다고 볼 수 있음.
폐쇄집단이란?
국가 폐쇄집단 = 한국 폐쇄집단 , 일본 폐쇄집단 , 중국 폐쇄집단 , 대만 폐쇄집단 , etc
성별 폐쇄집단 = 남자 폐쇄집단 , 여자 폐쇄집단
시대 폐쇄집단 = 1950년생 폐쇄집단 , 1960년생 폐쇄 집단 , ... , 2000년생 폐쇄집단 , 2010년생 폐쇄집단
대회 폐쇄집단 = 어린이 대회 폐쇄집단 , 시니어 대회 폐쇄집단 , 리그 대회 폐쇄집단 , 농심배 대회 폐쇄집단, 삼성화재배 대회 폐쇄집단 , ...
상금 폐쇄집단 = 상금 100만원 폐쇄집단 , 상금 1000만원 폐쇄집단 , 상금 10000만원 폐쇄집단
시간 폐쇄집단 = 30분 초읽기 5회 폐쇄집단 , 60분 초읽기 5회 폐쇄집단 , etc
덤룰 폐쇄집단 = 5.5 덤 폐쇄 집단 , 6.5 덤 폐쇄집단 , 7.5 덤 폐쇄집단
흑백 폐쇄집단 = 흑 폐쇄 집단 , 백 폐쇄집단
그 외 다양한 폐쇄집단
근데, 이지현이 13위. 뭐지?
ELO_K = 40
이지현이 11위?
야마시타 케이코는 61위.
ELO_K = 50
헉! 왕싱하오가 0위?
이지현도 놀라운데, 왕싱하오가 신진서를?
이치리키가 2위(3위)로 올라온 건 분명 폐쇄집단 특성이 지나치게 반영돼서 그런 건데,
왕싱하오가 0위가 된 건 (중국이라는 폐쇄집단이 워낙 막강해서) 폐쇄집단 반영이라고 하면 안 되고, 최근 추세 반영일 것.
(참고로 자세히 보면 내가 미래 유망주 생년월일에 네모 친 곳들이 있으니까 참고. 2008년생 조상연 68위)
좀 놀라서 정상적으로 아래처럼 해보니까 ELO_K = 50이면 재계산 없이도 왕싱하오가 바로 0위더라고.
K값이 레벨에 따라 40 20 10으로 변동 적용한다는데, 어쨌든 이걸 50으로 올렸다고 왕싱하오가 0위가 된다는 자체가 놀라움.
기본값은 모든 선수 1500
ELO_K = 50
재계산 없이 1회에 종료
0 위 : 1746, Wang Xinghao, 194, 86, 280, 2004-02-02, 남, cn, 3713, 2024-10-27, 2409.164429835793, 0.6488457931149455, 2004-02-02,
1 위 : 1313, Shin Jinseo, 732, 204, 936, 2000-03-17, 남, kr, 3867, 2023-03-27, 2405.866798000699, 0.6221532966125417, 2000-03-17,
2 위 : 1231, Ichiriki Ryo, 603, 288, 891, 1997-06-10, 남, jp, 3655, 2024-09-04, 2363.63886119224, 0.6466864189308453, 1997-06-10,
3 위 : 1193, Yang Dingxin, 451, 290, 741, 1998-10-19, 남, cn, 3689, 2024-09-15, 2286.73675720799, 0.6198798474404961, 1998-10-19,
4 위 : 601, Iyama Yuta, 794, 363, 1157, 1989-05-24, 남, jp, 3603, 2024-07-04, 2269.131136263539, 0.6297893800342877, 1989-05-24,
5 위 : 1135, Dang Yifei, 340, 289, 629, 1994-06-17, 남, cn, 3657, 2024-10-18, 2262.1706552299793, 0.6185864520727316, 1994-06-17,
6 위 : 2032, Jin Yucheng, 67, 45, 112, 2004-06-23, 남, cn, 3592, 2024-08-10, 2257.7332576885597, 0.6285448935658574, 2004-06-23,
7 위 : 1195, Ke Jie, 630, 273, 903, 1997-08-02, 남, cn, 3735, 2020-08-04, 2257.2386276832226, 0.6043476914814518, 1997-08-02,
8 위 : 1090, Park Junghwan, 952, 391, 1343, 1993-01-11, 남, kr, 3714, 2019-06-25, 2250.8315388186493, 0.606039725045409, 1993-01-11,
9 위 : 1166, Lee Jihyun (m), 218, 183, 401, 1992-09-30, 남, kr, 3511, 2024-10-11, 2242.7297256685706, 0.6387723513724212, 1992-09-30,
10 위 : 1504, Chen Zijian, 136, 143, 279, 2000-01-05, 남, cn, 3580, 2024-10-09, 2241.99204381435, 0.6262547608419972, 2000-01-05,
어떻게 역전될 수 있는지 너무 궁금해서 신진서 왕싱하오 ELO_K = 50 일 때, 날짜별 년도별 ELO 증감을 구해봤고,
고레이팅은 왕싱하오만 년도별 증감을 구해봤음.
신진서는 6년 정도만 좀 벌었을 뿐 나머지 년도는 그닥 얼마 못 벌었음. 충격! 그냥 못 번 정도가 아니라 2022년은 -92점임.
왕싱하오는 2019년에 엄청나게 많이 벌었고, 2024년도 좀 많이 벌었는데, 저거 합산하면,
신진서 : 936경기 합산해서 423.8
왕싱화 : 280경기 합산해서 428.5
신진서가 훨씬 많은 경기를 치르고도 K=50일 때 점수가 더 적은 이유는
아주 빠르게 상당한 점수차로 1위가 됐지만, 한 번 질 때마다 그만큼 큰 점수를 잃어서.
그래서 신진서 대국일자별 막대 그래프 보면, 졌을 때 음수쪽으로 막대가 훨씬 길게 늘어진 게 보일 거야.
고레이팅은 끊임없이 조정되는 점수라서 왕싱하오가 2019년도에 특별히 많이 벌지 않은 것처럼 보이지만, 고레이팅 가서 조사해보면,
왕싱하오가 하수면서 이긴 횟수는 위처럼 얼마 안 되는데,
점수 차이 많이 나는 상수와 둬서 이긴 횟수가 많은 년도는 확실히 2019년도야.
점수 차이 많이 나는 상수와 둬서 이긴 횟수가 많아야 ELO를 많이 버니까 2019년도에 ELO를 많이 번 게 맞아.
K=50일 때는 예상보다 훨씬 빠르게 역전됐다는 건
K=10이더라도 신진서 약간 하락세 왕싱하오 약간 상승세 상황이 되면 예상보다 빨리 크로스 되는 날이 올 수 있다는 걸 의미해.
최고 천재들은 20살 즈음에 폭발적으로 발전하곤 했는데, 왕싱하오는 1년 내외 정체가 와서
앞으로 5년 이내에 왕싱하오가 신진서 역전시킬 일은 없을 거라 확신 했었는데, K를 50으로 올렸다고 역전 당한다? 믿기지가 않음.
ELO_K = 50이 상당한 뻥튀기인 건 분명하고, 거기에 또 100회 재계산으로 더더더 뻥튀기 시킨 것도 사실이지만,
부정할 수 없는 또다른 사실은 초기값을 2000~22000 사이의 랜덤값으로 줬는데도 순위가 상당히 정상화됐다는 점.
그 점 때문에 ELO_K = 50 정도에 저렇게 역전된다는 건 함부로 무시할 수 없다고 봐야 함.
ELO_K 값이 커질수록 더 빨리 미래로 가보는 것 같지만, 사실 그건 아님.
ELO_K 값은 단순 곱 상수이기 때문에 ELO_K 값이 커지면 1경기의 승패에 따른 ELO값 변화가 클 뿐임.
즉, 사람마다 관점이 다르듯이
나는 1 경기마다 ELO 변화를 작게 하는 게 좋다고 생각하니까 ELO_K 값을 작게 할 거야
나는 1 경기마다 ELO 변화를 크게 하는 게 좋다고 생각하니까 ELO_K 값을 크게 할 거야
뭐 이런 사람마다의 관점이나 마찬가지인 지맴꼴상수임.
그래서 ELO_K 값이 클수록 1 경기마다 값이 팍팍 변하므로
1. ELO_K 값이 크면 ELO가 존나 뻥튀기 돼서 최근 추세가 좋은 선수의 ELO가 크게 증가한다.
ELO_K를 늘림 → ELO가 쉽게 증감 → 최근 추세가 좋으면 ELO가 폭증 → 그래서 미래 예측성이 생김
2. ELO_K 값이 크면 ELO가 존나 뻥튀기 돼서 과거의 경기들의 결과도 완전히 다른 관점으로 재평가된다.
ELO_K를 늘림 → ELO가 쉽게 증감 → 과거 결과들의 연쇄성으로 인해 ELO가 폭발적으로 증감 → 그래서 과거 재해석성이 생김
이런 이유로 갑툭튀로 나온 선수들이 나올 수 있는데,
"갑툭튀 선수라도 이유(의미)는 있는 법이므로 무시하면 안 된다."
라는 관점을 갖어야 함.
ELO_K를 지나치게 크게 잡았고, 거기에 또 100회 재계산이라는 지나친 중복으로 ELO가 지나치게 뻥튀기 돼서 그런 거라고 하고 싶겠지만,
"그 말도 맞지만, 최소최대 극심한 랜덤값으로 시작했음에도 불구하고, 순위가 정상화됐으므로 갑툭튀도 의미있잖아?"
라는 반박도 일리 있음.
솔직히, ELO든 WHR이든 폐쇄 집단 특성을 너무 못 걸러내서 선수 비교에는 그닥 좋은 스텟이 아님.
인공에 의해서 모든 경기들의 모든 수에 대해서 1수1수마다 평가를 한 정밀한 스텟이 나오면 평가가 어떻게 달라질지 모름.
그래서 왕싱하오가 신진서를 제치든, 이지현이 최상위권으로 나오든
"평가 관점이 바뀌면 달라질 수 있다"
는 관점으로 봐야 함.
참고로, FIDE에서는 랭커들 어떻게 관리하나 싶어서 지난 주말에 알아보려고 잠깐 가봤다가 진심 놀랐다.
https://ratings.fide.com/download/players_list.zip
이게 저짝에서 받을 수 있는 랭커 데이터 중 하나인데, 씨발 152만명이더라.
GDP 최상위권이면서 랭킹 통합도 못한 한중일대 하는 꼬라지와는 너무 비교돼서ㅋ
(랭킹이 머임. 이름도 통합 안 돼서 저짝 데이터와 요짝 데이터 이름 때문에 개고생함. 생년월일도 당연히ㅋ.
생년월일 몰라서 상대 대국자들 평균 생년월일로 업데이트한 데이터가 수백건)
아무튼 그래서 이지현 선수의 추세를 실제로 확인해보니까
저렇게 최근 추세가 괜찮던데,
저렇게 우상향 시작한 시점이 2022년 8월이라서 최근도 아니고,
진짜 최근에는 변상일/신진서/딩하오까지 이겼더라고.
다만, 1992년생이라서 그게 문제인데, 다만, 나이는 이제 야마시따라서
야마시따 센세는 이번 년도에만 3번이나 훨씬 차이 나는 3567 3645 3630 잡아냈으니 이지현도 야마시따하면 혹시? 설마? 레알?
암튼, 그래서 ㅈㄴ 무식하게 ELO_K = 200 땡겨봤어라.
ELO_K = 200
지~~~~~~~~~~~~~~~~~~~~~~~~~~~~~나친 건 사실인데, 이걸 왜 보여줬느냐?
ELO_K = 200으로 500위까지 뽑아봤는데, 100위 이내에는 1970년대생은 2명 나오는데, 야마시따 아재 외에 다른 한 명이 누구냐면,
한종진.
한종진. 1979년생.
그 다음 번 1970년대 생은 181위.
181 위 : 1040, Ha Sungbong, 9, 2, 11, 1977-06-30, 남, kr, 3348, 2011-03-14, 13247.093421774161, 3.9567184652849945, 1977-06-30,
노장들의 노오력은 항상 응원한다는 의미일 뿐 지~~~~~~~~~~~~~~~~~~~~~~~~~~~~~나친 건 사실.
ELO_K = 40 랭킹과 goratings 현재 순위를 비교해서 두 랭킹이 얼마나 차이가 나는지 순위 차이를 기록해봤는데,
이게 약간 미래 예측성이 있다고 했잖아, 근데, 얘가 찾아낸 존나 유망주가 누구냐면 오른쪽의 Wang ChunHui. (클릭하면 크게 보임)
goratings 순위는 은퇴한 선수들은 랭킹에 안 넣는데, ELO_K = 40 순위에는 다 들어있어서 차이가 더 날 수 밖에 없어.
순위 차이가 음수로 나오는 선수는 그만큼 ELO_K = 40 랭킹이 더 유망하다고 본 선수.
순위 차이가 양수로 나오는 선수는 그만큼 ELO_K = 40 랭킹이 덜 유망하다고 본 선수.
음수든 양수든 차이가 확연한 선수 찍어보면, 의외로 이유를 알겠음.
순위 차이 -87을 찍어놔서 "와! 누구지?" 하며 찍어보니까
2006년 1월생
3347인데도 불구하고 작년 12월부터 현재까지 3500 이상을 6번 이겼음
김은지도 상위 랭커 좀 잡았던 것 같은데, ELO_K = 40 랭킹은 김은지를 그닥 높게 안 치더라고.
gortings 122위
ELO_K = 40 랭킹 175위
Wang ChunHui 와 김은지의 확연한 차이점
(아직 어린 애들이라 어떤 게 더 좋다 함부로 말할 수 없음. 모든 선수들 통계를 좀 내봐야 함.)
1. 최근 50경기 상대가 상위 상대인 비율 : 김은지 16% , 왕춘후이 64%
2. 전체 대국수 : 김은지 290경기 , 왕춘후이 108경기
3. 최근 50경기 ELO 차이 평균 : 김은지 213 (평균 213점 낮은 선수들과 경기 했다는 의미) , 왕춘후이 -69
번외로 100회가 아니라 1000회 반복하면 얼마나 막장 터지나 확인해봤는데, 이상하게도 폭주를 안 함.
이 코드 수개월 전에 짜놨던 거 약간 고친 건데, 예전에는 폭주 했었나 안 했었나 기억이 나지 않는데, 폭주할 거라 생각했는데.
ELO_K = 30 , 1000회 재계산
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.