티스토리 뷰

1. 오늘 한 일

오늘은 크게 세 가지를 진행했다.
첫째, Tableau 태블릿 대시보드에 완성본 디자인을 적용했다.
둘째, 1차 배포를 마친 Streamlit과 홈페이지를 튜터님 피드백 기준으로 보완했다.
셋째, 시뮬레이션 쪽에서는 통합 시뮬레이션 구조와 탐색 변수, 평가 방식을 더 구체적으로 정리했다.

2. Tableau에서 한 작업

Tableau 쪽은 레이아웃을 새로 잡는 단계가 아니라, 이미 정해진 구조 위에 완성본 디자인을 실제로 반영했다.
기존 바둑판(grid) 형식으로 되어 있던 대시보드에 부동(floating) 요소를 활용해 원하는 시각적 구성을 맞췄고, 태블릿 화면에서도 보이기 좋도록 디자인을 다듬었다.
오늘은 구조를 정리하기보다, 최종 결과물에 맞게 화면 완성도를 높이는 작업을 진행했다.

3. Streamlit과 홈페이지에서 확인한 점

Streamlit과 홈페이지는 1차 배포를 마친 뒤 튜터님 피드백을 반영하는 단계로 들어갔다.
전체 흐름은 어느 정도 잡혀 있었지만, 실제 화면을 보니 페이지 간격이 원하는 만큼 넓혀지지 않는 UI 문제가 있어서 그 원인을 찾고 있다.
지금은 새로운 기능을 추가하기보다, 이미 만든 화면을 더 자연스럽고 보기 좋게 보완하는 데 집중했다.

4. 시뮬레이션에서 더 구체화한 부분

오늘 시뮬레이션 쪽에서는 통합 구조를 더 선명하게 정리했다.
integrated_sim.run_integrated_simulation을 기준으로,
타자 Markov + 진루 + 라인업 풀을 담당하는 simulator와
투수 Markov + bullpen state augmentation + 시기별 closer 풀을 담당하는 markov_pitching을 합치는 방향으로 정리했다.

탐색 변수도 더 구체적으로 잡았다.
이번 시뮬레이션은 12차원 σ 공간을 기준으로 구성했고,

  • 타자 4개: hr / bb / k / single mult
  • 투수 6개: closer 관련 4개 + setup K + starter HR
  • 공통 2개: team_K_pct_mult, team_BB_pct_mult

를 조정 대상으로 두는 구조로 정리했다.

5. 평가 방식과 출력

목표도 더 분명하게 설정했다. 기준은 다음 3가지였다.

  • 승수 최대화
  • 정책 변경 비용(σ_norm) 최소화
  • 실점(RA) 최소화

즉, 많이 이기는 방향만 보는 것이 아니라,
얼마나 크게 바꿔야 하는지와 실점 억제까지 함께 고려하는 3-objective 구조로 정리했다.

평가 방식은 후보 σ 한 점당 20시즌 × 162경기, 즉 3,240경기 시뮬레이션 평균으로 계산하고,
750개 σ 후보를 평가해 총 15,000시즌 규모로 탐색하는 방식으로 잡았다.
최종 출력은 Pareto front 50점을 뽑은 뒤,

  • aggressive
  • balanced
  • conservative

시나리오를 자동 선정하고 CSV로 저장하는 구조로 정리했다.

6. 느낀 점

오늘은 각 파트를 새로 만드는 것보다, 이미 잡혀 있는 결과물을 실제 최종본에 맞게 다듬고 연결했다.
Tableau는 완성본 디자인을 반영했고, Streamlit은 배포 후 UI를 보완했고, 시뮬레이션은 변수와 평가 기준을 더 분명하게 정리했다.
각 작업은 달랐지만, 결국은 최종 발표와 대시보드에서 얼마나 자연스럽게 이어지느냐로 연결된다는 걸 다시 느꼈다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/05   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함