경기장에서 압박은 몸으로 쓰는 언어다. 상대의 첫 터치에 달라붙어 방향을 닫고, 유인과 함정을 통해 공을 빼앗는 집단적 장치다. 탈압박은 그 언어를 읽고 틈을 찾아 빠져나가는 문해력이다. 현실 축구에서 이 두 가지는 선수의 발과 심박수로 측정되지만, 가상축구 안에서는 숫자와 규칙으로 작동한다. 이 글은 가상축구 시뮬레이션이 압박과 탈압박을 어떻게 수학적으로 표현하고, 이를 어떻게 검증하고 다듬을 수 있는지, 실무에서 부딪히는 사례와 함께 설명한다. 내용은 가상축구를 중심으로 하지만, 가상농구나 가상경마, 가상개경주처럼 다른 종목의 엔진에도 연결되는 공통 원리를 찾아본다.
가상 엔진이 보는 압박, 현실과 다른 같은 점
가상축구는 난수로만 굴러가지 않는다. 보통 다음 요소를 내장한다. 선수별 기초 능력치, 전술 파라미터, 상태 변화 규칙, 사건 발생 분포, 그리고 보상 함수. 압박은 전술 파라미터와 사건 분포의 교차점에 놓인다. 예를 들어 팀 압박 강도는 0에서 1까지의 연속 값으로 두고, 0.7 이상이면 전방 3초 내 공 소유자에게 2명 이상의 수비가 접근하도록 규칙을 걸 수 있다. 탈압박 성향은 첫 터치 방향 선택 확률과 2선 지원 속도에 가중치를 준다.
여기서 수학은 화면 속 움직임의 언어를 정밀하게 번역하는 도구다. 어느 시점에 어느 선수가 먼저 도달하는가, 패스가 통과할 확률은 얼마인가, 이 두 질문을 기하와 확률로 풀어내면 엔진은 자연스러운 장면을 만든다. 현실 경기 자료로 이 분포를 교정하면, 가상의 장면이 단순한 각본이 아니라 데이터에 닿은 시뮬레이션이 된다.
시간-공간의 기하학, 누가 먼저 닿는가
압박의 첫 질문은 도달 시간이다. 공까지의 직선거리, 선수의 초기 속도와 방향, 가속 한계가 들어간다. 간단화하면, 선수 i가 지점 z까지 도달하는 시간 T i(z)를 Ti(z) = α i + di(z) / v i로 근사할 수 있다. 여기서 αi는 반응 지연, d i는 현재 위치에서 z까지의 거리, vi는 유효 최고 속력이다. 이 단순 모델만으로도 압박의 그림이 그려진다. 특정 지점 주변에서 가장 작은 T_i를 가진 선수가 공간을 통제하고, 그 경계는 실제로 타원에 가까운 형태를 띤다.

현실 데이터로 보정하면 α는 포지션과 상황에 따라 0.2초에서 0.6초 사이에 놓이고, v는 7.0에서 9.5 m/s 범위에서 안정적으로 관측된다. 가상축구 엔진은 매 0.1초 간격으로 후보 패스 지점 수십 곳에 대해 수비수들의 T_i를 비교해 패스 성공 확률을 갱신한다. 수비 두 명의 도달 시간이 모두 공의 도달 시간보다 작으면 차단 확률이 급격히 상승하고, 한 명만 빠르면 몸싸움 상태로 전이된다. 이런 식의 시간-공간 비교는 압박 타이밍의 돌발성을 자연스럽게 만든다.
이 기하를 조금 확장해, 공의 도달 시간 T ball을 패스 거리 d와 패스 속도 u로 d/u, 그리고 수비수의 차단 경로 길이를 d’로 잡으면, 패스 성공 조건은 대략 Tball < min i Ti(z)로 요약된다. 강한 압박에서는 min i Ti가 줄어들기 때문에 동일한 패스라도 실패 확률이 커진다.
기대가치의 언어, xT와 PVA
수비가 이기는 장면은 공을 빼앗는 순간만이 아니다. 상대를 측면으로 몰아내거나, 백패스를 강제해 위협을 낮추는 것도 이득이다. 그래서 기대위협, 흔히 xT로 알려진 맵을 사용한다. 구역 g의 공 보유가 향후 득점으로 이어질 기대값을 xT(g)로 둘 때, 압박 행동 a를 취해 상태 s에서 s’로 바꾸는 이득은 ΔV = xT(s) - xT(s’)로 정의된다. 공격권 전환이 일어나면 s’의 xT는 해당 위치에서의 공격 xT로 점프한다.
여기에 바로 압박 가치, PVA를 걸 수 있다. 특정 압박 이벤트 e의 PVA는 e 전후의 xT 차이의 기댓값, 그리고 반칙이나 탈압박 허용 시 발생할 비용을 포함한다. 예를 들어 하프스페이스에서의 협공은 평균적으로 상대 xT를 0.08 낮추지만, 커버가 늦어 탈압박을 허용하면 0.05가 오른다고 하자. 이때 PVA는 대략 0.08 - p fail * 0.05로 산출된다. Pfail은 위의 시간-공간 모델과 패스각, 지원자 수로 추정한다. 이렇게 계산된 PVA는 전술 파라미터 튜닝의 기준점이 된다.
마르코프 구조, 공의 행방을 상태로 표현하기
엔진 안의 경기 흐름은 상태 전이로 다룰 수 있다. 상태는 공의 위치 구역, 보유 팀, 압박 강도, 그리고 인근 지원자의 수로 요약한다. 전형적으로 상태 공간을 80에서 200 사이의 셀로 나누면 계산 부담과 해상도의 균형이 맞는다. 각 상태에서 가능한 행동, 예컨대 전진 패스, 백패스, 돌파, 킥아웃, 파울 유인에 대한 전이 확률을 학습하거나 규칙으로 박아넣는다.
압박은 전이 행렬을 변형하는 스위치다. 강한 압박일수록 전진 패스 성공 확률이 떨어지고, 롱볼 시도 확률과 터치 미스 확률이 올라간다. 탈압박은 반대로, 특정 방향으로의 전이 확률을 회복하거나 증가시킨다. 이 구조의 장점은 전술 실험이 빠르다는 것, 단점은 상호작용이 풍부한 실제 움직임을 다 담기 어렵다는 점이다. 그래서 위에서 설명한 시간-공간 모델과 결합해, 전이 확률을 상황별로 세밀하게 조정하는 하이브리드 구성이 실무에서 많이 쓰인다.
템포의 통계, 사건의 도착과 위험률
공 탈취, 파울, 터치 미스 같은 사건을 시간축에서 보면 포아송 과정에 가까운 패턴이 나온다. 압박 강도를 올리면 단위 시간당 이벤트 도착률 λ가 오른다. 다만 포아송을 그대로 쓰면 시점의 이력과 피로, 심판 성향이 무시된다. 그래서 위험률을 시간 종속형으로 확장해 λ(t) = λ0 * f(강도, 피로, 누적 파울)을 쓴다. 0에서 15분 구간에서는 강한 압박에도 λ가 낮고, 60분 이후에는 피로로 λ가 비선형적으로 떨어지는 현상이 자주 관측된다. 가상축구 엔진은 교체 시점에서 이 함수를 재설정해 남은 시간의 사건 빈도를 조절한다.
수치로 보면, 전방 압박을 0.6에서 0.8로 올리면 전반 15분 동안의 강제 롱볼 비율은 12에서 19 percent로 증가하고, 전진 패스 차단은 2.8회에서 4.1회로 오른다. 대신 파울 수는 1.3배 정도 늘어난다. 이 교환비를 정확히 다루지 않으면, 엔진은 비현실적으로 깨끗하거나 과도하게 난맥상인 경기를 만든다.
탈압박의 기하와 그래프, 세 번째 사람을 찾는 수학
압박을 풀 때 핵심은 각도와 시간 차다. 공 소유자 A가 등지고 받을 때, 전진 가능한 두 번째 사람 B는 보통 가려진다. 그래서 세 번째 사람 C의 등장 타이밍을 맞춘다. 이 장면은 그래프 이론으로 보기 편하다. 선수들을 노드로, 패스 가능성을 가중 에지로 둘 때, 탈압박은 높은 가중치의 2단 경로 s - A - C를 만들고, A - B의 가중치를 일시적으로 희생하는 과정이다.
에지 가중치는 위에서 계산한 패스 성공 확률로 채운다. 세 번째 사람 경로의 기대가치를 xT로 평면에 다시 올리면, 압박을 유인한 후 반대발로 여는 패스의 타당성이 수치로 보인다. 실제 수치는 작은 차이에서 갈린다. A에서 C로 14미터 대각선 패스의 성공 확률이 0.56에서 0.62로 오른다면, 같은 장면이 완전히 다른 결말을 낳는다. 이 차이는 종종 C의 접근 각도 10도, A의 첫 터치 질 5 percent 개선, 혹은 수비 한 명의 반응 지연 0.1초에서 만들어진다.
또 다른 유용한 표현은 통로의 랭크다. 수비의 그림자를 행렬 S로 두고, 가능한 패스 방향 벡터들을 열로 모으면, 차단 위험이 낮은 고유벡터가 드러난다. 실제 구현에서는 SVD를 사용해 가장 낮은 위험의 통로, 다음으로 낮은 통로를 서열화한다. 좋은 팀은 첫 번째 통로가 막힐 때 두 번째 통로로 매끄럽게 전환하는 속도가 빠르다.
간단한 수치 시나리오, 4 대 3 전방 압박
실전에서 자주 보는 4 대 3 압박을 예로 보자. 빌드업 팀은 골키퍼 G, 센터백 두 명 C1, C2, 그리고 하프스페이스의 6번 M. 압박 팀은 스트라이커 F와 두 윙 W1, W2, 그리고 공격형 미드 AM. 공은 C1에게 있다. 가상 엔진은 0.2초마다 다음을 계산한다.
먼저 C1에서 C2로의 18미터 패스. 공 도달 시간은 0.6초. W2의 차단 경로 도달 시간은 0.58초. 차단 확률은 0.52. C1에서 G로 12미터 백패스는 공 도달 0.4초, F의 돌진 도달 0.55초로 안전, 다만 xT가 0.03 내려간다. C1에서 M으로 15미터 직선 패스는 AM의 그림자에 걸려 차단 확률 0.61. 하지만 한 박자 늦추며 C1이 0.3초 터치 지연, 동시에 M이 옆으로 2미터 이동하면 AM의 도달 시간이 0.07초 늘어나 차단 확률이 0.44로 떨어진다.
여기서 압박 팀이 성공하려면 W2가 사선으로 1.5미터 더 밀어 C2 경로를 줄이고, F가 G로의 압박 각을 닫아야 한다. 탈압박 팀이 성공하려면 M 옆으로 나오는 타이밍을 C1의 터치 지연과 싱크로 맞춰야 한다. 엔진은 이 미세한 시간차를 요약 지표로 남긴다. 예컨대 동기화 오차 ε가 0.15초 이하일 때 탈압박 성공률이 68 percent, 0.3초까지 벌어지면 41 percent로 떨어진다. 이 지표는 훈련 설계에도 곧장 쓰인다.
비용 함수로 본 위험 관리, 파울과 라인 붕괴
강한 압박은 파울과 라인 붕괴 위험을 키운다. 비용 함수에 파울 위험 c foul, 뒷공간 노출 cspace, 체력 소모 c fatigue를 넣으면, 최적 압박 강도는 시간과 스코어에 따라 달라진다. 예를 들어 전반 40분, 0 대 0, 상대가 롱볼 지향일 때 cspace는 낮고 c foul은 중간 수준이니 압박 강도를 0.75까지 끌어올리는 전략이 합리적이다. 반대로 후반 80분 1 대 0 리드 상황이면 cspace가 급격히 커져 0.55 수준이 적정선이 된다.
가상축구의 장점은 이 함수를 숫자로 설계하고, 수만 판의 시뮬레이션으로 기대 성과를 평가할 수 있다는 점이다. 다만 수치가 그 자체로 진리처럼 보이지 않게 하는 장치가 필요하다. 파울 판정 성향, 심판 카드 기준, 리그별 접촉 허용도 같은 환경 변수를 별도로 관리해, 엔진이 특정 대회 특성을 반영하도록 하는 것이 기본이다.
보정과 검증, 숫자를 현실로 당겨오는 과정
시뮬레이션은 결국 보정의 예술이다. 초기 파라미터로 리그 5시즌치 이벤트 데이터를 학습해 분포를 맞추고, 최종적으로는 장면의 결을 눈으로 본다. 2선 늦은 커버가 반복해 노출되는지, 백패스 유도가 과도한지, 하프라인 근처에서 스틸이 비현실적으로 자주 일어나는지, 이런 눈테스트가 꼭 필요하다. 필수 지표 몇 가지는 이렇다. 상대 진영 3분의 1에서의 터치 미스 비율은 7에서 11 percent, 전방 차단 후 10초 내 슈팅 전환율은 16에서 24 percent, 파울당 카드 비율은 22에서 30 percent. 이 범위를 크게 벗어나면 파라미터를 재조정한다.
가상농구에서도 비슷한 보정이 이루어진다. 풀코트 프레스 상황에서의 턴오버 위험률, 사이드라인 트랩에서의 더블팀 탈출 확률 같은 것이 대응 변수다. 농구는 포제션이 더 짧고, 고립 1 대 1이 더 자주 발생하므로, 전이 모델의 시간 해상도를 더 세밀하게 가져가야 한다. 그래도 핵심은 같다. 도달 시간, 패스각의 개방 정도, 의사결정의 비용 함수.
다른 가상 종목으로의 전이, 질서와 소음의 비율
가상경마와 가상개경주는 포메이션이나 패스가 없다. 대신 압박과 탈압박이 페이스 전쟁과 길찾기로 바뀐다. 선행마가 초반 400미터를 24초대에 끊으며 페이스를 높이면, 따라가는 마필의 산소 부채가 누적되는데, 이때의 위험률을 시간 함수로 두고 종반 주파 가능성을 조정한다. 마주치는 교란, 진로가 막히는 상황은 축구의 차단과 비슷한 확률 구조다. 개경주에서는 코너에서의 원심력과 그립 손실을 조합해 라인 선택의 기대값을 계산한다. 결국 모두가 시간-공간의 경쟁이라는 공통 언어를 공유한다.
이 전이를 알면 가상축구 안에서도 디테일을 빚을 수 있다. 예를 들어 측면에서의 압박은 경마의 코너 진입처럼 공간이 급격히 좁아지는 상황이다. 라인 아웃, 태클 회피 같은 사건의 위험률을 코너의 원심력 모델처럼 비선형으로 올려주면, 측면 압박의 체감 효과가 살아난다.
훈련과 피드백, 값이 습관으로 바뀌는 과정
수치가 현장으로 내려가면, 코치와 선수는 간단한 규칙을 원한다. 동기화 오차 ε를 0.15초 아래로, 세 번째 사람 각도는 25도 내외로, 첫 터치 후 전환 시간은 0.6초 안으로. 가상 엔진에서 뽑은 이 수치는 훈련 드릴의 조건이 된다. 공 2개를 넣고 4 대 4 + 3 프리맨을 운영하면서, 특정 구역을 넘긴 패스에만 점수를 부여하면, 탈압박 각도를 만들기 위한 움직임이 자연스럽게 나온다. 압박 훈련에서는 터치 미스 유도보다 라인 상승의 싱크를 점수화해, 무리한 돌진을 억제한다.
시뮬레이션의 로그를 돌려보면, 압박 실패의 60 percent 이상이 두 번째 접근자의 각도 오류에서, 나머지 대부분이 커버 그림자의 깊이 부족에서 온다. 장면의 원인을 이렇게 쪼개주면, 선수는 자신이 무엇을 고쳐야 하는지 감각을 갖는다. 수학이 말하는 건 결국 피치에서의 작은 습관이다.
모델 설계 전에 던져야 할 현실적인 질문 다섯 가지
- 우리 엔진이 쓰는 도달 시간 모델이 특정 체형이나 포지션에 치우쳐 있지 않은가 xT 지도는 리그, 심판 성향, 시즌별 트렌드 차이를 반영하고 있는가 파울 판정과 이점 적용 규칙이 압박 위험-보상 교환에 미치는 영향이 과도하지 않은가 전술 파라미터의 작은 변화가 결과에 과도한 민감도를 보이는 구간은 어디인가 로그와 눈테스트가 충돌할 때, 어느 지표를 더 신뢰할지 기준이 있는가
과적합과 착시, 구현에서 가장 흔한 함정
엔진을 고도화할수록 두 가지 함정이 생긴다. 첫째, 과적합이다. 특정 팀 스타일, 특정 경기 샘플에 최적화된 파라미터는 다른 문맥에서 깨진다. 압박의 일반화 성능을 보려면 다른 리그, 다른 심판 풀의 데이터를 교차 검증에 반드시 포함해야 한다. 둘째, 착시다. 전술 파라미터가 눈에 띄게 달라졌다고 해서 결과 차이가 전술 때문이라고 단정하면 안 된다. 종종 득점은 세트피스에서 나고, 압박은 장면의 분위기를 바꿨을 뿐 직접 골과 연결되지 않는다. 그래서 PVA 같은 중간 지표가 중요하고, 결과 평가는 구간별 기대 득점과 위험의 흐름을 함께 본다.
또 하나의 흔한 실수는 피로를 전역 변수로 두는 것이다. 피로는 포지션과 역할에 따라 지역적으로 누적된다. 전방 압박수의 80 percent를 담당한 윙이 70분 이후 도달 시간에서 0.2초 늦어지면, 같은 강도의 팀 파라미터도 실질적으로 약해진다. 이 지역적 피로를 반영하지 않으면 후반전의 엔진이 현실과 어긋난다.
실무용 압박-탈압박 모듈을 만드는 간단한 절차
- 트래킹 데이터를 표준화하고, 도달 시간과 패스 성공 확률 모델을 먼저 안정화한다 xT 지도를 리그별로 학습해 전이 모델의 보상 함수를 정한다 하이브리드 전이 구조를 구성해 압박 강도와 지원 타이밍이 확률에 미치는 효과를 캘리브레이션한다 수만 회 시뮬레이션으로 분포를 맞춘 다음, 20개 내외의 대표 장면을 눈으로 검증한다 로그 지표를 코칭 언어로 번역해, 훈련 드릴과 피드백 도구로 내린다
적정한 난수, 인간처럼 보이는 변이
가상축구가 설득력을 잃는 순간은 완벽할 때다. 선수는 늘 최적의 각도를 잡지 못하고, 도중에 망설이며, 심판은 예상보다 일찍 혹은 늦게 휘슬을 분다. 이 인간적 변이를 엔진에 적정하게 섞으려면 잡음의 분포와 상관 구조를 고민해야 한다. 독립적인 화이트 노이즈 대신, 맥락 의존 편차를 도입한다. 예컨대 강한 압박이 몇 차례 연속으로 실패하면 다음 시도의 침착성이 당분간 낮아진다. 반대로 성공하면 공격 전환의 과감성이 일시적으로 높아진다. 이런 비정상성은 단조로운 확률 체인을 사람 냄새가 나는 과정으로 바꾼다.
가상농구에서는 연속 턴오버 뒤의 보수적 엔트리, 가상경마에서는 초반 선행 실패 뒤 중속 유지 성향, 가상개경주에서는 스타트 반응의 미세한 악화 같은 패턴이 유사한 방식으로 구현된다. 모두 수치로 제어할 수 있지만, 어느 정도의 불완전함을 남겨두는 것이 경험적으로 더 자연스럽다.
사례로 본 파라미터 튜닝, 숫자 두 자리의 차이
한 프로젝트에서 압박 강도 파라미터를 0.62에서 0.68로 올렸을 때, 전방에서의 공 탈취는 경기당 1.1회 늘었지만 실점이 오히려 0.14골 증가했다. 로그를 보면 뒷공간 노출로 허용한 빅찬스가 경기당 0.3회 늘었고, 그중 40 percent가 실점으로 이어졌다. 해결책은 단순히 강도를 낮추는 것이 아니라, 커버 라인의 깊이를 3미터 내리고, 중앙 미드의 반응 지연 α를 0.05초 줄이는 것이었다. 그 결과 탈취는 0.7회 증가로 줄었지만 실점은 원래 수준으로 돌아왔다. 숫자 두 자리의 조정이 전혀 다른 결과를 만든다. 이 섬세함이 가상 엔진 설계의 본질이다.
가상과 현실 사이, 윤리와 설계의 균형
가상축구는 종종 엔터테인먼트와 베팅의 맥락에서 소비된다. 그래서 엔진의 무작위성과 예측 가능성의 균형이 중요하다. 예측이 너무 잘 되면 흥미가 떨어지고, 난수성이 과하면 납득이 어렵다. 설계자는 결과의 장기 분포가 공정하게 수렴하도록 보장하면서, 단기 시퀀스의 다양성을 충분히 제공해야 한다. 또 하나, 엔진의 변경은 소통을 동반해야 한다. 압박 관련 파라미터를 손봤다면 어떤 장면이 달라졌는지, 평균 득점이나 파울 분포에 어떤 영향이 있었는지 공개하는 것이 바람직하다. 투명성은 신뢰를 만든다.
실무자 메모, 작은 도구의 효용
마지막으로 작은 팁. 전술 실험을 반복할 때는 세 가지 시각화가 특히 유용했다. 첫째, 2초 가상축구 창에서의 도달 시간 등고선 지도. 둘째, 동일 장면의 패스 통로 SVD 상위 두 벡터를 화살표로 표시한 그림. 셋째, 압박 이벤트 직전과 직후의 xT 변화를 타임라인으로 그린 차트. 이 세 가지면 압박과 탈압박의 구조가 한눈에 들어오고, 커뮤니케이션이 빨라진다. 숫자가 많을수록 그림이 더 중요해진다.
가상축구는 결국 물리와 확률, 그리고 습관의 합이다. 압박은 시간 경쟁, 탈압박은 각도 경쟁이다. 엔진이 이를 제대로 담아낼 때, 화면 속 움직임은 납득이 가는 리듬을 얻는다. 그 리듬이 사람을 끌어당긴다. 그리고 그 리듬을 만든 수학은 생각보다 소박하다. 거리를 재고, 시간을 비교하고, 작은 비용을 합산한다. 정교함은 작고 정확한 조각에서 나온다.