시뮬레이션 기반 최적화
Simulation-based optimization시뮬레이션 기반 최적화(단순 시뮬레이션 최적화라고도 함)는 최적화 기법을 시뮬레이션 모델링 및 분석에 통합한다.시뮬레이션의 복잡성 때문에 객관적 기능은 평가하기 어렵고 비용이 많이 들 수 있다.일반적으로 기초 시뮬레이션 모델은 확률적이기 때문에 객관적인 기능은 통계적 추정 기법(시뮬레이션 방법론의 출력 분석이라 함)을 사용하여 추정해야 한다.
일단 시스템이 수학적으로 모델링되면, 컴퓨터 기반의 시뮬레이션은 그것의 행동에 대한 정보를 제공한다.파라메트릭 시뮬레이션 방법은 시스템의 성능을 향상시키는 데 사용될 수 있다.이 방법에서 각 변수의 입력은 다른 매개변수가 일정하게 유지됨에 따라 변화하며 설계 목적에 미치는 영향을 관찰한다.이것은 시간이 많이 걸리는 방법이고 부분적으로 성능을 향상시킨다.최소 계산과 시간으로 최적의 솔루션을 얻기 위해 각 반복 작업에서 솔루션이 최적 솔루션에 더 가깝게 이동하는 경우 문제를 반복적으로 해결한다.그러한 방법을 '수리적 최적화' 또는 '시뮬레이션 기반 최적화'[1]라고 한다.
시뮬레이션 실험에서 목적은 입력 변수의 다른 값이 시스템에 미치는 영향을 평가하는 것이다.그러나 때때로 시스템 결과의 관점에서 입력 변수에 대한 최적의 값을 찾는 데 관심이 있다.한 가지 방법은 가능한 모든 입력 변수에 대해 시뮬레이션 실험을 실행하는 것일 수 있다.그러나 이러한 접근방식은 여러 가지 가능한 상황 때문에 항상 실용적인 것은 아니며 각 시나리오에 대해 실험을 실행하는 것을 어렵게 만들 뿐이다.예를 들어 입력 변수에 대해 가능한 값이 너무 많거나, 시뮬레이션 모델이 너무 복잡하고 비용이 많이 들어 차선의 입력 변수 값을 실행할 수 없다.이 경우 가능한 모든 값을 시도하기보다는 입력 변수에 대한 최적의 값을 찾는 것이 목표다.이 프로세스를 시뮬레이션 최적화라고 한다.[2]
구체적인 시뮬레이션 기반 최적화 방법은 의사결정 변수 유형에 기초하여 그림 1에 따라 선택할 수 있다.[3]
최적화는 운영 연구의 두 가지 주요 부서에 존재한다.
최적화 파라메트릭(정적) – 목적은 함수를 최대화하거나 최소화하는 것을 목표로 모든 상태에 대해 "정적"인 파라미터의 값을 찾는 것이다.이 경우 선형 프로그래밍과 같은 수학적 프로그래밍을 사용할 수 있다.이 시나리오에서 시뮬레이션은 파라미터가 노이즈를 포함하거나 문제의 평가가 복잡성으로 인해 과도한 컴퓨터 시간을 요구할 때 도움이 된다.[4]
최적화 제어(동적) – 이는 주로 컴퓨터 공학 및 전기 공학에서 사용된다.최적 제어는 상태별로 이루어지며 결과는 각각 변화한다.동적 프로그래밍뿐만 아니라 수학 프로그래밍도 사용할 수 있다.이 시나리오에서 시뮬레이션은 무작위 샘플을 생성하고 복잡하고 큰 문제를 해결할 수 있다.[4]
시뮬레이션 기반 최적화 방법
시뮬레이션 최적화에 있어 몇 가지 중요한 접근방식은 아래에 설명되어 있다.[5] [6]
통계순위 및 선정방법(R/S)
대안이 고정되고 알려진 문제에 대해 순위 및 선택 방법을 설계하고, 시스템 성능을 추정하기 위해 시뮬레이션을 사용한다.시뮬레이션 최적화 설정에서 적용 가능한 방법에는 무관심 영역 접근법, 최적의 계산 예산 할당 및 지식 구배 알고리즘이 포함된다.
반응 표면 방법론(RSM)
반응 표면 방법론에서 목적은 입력 변수와 반응 변수 사이의 관계를 찾는 것이다.공정은 선형 회귀 모형을 적합시키려 하는 것에서 시작한다.P-값이 낮은 것으로 판명되면, 보통 2차인 고차 다항식 회귀 분석이 실행될 것이다.입력변수와 반응변수의 좋은 관계를 찾는 과정은 각 시뮬레이션 테스트에 대해 수행된다.시뮬레이션 최적화에서 반응 표면 방법은 반응 변수의 관점에서 원하는 결과를 산출하는 최선의 입력 변수를 찾는 데 사용될 수 있다.[7]
휴리스틱 방식
휴리스틱한 방법은 속도에 따라 정확도를 바꾼다.그들의 목표는 너무 느리거나 문제 해결에 실패했을 때, 전통적인 방법보다 더 빨리 좋은 해결책을 찾는 것이다.일반적으로 그들은 최적값 대신 국소 최적값을 찾지만, 그 값은 최종 해결책에 충분히 가까운 것으로 간주된다.이러한 종류의 방법의 예로는 타부 검색과 유전 알고리즘이 있다.[4]
메타모델은 연구자들이 비싸고 시간이 많이 걸리는 컴퓨터 시뮬레이션을 실행하지 않고도 신뢰할 수 있는 대략적인 모델 출력을 얻을 수 있게 해준다.따라서 모델 최적화 프로세스는 계산 시간과 비용을 줄일 수 있다.[8]
확률적 근사치
확률적 근사치는 함수를 직접 계산할 수 없을 때 사용되며, 소음이 많은 관측치를 통해서만 추정한다.이러한 시나리오에서 이 방법(또는 방법군)은 이러한 기능의 극단을 찾는다.목표 기능은 다음과 같다.[9]
- 은 (는) 노이즈를 나타내는 랜덤 변수다.
- 은 (는) f을(를) 최소화하는 매개 변수다
- 은(는)매개 x {\displaystyle 의 도메인이다
파생 모델 없는 최적화 방법
파생결합이 없는 최적화는 수학적 최적화의 주제다.이 방법은 파생상품을 사용할 수 없거나 신뢰할 수 없는 특정 최적화 문제에 적용된다.파생상품이 없는 방법은 샘플 함수 값에 기반한 모형을 설정하거나 세부 모형을 이용하지 않고 직접 함수 값의 표본 집합을 도출한다.파생상품이 필요 없기 때문에 파생상품 기반 방식과 비교할 수 없다.[10]
제한되지 않는 최적화 문제에 대해서는 다음과 같은 형식을 취한다.
파생 모델 없는 최적화의 한계:
1. 몇 개 이상의 변수로 최적화 문제를 처리할 수 없는 방법이 있다. 결과는 대개 그리 정확하지 않다.그러나, 객관적 기능에서 무작위성이 "소음"으로 나타나는 것을 포함하는 비종교적 시뮬레이션 최적화 문제에서 파생되지 않은 방법이 성공한 실제 사례는 수없이 많다.예를 들어 다음 항목을 참조하십시오.[11]
2. 비콘벡스 기능을 최소화하는 것에 직면했을 때, 한계를 보일 것이다.
3. 파생상품이 없는 최적화 방법은 비교적 간단하고 쉽지만, 대부분의 최적화 방법과 마찬가지로 실용적 구현(예: 알고리즘 파라미터 선택)에서도 어느 정도의 주의가 필요하다.
동적 프로그래밍 및 신경 동적 프로그래밍
동적 프로그래밍
동적 프로그래밍은 단계별로 의사결정이 이루어지는 상황을 다룬다.이런 종류의 문제의 핵심은 현재와 미래의 비용을 맞바꾸는 것이다.[12]
하나의 동적 기본 모델에는 두 가지 특징이 있다.
1) 별개의 시간 동적 시스템을 가지고 있다.
2) 시간 경과에 따른 비용함수는 가법적이다.
이산형 형상의 경우 동적 프로그래밍 형식:
- 은 이산 시간의 지수를 나타낸다.
- 은 (는) 시간 k의 상태로서 과거 정보를 담고 향후 최적화를 위해 준비한다.
- 는 제어 변수다.
- 는 랜덤 파라미터다.
비용 함수의 경우 다음과 같은 형식을 가지고 있다.
( ) 은 (는) 프로세스가 끝날 때 발생하는 비용이다.
비용을 의미 있게 최적화할 수 없으므로 다음과 같은 기대 가치를 사용할 수 있다.
신경동적 프로그래밍
신경 동적 프로그래밍은 전자가 근사 아키텍처의 개념을 가지고 있다는 점을 제외하면 동적 프로그래밍과 동일하다.인공지능, 시뮬레이션 기반 알고리즘, 기능성 어프로치 기법을 결합한 것이다.이 용어의 '누로'는 인공지능 커뮤니티에서 유래한 것이다.현재의 행동에 바탕을 둔 내장 메커니즘을 통해 미래를 위한 개선된 의사결정을 하는 방법을 배우는 것을 의미한다.신경동적 프로그래밍의 가장 중요한 부분은 최적의 문제를 위해 훈련된 신경망을 구축하는 것이다.[13]
제한 사항
시뮬레이션 기반 최적화는 시스템의 표현에 충분한 것으로 간주되는 방식으로 시스템의 동적 동작을 모방하는 모델을 만드는 어려움과 같은 몇 가지 한계가 있다.또 다른 문제는 현실 세계 시스템과 시뮬레이션의 통제할 수 없는 매개변수를 결정하는 복잡성이다.또한, 실제 값의 통계적 추정만 얻을 수 있다.측정 결과라 용액에 해로울 수 있어 객관적 기능을 결정하기가 쉽지 않다.[14][15]
참조
- ^ 응우옌, 안흐투안, 시그리드 리거, 필리프 리고."건물 성능 분석에 적용된 시뮬레이션 기반 최적화 방법에 대한 검토."적용 에너지 113(2014년): 1043–1058.
- ^ 카슨, 욜란다, 그리고 아누 마리아."시뮬레이션 최적화: 방법과 응용"제29회 동계 시뮬레이션 컨퍼런스 진행IEEE 컴퓨터 협회, 1997.
- ^ 잘랄리, 하메드, 그리고 이네케 반 니에우웬후이스."재고 보충 시 시뮬레이션 최적화: 분류."IIE Transactions 47.11 (2015): 1217-1235.
- ^ a b c Abhijit Gosavi, Simulation – 기반 최적화: 파라메트릭 최적화 기법 및 강화 학습, Springer, 제2판(2015년)
- ^ a b Fu, Michael, ed. (2015). Handbook of Simulation Optimization. Springer.
- ^ 스폴, J.C. (2003)확률적 검색 및 최적화 소개: 추정, 시뮬레이션 및 제어.호보켄:와일리
- ^ 라히미 마즈래 샤히, M, 팔라 메히두르, E, 아미리, M. (2016), 지하철 열차 스케줄링 애플리케이션으로 시뮬레이션 및 응답 표면 방법론을 이용한 최적화.Intl. Trans. in Op. Res, 23: 797–811. doi:10.111/itor.1250
- ^ Yousefi, Milad; Yousefi, Moslem; Ferreira, Ricardo Poley Martins; Kim, Joong Hoon; Fogliatto, Flavio S. (2018). "Chaotic genetic algorithm and Adaboost ensemble metamodeling approach for optimum resource planning in emergency departments". Artificial Intelligence in Medicine. 84: 23–33. doi:10.1016/j.artmed.2017.10.002. PMID 29054572.
- ^ 파월, W. (2011년)차원성의 저주를 푸는 근사 동적 프로그래밍(2차, 확률과 통계에서의 Wiley 시리즈)호보켄:와일리
- ^ Conn, A. R.; Scheinberg, K.; Vicente, L. N. (2009)파생 모델 없는 최적화 소개.최적화에 관한 MPS-SIAM 북 시리즈.필라델피아: SIAM.2014-01-18 검색됨
- ^ Fu, MC, Hill, SD 동시 섭동 확률적 근사치를 통한 이산 이벤트 시스템의 최적화.IIE Transactions 29, 233–243 (1997년)https://doi.org/10.1023/A:1018523313043
- ^ 쿠퍼, 레온, 쿠퍼, 메리 W.동적 프로그래밍 소개뉴욕: 퍼가몬 프레스, 1981년
- ^ Van Roy, B, Bertsekas, D, Lee, Y, & Tsitsiklis, J. (1997년)소매업체 재고 관리에 대한 신경 동적 프로그래밍 방식.의사결정 및 통제에 관한 IEEE 회의의 절차, 4, 4052-4057.
- ^ 프라세티오, Y. (2005)복잡한 확률 시스템을 위한 시뮬레이션 기반 최적화.워싱턴 대학교.
- ^ 덩, 지, & 페리스, 마이클(2007).시뮬레이션 기반 최적화, ProQuest 논문 및 논문