CHAPTER 07 / 13
케이스 스터디
실제 입력을 넣으면 어떤 결과가 나오나?
아래 본문은 기존 워크숍 목업 기준입니다. 새로 추가한 여행·회식·모임·선물의 질문과 후보는 다섯 가지 결정, 질문 생성과 설정은 AI 고도화에서 확인하세요. 새 체험은 규칙 기반이며 실제 LLM·다기기 응답 수집은 미연결입니다.
읽는 순서 7 / 13 · 요약
실제 입력을 넣으면 어떤 결과가 나오나?
- Case 1 팀 워크숍 4명은 현재 엔진으로 실제 실행해 검증했고, 결과는 양평 리트릿 워크숍이다. Case 2 친구 여행 3명과 Case 3 회식 6명은 엔진에 아직 없는 개념 가정이다.
- 세 케이스 모두 다수결과 다른 답이 나왔다. 원인은 늘 한 사람의 상한이나 금지 조건, 즉 거부권이었다.
- 후보가 1개만 남는 상황이 잦다. 그때 "협상 중"이라는 연출은 거짓말이 되므로, 화면은 필터 결과임을 밝혀야 한다.
- 인물과 답변은 모두 가상이다. Case 1 수치는 자동 테스트로 확인했다.
누가 읽나: 규칙이 정말 공정한지 의심하는 사람
작성: 페이블 · 2026-09-04
목적: 대리인 조율이 실제 입력에서 어떤 결과를 내는지 검증한다. Case 1만 현재 워크숍 엔진으로 실행 검증했고, 여행·회식 Case 2·3은 아직 템플릿이 없는 개념 검증용 가정이다.
※ 케이스 인물·답변은 모두 가상. Case 1 수치는 node OUTBOX/KKIRI/mockup/check.mjs와 자동 테스트로 검증했다.
0. 협상 규칙 (세 케이스 공통)
데모는 규칙 기반이라고 밝히고 있다. 발표에서 "규칙이 뭐냐"를 물으면 이 표로 답한다.
입력 → 대리인 조건
| 답변 유형 | 조건 | 협상에서의 힘 |
|---|---|---|
| 단일 선택(방식·지역) | 선호 pref | 맞으면 +, 틀리면 − |
| 시간·예산 + 상한 토글 | 상한 cap | 거부권. 넘는 후보는 탈락 |
| 1·2순위 목적 | 가중치 w1=2, w2=1 | 점수 배율 |
| 자유서술 금지 조건 | 금지 avoid | 거부권 |
개인 만족도와 정렬
개인 만족도 s_i (0~100)
= 40 × 목적 일치(1순위 1.0 / 2순위 0.5 / 불일치 0)
+ 25 × 방식 일치(정확 1.0 / 반반↔편측 0.5 / 반대 0)
+ 20 × 지역 일치(정확 1.0 / 무관 1.0 / 불일치 0)
+ 15 × 시간 일치(정확 1.0 / 더 짧음 0.6 / 더 김 0)
- 예산 선호 초과 페널티(선호의 1.5배 이내 5 / 초과 10)
거부권: cap 초과 또는 avoid 해당 시 후보 즉시 탈락
후보 순서 = min(s_i) 내림차순 → mean(s_i) 내림차순
→ 비용 오름차순 → 일정 길이 오름차순 → 후보 ID
min을 첫 기준으로 쓰는 것이 "소수 보호"의 실체다. 최저 만족도가 더 낮은 후보는 평균이 높아도 이길 수 없다.
설명 생성 규칙
- 이유: 후보를 이기게 만든 조건 중 2인 이상 공통 조건만 문장화.
- 선호와 다른 지점:
pref불일치가 2명 이상일 때만 집계. 이를 사용자가 동의한 "양보"라고 부르지 않는다. - 단독 조건은 내용도 공개하지 않고
조건 N건 반영처럼 건수만 보여준다.
Case 1. 팀 워크숍 4명 — 발표 데모 기준
상황: 스타트업 마케팅팀. 팀장이 방장. 분기 워크숍. 예산은 회사 부담이지만 1인 5만원 가이드가 있다.
비공개 답변
| 참가자 | 방식 | 시간 | 목적 1·2순위 | 지역 | 예산 상한 | 금지 조건 |
|---|---|---|---|---|---|---|
| 민수(방장) | 반반 | 하루 | 재충전 · 아이디어 | 수도권 근교 | 5만 선호 | "운전은 안 하고 싶어요" |
| 지영 | 실내 | 하루 | 아이디어 · 팀워크 | 서울 도심 | 5만 | 없음 |
| 태호 | 야외 | 1박 2일 | 팀워크 · 재충전 | 지역 무관 | 10만 | 없음 |
| 서연 | 실내 | 하루 | 재충전 · 아이디어 | 서울 도심 | 5만 (상한) | "술자리 중심은 피하고 싶어요" |
후보 (주제 템플릿에서 생성)
| # | 후보 | 방식 | 시간 | 지역 | 1인 비용 | 성격 |
|---|---|---|---|---|---|---|
| C1 | 양평 리트릿 워크숍 | 반반 | 하루 | 근교 | 4만 | 재충전+아이디어 |
| C2 | 성수 팀 미션 데이 | 실내 | 반나절 | 도심 | 3만 | 팀워크+아이디어 |
| C3 | 가평 1박 팀빌딩 | 야외 | 1박 2일 | 근교 | 9만 | 팀워크 |
| C4 | 강남 회의실 아이디어톤 | 실내 | 하루 | 도심 | 2만 | 아이디어 |
| C5 | 파주 실내 워크숍 | 실내 | 하루 | 근교 | 4.5만 | 재충전+팀워크 |
거부권 통과
- C3: 민수 운전 금지, 서연 예산 5만 상한, 서연 술 중심 금지 위반 → 탈락
- C1, C2, C4, C5 통과
개인 만족도
| C1 양평 | C5 파주 | C2 성수 | C4 강남 | |
|---|---|---|---|---|
| 민수 | 100 | 87.5 | 41.5 | 47.5 |
| 지영 | 67.5 | 60 | 94 | 100 |
| 태호 | 61.5 | 69 | 69 | 29 |
| 서연 | 67.5 | 80 | 74 | 80 |
| min | 61.5 | 60 | 41.5 | 29 |
| mean | 74.1 | 74.1 | 69.6 | 64.1 |
결과: C1 양평 리트릿 워크숍.
- 파주는 평균이 양평과 같은 74.1이지만 최저 만족도가 60으로 양평의 61.5보다 낮아 2위다. 평균보다 가장 불리한 사람을 먼저 본 결과다.
화면에 나갈 문장
- 이유:
재충전을 1순위로 낸 분이 2명이에요./당일 일정이 전원 가능 범위예요./1인 예산 4만원으로 모든 상한 아래예요. - 선호와 다른 지점:
실내 중심 선호 2명 · 결과는 반반/서울 도심 선호 2명 · 결과는 수도권 근교/그 외 단독 선호 차이 2건은 본인 리포트에서만 확인 - 공정성:
최저 만족도 61.5 / 평균 74.1 - 민수 리포트(본인만):
운전 없는 동선 지킴 · 선호 차이 없음 · 만족도 100. 참가자 보기로 전환하면 해당 참가자 ID의 리포트와 재확인을 따로 사용한다.
Case 2. 친구 여행 3명 — 예산 격차 (개념 검증용 가정 · 엔진 미구현)
상황: 대학 동기 3명, 2박 3일 여행. 한 명은 취준생이라 돈이 없는데 말을 못 한다. 끼리가 가장 필요한 장면.
비공개 답변
| 참가자 | 방식 | 시간 | 목적 1·2 | 지역 | 예산 상한 | 금지 |
|---|---|---|---|---|---|---|
| 하늘 | 야외 | 2박 | 휴식 · 사진 | 제주 | 40만 | 없음 |
| 준 | 반반 | 2박 | 맛집 · 휴식 | 지역 무관 | 30만 | "렌트 운전 혼자 다 하는 건 싫어" |
| 도윤(취준) | 반반 | 1박 (상한) | 휴식 · 맛집 | 지역 무관 | 15만(상한) | 없음 |
후보
| # | 후보 | 방식 | 시간 | 지역 | 1인 비용 | 성격 |
|---|---|---|---|---|---|---|
| C1 | 제주 2박 렌트 | 야외 | 2박 | 제주 | 38만 | 사진+휴식 |
| C2 | 강릉 1박 KTX | 반반 | 1박 | 강원 | 14만 | 휴식 |
| C3 | 부산 2박 KTX | 반반 | 2박 | 부산 | 24만 | 맛집 |
| C4 | 제주 1박 뚜벅이 | 야외 | 1박 | 제주 | 16만 | 사진 |
거부권: 도윤 15만·1박 상한 → C1, C3, C4 탈락. C2만 생존.
결과: 강릉 1박 KTX.
- 만족도: 하늘 = 40(휴식 1순위)+12.5(야외↔반반)+0(제주≠강원)+9(2박→1박) = 61.5 / 준 = 20(휴식 2순위)+25+20+9 = 74 / 도윤 = 40+25+20+15 = 100. min 61.5, mean 78.5.
- 이유 문장:
1박 일정이 전원 가능 범위예요./이동에 운전이 필요 없어요. - 선호 차이:
2박 희망 2명 · 결과는 1박. 제주 선호 1건처럼 단독인 내용은 공개하지 않는다. - 비공개 효과: 하늘과 준은 "누가 15만원 상한을 냈는지" 모른다. 공개 결과에는
예산 조건 1건 반영처럼 건수만 나온다. 도윤이 말 못 한 것이 결과에 반영됐고, 도윤이 특정되지 않았다.
설계 함의: 후보가 1개만 남으면 "협상"이 아니라 "필터"다. 이 경우 화면은 조건을 모두 만족하는 안이 하나예요 라고 솔직히 말하고, 차선안 섹션에 "예산 상한을 20만으로 올리면 열리는 안: 제주 1박 뚜벅이"를 방장에게만 보여준다. 상한을 낸 사람의 동의 없이 재조율하면 안 되므로 재조율 요청은 전원 익명 동의로 진행.
Case 3. 회식 6명 — 금지 조건이 충돌 (개념 검증용 가정 · 엔진 미구현)
상황: 개발팀 회식. 알레르기, 비건, 임신 초기(아직 비공개) 등 공개하기 어려운 조건이 모인다.
비공개 답변 (요약)
| 참가자 | 선호 메뉴 | 예산 상한 | 금지 조건(자유서술 → 구조화) |
|---|---|---|---|
| A | 고기 | 4만 | 없음 |
| B | 고기 | 4만 | 없음 |
| C | 해산물 | 5만 | "갑각류 알레르기" → avoid: shellfish |
| D | 상관없음 | 3만 (상한) | "술 강요 없는 분위기" → avoid: drinking-centered |
| E | 채식 옵션 | 4만 | "고기만 있는 집은 못 가요" → require: vegetarian-option |
| F | 상관없음 | 4만 | "날것은 피하고 싶어요" → avoid: raw (임신 초기, 사유는 안 씀) |
후보
| # | 후보 | 비용 | 특성 |
|---|---|---|---|
| C1 | 삼겹살집 | 3만 | 고기, 채식 옵션 없음, 술 중심 |
| C2 | 회 코스 | 5만 | 날것, 갑각류 포함 |
| C3 | 샤브샤브 뷔페 | 3.5만 | 채식 가능, 익힌 음식, 술 선택 |
| C4 | 이탈리안 | 4만 | 채식 가능, 익힌 음식, 술 선택 |
거부권: C1(E 채식 요구, D 술 중심) 탈락 / C2(C 갑각류, F 날것, D 예산 3만 초과) 탈락. C3, C4 생존.
점수: 회식 템플릿은 목적 문항이 없으므로 메뉴 선호 60 + 예산 여유 40으로 계산 ※ 가정 기반 - 확인 필요.
- C3: 고기파 A·B는 샤브에 고기가 있어 0.7 → 42+40 = 82, C 해산물 0.5 → 30+40 = 70, D·F 무관 60+40 = 100, E 채식 0.8 → 48+40 = 88. min 70, mean 90 → 80
- C4: A·B 0.4 → 24+40 = 64, C 0.5 → 70, D 예산 4만 = 상한 3만 초과 → 탈락
결과: 샤브샤브 뷔페.
- 이유:
익힌 음식과 채식 옵션이 함께 있어요./1인 3.5만원으로 전원 예산 안이에요./술은 각자 선택할 수 있어요. - 선호 차이:
고기 선호 2명 · 결과는 샤브샤브. 해산물 선호 1건은 단독이라 공개하지 않는다. - 단독 거부권(갑각류, 날것, 채식 요구)은 이유에 개별 언급하지 않는다. 셋을 합쳐
식단 조건 3건이 모두 지켜졌어요한 줄로만. F의 임신 사실은 어디에도 나가지 않는다.
설계 함의: 회식은 금지 조건이 결과를 거의 결정한다. LLM 구조화의 정확도가 곧 서비스 신뢰다. "날것은 피하고 싶어요"를 avoid: raw로 못 바꾸면 C2가 살아남고 F는 침묵한 채 회 코스에 간다. 6번 자유서술의 구조화 결과를 본인에게 확인받는 단계(“이렇게 이해했어요: 날것 제외. 맞나요?”)가 S4에 필요하다.
세 케이스에서 나온 공통 결론
- 거부권이 차별점의 실체다. 세 케이스 모두 다수결과 다른 답이 나왔고, 원인은 항상 한 사람의 상한·금지 조건이었다.
- 후보가 1개만 남는 상황이 잦다. 그때 "협상 중" 연출은 거짓말이 된다. 화면은 필터 결과임을 밝히고, 상한을 풀면 열리는 안을 조건 낸 사람 동의하에 제시한다.
- 자유서술 구조화 확인 단계가 필수다. 구조화 오류 1건이 거부권 1건을 날린다.
- 결과 문장의 익명화 규칙은 코드로 강제해야 한다. 2인 이상 공통 조건만 구체화, 단독 조건은 집계 문장으로. LLM 프롬프트에만 맡기면 새는 날이 온다.
- 데모 자동 채움 값은 Case 1로 고정하고, 발표 전에 거부권 도입 후에도
양평 리트릿 워크숍이 나오는지 실제로 돌려서 확인한다. 이 문서의 손계산은 그 검증을 대체하지 않는다.