ANSR

볼이 퍼지는 방식: 물리 시뮬레이션용 통계 모델

by ANSWER Team
LAB도구통계물리 엔진
Share:

볼이 퍼지는 방식: 물리 시뮬레이션용 통계 모델

안내: 이 글은 일본어 원문을 AI로 번역했습니다.

오늘 LAB에 새 도구 「샷 분산 엔진」을 추가했습니다. 마크 브로디(Mark Broadie)의 「Every Shot Counts」와 토마스 킬렌(Thomas Kielen)의 통계 모델을 바탕으로 물리 엔진에 넣을 **「거리에 따른 분산 파라미터」**를 생성합니다.

도구의 목적

골프 물리 시뮬레이션 엔진을 만들 때 가장 중요한 요소 중 하나가 「샷 분산(Dispersion)」입니다. 플레이어 스킬 수준에 따라 샷이 얼마나 퍼지는지 정확히 모델링해야 합니다.

이 도구에서는 다음을 시각화·생성할 수 있습니다:

  • 좌우 분산 계수: 샷이 좌우로 얼마나 퍼지는지
  • 전후 분산 계수: 거리감 오차가 얼마나 있는지
  • 숏 바이어스: 아마추어가 통계적으로 타깃 앞에 착탄하는 경향
  • 캐리:런 비율: 거리에 따른 캐리와 런 비율

주요 기능

1. 플레이어 프로필 설정

핸디캡에 맞춘 프리셋을 준비했습니다:

  • Pro (+5): 매우 정밀한 프로 레벨
  • Scratch (0): 스크래치 골퍼
  • Avg (90s): 평균 아마추어(90대)
  • High (100+): 하이 핸디(100 이상)

각 파라미터는 슬라이더로 세밀하게 조절할 수 있습니다.

2. 실시간 시각화

  • 착탄 분산 시뮬레이션: 100구를 쳤을 때 분포를 탑 뷰로 표시
  • 거리와 분산의 관계: 선형 모델로 분산 확대를 시각화
  • 캐리:런 비율: 거리에 따른 캐리와 런 비율 표시

3. 엔진 구현용 데이터 테이블

50야드부터 300야드까지 10단계 거리에서 분산 파라미터를 자동 생성합니다. 물리 엔진에서 선형 보간(Linear Interpolation)의 기준점으로 쓸 수 있습니다.

통계 모델의 기초

이 도구는 다음 로직에 기반합니다:

  1. 분산 확대율: 거리에 따라 오차는 선형으로 증가(y = ax + b)
  2. 타원 분포: 세로(거리) 오차와 가로(방향) 오차는 독립
  3. 숏 바이어스: 아마추어는 통계적으로 타깃 앞에 착탄하는 경향이 강함

구현 활용

생성된 데이터 테이블은 Markdown 형식으로 복사할 수 있어 물리 엔진 구현에 바로 쓸 수 있습니다. 구현 로직 예:

좌우분산 = (계수A * Distance) + 베이스오차
전후분산 = (계수B * Distance) + 베이스오차
실제 착탄점(x, y) = (
  random_normal() * 좌우분산,
  Distance - 오프셋 + random_normal() * 전후분산
)

참고 문헌

이 도구는 다음 연구·데이터에 기반합니다:

  • Mark Broadie: "Every Shot Counts: Using the Revolutionary Strokes Gained Approach to Improve Your Golf Performance and Strategy" (2014)
  • Thomas Kielen: "Statistical Analysis of Golf Dispersion" (관련 문헌)
  • PGA TOUR ShotLink: 공식 샷 데이터

향후 전개

이 도구는 ANSWER 프로젝트 물리 엔진 개발에서 중요한 기반 데이터를 제공합니다. 앞으로 더 세밀한 통계 모델, 라이 상태(페어웨이/러프)에 따른 분산 차이 등 추가 기능을 검토합니다.


LAB에서 써 보기: 샷 분산 엔진