KR20220159406A - 제어 시스템의 수학적 표현의 자동 차원 축소를 통한 제어 시스템의 제어 동작의 최적화 - Google Patents

제어 시스템의 수학적 표현의 자동 차원 축소를 통한 제어 시스템의 제어 동작의 최적화 Download PDF

Info

Publication number
KR20220159406A
KR20220159406A KR1020227036101A KR20227036101A KR20220159406A KR 20220159406 A KR20220159406 A KR 20220159406A KR 1020227036101 A KR1020227036101 A KR 1020227036101A KR 20227036101 A KR20227036101 A KR 20227036101A KR 20220159406 A KR20220159406 A KR 20220159406A
Authority
KR
South Korea
Prior art keywords
control
model
controlled application
variables
system state
Prior art date
Application number
KR1020227036101A
Other languages
English (en)
Inventor
알렉산더 자도로니
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20220159406A publication Critical patent/KR20220159406A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/048Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • G06N7/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Automation & Control Theory (AREA)
  • Algebra (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Molecular Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Feedback Control In General (AREA)

Abstract

제어되는 애플리케이션 시스템의 수학적 표현의 차원을 자동으로 축소시키는 방법이 제공된다. 본 방법은 제어 시스템에서, 제어되는 애플리케이션 시스템과 관련된 제어 동작 및 시스템 상태 변수에 대응하는 데이터를 수신하는 단계와, 상기 데이터를 기반으로 제어되는 애플리케이션 시스템에 CRL(constrained reconment learning) 모델을 피팅하는 단계와, 관심 있는 제어 동작 변수를 선택하고, 관심 있는 각 제어 동작 변수를 추천하도록 CRL 모델을 구동하는 시스템 상태 변수를 식별함으로써 시스템 상태 변수의 부분집합을 자동으로 식별하는 단계를 포함한다. 또한, 본 방법은 시스템 상태 변수의 부분집합을 사용하여 CRL 모델의 상태 공간 차원 축소를 자동으로 수행하는 단계와, 제어되는 애플리케이션 시스템의 제한 마르코프 의사 결정 프로세스(constrained Markov decision process : CMDP) 모델에 대한 전환 확률 행렬을 추정하는 단계와, 전환 확률 행렬과 몇개의 비용을 사용하여 선형 프로그래밍(LP) 문제로 CMDP 모델을 공식화하는 단계를 포함한다.

Description

제어 시스템의 수학적 표현의 자동 차원 축소를 통한 제어 시스템의 제어 동작의 최적화
[0001] 본 발명은 머신 러닝 분야에 관한 것이다. 보다 상세하게는, 본 발명은 제어되는 애플리케이션 시스템(controlled application system)의 수학적 표현의 차원(dimensionality of a mathematical representation)을 자동으로 축소함으로써, 제어되는 애플리케이션 시스템의 동작을 지시하는 제어 시스템의 제어 동작을 최적화하는 것에 관한 것이다.
[0002] 본 명세서에 설명된 실시예에 따르면, 하나 이상의 제약 값(constraint values)을 갖는 제어되는 애플리케이션 시스템의 수학적 표현의 차원을 자동으로 축소하는 방법이 제공된다. 본 방법은 제어되는 애플리케이션 시스템의 동작을 지시하는 제어 시스템에서 제어되는 애플리케이션 시스템과 관련된 제어 동작 변수(control action variables) 및 시스템 상태 변수(system state variables)에 대응하는 데이터를 수신하는 단계와, 제어 시스템의 프로세서를 통해 제어 동작 변수 및 시스템 상태 변수에 대응하는 데이터를 기반으로 제어되는 애플리케이션 시스템에 제한 강화 학습(constrained reinforcement learning : CARL) 모델을 피팅(fitting)하는 단계를 포함한다. 본 방법은 또한 프로세서를 통해 관심 있는 제어 동작 변수를 선택하여 시스템 상태 변수의 부분집합(subset)을 자동으로 식별하는 단계와, 관심 있는 제어 동작 변수에 대해 CRL 모델이 관심 있는 제어 동작 변수를 추천하도록 구동하는 시스템 상태 변수를 식별하는 단계를 포함한다. 본 방법은 또한 프로세서를 통해 시스템 상태 변수의 부분집합을 사용하여 CRL 모델의 상태 공간 차원 축소(state space dimensionality reduction)를 자동으로 수행하는 단계와, 상태 공간 차원 축소 후, 프로세서를 통해 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 제한 마르코프 결정 프로세스(constrained Markov decision process : CMDP) 모델에 대한 전환 확률 행렬(transition probability matrix)을 추정하는 단계와, 프로세서를 통해 CMDP 모델을 전환 확률 행렬, 하나 이상의 비용 목표(cost objectives) 및 하나 이상의 제약 관련 비용(constraints-related costs)을 사용하여 선형 프로그래밍(linear programming : LP) 문제로 공식화하는 단계를 포함한다.
[0003] 다른 실시예에서는 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 동작을 지시하는 제어 시스템이 제공된다. 제어 시스템은 제어되는 애플리케이션 시스템과 관련된 제어 동작 변수 및 시스템 상태 변수에 대응하는 데이터를 수신하기 위한 인터페이스를 포함한다. 제어 시스템은 또한 프로세서 및 컴퓨터가 판독 가능한 저장 매체를 포함한다. 컴퓨터 판독 가능한 저장 매체는 제어 동작 변수와 시스템 상태 변수에 대응하는 데이터를 기반으로 CRL 모델을 제어되는 애플리케이션 시스템에 피팅(fitting)하는 단계와, 제어 동작 변수를 선택함으로써 시스템 상태 변수의 부분집합을 자동으로 식별하는 단계와, 관심 있는 제어 동작 변수의 각각에 대해 관심 있는 제어 동작 변수를 추천하도록 CRL 모델을 구동하는 시스템 상태 변수를 식별하는 단계를 프로세서에 지시하는 프로그램 명령들을 저장한다. 또한, 컴퓨터가 판독 가능한 저장 매체는 시스템 상태 변수의 부분집합을 사용하여 CRL 모델의 상태 공간 차원 축소를 자동으로 수행하는 단계와, 상태 공간 차원 축소 후에 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 CMDP 모델에 대한 전환 확률 행렬(transition probability matrix)을 추정하는 단계와, 전환 확률 행렬, 하나 이상의 비용 목표 및 하나 이상의 제약 관련 비용을 사용하여 LP 문제로 CMDP 모델을 공식화하는 단계를 프로세서에 지시하는 프로그램 명령들을 저장한다.
[0004] 또 다른 실시예에서, 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 수학적 표현의 차원을 자동으로 축소하기 위한 컴퓨터 프로그램 제품이 제공된다. 컴퓨터 프로그램 제품은 프로그램 명령들을 갖는 컴퓨터 판독 가능 저장 매체를 포함하고, 컴퓨터 판독 가능 저장 매체는 그 자체가 일시적인 신호가 아니다. 프로그램 명령들은 프로세서가 CRL 모델을 제어되는 애플리케이션 시스템에 피팅(fitting)하고, - 여기서, CRL 모델은 제어 동작 변수와 시스템 상태 변수에 대응하는 데이터를 기초로 함 - 관심 있는 제어 동작 변수를 선택하고 관심 있는 제어 동작 변수의 각각에 대해 관심 있는 제어 동작 변수를 추천하도록 CRL 모델을 구동하는 시스템 상태 변수를 식별함으로써 시스템 상태 변수의 부분집합을 자동으로 식별하도록 프로세서에 의해 실행될 수 있다. 또한, 프로그램 명령들은 프로세서가 시스템 상태 변수의 부분집합을 사용하여 CRL 모델의 상태 공간 차원 축소를 자동으로 수행하고, 상태 공간 차원 축소 후에 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 CMDP 모델에 대한 전환 확률 행렬을 추정하며, 전환 확률 행렬, 하나 이상의 비용 목표 및 하나 이상의 제약 관련 비용을 사용하여 LP 문제로 CMDP 모델을 공식화하도록 프로세서에 의해 실행될 수 있다.
[0005] 도 1은 본 명세서에 기재된 자동 상태 공간 차원 축소 기술이 구현될 수 있는 예시적인 폐수 처리장(wastewater treatment plant : WWTP)의 간략화된 블록도이다.
[0006] 도 2는 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 수학적 표현의 차원을 자동으로 축소시키는 방법의 흐름도이다.
[0007] 머신 러닝 기술은 예를 들어, 폐수 처리장, 건강 관리 시스템, 농업 시스템, 수자원 관리 시스템, 대기열 시스템(queuing systems), 전염병 프로세스 시스템, 로봇 모션 계획 시스템과 같은 다양한 유형의 제어되는 애플리케이션 시스템과 관련된 제어 시스템의 운영 최적화를 위해 일반적으로 사용된다. 보다 구체적으로, 머신 러닝 기술은 이러한 제어되는 애플리케이션 시스템의 동작을 수학적으로 설명하는 모델을 생성하는 데 사용된다. 예를 들어, 강화 학습(reinforcement learning : RL) 기법은 특정 제어되는 애플리케이션 시스템의 환경에 대한 시스템 상태를 해당 제어되는 애플리케이션 시스템과 관련된 제어 시스템의 운영자가 취한 제어 조치에 누적 보상의 개념을 최대화하는 순서로 매핑하는 정책을 학습하는 데 사용될 수 있다. 심층 강화 학습(deep reinforcement learning : DRL)이라고 하는 강화 학습의 확장은 심층 신경망(deep neural networks)을 활용하여 고객/문제의 환경 행동(environment behavior)을 모델링한다. 또한, 제어되는 애플리케이션 시스템의 동작에 제약이 가해지는 경우, 그러한 제약을 고려한 정책을 학습하기 위해 제한 강화 학습(constrained reinforcement learning : CRL) 및/또는 제한 심층 강화 학습(constrained deep reinforcement learning : CDRL) 기법을 사용할 수 있다. 또한, 마르코프 결정 프로세스(Markov decision process : MDP) 기법은 특정 제어 조치에 대응하여 다른 시스템 상태들 사이의 전환의 명시적으로 계산/추정된 확률을 활용하는 의사 결정을 위한 복잡한 프레임워크를 포함한다. 제한 마르코프 결정 프로세스(CMDP) 기술이 사용될 때, 모델은 제어되는 애플리케이션 시스템과 관련된 특정 제약 조건을 충족하도록 제어된다.
[0008] 운영 시, 이러한 제어되는 애플리케이션 시스템은 종종 각각의 제어 시스템이 취할 수 있는 매우 많은 수의 사용 가능한 제어 조치(control actions)뿐만 아니라 매우 많은 수의 가능한 시스템 상태(system states)를 포함한다. 예를 들어, 일부 제어되는 애플리케이션 시스템은 수백 가지의 가능한 시스템 상태 변수뿐만 아니라 100개 이상의 가능한 제어 조치를 포함한다. 결과적으로, 이러한 제어되는 애플리케이션 시스템에 대해 제한된 수학적 모델을 구현하는 것은 수백만 개의 전환 확률 값을 계산하거나 매우 큰 신경망을 학습하는 것을 포함할 수 있다. 그러나 이러한 애플리케이션들을 위한 제어 시스템은 종종 합리적인 시간 내에 그러한 많은 수의 전환 확률 값을 계산하기에 충분한 처리 능력을 갖추고 있지 않으며, 많은 제어되는 애플리케이션 시스템들은 이 수준에서 계산을 수행하기 위한 충분한 데이터를 수집할 수 있는 충분한 센서를 포함하고 있지 않다. 또한, 제어되는 애플리케이션 시스템에 하나 이상의 제약 조건이 부과되면, 제한된 수학적 모델(constrained mathematical model)은 훨씬 더 복잡하고 계산하기 어려워진다. 따라서, 이러한 제한된 수학적 모델의 크기를 줄이는 것이 종종 바람직하다.
[0009] 따라서, 본 명세서는, 예를 들어, 수천 개의 변수에서 가능한 시스템 상태의 수를 10개 미만 또는 20개 미만의 변수로 축소함으로써, 이러한 제한된 수학적 모델의 상태 공간 차원을 자동으로 축소하는 기술을 설명한다. 이것은 CMDP와 CRL(또는 CDRL) 기술의 조합을 사용하여 달성된다. 결과적인 단순화된 모델을 통해 제어 시스템은 제어되는 애플리케이션 시스템에 부과된 하나 이상의 제약 조건을 고려하면서 제어되는 애플리케이션 시스템의 동작을 빠르고 효율적으로 최적화할 수 있다.
[0010] 본 명세서에 기재된 기술들은 폐수 처리장, 건강 관리 시스템, 농업 시스템, 수자원 관리 시스템, 대기열 시스템(queuing systems), 전염병 프로세스 시스템, 로봇 모션 계획 시스템 등과 같은 임의의 적합한 형태의 제어되는 애플리케이션 시스템에 적용될 수 있다. 그러나 논의의 용이성을 위해, 본 명세서에 설명된 실시예들은 폐수 처리장에 대한 이러한 기술들의 적용에 관한 것이다.
[0011] 도 1은 본 명세서에 기재된 자동 상태 공간 차운 축소 기술이 구현될 수 있는 예시적인 폐수 처리장(WWTP)(100)의 간략화된 블록도이다. WWTP(100)는 유입수(102)라고 하는 유입되는 폐수를 처리하도록 구성된 임의의 적합한 유형의 폐수 처리 유닛, 장치 또는 시스템일 수 있다. 유입수(102)는 WWTP(100) 내에서 액체 라인(104)을 통과한다. 액체 라인(104)은 현지 규정 또는 프로토콜에 따라 설정된 레벨로 유입수(102)를 처리하기 위하여 스크린(screens), 펌프, 반응기(reactors), 침전 탱크(settling tanks), 분리 장치(separation devices), 송풍기(air blowers) 등을 포함할 수 있다. 액체 라인(104)의 두 가지 주요 출력은 유출수(106)라고 하는 처리된 유체(treated fluid)와 슬러지(108)라고 하는 처리된 바이오솔리드(treated biosolid)이다. 그 후 슬러지(108)를 처리하기 위해 스크린, 펌프, 반응기, 침전조, 분리 장치, 탈수 시스템(dehydration systems), 폭기 탱크(aeration tanks), 에어 블로어(air blowers) 등을 포함할 수 있는 슬러지 라인(sludge line)(110)을 슬러지(108)가 관통한다. 그 후, 예를 들어 필터 케이크(filter cake)를 포함할 수 있는 결과적인 처리된 슬러지(112)는 처리를 위해 보내지고, 예를 들어 반응기에서 사용하기 위한 활성 슬러지(activated sludge)를 포함할 수 있는 재활용 유출수(116)는 액체 라인(104)으로 다시 재활용된다. 또한, 슬러지 라인(110)에서 슬러지(108)로부터 분리된 메탄가스(118)는 가스 라인(gas line)(120)으로 보내져 판매되거나 다양한 용도로 사용될 수 있다.
[0012] 또한, WWTP(100)는 액체 라인(104) 및/또는 슬러지 라인(110) 내에 포함되는 스크린(들), 펌프(들), 반응기(들), 침전조(들), 분리 장치(들), 송풍기(들), 탈수 시스템(들), 에너지 탱크(들) 등과 같은 WWTP(100) 내의 다양한 장치 및 시스템의 기능을 제어하도록 구성된 제어 시스템(122)을 포함한다. 다양한 실시예에서, WWTP(100)의 제어 시스템(122)은, 예를 들어, 하나 이상의 서버, 하나 이상의 범용 컴퓨팅 장치, 하나 이상의 특수 목적 컴퓨팅 장치 및/또는 하나 이상의 가상 머신(virtual machines)으로 구성된다. 또한, 제어 시스템(122)은 하나 이상의 프로세서(124)와, 액체 라인(104)에 연결된 하나 이상의 센서(128A) 및 슬러지 라인(110)에 연결된 하나 이상의 센서(128B)와 같은 WWTP(100) 내의 다수의 센서로부터 판독 값을 수신하기 위한 인터페이스(126)를 포함한다. 센서(128A, 128B)는 WWTP(100)와 관련된 다양한 조건들을 모니터링 하기 위해 사용될 수 있다. 예를 들어, 센서(들)(128A, 128B)는 총 질소 유출 유량 변수( total-nitrogen-at-effluent flow variable) 및 총 인 유출 유량 변수(total-phosphorus-at-effluent flow variable)와 같은 유량 변수를 모니터링 하는 데 사용될 수 있다. 상기 판독 값은 센서로부터 직접 수신되거나 프록시 또는 입력 장치를 통해 수신될 수 있다.
[0013] 인터페이스(126)는, 예를 들어, 인터넷, LAN(local area network), WAN(wide area network) 및/또는 무선 네트워크와 같은 네트워크(132)를 통해 WWTP(100)와 연관된 하나 이상의 데이터베이스(130)로부터 데이터를 획득하기 위해서도 사용될 수 있다. 네트워크(132)는 연관된 구리 전송 케이블, 광전송 섬유, 무선 전송 장치, 라우터, 방화벽, 스위치, 게이트웨이 컴퓨터(gateway computers), 에지 서버(edge servers) 등을 포함할 수 있다. 데이터베이스(130)로부터 획득된 데이터는 WWTP(100)의 동작 요건에 관한 정보뿐만 아니라, 예를 들어 WWTP(100) 또는 다른 유사한 WWTP에 대한 과거 동작 데이터를 포함할 수 있다.
[0014] 또한 제어 시스템(122)은 본 명세서에 더 설명된 바와 같이 WWTP(100)의 동작을 제어하기 위해 프로세서(124)에 의해 실행될 수 있는 프로그램 명령을 포함하는 컴퓨터 판독 가능한 저장 매체(또는 미디어)(134)를 포함한다. 컴퓨터 판독 가능한 기억 매체(134)는 제어 시스템(122)과 일체형일 수도 있고, 사용 시 제어 시스템(122)과 연결되는 외부 장치일 수도 있다. 컴퓨터 판독 가능한 기억 매체(134)는, 예를 들면, 전자 기억 장치, 자기 기억 장치, 광 기억 장치, 전자기 기억 장치(electromagnetic storage device), 반도체 기억 장치, 또는 전술한 것들의 임의의 적절한 조합을 포함할 수 있다. 컴퓨터 판독 가능한 저장 매체(134)의 더욱 구체적인 예에 대해 완전하지 않은 목록은 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 소거 가능하고 프로그램 가능한 읽기 전용 메모리(EPROM 또는 플래시 메모리), 정적 랜덤 액세스 메모리(SRAM), 휴대용 콤팩트디스크 읽기 전용 메모리(CD-ROM), 디지털 다용도 디스크(DVD), 플로피 디스크, 펀치 카드 또는 그 위에 기록된 명령들이 있는 홈(groove) 내의 융기 구조(raised structures)와 같은 기계적으로 인코딩된 장치, 및 전술한 것들의 임의의 적절한 조합을 포함한다. 또한, 본 명세서에서 사용되는 "컴퓨터 판독 가능한 저장 매체"라는 용어는 전파(radio waves) 또는 기타 자유롭게 전파되는 전자파(electromagnetic waves), 도파관 또는 기타 전송 매체를 통해 전파되는 전자파(예: 광섬유 케이블을 통과하는 광 펄스) 또는 전선을 통해 전달되는 전기 신호와 같은 일시적인 신호 그 자체로 해석되지 않는다. 일부 실시예들에서, 인터페이스(126)는 네트워크(132)로부터 프로그램 명령을 수신하고, 제어 시스템(122) 내의 컴퓨터가 판독 가능한 저장 매체(134)에 저장하기 위하여 프로그램 명령을 전달하는 네트워크 어댑터 카드 또는 네트워크 인터페이스를 포함한다.
[0015] 프로그램 명령들(program instructions)은 어셈블러 명령(assembler instructions), 명령-세트-아키텍처(instruction-set-architecture : ISA) 명령, 기계 명령, 기계 종속 명령, 마이크로코드, 펌웨어 명령, 상태 설정 데이터(state-setting data), 또는 스몰토크(Smalltalk), C++ 등과 같은 객체 지향 프로그래밍 언어를 포함하여 하나 이상의 프로그래밍 언어의 조합으로 작성된 소스 코드 또는 객체 코드, 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어와 같은 전통적인 절차적 프로그래밍 언어일 수 있다. 프로그램 명령들은 제어 시스템(122)에서 완전히, 제어 시스템(122)에서 부분적으로, 독립 실행형 소프트웨어 패키지(a stand-alone software package)로, 제어 시스템(122)에서 부분적으로 그리고 네트워크(132)를 통해 제어 시스템(122)에 연결된 원격 컴퓨터 또는 서버에서 부분적으로, 또는 그러한 원격 컴퓨터 또는 서버에서 전적으로 실행될 수 있다. 일부 실시예들에서, 예를 들어, 프로그래머블 논리 회로(programmable logic circuitry), 필드 프로그래머블 게이트 어레이(field-programmable gate arrays : FPGA) 또는 프로그래머블 논리 어레이(PLA)를 포함하는 전자 회로는 전자 회로를 개인화(personalization) 하도록 프로그램 명령의 상태 정보를 활용함으로써 여기 설명된 실시예들을 수행하기 위하여 프로그램 명령들을 실행할 수 있다.
[0016] 동작 시, WWTP(100)에서 배출되는 유출수(106) 및 처리된 슬러지(112)의 특성은 WWTP(100)의 위치에 고유한 규제 제약(regulatory constraints)을 준수해야 한다. 이러한 제약에는, 예를 들어 특정 기간에 걸친 유출수(106)의 총 질소 농도 및 총 인 농도에 대한 제한이 포함될 수 있다. 이러한 제약의 일 예는 유출수(106)의 월(또는 일) 평균 총 질소 농도에 대한 리터당 15 밀리그램(mg/L)의 상한이다. 유출수(106) 및 처리된 슬러지(112)를 그 정도로 처리하기 위해 액체 라인(104) 및 슬러지 라인(110) 내에서 여러 단계가 수행된다. 예를 들어, 액체 라인(104)은 생물학적-물리적 및/또는 화학적 하위 프로세스를 통해 유입수(102)를 처리하기 위한 다양한 종류의 장비뿐만 아니라 동일한 유입수 부분이 하위 프로세스의 일부를 여러 번 방문하도록 임의의 수의 반복적 하위 프로세스(any number of iterative sub-processes)를 통해 유입수(102)를 처리하기 위한 장비를 포함할 수 있다.
[0017] 이러한 제약들을 준수하기 위해, 제어 시스템(122)이 WWTP(100)와 관련된 다양한 제어 동작 변수 및 시스템 상태 변수를 제어하기 위해 사용될 수 있다. 본 명세서에서 사용되는 용어 "제어 동작(control action)"은 제어되는 애플리케이션 시스템의 동작을 제어하기 위해 제어 시스템이 취할 수 있는 가능한 동작을 가리키는 반면, 용어 "시스템 상태(system state)"는 제어 시스템이 하나 이상의 제어 동작을 취한 후에 제어되는 애플리케이션 시스템의 가능한 상태를 의미한다. 시스템 상태 변수의 예로는 (1) 낮은, 중간 또는 높은 유량(세제곱미터/시간(m3/hr))에서 동작; (2) 켜짐 또는 꺼짐 설정으로 설정된 하나 이상의 피드백 또는 재활용 루프로 동작; (3) 낮은, 중간 또는 높은 값으로 설정된 총 질소 농도(mg/L) 및/또는 총 인 농도(mg/L)의 상한으로 동작; (4) 비싼, 중간 또는 저렴한 설정으로 설정된 전기 비용과 관련된 시간 주기로 동작; 및 (5) 낮은, 중간 또는 높은 값으로 설정된 총 운영 비용으로 동작을 포함한다. 제어 작용 변수의 예로는 (1) WWTP(100) 내에서 하나 이상의 에어 블로워(air blowers)의 속도를 증가 또는 감소시키는 것; (2) WWTP(100) 내에서 액체 라인(104) 및/또는 슬러지 라인(110)에 첨가되는 화학 물질의 양을 증가 또는 감소시키는 것; (3) WWTP(100) 내에서 하나 이상의 펌프에 대해 펌핑 속도(m3/hr)를 증가 또는 감소시키는 것; 및 (4) 재활용 유출수(116)를 액체 라인(104)으로 다시 보내는 데 사용되는 피드백 장비와 같은, WWTP(100) 내의 피드백 장비를 제어하는 것을 포함한다.
[0018] 이러한 복잡성으로 인해 WWTP는 일반적으로 운영 비용이 높다. 총 운영 비용은, 예를 들어, WWTP(100) 내의 부품 동작에 필요한 전기 비용, 폐수 처리 공정 내에서 사용되는 각종 화학 물질에 대한 비용, 및 결과적인 처리된 슬러지(112)에 대한 처리 비용 등을 포함할 수 있다. 오늘날, 대부분의 WWTP는 위험을 정량화하거나 비용을 정확히 최적화할 수 있는 능력 없이 보수적이고 비효율적인 위험 불리 방식(risk-adverse mode)으로 운영된다. 일부 하위 프로세스는 국부적으로 최적화되지만, 특정 하위 프로세스의 국부적인 최적화는 고려되지 않은 하나 이상의 다른 하위 프로세스에 부정적인 영향을 미칠 수 있다. 이러한 국부적인 최적화는 프로세스 전체에 악영향을 미칠 수 있다.
[0019] 그 결과, 제어 시스템(122)의 컴퓨터 판독 가능한 기억 매체(134)는 동작 최적화 모듈(operational optimization module)(136)을 포함한다. 동작 최적화 모듈(136)은 하나 이상의 부과된 제약 조건을 고려하면서, WWTP(100)의 동작 효율을 최대화하고 운영 비용을 최소화하는 제어 동작을 선택하는데 사용될 수 있는 WWTP(100)의 수학적 표현을 생성하도록 구성된다.
[0020] 운용 시, WWTP(100)와 관련된 CMDP 모델은 폐수 처리 프로세스와 관련된 변수가 많아 높은 수준의 복잡성을 수반한다. 예를 들어, WWTP(100)는 수백 개의 가능한 시스템 상태 변수뿐만 아니라, 제어 시스템(122)에 의해 수행될 수 있는 100개 이상의 가능한 제어 동작을 포함할 수 있다. 결과적으로, WWTP(100)에 대한 CMDP 모델을 구현하는 것은 2^200x100 이상의 전환 확률 값을 계산하거나 추정하는 것을 포함할 수 있다. 그러나 제어 시스템(100)은 합리적인 시간 내에 이러한 많은 수의 전환 확률 값을 계산하기에 충분한 처리 능력을 갖추지 못할 수 있다. 게다가, WWTP(100)는 제한된 수의 센서(128A, 128B)만을 포함한다. 예를 들어, 전체의 WWTP(100)가 5-10개의 센서만 포함할 수 있다. 결과적으로, 제어 시스템(122)은 이 수준에서 계산을 수행하기에 충분한 데이터를 수집하지 못할 수 있다. 게다가, WWTP(100)에 제약이 부과되기 때문에, CMDP 모델은 훨씬 더 복잡하고 계산하기 어려워진다.
[0021] 그 결과, 본 명세서에 기재된 실시예에 따르면, 제어 시스템(122)의 컴퓨터 판독 가능한 기억 매체(134) 내의 동작 최적화 모듈(136)은, 자동 상태 공간 차원 축소 모듈(138)로 불리는 서브 모듈을 포함한다. 자동 상태 공간 차원 축소 모듈(138)은 수천 개의 변수에서 예를 들어, 10개 미만 또는 20개 미만으로 CRL 모델 내에서 사용되는 가능한 시스템 상태의 수를 줄임으로써 프로세서(124)가 WWTP(100)와 관련된 CRL 모델의 상태 공간 차원 크기를 자동으로 축소하도록 지시하는 명령들을 포함한다. 이것은 차례로 제어되는 애플리케이션 시스템의 CMDP 모델에 대한 전환 확률 매트릭스를 단순화하여 CMDP 모델을 선형 프로그래밍(LP) 문제로 공식화할 수 있다. 그 후, 제어 시스템(122)은 LP 문제를 이용하여 부과된 제약 조건을 적절히 고려하면서 WWTP(100)의 동작을 신속하고 효율적으로 제어할 수 있다.
[0022] 도 1의 블록도는 도 1에 도시된 모든 구성요소를 포함하도록 WWTP(100)(또는 WWTP(100) 내의 제어 시스템(122))을 표시하기 위한 것이 아님을 이해해야 한다. 오히려, WWTP(100)(및/또는 제어 시스템(122))는 도 1에 도시되지 않은 임의의 수의 추가 또는 대체 구성요소를 포함할 수 있다. 예를 들어, 제어 시스템(122)의 컴퓨터 판독 가능한 저장 매체(134)는 WWTP(100)의 동작을 제어 및/또는 최적화하기 위한 임의의 수의 추가 모듈을 포함할 수 있다. 또한, 제어 시스템(122)은 WWTP(100)의 동작과 관련된 시뮬레이션 데이터를 제공하는 시뮬레이션 시스템을 포함하거나 시뮬레이션 시스템에 연결될 수 있다. 일부 실시예에서, 제어 시스템(122)은 WWTP(100)의 동작을 최적화하기 위해 시뮬레이션 데이터와 센서(128A, 128B)로부터 획득한 데이터의 조합을 사용할 수 있다.
[0023] 본 명세서에 설명된 실시예들에 따라 사용될 수 있는 CMDP 기술들에 대한 수학적 설명이 이제 참조된다. CMDP는 5-튜플(5-tuple)
Figure pct00001
로 정의된다. 여기서, S는 시스템 상태의 유한 집합(|S|=n), U는 제어 동작의 유한 집합(|U|=k), P는 전환 확률 함수(X2×U → [0;1]), c는 상태-동작 쌍(state-action pair) 마다의 비용 벡터를 포함하는 비용 함수(X×U →R),
Figure pct00002
는 제약 조건과 관련된 비용 벡터를 나타낸다. 시스템 상태의 유한 집합 S는 <s1,s2,...ss>∈S로 표시되며, 여기서 S로부터의 원소는 벡터이고, 제어 동작의 유한 집합 U는 <u1,u2,...uu>∈U로 표시되며, 여기서 U의 원소는 벡터이다. 전환 확률 함수 P는 P(sj|si,uk)∈[0,1]로 표시된다. 또한, st는 시간 t 에서의 상태를 나타내는 랜덤 변수이고, ut는 시간 t에서의 동작을 나타내는 랜덤 변수이다.
[0024] 전환 확률 함수 P(y|x,u)는 동작 u가 선택되었을 때 하나의 시스템 상태 x에서 다른 시스템 상태 y로 전환될 확률을 정량화한다. 시스템 상태 x 일 때 동작 u를 선택하는 것과 관련된 비용은 c(x,u)와 동일하다. 다른 확률들과 결과들에 기초하여 정책들 π가 생성되며, 각 정책은 상태-동작 쌍(state-action pairs)에 대한 확률 측정을 유도한다. CMDP 모델의 목표는 제약 조건의 총 값
Figure pct00003
이 지정된 값 미만으로 유지되도록 보장하면서 전체 비용 C(π)를 최소화하는 정책을 찾는 것이다.
[0025] CMDP 할인 비용 모델의 경우, 매개변수 β∈(0,1) 는 미래 비용이 줄어드는 속도를 지정하며, 여기서 pπ(xt=x; ut=u) 는 초기 상태가 x0이고 정책이 π일 때 이벤트 xt=x와 ut=u 확률을 나타낸다. 이 모델에 따르면, 할인된 점유 측정(discounted occupation measure)은 수학식 1과 같이 정의되며, 여기서 β는 할인율이고, 0<β<1이다.
Figure pct00004
정책이 π인 시간 t에서의 비용 기대치는 수학식 2와 같이 정의된다.
Figure pct00005
비용은 수학식 3과 같이 정의되며, 여기서 β는 할인율이고, 0<β<1이다.
Figure pct00006
제약 조건인
Figure pct00007
는 수학식 4와 유사하게 정의된다.
Figure pct00008
[0026] 위에서 언급한 바와 같이, CMDP 기술의 목표는 제약 조건의 총 값
Figure pct00009
가 지정된 값 이하로 유지되도록 하면서 전체 비용 C(π)를 최소화하는 정책 π를 찾는 것이다. 결과적인 정책 π은 제어되는 애플리케이션 시스템의 운영 최적화를 위해 사용될 수 있다. 그러나 도 1에 도시된 예와 관련하여 설명된 바와 같이, 많은 제어되는 애플리케이션 시스템들은 매우 많은 수의 가능한 시스템 상태들과 가능한 제어 동작들을 포함한다. 이렇게 많은 수의 변수는 합리적인 시간 내에 해결할 수 없는 매우 복잡한 모델을 생성한다. 따라서, 본 명세서에 설명된 실시예들은 각 CMDP 모델에 가장 중요한 시스템 상태 변수의 부분집합을 자동으로 선택함으로써 CMDP 모델의 크기를 신속하고 효율적으로 축소하는 데 사용될 수 있는 자동 상태 공간 차원 축소 기술을 제공한다. 이것은 다양한 실시예에서, 도 2를 참조하여 더욱 상세히 설명한 바와 같이, CRL(또는 CDRL) 및 CMDP 기술의 조합을 사용하여 달성된다. 또한, 상태 공간 차원 축소 후, CMDP 모델은 IBM CPLEX® Optimizer와 같은 일반적인 해결수단(solvers)에 의해 빠르고 효율적으로 해결될 수 있는 선형 프로그래밍(LP) 문제로 공식화될 수 있다.
[0027] 도 2는 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 수학적 표현의 차원을 자동으로 축소하는 방법(200)의 프로세스 흐름도이다. 방법(200)은 제어되는 애플리케이션 시스템의 동작을 지시하는 제어 시스템에 의해 구현된다. 일부 실시예에서, 제어되는 애플리케이션 시스템은 도 1에 대해 설명된 WWTP와 같은 WWTP이며, 제어 시스템은 프로세서와 컴퓨터 판독 가능한 저장 매체를 포함한다. 컴퓨터 판독 가능한 저장 매체는 프로세서가 방법(200)의 단계들을 수행하도록 지시하기 위한 프로그램 명령을 포함한다. 또한, 다른 실시예들에서, 제어되는 애플리케이션 시스템은 헬스케어 시스템, 농업 시스템, 수자원 관리 시스템, 대기열 시스템, 전염병 프로세스 시스템, 로봇 모션 계획 시스템 또는 다른 임의의 적절한 유형의 제어되는 애플리케이션 시스템일 수 있다.
[0028] 방법(200)은 제어 시스템이 제어되는 애플리케이션 시스템과 관련된 제어 동작 변수 및 시스템 상태 변수에 대응하는 데이터를 수신하는 블록(202)에서 시작한다. 일부 실시예들에서, 데이터의 적어도 일부는 제어되는 애플리케이션 시스템에 결합된 센서들을 통해 계산된다. 더욱이, 일부 실시예들에서, 제어 시스템은 제어되는 애플리케이션 시스템의 시뮬레이션에 기초하여 데이터의 적어도 일부를 계산한다.
[0029] 본 명세서에 설명된 바와 같이, 제어 동작 변수들은 제어 시스템이 제어되는 애플리케이션 시스템의 동작을 제어하기 위해 수행할 수 있는 다수의 가능한 동작들을 포함하고, 시스템 상태 변수들은 제어 시스템이 하나 이상의 동작을 수행한 후에 제어되는 애플리케이션 시스템의 다수의 가능한 상태들을 포함한다. 다양한 실시예에서 제어 시스템의 제어 동작을 최적화하는 것은 제어 동작 변수와 시스템 상태 변수 사이의 관계에 관련된 대규모 확률적 문제(stochastic problem)를 해결하는 것을 포함한다. 또한, 대규모 확률적 문제는 제어되는 애플리케이션 시스템과 관련된 비용 함수와 제어되는 애플리케이션 시스템에 대한 하나 이상의 제약 값을 고려한다.
[0030] 블록(204))에서, 제어 시스템의 프로세서는 제어 동작 변수 및 시스템 상태 변수에 대응하는 데이터를 기반으로 제어되는 애플리케이션 시스템에 CRL(contractained reconment learning) 모델을 피팅한다. 즉, 제어 시스템의 프로세서는 머신 러닝 프레임워크에서 대규모 확률적 문제를 고려하고, 문제를 정의하는 하나 이상의 제약 값, 제어 동작 변수 및 시스템 상태 변수의 관점에서 제어되는 애플리케이션 시스템의 동작을 가장 잘 설명하는 CRL 모델을 출력한다. 일부 실시예에서 CRL 모델은 제한된 심층 강화 학습(constrained deep reinforcement learning : CDRL) 모델이다.
[0031] 다양한 실시예에서, 모델 피팅 프로세스(model fitting process)는 정책
Figure pct00010
을 생성하기 위해 파라미터 조정 및 최적화와 같은 당업계에 알려진 표준 강화 학습(standard reinforcement learning) 기법을 수행하는 것을 포함한다. 이 정책은 제어되는 애플리케이션 시스템의 환경이 시스템 상태
Figure pct00011
를 나타낼 때 제어 동작 u가 실행될 확률 P를 일반적으로 0과 1 사이에 제공하는 지도이다. 상기 정책은 당업계에 공지되어 있는 바와 같이, 정적(stationary) 즉, 시간 독립적이거나 비정적(non-stationary) 즉, 시간 의존적일 수 있다. 또한, 정책에 기초하여, 시스템 상태 변수와 제어 행동 변수의 특정 쌍의 결합 확률(joint probabilities)은
Figure pct00012
로 계산될 수 있다. 여기서,
Figure pct00013
는 제어 시스템이 수신한 데이터를 기반으로 계산된다.
[0032] 다양한 실시예에서, CRL(또는 CDRL) 모델에 대한 정책은 암시적(implicit)이다. 특히 CRL(또는 CDRL) 모델의 입력으로 시스템 상태가 주어지면 제어 동작(또는 가장 가능성이 높은 제어 동작)의 분포가 출력으로 제공된다. 전체 시스템 상태의 수는 엄청날 수도 있고 무한할 수도 있기 때문에 정책은 일반적으로 명시적으로 계산되지 않는다. 대신에, CRL(및 CDRL) 프로세스는 일종의 "오라클(oracle)"로 기능한다. 그러나 본 명세서에 설명된 실시예들에 따르면, 입력에서 수신된 데이터를 이용하여 피팅 과정(fitting process) 동안 확률을 추정할 수 있으므로, 암시적인 정책(implicit policy)을 제공할 수 있다.
[0033] CRL(또는 CDRL) 모델에 대한 정책을 생성하는 데 사용할 수 있는 한 가지 특정 프로세스를 보상 제한 정책 최적화(reward constrained policy optimization : RCPO) 프로세스라고 한다. 이 과정은 Tessler, Mankowitz 및 Mannor(2018)의 "Reward Constrained Policy Optimization"라는 논문에서 설명된다. 여기에 설명된 바와 같이, 제한된 최적화 문제에 대해, 과제는 불평등 제약 g(x)≤α를 충족시키면서 목표 함수 f(x)를 최대화하는 정책을 찾는 것이다. RCPO 알고리즘은 제약 조건을 보상 함수에 패널티 신호로 통합함으로써 이를 달성한다. 패널티 신호(penalty signal)는 정책을 제약 충족 해답으로 안내한다.
[0034] 보다 구체적으로, RCPO 알고리즘의 경우, 먼저 라그랑주 완화 기법(Lagrange relaxation technique)을 사용하여 대규모 확률적 문제를 공식화하는데, 여기에는 제한된 최적화 문제(constrained optimization problem)를 동등한 제한되지 않은 최적화 문제(equivalent unconstrained optimization problem)로 변환하는 것이 포함된다. 실현 불가능에 대한 페널티 조건(penalty term)이 추가되어 실현 불가능한 해답이 차선책이다. 결과적으로, CMDP 기반 모델이 주어졌을 때, 제한되지 않은 최적화 문제는 수학식 5와 같이 정의된다. 여기서 L은 라그랑지안(Lagrangian)이고 λ≥0은 라그랑지안 승수(Lagrangian multiplier)(페널티 계수)이다.
Figure pct00014
수학식 5의 목표는 실현 가능한 해답인 안장점(saddle point)
Figure pct00015
를 찾는 것이며, 여기서 실현 가능한 해답은
Figure pct00016
를 만족하는 해답이다.
[0035] 다음으로 기울기가 추정된다. 구체적으로, 제어 동작 변수와 시스템 상태 변수와 관련된 데이터는 수학식 6과 7에 나타난 바와 같이 제한된 최적화 문제(constrained optimization problem)에 대한 알고리즘을 정의하는 데 사용된다.
Figure pct00017
Figure pct00018
수학식 6과 7에서, Γθ는 콤팩트하고 볼록한 집합(compact and convex set)에 투영하여 반복 θκ를 안정적으로 유지하는 투영 연산자(projection operator)이다. Γλ는 λ를 [0,λ4 max] 범위로 투영한다. ∇θL과 ∇λL은 수학식 5에서 도출되며, 여기서 ∇λL에 대한 공식은 수학식 8과 9에 표시된 로그 우도 트릭(log-likelihood trick)을 사용하여 도출된다.
Figure pct00019
Figure pct00020
더욱이, 수학식 6과 7에서, η1(k)과 η2(k)는 패널티 계수 λ보다 더 빠른 시간 척도(timescale)로 정책 업데이트가 수행되도록 보장하는 단계 크기(step-sizes)이다. 이는 수학식 10에 나타난 가정으로 이어지며, 이는 반복(θn, λn)이 실현 가능한 해답인 고정점(fixed point)(즉, 국소 최소값(local minima))으로 수렴한다는 것을 보여준다.
Figure pct00021
[0036] RCPO 알고리즘은 액터-크리틱 기반 접근법(actor-critic based approach)을 사용하여 이 프로세스를 확장하는데, 여기서 액터는 정책 π을 학습하고 크리틱은 시간-차이 학습(temporal-difference learning), 즉 재귀 벨만 방정식(recursive Bellman equation)을 통해 값을 학습한다. 보다 구체적으로, RCPO 알고리즘에서 액터와 크리틱은 할인 패널티(discounted penalty)라고 하는 대안적인 지도 패널티(guiding penalty)를 사용하여 훈련된다. 할인 패널티는 수학식 11과 같이 정의된다.
Figure pct00022
또한 벌점 보상 함수(penalized reward functions)는 수학식 12 및 13과 같이 정의된다.
Figure pct00023
Figure pct00024
수학식 13의 패널티 값(penalized value)은 TD 학습 크리틱(TD-learning critic)을 사용하여 추정할 수 있다. RCPO 알고리즘은 수학식 13이 해결된 후 액터와 크리틱이 업데이트되고, 수학식 6이 해결된 후 λ가 업데이트되는 3 단계 스케일(three-timescale)(제한된 액터 크리틱(constrained actor critic)) 과정이다. RCPO 알고리즘은 다음과 같은 조건에서 실현 가능한 해답으로 수렴한다. (1) 실현 가능한 해답들의 집합은
Figure pct00025
으로 표시되고, (2)
Figure pct00026
의 국소 최소값(local minima)의 집합은 Θγ로 표시되며, (3)
Figure pct00027
을 가정하면 RCPO 알고리즘은 거의 확실하게 실행 가능한 해답인 고정점(fixed point)
Figure pct00028
으로 수렴한다.
[0037] 다양한 실시예에서, CRL 모델을 제어되는 애플리케이션 시스템에 피팅하기 위해 다른 액터-크리틱 프로세스가 사용될 수 있다. 제어 시스템이 이 프로세스를 수행하기 위해 따를 수 있는 단계는 다음과 같이 요약된다. (1) 경사 상승법(gradient ascent method)을 사용하여 제어되는 애플리케이션 시스템의 수학적 표현에 맞는 라그랑주 승수(Lagrange multiplier)를 학습한다. 여기서 경사 하강법(gradient descent method)은 주요 방법(예: 액터-크리틱 알고리즘)에 사용된다. (2) 학습된 라그랑주 승수를 사용하여 수학적 표현을 CRL 모델로서 공식화한다. 이것은 시간 분리 특성(time separation property), 즉 경사 하강법과 경사 상승법에 대한 느리고 빠른 시간 척도(slow and fast time scales)로 인해 동작한다. 다양한 실시예들에서, 이 프로세스는 CDRL 기술들을 사용하여 더 일반화된 제약 조건들에 적용될 수 있다. 또한, 이 프로세스는 Borkar (2005)에 의한 "An actor-critic algorithm for constrained Markov decision processes. Systems & control letters"이라는 제목의 논문에서 더 자세히 설명된다.
[0038] 블록(206)에서 프로세서는 관심 있는 제어 동작 변수를 선택하고, 관심 있는 제어 동작 변수의 각각에 대해 관심 있는 제어 동작 변수를 추천하도록 CRL 모델을 구동하는 시스템 상태 변수를 식별함으로써 시스템 상태 변수의 부분집합을 자동으로 식별한다. 다양한 실시예에서, 이 단계는 예를 들어, 수천 개의 변수를 10개 미만 또는 20개 미만으로 좁히는 것을 포함한다. 또한, 시스템 상태 변수의 식별된 부분집합은 하나 이상의 제한값과, 제한된 수학적 모델과 관련된 비용 관련 변수에 의해 설명된다.
[0039] 다양한 실시예들에서, 블록(206)에서 시스템 상태 변수들의 부분집합을 자동으로 식별하는 것은 4개의 단계를 포함한다. 첫째, 제어 동작 변수와 시스템 상태 변수의 쌍, 즉 블록(204)과 관련하여 설명된 상태-동작 쌍(state-action pairs)에 대한 점유 측정(occupation measures)이 계산된다. 점유 측정은 수학식 14와 같이 계산된다.
Figure pct00029
이 계산은 블록(204)과 관련하여 설명된 모델 피팅 프로세스(model fitting process) 동안 계산된 상태-동작 쌍 확률을 기반으로 한다. 상태-동작 쌍의 각각에 대한 점유는 해당 상태-동작 쌍이 방문한 0과 1 사이의 빈도를 나타낸다. 다양한 실시예에서, 점유 측정은 블록(204)에 대해 설명된 모델 피팅 프로세스 동안 계산될 수도 있다. 더욱이, 점유 측정은 수학식 15와 같이 (미래 보상(future rewards)을 할인하기 위해) 할인 계수(discount factor) β와 무한 지평(infinite horizon)으로 공식화될 수 있다.
Figure pct00030
[0040] 둘째, 제어 시스템은 관심 있는 제어 동작을 여러 개 선택한다. 여기서 관심 있는 제어 동작의 각각은 ui로 표시된다. 일부 실시예들에서, 관심 있는 제어 동작들은 제어 시스템의 운영자(operator)에 의해 수동으로 선택된다. 예를 들어, 제어 시스템의 사용자 인터페이스는 운영자가 편리하게 선택할 수 있는 제어 동작 목록을 운영자에게 제시할 수 있으며, 또한 운영자가 관심 있는 제어 동작의 컴퓨터 판독 가능한 식별 정보를 수동으로 입력할 수 있다. 다른 실시예들에서, 관심 있는 제어 동작들은 제어 시스템에 미리 프로그래밍된 트리거 이벤트(triggering event)의 자동 생성 표시(automatically-generated indication)에 응답하여 제어 시스템에 의해 자동으로 선택된다.
[0041] 셋째, 제어 시스템은 관심 있는 각 제어 동작을 포함하고 사전 정의된 임계값을 준수하는 점유 측정(occupation measure)을 갖는 특정 상태-동작 쌍을 자동으로 결정한다. 예를 들어, 관심 있는 각 제어 동작에 대해, 가장 높은 점유 척도, 즉
Figure pct00031
를 갖는 D 상태-동작 쌍(D≥1)이 결정될 수 있다. 이러한 상태-동작 쌍에는 CRL 모델을 구동하여 관심 있는 특정 제어 동작인 ui를 추천하는 시스템 상태 변수가 포함될 가능성이 있다. 넷째, CRL 모델을 구동하는 데 가장 실질적인 영향을 미치는 시스템 상태 변수의 특정 부분집합을 식별하여 관심 있는 각 제어 동작을 추천한다.
[0042] 블록(208)에서 프로세서는 시스템 상태 변수의 부분집합을 사용하여 CRL(또는 CDRL) 모델의 상태 공간 차원 축소를 자동으로 수행한다. 이것은 블록(206)에서 식별된 시스템 상태 변수의 부분집합을 CRL 모델에 통합하는 것을 포함한다. 다양한 실시예에서 이러한 방식으로 CRL 모델의 상태 공간 차원 축소를 수행하면 복잡한 대형 확률적 문제가 제어 시스템에 의해 빠르고 효율적으로 해결될 수 있는 보다 간결한 확률적 문제로 변환된다.
[0043] 블록(210)에서 프로세서는 상태 공간 차원 축소 후 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 제한 마르코프 의사 결정 프로세스(constrained Markov decision process : CMDP) 모델에 대한 전환 확률 행렬을 추정한다. 다양한 실시예들에서, 이러한 전환 확률 추정 프로세스는 3단계로 분류될 수 있다. 첫째, 프로세서는 가능한 많은 커버리지(coverage)로 상태 공간 및 동작 공간을 분석한다. 다시 말해, 프로세서는 다른 제어 동작들에 대응하여 다른 시스템 상태들 사이의 가능한 많은 전환를 분석한다. 이를 위해 프로세서는 각 시스템 상태에 대해 가장 적게 사용되는 제어 동작에 초점을 두고 관심 제어 동작 변수와 축소된 시스템 상태 변수 집합을 사용하여 가능한 전환의 시뮬레이션을 실행할 수 있다. 둘째, 프로세서는 특정 제어 동작에 대한 시스템 상태의 각 변화에 대한 전환 횟수를 변수의 부분 집합 내의 제어 동작 변수와 시스템 상태 변수의 전체 수로 나누어 전환 확률을 추정한다. 셋째, 프로세서는 보간(interpolation)을 수행하여 전환 확률 행렬을 생성한다. 이는 동작 의존적(action-dependent) 시스템 상태 변수 및/또는 동작 독립적(action-independent) 시스템 상태 변수에 대해 인접 시스템 상태(neighboring system states)를 사용하거나, 또는 기약성 보장 방법(irreducibility guarantee method)을 수행함으로써 달성될 수 있다. 결과적인 전환 확률 행렬은 변수의 부분집합을 기반으로 (하나 이상의 제약 값을 갖는) 제어되는 애플리케이션 시스템의 동작에 대한 간결한 모델을 나타낸다.
[0044] 전환 확률 추정 프로세스에 대한 수학적 설명을 참조하여, 제어 동작 변수의 집합은 Na로 표시되며, 여기서 각 제어 동작 변수의 값의 개수는
Figure pct00032
이고, 제어 동작 변수의 총 개수는
Figure pct00033
이다. 축소된 시스템 상태 변수의 집합은 Ns로 표시되며, 여기서 각 시스템 상태 변수의 값의 개수는
Figure pct00034
이고, 축소된 집합에서의 시스템 상태 변수의 총 개수는
Figure pct00035
이다. 제어 동작 i가 뒤따른 시스템 상태 j에 대한 방문 횟수는
Figure pct00036
로 표시되며, 제어 동작 i가 수행된 후 시스템 상태 j에서 시스템 상태 k로 전환 횟수는
Figure pct00037
로 표시된다. 이러한 정의를 통해 전환 확률 행렬의 기본 추정치는 수학식 16에 나와 있다.
Figure pct00038
[0045] 다양한 실시예에서는, 시스템 상태 변수들이 2개 세트 즉, 제어 가능한 세트와 제어 불가능한 세트로 구분된다. 제어되는 애플리케이션 시스템이 WWTP인 실시예들에서, 제어 불가능한 시스템 상태 변수는, 예를 들어 유입 유량(influent flow), 유입 화학물질 부하(influent chemical load) 및 전기료에 따른 기간 유형을 포함할 수 있다. 제어 동작과 관리 가능한 시스템 상태 변수는 제어 불가능한 시스템 상태 변수들 사이의 전환에 영향을 주지 않는다. 제어 가능한 시스템 상태 변수는 제어되는 애플리케이션 시스템의 내부 또는 유출 특성을 설명하며 모든 유형의 시스템 상태 변수 및 과거 동작의 영향을 받을 수 있다. 제어 불가능한 시스템 상태 변수의 개수는 I,0≤I≤Ns로 표시되며, 여기서 인덱스가 1,...,I인 시스템 상태 변수는 제어 불가능한 것들이다. XN과 XC는 각각 제어 불가능한 시스템 상태 변수와 제어 가능한 시스템 상태 변수에 대응하는 상태 공간들(state spaces)이다. 전체 상태 공간은 이 두 공간의 데카르트 곱(Cartesian product), 즉 X=XN×XC 이다. 그것들의 차원은 각각
Figure pct00039
이고
Figure pct00040
이다. 제어 불가능한 상태 공간 XN의 상태 j에 대응하는 상태 공간의 시스템 상태의 집합은 NS(j),j∈XN 으로 정의된다. 즉, NS(j)={j}∈XC 이다. 제어 가능한 상태 공간 Xc의 상태 j에 대응하는 상태 공간의 시스템 상태의 집합은 CS(j),j∈XC 로 정의된다. 즉, CS(j)=XN∈{j} 이다. 또한, k∈X이면 H(k)∈XN은 상태 k의 제어 불가능한 부분을 나타내고 E(k)∈XC는 상태 k의 제어 가능한 부분을 나타낸다. 즉, 상태 k는 상태 H(k)와 E(k)의 연결(concatenation)이다.
[0046] 동작 기반 커버리지(action-driven coverage)의 경우, 현재 시스템 상태가 j,j∈X 라고 가정한다. 지금까지 가장 적게 선택된 제어 동작을 선택한다. 즉,
Figure pct00041
이다. 이러한 관리 동작이 여러 개 있는 경우, 균등 분포(uniform distribution)에 따라 이들 중 임의로 선택한다. 마찬가지로, 상태 기반 커버리지(state-driven coverage)의 경우, 현재 시스템 상태가 j,j∈X 라고 가정한다. 현재 시간까지의 시스템 상태 k에 대한 전체 방문 횟수는
Figure pct00042
로 나타낼 수 있다. 또한,
Figure pct00043
이고, 여기서
Figure pct00044
는 전환 확률의 현재 추정치이다. 제어 동작
Figure pct00045
를 선택한다. 이러한 관리 동작이 여러 개 있는 경우 균등 분포에 따라 이들 중 임의로 선택한다. 상태 기반 커버리지는
Figure pct00046
가 높은 시스템 상태 즉, 거의 방문하지 않은 시스템 상태에 대한 방문을 암시하는 제어 동작을 선택한다.
[0047] 다양한 실시예에서, 이 프로세스는 전환 확률에 대한 합리적인 초기 추정치를 얻기 위해 비교적 긴 시간 동안 동작 기반 커버리지를 사용하여 반복된다. 그런 다음, 동작 기반 커버리지와 상태 기반 커버리지를 번갈아 가면서 이 프로세스를 반복한다.
[0048] 전환 확률 행렬의 보간(interpolation)을 위해 첫 번째 프로세스는 인접 시스템 상태(neighboring system states)에 기반한 보간을 포함한다. 시스템 상태의 인접 시스템 상태, j,j∈X 는 하나를 제외한 모든 시스템 상태 변수 값이 j의 시스템 상태 변수와 일치하고 하나의 시스템 상태 변수에 의한 차이가 하나의 이웃하는 간격과 같은 시스템 상태이다. 시스템 상태 j 자체뿐만 아니라 상태 j의 인접 시스템 상태들의 집합은 Lj로 표시된다. Lj의 부분집합은
Figure pct00047
로 표시되며, 이는 제어 동작 i가 적어도 한 번 수행된 시스템 상태를 포함한다. 또한,
Figure pct00048
는 이 집합의 크기를 나타낸다.
[0049] 파라미터 M≥0을 사용하고,
Figure pct00049
으로 제어 동작 및 시스템 상태에 대해 보간을 수행한다. 일반적으로 M=10의 값이 사용되며, 보간 확률은 수학식 17과 같이 계산된다.
Figure pct00050
이 프로세스는 인접 시스템 상태에 대한 방문 횟수
Figure pct00051
가 시스템 상태 j 및 제어 동작 i에 대한 임계값 기준
Figure pct00052
에서 를 대체하면 반복적으로 수행될 수 있다.
[0050] 전환 확률 행렬의 보간을 위한 두 번째 프로세스는 전환 확률 행렬의 기약성(irreducibility)을 보장하는 것을 포함한다. 전환 확률 행렬이 일부 제어 동작 i에 대해 기약성이 없으면, 최적화 해답은 일부 시스템 상태가 이 제어 동작에 따라 방문되지 않는다는 것을 의미할 수 있기 때문에 중요하며, 이는 많은 제어되는 애플리케이션 시스템에서 잘못된 것이다. 따라서 이 문제를 해결하기 위해 기약성 보장 방법(irreducibility guarantee method)이 사용된다. 기약성 보장 방법은 파라미터 ε,0≤ε≤1을 사용하며, 여기서 ε=0.01이 일반적으로 가정된다. 초기 시스템 상태로 s0이 주어졌을 때, 기약성 보장 방법은 다음과 같은 단계를 포함한다. 첫째, 모든 제어 동작 i∈U에 대해 시스템 상태 k 및 j의 값은 각각 수학식 18 및 19와 같다.
Figure pct00053
Figure pct00054
그런 다음 모든 행의 합이 1인 전환 확률 행렬을 정규화하는 데 간단한 알고리즘이 사용된다.
[0051] 일부 실시예들에서, 제3 프로세스는 전환 확률 행렬의 보간을 위해 사용될 수 있다. 구체적으로, 상기 제1 및 제2 프로세스를 통해 얻어진 전환 확률은 제어 불가능한 시스템 상태 변수에 대한 상당한 왜곡(distortion)을 포함할 수 있다. 따라서, 제어 불가능한 시스템 상태 변수의 보간이 왜곡을 보정하기 위해 수행될 수 있다. 이 프로세스는 Zadorojney, Shwartz, Wasserkrug, Zeltyn(2016)의 "Operational Optimization of Wastewater Treatment Plants: A CMDP Based Decomposition Approach"이라는 논문에서 더 자세히 설명된다.
[0052] 블록(212)에서 프로세서는 전환 확률 행렬, 하나 이상의 비용 목표 및 하나 이상의 제약 관련 비용을 사용하여 CMDP 모델을 선형 프로그래밍(LP) 문제로 공식화한다. 일부 실시예에서 LP 문제는 OPL(Python/Optimization Programming Language)를 사용하여 공식화된 다음, 예를 들어 IBM CPLEX® Optimizer를 사용하여 해결될 수 있다. 블록(212)에 대한 수학적 설명은 수학식 20 내지 25에 나타나 있으며, 여기서 0이 아닌 항목은 초기 시스템 상태에 해당한다.
Figure pct00055
Figure pct00056
Figure pct00057
Figure pct00058
Figure pct00059
Figure pct00060
[0053] 도 2의 블록도는 방법(200)의 블록(202) 내지 블록(212)이 어떠한 특정한 순서로 실행되어야 한다거나, 방법(200)의 블록(202) 내지 블록(212)이 모든 경우에 포함되어야 한다는 것을 나타내려는 의도가 아니다. 또한, 특정 구현의 세부 사항에 따라, 방법(200) 내에 임의의 수의 추가 블록이 포함될 수 있다. 예를 들어, 일부 실시예에서, 방법(200)은 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 동작을 최적화할 하나 이상의 제어 동작을 결정하기 위하여 LP 문제를 분석하는 단계와, 제어 시스템을 통해 하나 이상의 제어 동작을 수행하는 단계를 포함한다. 또한, 일부 실시예에서, 방법(200)은 여러 번 수행되고, 그 결과 LP 문제는 제어되는 애플리케이션 시스템의 동작과 관련된 다수의 상이한 예측 시나리오(predictive scenarios)를 분석하기 위해 사용된다. 예를 들어, 방법(200)은 다양한 상이한 제약 값 및/또는 다양한 상이한 유형의 제약 조건하에서 제어되는 애플리케이션 시스템의 동작에 대한 예측(또는 "what if" 분석)을 제공하는 데 사용될 수 있다.
[0054] 본 발명의 다양한 실시예들에 대한 설명은 예시의 목적으로 제시되었으나, 개시된 실시예들에 포괄적이거나 한정되는 것은 아니다. 기재된 실시예들의 범위 및 정신에서 벗어나지 않고 당업자에게 많은 수정 및 변형이 명백해질 것이다. 본 명세서에서 사용되는 용어는 실시예들의 원리, 시장에서 발견되는 기술들에 대한 실질적인 적용 또는 기술적 개선을 가장 잘 설명하거나, 당업계에서 통상의 지식을 가진 자들이 본 명세서에 개시된 실시예들을 이해할 수 있도록 하기 위해 선택되었다.

Claims (20)

  1. 하나 이상의 제약 값(constraint values)을 갖는 제어되는 애플리케이션 시스템(controlled application system)의 수학적 표현의 차원(dimensionality of a mathematical representation)을 자동으로 축소시키는 방법에 있어서, 상기 방법은:
    상기 제어되는 애플리케이션 시스템의 동작을 지시하는 제어 시스템에서 상기 제어되는 애플리케이션 시스템과 관련된 제어 동작 변수(control action variables) 및 시스템 상태 변수(system state variables)에 대응하는 데이터를 수신하는 단계;
    상기 제어 시스템의 프로세서를 통해 상기 제어 동작 변수 및 상기 시스템 상태 변수에 대응하는 데이터를 기반으로 상기 제어되는 애플리케이션 시스템에 제한 강화 학습(constrained reinforcement learning : CRL) 모델을 피팅(fitting)하는 단계;
    상기 프로세서를 통해 관심 있는 제어 동작 변수를 선택하고 관심 있는 각 제어 동작 변수에 대해 관심 있는 제어 동작 변수를 추천하도록 상기 CRL 모델을 구동하는 시스템 상태 변수를 식별함으로써 상기 시스템 상태 변수의 부분집합을 자동으로 식별하는 단계;
    상기 시스템 상태 변수의 부분집합을 사용하여 상기 CRL 모델의 상태 공간 차원 축소(state space dimensionality reduction)를 상기 프로세서를 통해 자동으로 수행하는 단계;
    상태 공간 차원 축소 후 상기 프로세서를 통해 상기 하나 이상의 제약 값을 갖는 상기 제어되는 애플리케이션 시스템의 제한 마르코프 의사 결정 프로세스 (constrained Markov decision process : CMDP) 모델에 대한 전환 확률 행렬을 추정하는 단계; 및
    상기 프로세서를 통해, 상기 전환 확률 행렬, 하나 이상의 비용 목표 및 하나 이상의 제약 관련 비용을 사용하여 상기 CMDP 모델을 선형 프로그래밍 (linear programming : LP) 문제로서 공식화하는 단계(formulating)를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  2. 제1항에 있어서,
    상기 CRL 모델은 제한 심층 강화 학습(constrained deep reinforcement learning : CDRL) 모델을 포함하는
    수학적 표현 차원의 자동 축소 방법.
  3. 제1항에 있어서, 상기 방법은:
    상기 하나 이상의 제약 값을 갖는 상기 제어되는 애플리케이션 시스템의 동작을 최적화할 하나 이상의 제어 동작을 결정하기 위하여 상기 LP 문제를 상기 프로세서를 통해 해결하는 단계; 및
    상기 제어 시스템을 통해 상기 하나 이상의 제어 동작을 수행하는 단계를
    포함하는
    수학적 표현 차원의 자동 축소 방법.
  4. 제1항에 있어서, 상기 방법은:
    상기 제어되는 애플리케이션 시스템에 연결된 센서로부터 데이터의 적어도 일부를 수신하는 단계; 및
    상기 제어되는 애플리케이션 시스템의 시뮬레이션을 기반으로 상기 데이터의 적어도 일부를 상기 프로세서를 통해 계산하는 단계 중에서 적어도 하나를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  5. 제1항에 있어서, 상기 CRL 모델을 상기 제어되는 애플리케이션 시스템에 피팅(fitting)하는 단계는:
    보상 제한 정책 최적화(reward constrained policy optimization : RCPO) 프로세스를 실행하는 단계를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  6. 제1항에 있어서, 상기 CRL 모델을 상기 제어되는 애플리케이션 시스템에 피팅하는 단계는:
    경사 상승법(gradient ascent method)을 사용하여 상기 제어되는 애플리케이션 시스템의 수학적 표현에 맞는 라그랑주 승수(Lagrange multiplier)를 학습하는 단계; 및
    상기 학습된 라그랑주 승수를 사용하여 상기 수학적 표현을 CRL 모델로서 공식화하는 단계를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  7. 제1항에 있어서, 상기 시스템 상태 변수의 부분집합을 자동으로 식별하는 단계는:
    상기 제어 동작 변수 및 시스템 상태 변수의 쌍과 관련된 점유 측정값(occupation measures)을 계산하는 단계;
    관심 있는 각 제어 동작 변수를 포함하고 사전 정의된 임계값을 준수하는 점유 측정값을 갖는 상기 제어 동작 변수와 상기 시스템 상태 변수의 특정 쌍을 자동으로 결정하는 단계; 및
    관심 있는 각 제어 동작 변수를 추천하도록 상기 CRL 모델을 구동하는 것에 가장 큰 영향을 미치는 상기 시스템 상태 변수의 부분집합을 결정하기 위하여 상기 제어 동작 변수와 상기 시스템 상태 변수의 특정 쌍을 분석하는 단계를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  8. 제1항에 있어서,
    상기 CMDP 모델에 대한 전환 확률 행렬을 추정하는 단계는:
    관심 있는 상기 제어 동작 변수 및 상기 시스템 상태 변수의 부분집합과 관련된 상태 공간 및 작업 공간을 분석하는 단계;
    특정 제어 동작 변수에 대한 시스템 상태 변수의 각 변화에 대한 전환 횟수를 상기 관심 있는 제어 동작 변수 및 상기 시스템 상태 변수의 부분 집합 내에서 제어 동작 변수 및 시스템 상태 변수의 전체 개수로 나누어 전환 확률을 추정하는 단계 및
    동작 의존(action-dependent) 시스템 상태 변수 또는 동작 독립(action-independent) 시스템 상태 변수 중 적어도 하나에 대해 인접 시스템 상태(neighboring system states)를 사용하는 것, 및/또는 기약성 보장 방법(irreducibility guarantee method)을 수행하는 것에 의해 상기 전환 확률 행렬을 생성하도록 보간을 수행하는 단계를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  9. 제1항에 있어서, 상기 방법은:
    상기 제어되는 애플리케이션 시스템의 동작과 관련된 복수의 상이한 예측 시나리오(a plurality of different predictive scenarios)를 분석하기 위하여 상기 프로세서를 통해 상기 LP 문제를 푸는 단계(solving)를 포함하는
    수학적 표현 차원의 자동 축소 방법.
  10. 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 동작을 지시하는 제어 시스템에 있어서, 상기 시스템은:
    상기 제어되는 애플리케이션 시스템과 관련된 제어 동작 변수 및 시스템 상태 변수에 대응하는 데이터를 수신하기 위한 인터페이스;
    프로세서; 및
    컴퓨터 판독 가능한 저장 매체를 포함하고,
    상기 컴퓨터 판독 가능한 저장 매체는 상기 프로세서가,
    상기 제어 동작 변수 및 상기 시스템 상태 변수에 대응하는 데이터를 기반으로 상기 제어되는 애플리케이션 시스템에 제한 강화 학습(constrained reinforcement learning : CRL) 모델을 피팅(fitting)하는 단계;
    관심 있는 제어 동작 변수를 선택하고, 관심 있는 각 제어 동작 변수에 대해, 상기 관심 있는 제어 동작 변수를 추천하도록 상기 CRL 모델을 구동하는 시스템 상태 변수를 식별함으로써 상기 시스템 상태 변수의 부분집합을 자동으로 식별하는 단계;
    상기 시스템 상태 변수의 부분집합을 사용하여 상기 CRL 모델의 상태 공간 차원 축소를 자동으로 수행하는 단계;
    상태 공간 차원 축소 후 상기 하나 이상의 제약 값을 갖는 상기 제어되는 애플리케이션 시스템의 제한 마르코프 의사결정 프로세스(constrained Markov decision process : CMDP) 모델에 대한 전환 확률 행렬을 추정하는 단계; 및
    상기 전환 확률 행렬, 하나 이상의 비용 목표 및 하나 이상의 제약 조건 관련 비용을 사용하여 상기 CMDP 모델을 선형 프로그래밍(LP) 문제로서 공식화하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  11. 제10항에 있어서, 상기 컴퓨터 판독 가능한 저장 매체는 상기 프로세서가,
    상기 하나 이상의 제약 값을 갖는 상기 제어되는 애플리케이션 시스템의 동작을 최적화할 하나 이상의 제어 동작을 결정하는 단계; 및
    상기 제어 시스템을 통해 상기 하나 이상의 제어 동작을 수행하는 단계를
    수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  12. 제10항에 있어서, 상기 CRL 모델은 제한 심층 강화 학습(constrained deep reinforcement learning : CDRL) 모델을 포함하는 제어 시스템.
  13. 제10항에 있어서, 상기 제어되는 애플리케이션 시스템은 폐수 처리장(WWTP)을 포함하고, 상기 하나 이상의 제약 값은 상기 WWTP에 의해 생성된 폐수의 총 질소 농도에 대한 제한 또는 총 인 농도에 대한 제한 중 적어도 하나를 포함하는
    제어 시스템.
  14. 제10항에 있어서, 상기 컴퓨터 판독 가능한 저장 매체는 상기 프로세서가 보상 제한 정책 최적화(reward constrained policy optimization : RCPO) 프로세스를 실행함으로써 상기 CRL 모델을 상기 제어되는 애플리케이션 시스템에 피팅하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  15. 제10항에 있어서,
    상기 컴퓨터 판독 가능한 저장 매체는, 상기 프로세스가,
    경사 상승법을 사용하여 상기 제어되는 애플리케이션 시스템의 수학적 표현에 맞는 라그랑주 승수를 학습하는 단계; 및
    상기 학습된 라그랑주 승수를 사용하여 상기 수학적 표현을 상기 CRL 모델로 공식화하는 단계에 의해,
    상기 CRL 모델을 상기 제어되는 애플리케이션 시스템에 피팅하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  16. 제10항에 있어서, 상기 컴퓨터 판독 가능한 저장 매체는, 상기 프로세서가,
    상기 제어 동작 변수 및 상기 시스템 상태 변수의 쌍과 관련된 점유 측정값을 계산하는 단계;
    관심 있는 각 제어 동작 변수를 포함하고 사전 정의된 임계값을 준수하는 점유 측정값을 갖는 상기 제어 동작 변수와 상기 시스템 상태 변수의 특정 쌍을 자동으로 결정하는 단계;
    관심 있는 각 제어 동작 변수를 추천하도록 상기 CRL 모델을 구동하는 것에 가장 큰 영향을 미치는 상기 시스템 상태 변수의 부분집합을 결정하기 위하여 상기 제어 동작 변수와 상기 시스템 상태 변수의 특정 쌍을 분석하는 단계에 의해,
    상기 시스템 상태 변수의 부분집합을 식별하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  17. 제10항에 있어서, 상기 컴퓨터 판독 가능한 저장 매체는, 상기 프로세서가,
    상기 관심 있는 제어 동작 변수 및 상기 시스템 상태 변수의 부분집합과 관련된 상태 공간 및 동작 공간을 분석하는 단계;
    특정 제어 동작 변수에 대한 시스템 상태 변수의 각 변화에 대한 전환 횟수를 상기 관심 있는 제어 동작 변수 및 상기 시스템 상태 변수의 부분집합 내의 제어 동작 변수 및 시스템 상태 변수의 전체 개수로 나누어 전환 확률을 추정하는 단계; 및
    동작 의존 시스템 상태 변수 또는 동작 독립 시스템 상태 변수 중 적어도 하나에 대해 인접 시스템 상태를 사용하는 것; 및/또는 기약성 보장 방법을 수행하는 것에 의해 상기 전환 확률 행렬을 생성하기 위하여 보간을 수행하는 단계에 의해
    상기 CMDP 모델에 대한 전환 확률 행렬을 추정하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  18. 제10항에 있어서, 상기 컴퓨터 판독 가능한 저장 매체는, 상기 프로세서가,
    상기 LP 문제를 해결함으로써, 상기 제어되는 애플리케이션 시스템의 동작과 관련된 복수의 상이한 예측 시나리오를 분석하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  19. 제10항에 있어서,
    상기 컴퓨터 판독 가능한 저장 매체는, 상기 프로세서가,
    상기 제어되는 애플리케이션 시스템의 시뮬레이션에 기초하여 상기 데이터의 적어도 일부를 계산하는 단계를 수행하도록 지시하는 프로그램 명령들을 저장하는
    제어 시스템.
  20. 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 수학적 표현의 차원을 자동으로 축소시키기 위한 컴퓨터 프로그램 제품에 있어서, 상기 컴퓨터 프로그램 제품은: 상기 컴퓨터 프로그램 제품은 프로그램 명령이 구현된 컴퓨터 판독 가능한 저장 매체를 포함하고, 상기 컴퓨터 판독 가능한 저장 매체는 일시적인 신호 그 자체가 아니며, 상기 프로그램 명령들은 프로세서에 의해 실행 가능하고, 상기 프로세서가,
    상기 제어되는 애플리케이션 시스템에 제한 강화 학습(constrained reinforcement learning : CRL) 모델을 피팅하는 단계 - 여기서, 상기 CRL 모델은 제어 동작 변수 및 시스템 상태 변수에 대응하는 데이터에 기초함 - ;
    관심 있는 제어 동작 변수를 선택하고, 관심 있는 각 제어 동작 변수에 대해, 상기 관심 있는 제어 동작 변수를 추천하도록 상기 CRL 모델을 구동하는 시스템 상태 변수를 식별함으로써 상기 시스템 상태 변수의 부분집합을 자동으로 식별하는 단계;
    상기 시스템 상태 변수의 부분집합을 사용하여 상기 CRL 모델의 상태 공간 차원 축소를 자동으로 수행하는 단계;
    상태 공간 차원 축소 후 상기 하나 이상의 제약 값을 갖는 제어되는 애플리케이션 시스템의 제한 마르코프 의사결정 프로세스(constrained Markov decision process : CMDP) 모델에 대한 전환 확률 행렬을 추정하는 단계; 및
    상기 전환 확률 행렬, 하나 이상의 비용 목표 및 하나 이상의 제약 관련 비용을 사용하여 상기 CMDP 모델을 선형 프로그래밍(LP) 문제로서 공식화하는 단계를
    수행하도록 하는
    컴퓨터 프로그램 제품.
KR1020227036101A 2020-05-11 2021-04-21 제어 시스템의 수학적 표현의 자동 차원 축소를 통한 제어 시스템의 제어 동작의 최적화 KR20220159406A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/871,903 US11487922B2 (en) 2020-05-11 2020-05-11 Optimizing control actions of a control system via automatic dimensionality reduction of a mathematical representation of the control system
US16/871,903 2020-05-11
PCT/IB2021/053270 WO2021229325A1 (en) 2020-05-11 2021-04-21 Optimizing control actions of a control system via automatic dimensionality reduction of a mathematical representation of the control system

Publications (1)

Publication Number Publication Date
KR20220159406A true KR20220159406A (ko) 2022-12-02

Family

ID=78412737

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227036101A KR20220159406A (ko) 2020-05-11 2021-04-21 제어 시스템의 수학적 표현의 자동 차원 축소를 통한 제어 시스템의 제어 동작의 최적화

Country Status (10)

Country Link
US (1) US11487922B2 (ko)
JP (1) JP2023524419A (ko)
KR (1) KR20220159406A (ko)
CN (1) CN115605817A (ko)
AU (1) AU2021272726B2 (ko)
CA (1) CA3174730A1 (ko)
DE (1) DE112021001521B4 (ko)
GB (1) GB2611215A (ko)
IL (1) IL296724A (ko)
WO (1) WO2021229325A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020206913B4 (de) * 2020-06-03 2022-12-22 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren und Vorrichtung zum Betreiben eines Roboters
JP2022038866A (ja) * 2020-08-27 2022-03-10 パナソニックIpマネジメント株式会社 情報処理方法、プログラム、および情報処理装置
CN114329877A (zh) * 2020-09-29 2022-04-12 鸿富锦精密电子(天津)有限公司 机台制程参数的异常监测装置、方法及可读存储介质
US11947323B2 (en) * 2021-10-16 2024-04-02 International Business Machines Corporation Reward to risk ratio maximization in operational control problems
CN115329661B (zh) * 2022-07-22 2023-06-23 上海环保(集团)有限公司 一种智能投药模型建模、智能投药体系创建、投药方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996342B2 (en) 2008-02-15 2011-08-09 International Business Machines Corporation Systems, methods and computer program products for supervised dimensionality reduction with mixed-type features and labels
US20150226049A1 (en) * 2012-08-01 2015-08-13 Schlumberger Technology Corporation Assessment, monitoring and control of drilling operations and/or geological-characteristic assessment
GB2514120B (en) 2013-05-13 2020-05-27 Grass Valley Ltd Video processing
US10332014B2 (en) * 2015-08-26 2019-06-25 International Business Machines Corporation Concise state model for operational optimization of wastewater treatment unit(s)
US11062207B2 (en) 2016-11-04 2021-07-13 Raytheon Technologies Corporation Control systems using deep reinforcement learning
CN107741738A (zh) 2017-10-20 2018-02-27 重庆华绿环保科技发展有限责任公司 一种污水处理过程监控智能预警云系统及污水处理监测预警方法
US11468310B2 (en) 2018-03-07 2022-10-11 International Business Machines Corporation Constraining actions for reinforcement learning under safety requirements
WO2020107111A1 (en) * 2018-11-26 2020-06-04 Responsive Capital Management Inc. Wealth management systems

Also Published As

Publication number Publication date
US11487922B2 (en) 2022-11-01
GB202218362D0 (en) 2023-01-18
WO2021229325A1 (en) 2021-11-18
DE112021001521B4 (de) 2024-05-29
IL296724A (en) 2022-11-01
AU2021272726A1 (en) 2022-10-27
JP2023524419A (ja) 2023-06-12
CA3174730A1 (en) 2021-11-18
GB2611215A (en) 2023-03-29
CN115605817A (zh) 2023-01-13
DE112021001521T5 (de) 2023-01-05
AU2021272726B2 (en) 2023-05-11
US20210350049A1 (en) 2021-11-11

Similar Documents

Publication Publication Date Title
KR20220159406A (ko) 제어 시스템의 수학적 표현의 자동 차원 축소를 통한 제어 시스템의 제어 동작의 최적화
Xu et al. Distributionally robust Markov decision processes
US10719637B2 (en) Globally convergent system and method for automated model discovery
US10332014B2 (en) Concise state model for operational optimization of wastewater treatment unit(s)
CN113837356A (zh) 基于融合神经网络的污水处理智能预测方法
Paulson et al. Adversarially robust Bayesian optimization for efficient auto‐tuning of generic control structures under uncertainty
Kadlec et al. Particle swarm optimization for problems with variable number of dimensions
Fisch et al. Subset multivariate collective and point anomaly detection
Zhang et al. A unified framework for adjustable robust optimization with endogenous uncertainty
Barbosa et al. Piecewise affine identification of a hydraulic pumping system using evolutionary computation
Cacciarelli et al. Robust online active learning
US10540598B2 (en) Interpolation of transition probability values in Markov decision processes
Li et al. Low latency cyberattack detection in smart grids with deep reinforcement learning
US10824119B2 (en) Intelligent energy switch
US9378469B2 (en) Optimization of system control based on solving multi-point boundary value problems
Ben-Gal et al. Sequential DOE via dynamic programming
Adler et al. Learning a discrete set of optimal allocation rules in queueing systems with unknown service rates
Nallaperuma et al. Interpreting multi-objective reinforcement learning for routing and wavelength assignment in optical networks
Valverde et al. Causal reinforcement learning based on Bayesian networks applied to industrial settings
Salahshoor et al. A novel adaptive fuzzy predictive control for hybrid systems with mixed inputs
Martin et al. On the guarantees of minimizing regret in receding horizon
Albalawi et al. Regret-based robust economic model predictive control for nonlinear dissipative systems
Provodin et al. Efficient Exploration in Average-Reward Constrained Reinforcement Learning: Achieving Near-Optimal Regret With Posterior Sampling
EP4258170A1 (en) Methods and systems for evaluating quantizability of a computation graph
Quevedo et al. Conditions for optimality of naïve quantized finite horizon control

Legal Events

Date Code Title Description
A201 Request for examination