볼록 최적화

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

외부 링크