Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HDB TV Behavior Simulator

사용자 행동 모델링과 에스노그라피의 상호보완성 연구 — 싱가포르 HDB 가구의 TV 사용을 중심으로

A complementarity study between User Behavior Modeling and Ethnography:
Evidence from Television Uses in Singaporean HDB Households

전성원 · 고려대학교 디자인조형학부
지도: 김보섭 교수
2026 한국디자인학회 대학생 디자인 학술발표대회 (DSUS)


시연 영상

HDB TV Behavior Simulator 시연 영상


연구 개요

한국 가전 브랜드의 기술적 우수성이 항상 현지 시장 성과로 이어지지는 않습니다. 통계·집단 시뮬레이션은 문화적 맥락을 놓치기 쉽고, 현장 에스노그라피는 범위와 비용 때문에 일반화에 한계가 있습니다.

본 연구는 LLM 기반 가상 페르소나 시뮬레이션참여관찰·인터뷰를 병행하여, 싱가포르 HDB 환경에서 가구가 공간을 쓰고 TV와 상호작용하는 패턴을 교차 검증합니다.

가설

ID 내용
H1 사용자 행동 모델링은 HDB 가구의 TV 사용 행동 경향성을 생성할 수 있다
H2 AI가 생성하는 TV 사용 맥락은 실제 소비자 언어와 경향적으로 부합한다
H3 에스노그라피로 보완된 모델링은 실제 소비 경험을 더 풍부하게 재현한다

시뮬레이터 구성

HDB 4-room 평면(HDB-4room-tengah-furnished-v1.gltf) 위에서 가구·페르소나·24시간 일과를 생성하고, Gemini API로 페르소나 응답을 수집합니다.

┌─────────────────────────────────────────────────────────────┐
│  ❶ 가구·페르소나        7가구 유형 × CMIO 민족 × 세대·성격   │
│  ❷ 행동 슬롯            24h 일과, 방·TV on/off, co-viewing   │
│  ❸ LLM 프롬프트         Layer 0~3 (가구·개인·문화·인지)      │
│  ❹ 응답 수집            S/T/C 설문 10문항 → CSV bulk export │
│  ❺ prior 계층           priors.js (author_estimate_v0)       │
└─────────────────────────────────────────────────────────────┘

가구 유형 (7종)

Key 유형
A 다세대 대가족
B 핵가족
C 딩크 부부
D 룸메이트
E 시니어 부부
F 이주·혼혈 가정
G 1인 가구

설문 축 (10문항)

  • S (공간): S1 식사·TV, S2 개인 기기, S3 혼자/가족 TV
  • T (시간): T1 첫 시청, T2 TV 끄는 상황, T3 청소·요리 중
  • C (문화): C1 리모컨·채널, C2 자막, C3 브랜드, C4 스마트 기능

빠른 시작

1. 저장소 클론

git clone https://github.com/Bearjsw/hdb-tv-behavior-simulation.git
cd hdb-tv-behavior-simulation

2. Gemini API 키 (로컬만)

cp hdb-sim-viewer/gemini.local.example.js hdb-sim-viewer/gemini.local.js

gemini.local.jsGEMINI_API_KEY를 입력합니다.
이 파일은 .gitignore에 포함되어 GitHub에 올라가지 않습니다.

3. 로컬 서버 실행

file://로 열면 API 설정 파일 import가 실패할 수 있습니다. HTTP로 서빙하세요.

npx serve .
# 브라우저에서 http://localhost:3000/hdb-sim-viewer/ 열기

4. 대량 수집 (Bulk export)

UI 하단 Bulk export에서 가구 수를 지정하면 CSV 3종이 생성됩니다.

파일 내용
hdb-bulk-schedule-*.csv 페르소나·시간 슬롯 행동 로그
hdb-bulk-survey-*.csv 페르소나당 1행, answer_S1~answer_C4
hdb-bulk-survey-key-*.csv 질문 코드 ↔ 본문 매핑

프로젝트 구조

├── README.md
├── HDB-4room-tengah-furnished-v1.gltf   # HDB 4-room 3D 도면
└── hdb-sim-viewer/
    ├── index.html          # 3D 뷰어 + 페르소나 채팅 + bulk export
    ├── simulator.js        # 페르소나·일과·가구 dynamics 생성
    ├── priors.js           # prior 계층 (author_estimate_v0)
    ├── persona-chat.js     # Gemini 시스템 프롬프트·설문
    ├── tv-profiles.js      # SG TV 브랜드·모델 가중 샘pling
    ├── bulk-export.js      # 대량 CSV 수집
    ├── movement-nav.js     # 3D 이동·충돌
    ├── world-coords.js     # 공간 좌표
    └── gemini.local.example.js

Prior 계층 (priors.js)

서술형 편향을 줄이기 위해 가구 TV 맥락·갈등·브랜드 인지를 구조화 prior로 분리했습니다.

  • 버전: author_estimate_v0
  • 향후 IMDA·현지 후기·조사 데이터로 수치 교체 예정
  • LLM 프롬프트에는 「prior는 참고용, 일과·경험과 다르면 prior를 따르지 말 것」 명시

연구 방법과의 대응

연구 설계 코드
HDB 4-room 공간 HDB-4room-tengah-furnished-v1.gltf, world-coords.js
7가구 유형 × 민족 HOUSEHOLD_TYPES, pickEthnicitiesForHouseholdCensus
24h 행동 슬롯 buildSchedule, attachTvMetaToSchedule
TV power / mode / co-view 슬롯 tv, tvPurpose, tvSocial
LLM Layer 0~3 persona-chat.js system prompt
10문항 설문 BULK_TV_SURVEY_QUESTIONS
에스노그라피 보완 훅 pickSimRareHooks

한계 및 주의

  • 브라우저에서 Gemini API를 직접 호출하므로, 공개 배포 시 API 키 노출에 유의하세요. (연구·로컬 사용 권장)
  • 가구 유형·민족 가중치는 Statistics Singapore를 근사한 교육·샘플링용입니다.
  • author_estimate_v0 prior는 calibration 전 baseline입니다.

인용 (Citation)

@inproceedings{jeon2026hdbtv,
  author    = {전성원 and 김보섭},
  title     = {사용자 행동 모델링과 에스노그라피의 상호보완성 연구: 싱가포르 가구의 TV 사용을 중심으로},
  booktitle = {2026 한국디자인학회 대학생 디자인 학술발표대회},
  year      = {2026},
  note      = {Software: \url{https://github.com/Bearjsw/hdb-tv-behavior-simulation}}
}

License

MIT License — see LICENSE.


Contact

  • 전성원 — 고려대학교 디자인조형학부
  • Issues 및 재현 관련 문의는 GitHub Issues를 이용해 주세요.

About

LLM persona TV behavior simulator for Singapore HDB households (DSUS 2026, Korea University)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages