누락된 선호도를 가진 퍼지 제약 문제를 위한 효율적인 선호도 탐색 전략: 알고리즘 설계와 실험적 평가
📝 Abstract
Fuzzy constraints are a popular approach to handle preferences and over-constrained problems in scenarios where one needs to be cautious, such as in medical or space applications. We consider here fuzzy constraint problems where some of the preferences may be missing. This models, for example, settings where agents are distributed and have privacy issues, or where there is an ongoing preference elicitation process. In this setting, we study how to find a solution which is optimal irrespective of the missing preferences. In the process of finding such a solution, we may elicit preferences from the user if necessary. However, our goal is to ask the user as little as possible. We define a combined solving and preference elicitation scheme with a large number of different instantiations, each corresponding to a concrete algorithm which we compare experimentally. We compute both the number of elicited preferences and the “user effort”, which may be larger, as it contains all the preference values the user has to compute to be able to respond to the elicitation requests. While the number of elicited preferences is important when the concern is to communicate as little information as possible, the user effort measures also the hidden work the user has to do to be able to communicate the elicited preferences. Our experimental results show that some of our algorithms are very good at finding a necessarily optimal solution while asking the user for only a very small fraction of the missing preferences. The user effort is also very small for the best algorithms. Finally, we test these algorithms on hard constraint problems with possibly missing constraints, where the aim is to find feasible solutions irrespective of the missing constraints.
💡 Analysis
**
1. 연구 배경 및 문제 정의
- 퍼지 제약과 소프트 제약: 전통적인 CSP는 제약을 만족시키는 해만을 찾지만, 퍼지 제약은 각 할당에 0~1 사이의 선호도(또는 비용)를 부여해 최적화 문제로 확장한다.
- 불완전성(누락된 선호도): 실제 시스템에서는 모든 선호도가 사전에 알려지지 않는다. 예를 들어, 다중 에이전트 환경에서 프라이버시 문제, 혹은 사용자에게 아직 질문하지 않은 선호도 등이 해당한다.
- 목표: “누락된 선호도와 무관하게 반드시 최적(Necessarily Optimal)인 해”를 찾는 동시에, 사용자에게 요구하는 질문(선호도 탐색) 수와 사용자가 수행해야 하는 계산량을 최소화한다.
2. 핵심 아이디어 – 일반화된 Solver Scheme
저자들은 기존 연구
📄 Content
arXiv:0909.4446v1 [cs.AI] 2009년 9월 24일
누락된 선호도를 가진 퍼지 제약 문제에 대한 탐색 전략: 알고리즘 및 실험 연구
저자
Mirco Gelain¹, Maria Silvia Pini¹, Francesca Rossi¹, K. Brent Venable¹, Toby Walsh²
¹ 이탈리아 파도바 대학교 순수·응용수학과, 이메일: {mgelain,mpini,frossi,kvenable}@math.unipd.it
² 호주 NICTA·UNSW 시드니, 이메일: Toby.Walsh@nicta.com.au
초록
퍼지 제약은 의료·우주와 같이 조심스러운 판단이 요구되는 상황에서 선호도와 과제 초과(over‑constrained) 문제를 다루기 위한 널리 쓰이는 방법이다. 여기서는 일부 선호도가 누락된 퍼지 제약 문제를 고려한다. 이는 예를 들어, 에이전트가 분산되어 있어 프라이버시 문제가 있거나, 선호도 탐색 과정이 진행 중인 경우를 모델링한다. 이러한 상황에서 우리는 누락된 선호도와 무관하게 최적인 해를 찾는 방법을 연구한다. 해를 찾는 과정에서 필요에 따라 사용자에게 선호도를 물어볼 수 있지만, 가능한 한 적게 물어야 한다는 것이 목표이다.
우리는 다양한 구현 형태를 갖는 통합 해법·선호도 탐색 스키마를 정의하고, 각각을 구체적인 알고리즘으로 구현하여 실험적으로 비교한다. 실험에서는 (1) 탐색된 선호도의 수와 (2) 사용자가 실제로 수행해야 하는 노력량을 모두 측정한다. 후자는 사용자가 탐색 요청에 답하기 위해 고려해야 하는 모든 선호도 값을 포함하므로, 단순히 탐색된 선호도 수보다 클 수 있다. 선호도 수는 “가능한 한 적은 정보를 전달하고 싶다”는 관점에서 중요하고, 사용자 노력은 “숨겨진 작업량”을 반영하므로 또 다른 중요한 지표가 된다.
실험 결과, 일부 알고리즘은 누락된 선호도의 극히 일부만을 물어도 반드시 최적인 해를 찾아낼 수 있음을 보여준다. 가장 좋은 알고리즘들의 경우, 사용자 노력 역시 매우 작았다. 마지막으로, 우리는 이러한 알고리즘을 제약이 하드(엄격)인 문제에 적용해 보았으며, 여기서는 누락된 제약 자체가 있을 때도 모든 제약을 만족하는 해를 찾는 것이 목표였다.
1. 서론
제약 프로그래밍은 일정·계획·자원 할당 문제를 해결하기 위한 강력한 패러다임이다. 문제는 변수들의 집합(각 변수는 유한한 도메인을 가짐)과 제약들의 집합으로 표현된다. 해는 모든 제약을 만족시키는 변수값 할당이며, 필요에 따라 목표 함수를 최대·최소화한다.
소프트(soft) 제약은 최적화 문제를 모델링하기 위해 사용되며, 각 변수 할당에 대해 선호도(preference) 혹은 비용(cost) 값을 부여한다. 전통적으로는 모든 데이터(변수·도메인·제약)가 완전하게 알려져 있다고 가정하지만, 실제 웹·멀티에이전트 환경에서는 데이터가 부분적으로만 알려져 있거나 나중에 추가될 수 있다. 예를 들어, 에이전트가 프라이버시 때문에 데이터를 완전히 공개하지 않을 수도 있다.
이러한 상황을 다루기 위해 불완전 소프트 제약 문제(Incomplete Soft Constraint Problems, ISCSPs) 가 제안되었다[7]. 여기서는 일부 선호도가 누락된 상황을 모델링한다. 목표는 누락된 선호도와 무관하게 최적임이 보장되는 해를 찾는 것이며, 필요하면 선호도를 탐색(elicit)한다. 두 종류의 최적 해가 정의된다.
- 가능(optimal) 해(POSSIBLY optimal) : 적어도 하나의 선호도 완성(completion)에서 최적이 되는 해.
- 필수(necessarily optimal) 해(NECESSARILY optimal) : 모든 가능한 선호도 완성에서 최적이 되는 해.
가능 최적 해의 집합은 언제나 비어 있지 않지만, 필수 최적 해는 존재하지 않을 수도 있다. 기존 알고리즘[7]은 branch‑and‑bound 를 이용해 “가능성 있는 최적 해”를 찾고, 그 해와 관련된 누락 선호도를 차례로 탐색한다. 이 과정은 필수 최적 해가 나타날 때까지 반복된다.
하지만 이 알고리즘은 몇 가지 제약적인 선택을 한다. 예를 들어, branch‑and‑bound 를 완전히 수행한 뒤에만 누락 선호도를 탐색하고, 후보 해와 관련된 모든 누락 선호도를 한 번에 물어본다. 실제 상황에서는 더 자주, 더 적게 탐색하는 것이 효율적일 수 있다.
따라서 우리는 다음과 같은 질문을 제기한다.
- 언제 선호도를 탐색할 것인가? (branch 종료 시점, 노드마다, 혹은 트리 전체 종료 후)
- 무엇을 탐색할 것인가? (전체 누락 선호도, 최악(worst) 선호도 등)
- 누가 변수값을 선택할 것인가? (알고리즘이 선호도 순으로 선택, 혹은 사용자가 제안)
이 세 가지 차원을 조합하면 16가지 서로 다른 알고리즘이 만들어진다. 우리는 이들 전부를 무작위로 생성한 퍼지 제약 문제에 대해 실험하고, 탐색된 선호도 수와 사용자 노력을 비교한다. 또한, 하드 제약 문제와 퍼지 시간 제약 문제에도 적용해 본다.
2. 배경
2.1 퍼지 제약과 불완전 퍼지 제약 문제(IPCSP)
변수 집합 V와 유한 도메인 D가 주어질 때, 불완전 퍼지 제약은 ⟨idef, con⟩ 로 표현된다. 여기서 con ⊆ V는 제약의 스코프이며, idef : D^{|con|} → [0,1] ∪ {?} 는 선호도 함수이다. idef 가 반환하는 값이 **?**이면 해당 튜플은 불완전 튜플이라 부른다(선호도가 아직 정의되지 않음). 불완전 튜플이 전혀 없는 경우를 퍼지 제약이라 한다.
불완전 퍼지 제약 문제(Incomplete Fuzzy CSP, IFCSP) 는 ⟨C, V, D⟩ 로 정의되며, C는 변수 V 위에 정의된 불완전 퍼지 제약들의 집합이다. IT(P) 는 문제 P에 존재하는 모든 불완전 튜플의 집합을 의미한다.
완성(completion) 은 각 불완전 튜플에 [0,1] 구간의 실제 값을 부여한 새로운 IFCSP이다. 완전한 완성은 모든 튜플에 값이 지정된 경우이며, 부분 완성(partial completion) 은 아직도 일부 튜플이 ? 로 남아 있는 경우이다. C(P) 는 P의 모든 가능한 완성을, PC(P) 는 모든 부분 완성을 나타낸다.
주어진 할당 s에 대한 선호도는
[ \text{pref}(P,s)=\min_{\langle\text{idef},\text{con}\rangle\in C}; \text{idef}\bigl(s!\downarrow_{\text{con}}\bigr) ]
이며, 여기서 s↓con 은 s 를 con 에 제한한 부분 할당이다. 퍼지 환경에서는 선호도가 최대인 완전 할당을 최적 해라 부른다.
불완전 문제에서는 필수 최적 해(NOS(P)) 와 가능 최적 해(POS(P)) 를 정의한다.
- NOS(P) : 모든 가능한 완성에서 최적인 할당들의 집합
- POS(P) : 적어도 하나의 완성에서 최적인 할당들의 집합
항상 NOS(P) ⊆ POS(P) 이며, POS(P) 는 비어 있지 않지만 NOS(P) 는 비어 있을 수 있다.
2.2 기존 알고리즘[7]
문제 P 에 대해 두 특수 완성 P₀(모든 불완전 튜플에 0 부여)와 P₁(모든 불완전 튜플에 1 부여)를 만든다.
- pref₀ = 최적 해의 선호도 in P₀
- pref₁ = 최적 해의 선호도 in P₁
pref₀ ≤ pref₁ 가 항상 성립한다(최소값 연산의 단조성).
- 만약 pref₀ = pref₁ 이면 NOS(P) = Opt(P₀) 로, P₀ 의 최적 해가 바로 필수 최적 해가 된다.
- 그렇지 않으면 NOS(P) 가 비어 있고, POS(P) 은 pref₀ 와 pref₁ 사이의 선호도를 갖는 해들의 집합이 된다.
알고리즘은 pref₀ 와 pref₁ 을 교차하면서 누락 선호도를 탐색해 두 값이 일치하도록 만든다. 탐색은 POS(P) 에 속하는 해와 관련된 선호도만을 물어보는 방식으로 제한된다.
3. 일반적인 해결 스키마
우리는 위 알고리즘을 더 일반적인 스키마 로 확장한다. 이 스키마는 branch‑and‑bound (BB) 탐색과 선호도 탐색 을 교차(interleave)한다. 기본 아이디어는 다음과 같다.
- 0‑완성(P₀) 과 1‑완성(P₁) 에 대해 각각 BB 탐색을 수행한다.
- 두 탐색이 동일한 해를 반환하면 그 해는 필수 최적 해이며 탐색을 종료한다.
- 그렇지 않으면 누락 선호도 중 일부를 탐색하고, 1‑완성 을 갱신한 뒤 BB 탐색을 계속한다.
선호도 탐색 시점과 범위는 아래 세 가지 파라미터에 의해 결정된다.
| 파라미터 | 설명 |
|---|---|
| Who (누가 변수값을 선택) | dp : 알고리즘이 1‑완성 의 선호도 내림차순으로 선택 dpi : 0‑완성 의 선호도 내림차순으로 선택 lu (lazy user) : 사용자가 현재 변수의 모든 (알려진·미알려진) 선호도를 고려해 선택 su (smart user) : 사용자가 현재 변수와 이미 할당된 변수 사이 제약까지 고려해 선택 |
| What (무엇을 탐색) | all : 현재 할당에 포함된 모든 불완전 튜플의 선호도를 |
이 글은 AI가 자동 번역 및 요약한 내용입니다.