최적화 문제 설정-np-complete입니까?


10

집합 주어진다. 각 요소 e i 에 대해 가중치 w i > 0 및 비용 c i > 0이 있습니다. 목표는 다음 목적 함수를 최대화하는 k 크기 의 서브 세트 M 을 찾는 것입니다 . e iM w i + e iM w i c iS={e1,,en}eiwi>0ci>0Mk .

eiMwi+ei미디엄나는나는이자형나는미디엄나는

문제가 NP-hard입니까?

목적 함수가 이상해 보이기 때문에 목적 함수의 적용을 설명하는 것이 도움이됩니다.

우리가 가정 N 항목은 전자 N 과가 c를 내가 각 객체의 복사본이 전자 전을 우리의 재고. 우리는 일부 고객을 가지고 그들은 자신의 체중에 비례하여 이러한 개체에 관심이 w 내가 더와 객체를 의미 이자형1이자형나는이자형나는나는나는 가 더 대중적 . 온라인 판매 시스템이 있으며 고객의 요청에 정확하게 응답해야합니다. 우리는 그 모양으로 물체를 인식 할 수 없습니다 (모두 동일하게 보입니다!). 그러나 우리는 그것들을 찾을 분류 기가 있습니다. 각 분류기는 개체의 복사본을 감지하는 데 사용할 수 있습니다. 우리는 고객 만족을 극대화하기 위해 k 분류기를 실행하는 것을 목표로합니다.

추신 : 모든 i n에 대해 경우에 대해 생각하는 것이 유용 할 수 있습니다 . 그러나 나는 확실하지 않다. [ 나는 이것에 대해 틀렸다! 이 가정에 의해 P에있다 ]나는나는=나는


올바른 용어는 M이 아닌 요소의 가장 큰 무게보다 작거나 같습니다. 따라서 무게가 큰 요소가 있으면 낭비하지 않고 M에 넣는 것이 좋습니다. 따라서 M은 가중치가 가장 큰 요소로 구성되어야합니다. 권리?
zotachidil

비용도 중요하기 때문에 정확하지 않습니다. 다음 예를 고려하십시오.
Nasooh

w1 = 50, c1 = 80-w2 = 40, c2 = 15-w3 = 10, c3 = 5. k가 1 인 경우 e2를 선택하는 것이 e1보다 유리합니다.
Nasooh

네가 옳아. 흠 ...
zotachidil

2
동기 부여를 설명해 주셔서 감사합니다. 불행히도 귀하의 설명과 질문의 목적 기능 사이의 연결은 여전히 ​​명확하지 않지만 질문을 합리적인 길이로 유지하려면 현재 설명에 만족해야한다고 생각합니다.
Ito Tsuyoshi

답변:


2

아래의 답변은 문제의 특별한 경우가 다항식 시간으로 해결할 수 있음을 관찰합니다. 이것은 게시물의 질문에 완전히 대답하지는 않지만 NP 경도 증거에 필요한 내용에 대한 통찰력을 제공하고 게시물에 대한 추가 관심을 유발할 수 있습니다 ...

관측. 게시물의 문제는 각 가 정수인 경우 주어진 시간 다항식으로 nD = ∑로 실행 되는 알고리즘을 가지고 있습니다.cin있습니다.D=ici

증거 스케치. 모든 입력 수정 여기서, w , C R N + 및 (WLOG) S = { 1 , 2 , ... , N } . 문제를 약간 표현하면 목표는 크기 KM S 를 최대화하는 것입니다. i M w(S,w,c,K)w,cR+nS={1,2,,n}MSK.i미디엄나는나는나는미디엄나는나는미디엄나는

다음과 같은 동적 프로그램을 고려하십시오. 임의의 정수의 0 D 1D 2D , 0 K KK m N 정의 φ ( D 1 , D 2 , K , m ) = 최대 { i ( c i /(1,2,케이,미디엄)0120케이케이케이미디엄 원하는 해는 max d ϕ(d,d,

ϕ(1,2,케이,미디엄)=최대{나는미디엄나는(나는/11) : 미디엄[미디엄],|미디엄|=케이,나는미디엄나는=2}.
.최대ϕ(,,케이,)

에 대한 가능한 솔루션을 m 을 포함하고 그렇지 않은 솔루션으로 분할하면 반복 ϕ ( d 1 , d 2 , k , m ) = max { ϕ ( d 1 , d 2 - c m , k - 1 , m - 1 ) + w mϕ(1,2,케이,미디엄)미디엄 우리는 경계 사례를 연습으로 남겨 둡니다.

ϕ(1,2,케이,미디엄)=최대{ϕ(1,2미디엄,케이1,미디엄1)+미디엄(미디엄/11)ϕ(1,2,케이,미디엄1).

하위 문제의 수는 이며 반복의 각 오른쪽에 대해 일정한 시간에 평가할 수 있으므로 알고리즘은 시간 다항식 nD로 실행됩니다 . 영형(22)  

추론. P = NP가 아닌 한, NP- 경도를 나타내는 감소는 D 인 경우로 감소합니다

말.나는

나는=나는나는미디엄케이


1
나는=나는(나는제이미디엄나는제이)/(나는미디엄나는)미디엄나는

@ WillardZhan, 그렇습니다.
닐 영

-6

당신은 제한없이 기능의 최대화를 요구하고 있습니까?

정말 간단합니다. M이 가장 큰 집합이면 최상의 솔루션입니다. 아무것도 계산할 필요가 없습니다.

이 문제는 배낭 문제와 비슷해 보입니다.


3
문제는 "크기 k의 부분 집합 M"입니다.
Ito Tsuyoshi
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.