볼록 최적화

Convex optimization

볼록 최적화는 볼록 집합에 걸쳐 볼록함수를 최소화하는 문제를 연구하는 수학적 최적화의 하위 분야다. 수학적 최적화는 일반적으로 NP-hard인 반면,[1] 많은 종류의 볼록 최적화 문제는 다항식 시간 알고리즘을 인정한다.[2][3][4]

볼록 최적화 자동 제어 시스템, 평가, 신호 처리, 통신과 네트워크, 전자 회로 design,[5]자료 분석과 모델링, 금융, 통계(최적 실험 설계)[6]고 근사 개념을 증명했다 구조 최적화, 같은 분야로 넓은 범위의 적용시킬 수 있습니다.되려고 능률적인[7][8] 최근 컴퓨팅과 최적화 알고리즘의 발달로 볼록 프로그래밍은 선형 프로그래밍만큼이나 간단하다.[9]

정의

볼록 최적화 문제는 객관적 기능이 볼록함수이고 실현 가능한 집합이 볼록 집합인 최적화 문제다. A function mapping some subset of into is convex if its domain is convex and for all and all in its domain, the following condition holds: . A set S is convex if for all members and all , we have that 에서 \\theta

구체적으로 볼록 최적화 문제는 일부 x { }} C에 도달하는 문제를 찾는 것이다.

{ ( ): C

where the objective function is convex, as is the feasible set .[10] [11] If such a point exists, it is referred to as an optimal point or solution; the set of all optimal points is called the optimal set. 이(가) C에 대해 아래에 바인딩되지 않았거나 최소값에 도달하지 못한 경우 최적화 문제는 바인딩되지 않은 것으로 간주된다. 그렇지 않으면 이(가) 빈 세트라면, 그 문제는 실현 불가능하다고 한다.[12]

표준형식

볼록 최적화 문제는 다음과 같이 기록될 경우 표준 형식이다.

where is the optimization variable, the function is convex, , ,은는) 볼록이고, :n → {\ =, = pi=1[12] This notation describes the problem of finding that minimizes among all satisfying , and , . The function is the objective function of the problem, and the functions and are the constraint funct이온

최적화 문제의 실현 가능한 세트 은(는) 제약 조건을 만족하는 모든 포인트 D 로 구성된다. 세트는 D 이(가) 볼록하고, 볼록함수의 하위 집합이 볼록하고, 아핀 집합이 볼록하며, 볼록 집합의 교차점이 볼록하기 때문에 볼록하다.[13]

A solution to a convex optimization problem is any point attaining . In general, a convex optimization problem may have zero, one, or many solutions.[citation needed]

많은 최적화 문제는 이 표준 형식에서 동등하게 공식화될 수 있다. 예를 들어 오목함수 f을(를)[citation needed] 최대화하는 문제는 볼록함수를 최소화하는 문제로서동등하게 다시 형성될 수 있다 볼록 집합에 걸쳐 오목함수를 최대화하는 문제를 흔히 볼록 최적화 문제라고 한다.

특성.

다음은 볼록 최적화 문제의 유용한 특성이다.[14][12]

  • 모든 국소 최소값은 글로벌 최소값이다.
  • 최적 세트는 볼록함.
  • 객관적 함수가 엄격히 볼록한 경우, 문제는 최대 하나의 최적점을 가진다.

이러한 결과는 힐버트 투영 정리, 분리 하이퍼플레인 정리, 파르카스의 보조정리 등 기능분석(힐버트 공간 내)으로부터의 기하학적 개념과 함께 볼록 최소화 이론에 의해 사용된다.[citation needed]

적용들

벤하인과 엘리사코프[15](1990), 엘리사코프 외 연구진(1994)은 불확도 모델에 볼록 분석을 적용했다.[16]

다음의 문제 등급은 모두 볼록 최적화 문제 또는 간단한 변환을 통해 볼록 최적화 문제로 축소될 수 있다.[12][17]

볼록 최적화 문제의 계층. (LP: 선형 프로그램, QP: 2차 프로그램, SOCP 2차 콘 프로그램, SDP: 반피니트 프로그램, CP: 콘 프로그램)

볼록스 최적화는 다음을 위한 실용적인 적용이 있다.

라그랑주 승수

( ) 및 불평등 제약 조건 ( x) 0 에 의해 표준 형식으로 주어진 볼록 최소화 문제를 고려한다 그러면 도메인 은(는) 다음과 같다.

문제의 라그랑지안 함수는

For each point in that minimizes over , there exist real numbers called Lagrange multipliers, that satisfy these conditions simultaneously:

  1. 는 , X에 걸쳐 },\ 을 최소화한다.
  2. , 1,… , m0 ,{\ 적어도 >
  3. 1( x)= = m ( x)= }g_{완전 느슨함).

"엄격한 실행 가능한 점", 즉, 만족하는 점 이(가) 있는 경우

그러면 위의 문구를 강화하여 0= 1 \ \을(를) 요구할 수 있다

Conversely, if some in satisfies (1)–(3) for scalars with then is certain to minimize over .

알고리즘

구속되지 않는 볼록 최적화는 적절한 스텝 크기를 위한 선 검색과 결합하여 구배 강하(가장 가파른 강하의 특별한 경우) 또는 뉴턴의 방법으로 쉽게 해결할 수 있다. 이것들은 수학적으로 빠르게 수렴될 수 있으며, 특히 후자의 방법이 그렇다.[20] 선형평등 제약조건을 가진 볼록스 최적화도 목표함수가 2차 함수(초기점이 제약을 충족하지 못하더라도 작용하는 뉴턴의 방법의 변형으로 일반화)인 경우 KKT 매트릭스 기법을 사용하여 해결할 수 있지만, 일반적으로 동등 c를 제거함으로써 해결할 수도 있다.선형 대수학 또는 이중 문제 해결로 인한 [20]기질 결국, 두 사람 선형 평등 제약과 볼록 불평등 제약 조건들과 볼록 최적화 목적 함수와 로그 장벽 조건 구속 받지 않는 볼록 최적화 기술을 적용하여 해결될 수 있다.[20](제약 조건을 만족시키기-이'특별한 단계에 의해 선행되고 있을 때 출발점은 실현 가능하지 않다-그것이다.나는 실현 가능한 지점을 찾거나 존재하지 않는다는 것을 보여주는 방법을 사용한다. 1단계 방법은 일반적으로 문제의 검색을 또 다른 볼록 최적화 문제로 축소하는 것으로 구성된다.)[20]

볼록스 최적화 문제는 다음과 같은 현대적 방법으로도 해결할 수 있다.[21]

하위 단계 방법은 단순하게 구현될 수 있으므로 널리 사용된다.[24][citation needed] 이중 저급 방법은 이중 문제에 적용되는 하위급 방법이다. 표류-플러스-페널티 방법은 이중하위법과 유사하지만 원시 변수의 시간 평균이 소요된다.[citation needed]

구현

볼록스 최적화 및 관련 알고리즘은 다음과 같은 소프트웨어 프로그램에서 구현되었다.

프로그램 언어 설명 FOSS? 참조
CVX 매트랩 SeDuMi 및 SDPT3 해결사와의 인터페이스. 볼록 최적화 문제만 표현하도록 설계. 네 [25]
CVXMOD 파이톤 CVXOPT 해결사와의 인터페이스. 네 [25]
CVXPY 파이톤 [26]
CVXR R 네 [27]
얄미프 매트랩 CPLE, GROBI, MOSEK, SDPT3, SEDUMI, CSDP, SDPA, PENNON 솔버와의 인터페이스. 또한 정수 및 비선형 최적화 및 일부 비콘벡스 최적화를 지원한다. LP/SOCP/SDP 제약 조건의 불확실성과 함께 강력한 최적화 수행 가능 네 [25]
LMI 연구소 매트랩 준우량 프로그래밍 문제("선형 행렬 불평등"이라 함)를 표현하고 해결 아니요. [25]
LMI랩 번역기 LMI 실험실 문제를 SDP 문제로 변환 네 [25]
xLMI 매트랩 LMI 연구소와 유사하지만 SeDuMi 해결사를 사용한다. 네 [25]
AIMMS 선형 프로그래밍과 혼합 정수 선형 프로그래밍에서 강력한 최적화를 수행할 수 있다. LP + SDP 및 강력한 버전을 위한 모델링 패키지. 아니요. [25]
로마 강력한 최적화를 위한 모델링 시스템. 분포적으로 강력한 최적화 및 불확실성 세트 지원 네 [25]
글로프티폴리 3 MATLAB,

옥타브

다항식 최적화를 위한 모델링 시스템. 네 [25]
소스툴스 다항식 최적화를 위한 모델링 시스템. SDPT3 및 SeDuMi 사용. 심볼 연산 도구 상자 필요. 네 [25]
스파스POP 다항식 최적화를 위한 모델링 시스템. SDPA 또는 SeDuMi 해결기 사용 네 [25]
CDPLEX LP + SOCP에 대한 원시 이중 방식 지원 LP, QP, SOCP, 혼합 정수 선형 프로그래밍 문제를 해결할 수 있다. 아니요. [25]
CSDP C LP + SDP에 대한 원시 이중 방식 지원 MATLAB, R 및 Python에 사용할 수 있는 인터페이스. 병렬 버전 사용 가능. SDP 해결사. 네 [25]
CVXOPT 파이톤 LP + SOCP + SDP에 대한 원시 이중 방식 지원 네스테로프-토드 스케일링 사용 MOSEK 및 DSDP에 대한 인터페이스. 네 [25]
모섹 LP + SOCP에 대한 원시 이중 방식 지원 아니요. [25]
세두미 MATLAB, MEX LP + SOCP + SDP 해결 LP + SOCP + SDP에 대한 원시 이중 방식 지원 네 [25]
SDPA C++ LP + SDP 해결 LP + SDP에 대한 원시 이중 방식 지원 병렬 및 확장 정밀 버전을 사용할 수 있다. 네 [25]
SDPT3 MATLAB, MEX LP + SOCP + SDP 해결 LP + SOCP + SDP에 대한 원시 이중 방식 지원 네 [25]
코닉번들 LP + SOCP + SDP에 대한 범용 코드 지원 번들 방법을 사용한다. SDP 및 SOCP 제약에 대한 특별 지원. 네 [25]
DSDP LP + SDP에 대한 범용 코드 지원 이중 내부 포인트 방법을 사용한다. 네 [25]
로코 비선형 프로그래밍 문제로 취급하는 SOCP에 대해 범용 코드를 지원한다. 아니요. [25]
펜논 범용 코드 지원. 특히 SDP 제약조건의 문제에 대해서는 증강된 라그랑지안 방법을 사용한다. 아니요. [25]
SDPLR 범용 코드 지원. 증강된 라그랑지식 방법으로 낮은 순위 인자화를 사용한다. 네 [25]
GAMS 선형, 비선형, 혼합 정수 선형/비선형 및 2차 원뿔 프로그래밍 문제를 위한 모델링 시스템. 아니요. [25]
최적화 서비스 최적화 문제 및 솔루션을 인코딩하기 위한 XML 표준. [25]

확장

볼록 최적화의 확장에는 비콘벡스, 사이비콘벡스, 퀘이콘벡스 함수의 최적화가 포함된다. 비콘벡스 최소화 문제를 대략적으로 해결하기 위한 볼록 분석 이론과 반복적 방법의 확장은 추상 볼록 분석이라고도 하는 일반화된 볼록성 분야에서 발생한다.[citation needed]

참고 항목

메모들

  1. ^ a b 네스테로프 & 네미로프스키 1994
  2. ^ Murty, Katta; Kabadi, Santosh (1987). "Some NP-complete problems in quadratic and nonlinear programming". Mathematical Programming. 39 (2): 117–129. doi:10.1007/BF02592948. hdl:2027.42/6740. S2CID 30500771.
  3. ^ Sanni, S. "컴퓨터와 관련된 문제들" SIAM Journal on Computing, 3, 262--279, 1974.
  4. ^ 하나의 음의 고유값을 갖는 2차 프로그래밍은 NP-hard, Panos M. Pardalos, Stephen A이다. 글로벌 최적화 저널의 Vavasis in Global Optimization, Volume 1, 1991, 페이지 15-22.
  5. ^ 보이드 & 반덴버그 2004, 페이지 17
  6. ^ 크리텐슨/클라라브링, 4번 교감
  7. ^ 보이드 & 반덴버그 2004
  8. ^ 쉬밋, LA; 플뢰리, C. 1980: 근사 개념과 이중 방법을 결합한 구조 합성. J. 아머. 인스트. 항공. 우주인 18, 1252-1260
  9. ^ 보이드 & 반덴버그 2004, 페이지 8
  10. ^ Hiriart-Urruty, Jean-Baptiste; Lemaréchal, Claude (1996). Convex analysis and minimization algorithms: Fundamentals. p. 291. ISBN 9783540568506.
  11. ^ Ben-Tal, Aharon; Nemirovskiĭ, Arkadiĭ Semenovich (2001). Lectures on modern convex optimization: analysis, algorithms, and engineering applications. pp. 335–336. ISBN 9780898714913.
  12. ^ a b c d 보이드 & 반덴버그 2004, chpt. 4
  13. ^ 보이드 & 반덴버그 2004, chpt. 2
  14. ^ Rockafellar, R. Tyrrell (1993). "Lagrange multipliers and optimality" (PDF). SIAM Review. 35 (2): 183–238. CiteSeerX 10.1.1.161.7209. doi:10.1137/1035044.
  15. ^ Ben Haim Y.와 Elishakoff I, Exvier Science Publishers, 1990년 암스테르담, Exvier Science Publishers, 응용역학의 불확실성 모델
  16. ^ I. Elishakoff, I. Lin Y.K.와 Ju L.P., 확률론적 및 볼록 모델링, Exvier Science Publishers, Amsterdam, 1994
  17. ^ Agrawal, Akshay; Verschueren, Robin; Diamond, Steven; Boyd, Stephen (2018). "A rewriting system for convex optimization problems" (PDF). Control and Decision. 5 (1): 42–60. arXiv:1709.04494. doi:10.1080/23307706.2017.1397554. S2CID 67856259.
  18. ^ a b c d e Boyd, Stephen; Diamond, Stephen; Zhang, Junzi; Agrawal, Akshay. "Convex Optimization Applications" (PDF). Retrieved 12 Apr 2021.{{cite web}}: CS1 maint : url-status (링크)
  19. ^ a b c Malick, Jérôme (2011-09-28). "Convex optimization: applications, formulations, relaxations" (PDF). Retrieved 12 Apr 2021.{{cite web}}: CS1 maint : url-status (링크)
  20. ^ a b c d Boyd, Stephen; Vandenberghe, Lieven (2004). Convex Optimization (PDF). Cambridge University Press. ISBN 978-0-521-83378-3. Retrieved 12 Apr 2021.{{cite book}}: CS1 maint : url-status (링크)
  21. ^ 볼록 최소화 방법은 히리어트-우루티와 레마레찰(번들)의 책과 러스츠지슈스키, 베르체카스, 보이드·반덴베헤(내부 포인트)의 교재를 참조한다.
  22. ^ Nesterov, Yurii; Arkadii, Nemirovskii (1995). Interior-Point Polynomial Algorithms in Convex Programming. Society for Industrial and Applied Mathematics. ISBN 978-0898715156.
  23. ^ Peng, Jiming; Roos, Cornelis; Terlaky, Tamás (2002). "Self-regular functions and new search directions for linear and semidefinite optimization". Mathematical Programming. 93 (1): 129–171. doi:10.1007/s101070200296. ISSN 0025-5610. S2CID 28882966.
  24. ^ 베르체카스
  25. ^ a b c d e f g h i j k l m n o p q r s t u v w x y Borchers, Brian. "An Overview Of Software For Convex Optimization" (PDF). Archived from the original (PDF) on 2017-09-18. Retrieved 12 Apr 2021.
  26. ^ "Welcome to CVXPY 1.1 — CVXPY 1.1.11 documentation". www.cvxpy.org. Retrieved 2021-04-12.
  27. ^ "Disciplined Convex Optimiation - CVXR". www.cvxgrp.org. Retrieved 2021-06-17.

참조

  • Ruszczyński, Andrzej (2006). Nonlinear Optimization. Princeton University Press.
  • 쉬밋, LA; 플뢰리, C. 1980: 근사 개념과 이중 방법을 결합한 구조 합성. J. 아머. 인스트. 항공. 우주인 18, 1252-1260

외부 링크