KR102543488B1 - 시스템 상태 추정 장치 및 방법 - Google Patents
시스템 상태 추정 장치 및 방법 Download PDFInfo
- Publication number
- KR102543488B1 KR102543488B1 KR1020210050589A KR20210050589A KR102543488B1 KR 102543488 B1 KR102543488 B1 KR 102543488B1 KR 1020210050589 A KR1020210050589 A KR 1020210050589A KR 20210050589 A KR20210050589 A KR 20210050589A KR 102543488 B1 KR102543488 B1 KR 102543488B1
- Authority
- KR
- South Korea
- Prior art keywords
- state
- matrix
- linear transformation
- transformation matrix
- estimate
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0221—Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Abstract
본 발명은 시스템 상태 추정 장치 및 방법을 제공한다. 이로써, 외란에 강인하고 센서 공격/고장으로부터 자율 복원성이 있는 시스템 상태 추정(Resilient State Estimation; RSE)이 가능하다.
Description
본 발명은 시스템 상태 추정 장치 및 방법에 관한 것으로, 외란에 강인한 자율 복원 시스템 상태 추정(Resilient State Estimation; RSE) 장치 및 방법에 관한 것이다.
이하에서 기술되는 내용은 본 발명의 실시예와 관련되는 배경 정보를 제공할 목적으로 기재된 것일 뿐이고, 기술되는 내용들이 당연하게 종래기술을 구성하는 것은 아니다.
사이버 물리 시스템(Cyber Physical System; CPS)은 물리 세계와 사이버 세계의 융합 기술 연구 분야로서 센서, 액추에이터 및 제어기 등이 네트워크로 연결되는 물리 시스템의 동작을 모델링하고 상호작용을 연구한다.
한편 네트워크를 통한 센서 공격으로부터 시스템을 방어하고 외부 공격으로 인한 교란이 발생하여도 시스템의 목적을 최대한 달성할 수 있는 제어 시스템 기술이 필요하다.
이를 위하여 악의를 가진 외부 공격으로부터 복원성(Resiliency)을 갖는 제어 시스템의 설계가 필요하다.
본 발명의 일 과제는, 외란과 상관없이 시스템의 상태를 부분적으로 추정할 수 있는 부분 상태 관측기의 설계 기법을 제공하는 것이다.
본 발명의 일 과제는 부분 상태 관측기를 이용하여 전체 시스템 상태를 추정하는 시스템 상태 추정 장치 및 방법을 제공하는 것이다.
본 발명의 일 과제는, 부분 상태 관측기에서 출력된 부분 상태 정보를 조합하여 센서 공격/고장의 영향을 제거하고 시스템의 실제 상태를 추정하는 시스템 상태 추정 장치 및 방법을 제공하는 것이다.
본 발명의 목적은 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.
본 발명의 일 실시예에 따른 시스템 상태 추정 장치는, 타겟 시스템에 대한 제어 입력 및 상기 제어 입력에 따른 상기 타겟 시스템의 상태 관측치에 대응하는 상기 타겟 시스템에 배치된 복수의 센서의 출력값()에 기반하여 상기 타겟 시스템의 현재 상태에 대한 복수의 부분 상태 추정값()을 생성하는 생성부, 상기 복수의 부분 상태 추정값에 기반하여 상기 타겟 시스템의 전체 상태 추정값에 대한 복수의 후보 추정값(X(t))의 집합()을 결정하는 조합부 및 상기 복수의 후보 추정값(X(t)) 중에서 상기 타겟 시스템의 현재 상태에 대한 최종 상태 추정값()을 결정하는 결정부를 포함할 수 있다.
본 발명의 일 실시예에 따른 시스템 상태 추정 방법은, 생성부에 의해, 타겟 시스템에 대한 제어 입력 및 상기 제어 입력에 따른 상기 타겟 시스템의 상태 관측치에 대응하는 상기 타겟 시스템에 배치된 복수의 센서의 출력값()에 기반하여 상기 타겟 시스템의 현재 상태에 대한 복수의 부분 상태 추정값()을 생성하는 단계, 조합부에 의해, 상기 복수의 부분 상태 추정값에 기반하여 상기 타겟 시스템의 전체 상태 추정값에 대한 복수의 후보 추정값(X(t))의 집합()을 결정하는 단계 및 결정부에 의해 상기 복수의 후보 추정값(X(t)) 중에서 상기 타겟 시스템의 현재 상태에 대한 최종 상태 추정값()을 결정하는 단계를 포함할 수 있다.
전술한 것 외의 다른 측면, 특징, 및 이점이 이하의 도면, 청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.
본 발명의 실시예에 따르면 부분 상태 관측기의 도입에 의해 각 센서 출력으로부터 외란의 영향이 없는 추정값을 얻을 수 있다.
본 발명의 실시예에 따르면 외란과 센서 고장/공격을 제거하는 구조에서 부분 상태 관측기를 활용함으로써 상태 추정 기법의 사용 조건이 완화되어 더 넓은 범위의 시스템에 적용 가능하다.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 실시예에 따른 시스템 상태 추정 장치의 동작 환경을 개략적으로 보여주는 도면이다.
도 2는 실시예에 따른 시스템 상태 추정 장치의 구성을 개략적으로 설명하기 위한 도면이다.
도 3은 실시예에 따른 시스템 상태 추정 장치의 블록도이다.
도 4는 실시예에 따른 시스템 상태 추정 장치의 기능 블록도이다.
도 5는 실시예에 따른 시스템 상태 추정 방법의 흐름도이다.
도 2는 실시예에 따른 시스템 상태 추정 장치의 구성을 개략적으로 설명하기 위한 도면이다.
도 3은 실시예에 따른 시스템 상태 추정 장치의 블록도이다.
도 4는 실시예에 따른 시스템 상태 추정 장치의 기능 블록도이다.
도 5는 실시예에 따른 시스템 상태 추정 방법의 흐름도이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 여기에서 설명하는 실시예들에 한정되지 않는다. 이하 실시예에서는 본 발명을 명확하게 설명하기 위해서 설명과 직접적인 관계가 없는 부분을 생략하지만, 본 발명의 사상이 적용된 장치 또는 시스템을 구현함에 있어서, 이와 같이 생략된 구성이 불필요함을 의미하는 것은 아니다. 아울러, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조번호를 사용한다.
이하의 설명에서 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안되며, 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 또한, 이하의 설명에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
이하의 설명에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 실시예에 따른 시스템 상태 추정 장치의 동작 환경을 개략적으로 보여주는 도면이다.
실시예에 따른 시스템 상태 추정 장치(100)는 타겟 시스템(1000)의 상태를 실시간으로 추정한다.
타겟 시스템(1000)은 제어 입력()에 따라 일련의 작업을 수행하는 물리적 시스템을 의미한다. 예를 들어 타겟 시스템(1000)은 발전소(plant), 스마트 팩토리, 스마트 팜 등과 같은 자동화된 제어 시스템에 의해 작동하는 설비를 갖는 다양한 물리적 시스템을 포함한다.
타겟 시스템(1000)에는 다양한 센서가 배치되어 타겟 시스템(1000)의 동작 상태를 모니터링할 수 있다. 여기서 센서는 위치 센서, 온도 센서, 이미지 센서, 속도 센서, 습도 센서, 압력 센서, 모션 센서 등의 다양한 물리량을 감지할 수 있는 센서를 포함할 수 있다.
타겟 시스템(1000)은 외란의 영향을 받을 수 있다. 여기서 외란은 자동제어계의 상태를 바꾸려 하는 외적 작용/외부 요인에 의한 신호 교란을 의미한다. 외란은 타겟 시스템(1000)이 정상적인 상태에 있다면 만들어내지 않을 제어 신호를 만들어 내도록 하는 다양한 유인을 총칭한다.
또한, 타겟 시스템(1000)의 센서는 기계적인 고장 및/또는 외부로부터의 공격에 의하여 부분적으로 또는 전적으로 정상 작동하지 않을 수 있다. 이와 같은 센서의 오동작은 해당 센서의 출력값에 반영되어 타겟 시스템(1000)의 실제 현재 상태와는 상이한 센서 출력값을 유발할 수 있다.
시스템 상태 추정 장치(100)는 타겟 시스템(1000)에 대한 제어 입력()과 타겟 시스템(1000)에 배치된 센서에서 감지한 센서값, 즉 타겟 시스템(1000)의 상태와 관련된 관측치에 해당하는 센서의 출력값()을 입력 받아서 타겟 시스템(1000)의 현재 상태에 대한 추정값()을 출력할 수 있다. 특히, 실시예에 따른 시스템 상태 추정 장치(100)는 외란 및 센서 고장/공격 하에서도 타겟 시스템(1000)의 현재 상태를 정확하게 추정할 수 있다.
도 2는 실시예에 따른 시스템 상태 추정 장치의 구성을 개략적으로 설명하기 위한 도면이다.
실시예에 따른 시스템 상태 추정 장치(100)는 외란 및 센서 공격/고장이 있는 경우에도 타겟 시스템(1000)의 실제 현재 상태에 수렴하는 추정값을 얻을 수 있다.
시스템 상태 추정 장치(100)는 다음과 같은 과정을 통해 추정값에서 외란(d)과 센서 공격/고장의 영향을 제거한다.
먼저 센서 출력(y1, y2, ..., yp)에 대하여 부분 상태 관측기(Partial state Unknown Input Observer; Partial UIO)를 설계하고 이를 시스템 상태 추정에 적용하여 외란(d)의 영향이 제거된 부분 상태 추정값을 획득한다.
실시예에 의하면 외란과 센서 고장/공격을 제거하는 구조에서 부분 상태 관측기를 활용함으로써 실시예에 따른 시스템 상태 추정 기법의 사용 조건이 완화되어 더 넓은 범위의 시스템에 적용 가능하다.
그 다음으로, 각 부분 상태 관측기(Partial UIO)가 출력한 부분 상태 추정값을 조합하여 타겟 시스템(1000)의 전체 상태를 나타내는 복수의 후보 추정값을 생성한다. 이와 같은 복수의 후보 추정값 중에는 센서 공격/고장의 영향이 없는 부분 상태 추정값으로만 조합된 후보가 반드시 존재한다. 이러한 후보를 유한 공간 최적화 과정(Finite space optimization process)를 통해 찾아내고, 찾아낸 값을 타겟 시스템(1000)의 현재 상태에 대한 최종 상태 추정값()으로 반환한다.
이와 같은 유한 공간 최적화 과정에 의해 탐색 공간을 획기적으로 줄여서 연산 시간이 대폭 감소되는 효과가 있다.
이하에서 실시예에 따른 시스템 상태 추정 과정에 대하여 보다 상세히 살펴본다.
도 3은 실시예에 따른 시스템 상태 추정 장치의 블록도이다.
실시예에 따른 시스템 상태 추정 장치(100)는 프로세서(110)를 포함할 수 있다.
프로세서(110)는 일종의 중앙처리장치로서, 후술할 메모리(120)에 저장된 하나 이상의 명령어를 실행하여 시스템 상태 추정 장치(100)의 동작을 제어할 수 있다. 프로세서(110)는 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다.
프로세서(110)는 도 4를 참조하여 후술할 생성부(20), 조합부(30) 및 결정부(40)에 대응하는 하나 이상의 명령어를 포함하는 프로그램을 실행하여 시스템 상태 추정 과정을 실행할 수 있다.
프로세서(110)는 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로서, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 이에 한정되는 것은 아니다. 프로세서(110)는 하나 이상의 프로세서를 포함할 수 있다. 프로세서(110)는 적어도 하나의 코어를 포함할 수 있다.
시스템 추정 장치(100)는 메모리(120)를 포함할 수 있다.
메모리(120)는 시스템 추정 장치(100)의 실행을 위한 명령들을 저장할 수 있다. 메모리(120)는 실시예에 따른 시스템 추정 과정을 실행가능한(executable) 프로그램을 저장할 수 있다. 메모리(120)는 도 4를 참조하여 후술할 생성부(20), 조합부(30) 및 결정부(40)를 포함하는 실행가능한 프로그램을 저장할 수 있다.
프로세서(110)는 메모리(120)에 저장된 프로그램 및 명령어들에 기반하여 실시예에 따른 시스템 상태 추정을 실행할 수 있다.
메모리(120)는 내장 메모리 및/또는 외장 메모리를 포함할 수 있으며, DRAM, SRAM, 또는 SDRAM 등과 같은 휘발성 메모리, OTPROM(one time programmable ROM), PROM, EPROM, EEPROM, mask ROM, flash ROM, NAND 플래시 메모리, 또는 NOR 플래시 메모리 등과 같은 비휘발성 메모리, SSD, CF(compact flash) 카드, SD 카드, Micro-SD 카드, Mini-SD 카드, Xd 카드, 또는 메모리 스틱(memory stick) 등과 같은 플래시 드라이브, 또는 HDD와 같은 저장 장치를 포함할 수 있다. 메모리(120)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 이에 한정되는 것은 아니다.
시스템 추정 장치(100)는 버스(130)를 더 포함할 수 있다. 버스(130)는 프로세서(110) 및 메모리(120)를 연결하는 논리적/물리적 경로이다. 프로세서(110)는 버스(130)를 통해 메모리(120)에 대한 읽기/쓰기(read/write)를 수행할 수 있다.
도 4는 실시예에 따른 시스템 상태 추정 장치의 기능 블록도이다.
시스템 상태 추정 장치(100)는 타겟 시스템(1000)에 대한 제어 입력 및 제어 입력에 따른 타겟 시스템(1000)의 상태 관측치에 대응하는 타겟 시스템(1000)에 배치된 복수의 센서(10)의 출력값에 기반하여 타겟 시스템(1000)의 현재 상태에 대한 복수의 부분 상태 추정값을 생성하는 생성부(20), 복수의 부분 상태 추정값에 기반하여 타겟 시스템(1000)의 전체 상태 추정값에 대한 복수의 후보 추정값의 집합을 결정하는 조합부(30) 및 복수의 후보 추정값 중에서 타겟 시스템(1000)의 현재 상태에 대한 전체 상태 추정값을 결정하는 결정부(40)를 포함할 수 있다.
시스템 상태 추정 장치(100)는 타겟 시스템(1000)에 대한 제어 입력 및 해당 제어 입력에 따른 타겟 시스템(1000)의 상태 관측치에 대응하는 타겟 시스템(1000)에 배치된 복수의 센서(10)의 출력값에 기반하여 타겟 시스템(1000)의 현재 상태에 대한 복수의 부분 상태 추정값을 생성하는 생성부(20)를 포함할 수 있다.
일 예에서 생성부(20)는 복수의 부분 상태 관측기(Partial state Unknown Input Observer; Partial UIO)를 포함할 수 있다.
복수의 부분 상태 관측기의 각 부분 상태 관측기는 복수의 센서(10) 중 서로 다른 하나의 센서의 출력값 및 타겟 시스템(1000)에 대한 제어 입력에 기반하여 하나의 부분 상태 추정값을 생성하도록 구성될 수 있다.
일 예에서, 복수의 부분 상태 추정값 및 최종 상태 추정값은 각각 벡터로 표현되고, 각 부분 상태 추정값을 나타내는 벡터의 차원은 최종 상태 추정값을 나타내는 벡터의 차원보다 더 낮게 부여될 수 있다.
구체적인 생성부(20)의 동작에 대하여는 도 5를 참조하여 단계(S2)에서 후술한다.
일 예에서 복수의 부분 상태 관측기는 복수의 센서(10)와 일대일로 연계될 수 있다. 각 부분 상태 관측기는 복수의 센서(10) 중에서 자신과 연계된 센서의 출력값 및 타겟 시스템(1000)에 대한 제어 입력에 기반하여, 각 부분 상태 관측기의 관측기 상태 함수를 연산함으로써 복수의 부분 상태 추정값 중 하나를 생성할 수 있다.
즉, 각 부분 상태 관측기는 타겟 시스템(1000)의 동역학 상태 방정식에 기반하여 유도한 관측기 상태 함수(gi)에 기반하여 복수의 상태 추정값 중 하나를 생성하도록 설계될 수 있다.
생성부(20)는 다음의 제 1 연산 내지 제 7 연산을 수행함으로써 복수의 부분 상태 관측기를 설계한다.
생성부(20)는, 관측기 상태 함수(gi) 및 복수의 부분 상태 추정값()을 생성하기 위하여, 타겟 시스템(1000)의 동역학 상태 방정식의 특성 행렬(A) 및 상기 복수의 센서에 대한 출력 행렬(C)에 기반하여 제 1 가관측성 행렬() 및 제 2 가관측성 행렬(G)을 생성하는 제 1 연산을 수행할 수 있다.
제 1 연산에 후속하여, 생성부(20)는 제 2 가관측성 행렬(G)의 전치 행렬(GT)의 범위 공간(range space)(P) 및 제 2 가관측성 행렬(G)의 영 공간(null space)의 직교 기저부(orthonormal bases)(Q)에 기반하여 제 1 선형 변환 행렬(Mi)을 생성하는 제 2 연산을 더 수행할 수 있다.
제 2 연산에 후속하여, 생성부(20)는 제 1 선형 변환 행렬(Mi)을 통해 제 1 가관측성 행렬()을 좌표 변경(coordinate change)하여 제 2 선형 변환 행렬()을 생성하는 제 3 연산을 더 수행할 수 있다.
제 3 연산에 후속하여 생성부(20)는 제 2 선형 변환 행렬()의 행렬 블록()을 블록 대각(block diagonal)으로 만드는 제 3 선형 변환 행렬()을 통해 행렬 블록()을 좌표 변경하여 제 4 선형 변환 행렬()을 생성하는 제 4 연산을 더 수행할 수 있다.
제 5 연산에 후속하여 생성부(20)는 제 3 선형 변환 행렬에 기반하여 정의되는 제 5 선형 변환 행렬(Ni) 및 제 1 선형 변환 행렬(Mi)에 기반하여 제 6 선형 변환 행렬(Ti)을 생성하는 제 5 연산을 더 수행할 수 있다.
제 5 연산에 후속하여 생성부(20)는 제 6 선형 변환 행렬(Ti) 및 제 6 선형 변환 행렬의 역행렬()에 기반하여 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)을 생성하는 제 6 연산을 더 수행할 수 있다.
제 6 연산에 후속하여 생성부(20)는 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)에 기반하여 타겟 시스템(100)의 동역학 상태 방정식을 변환하는 제 7 연산을 더 수행할 수 있다.
부분 상태 관측기 설계를 위한 제 1 연산 내지 제 7 연산에 대하여는 도 5를 참조하여 단계(S1)에서 살펴본다.
시스템 상태 추정 장치(100)는 복수의 부분 상태 추정값에 기반하여 타겟 시스템(1000)의 전체 상태 추정값에 대한 복수의 후보 추정값의 집합을 결정하는 조합부(30)를 포함할 수 있다.
조합부(30)는 복수의 센서(10)에 포함된 센서의 개수에 기반하여 오동작 센서 개수 임계값을 결정하고, 오동작 센서 개수 임계값에 기반하여 복수의 부분 상태 추정값의 조합에 대한 경우의 수를 결정하고, 결정된 경우의 수에 따라 복수의 부분 상태 추정값 중에서 복수의 후보 추정값의 각 후보 추정값을 구성할 부분 상태 추정값을 선택하도록 구성될 수 있다.
구체적인 조합부(30)의 동작에 대하여는 도 5를 참조하여 단계(S3)에서 후술한다.
시스템 상태 추정 장치(100)는 복수의 후보 추정값 중에서 타겟 시스템(1000)의 현재 상태에 대한 전체 상태 추정값을 결정하는 결정부(40)를 포함할 수 있다.
결정부(40)는 각 후보 추정값(X(t))마다 각 후보 추정값(X(t))에 포함된 부분 상태 추정값() 및 제 1 변환 행렬(Ui)과 각 후보 추정값(X(t))을 곱한 벡터 간의 거리()에 기반하여 최종 상태 추정값()을 결정할 수 있다.
여기서 제 1 변환 행렬(Ui)은 부분 상태 추정값()과 타겟 시스템의 실제 상태값(x(t)) 간의 선형 변환에 대한 의사 역행렬에 대응한다. 일 예에서 제 1 변환 행렬(Ui)은 전술한 제 7 선형변환행렬(Ui)과 동일한 행렬일 수 있고, 수학식 9를 참조하여 후술한다.
한편, 결정부(40)는 최종적으로 결정된 전체 상태 추정값에 기반하여 타겟 시스템(1000)에 대한 제어 입력을 재생성할 수 있다.
구체적인 결정부(40)의 동작에 대하여는 도 5를 참조하여 단계(S4)에서 후술한다.
도 5는 실시예에 따른 시스템 상태 추정 방법의 흐름도이다.
실시예에 따른 시스템 상태 추정 방법은 생성부(20)에 포함된 복수의 부분 상태 관측기를 설계하는 단계(S1)를 포함할 수 있다.
단계(S1)은 타겟 시스템(1000)의 동역학 상태 방정식으로부터 복수의 부분 상태 관측기의 관측기 상태 함수를 유도하는 단계를 포함할 수 있다.
일 예에서, 복수의 부분 상태 관측기의 관측기 상태 함수를 유도하는 단계는, 제 1 연산 단계 내지 제 7 연산 단계를 포함할 수 있다.
우선, 항공기(aircraft)의 단기(short-period) 동역학은 수학식 1과 같이 표현된다.
이로부터 타겟 시스템(1000)의 동역학 상태 방정식으로 다음의 수학식 2로 표현되는 구조를 가지는 단일 입력 다중 출력 선형 시간 불변 시스템(Single Input Multiple Output Linear Time Invariant System)을 고려한다.
여기서 은 타겟 시스템(1000)의 상태, 은 타겟 시스템(1000)에 대한 제어 입력, 는 타겟 시스템(1000)에 존재하는 외란, 은 복수의 센서(10)(예를 들어 p개)의 출력값, 는 센서 공격을 나타낸다.
여기서 행렬 A는 동역학 상태 방정식(수학식 1)의 특성 행렬이고, 행렬 C는 복수의 센서(10)에 대한 출력 행렬을 나타낸다. A, B, E, C는 계수 벡터(coefficient vector)로서, 각 계수 벡터와 곱할 벡터에 맞는 적절한 차원을 가진다.
타겟 시스템(1000)에 배치된 복수의 센서(10)의 각 센서에 대한 부분 상태 관측기(Partial State Unknown Input Observer; Partial UIO)를 설계하기 위하여 수학식 2의 시스템은 다음과 같은 조건을 만족한다고 가정한다.
[조건 1]
조건 1은 타겟 시스템(1000)에 외란이 있기 위한 조건이 된다.
우선, 제 1 연산 단계는 타겟 시스템(1000)의 동역학 상태 방정식(수학식 2)의 특성 행렬(A) 및 복수의 센서(10)에 대한 출력 행렬(C)에 기반하여 제 1 가관측성 행렬() 및 제 2 가관측성 행렬(G)을 생성할 수 있다.
제 2 연산 단계는 제 2 가관측성 행렬(G)의 전치 행렬(GT)의 범위 공간(range space)(P) 및 제 2 가관측성 행렬(G)의 영 공간(null space)의 직교 기저부(orthonormal bases)(Q)에 기반하여 제 1 선형 변환 행렬(Mi)을 생성할 수 있다.
즉, 제 2 가관측성 행렬(G)로부터 행렬 를 이끌어 내는데 각각의 행은 제 2 가관측성 행렬(G)의 전치 행렬(GT)의 범위 공간(range space) 및 제 2 가관측성 행렬(G)의 전치 행렬(GT)의 영 공간(null space)의 직교 기저부(orthonormal bases)에 각각 대응한다.
이로부터 제 1 선형 변환 행렬(Mi)은 수학식 4와 같이 정의한다.
제 3 연산 단계는 수학식 5에 나타난 바와 같이 제 1 선형 변환 행렬(Mi)을 통해 제 1 가관측성 행렬()을 좌표 변경(coordinate change)하여 제 2 선형 변환 행렬()을 생성할 수 있다.
후속하여, 제 4 연산 단계는 제 2 선형 변환 행렬()의 행렬 블록()을 블록 대각(block diagonal)으로 만드는 제 3 선형 변환 행렬()을 통해 행렬 블록()을 좌표 변경하여 제 4 선형 변환 행렬()을 생성할 수 있다.
제 5 연산 단계는 제 3 선형 변환 행렬()에 기반하여 정의되는 제 5 선형 변환 행렬(Ni) 및 제 1 선형 변환 행렬(Mi)에 기반하여 제 6 선형 변환 행렬(Ti)을 생성할 수 있다.
일 예에서 제 6 선형 변환 행렬(Ti)을 다음의 수학식 7과 같이 정의한다.
여기서 제 5 선형 변환 행렬(Ni)은 다음의 수학식 8에 따라 정의된다.
제 6 연산 단계는 제 6 선형 변환 행렬(Ti) 및 상기 제 6 선형 변환 행렬의 역행렬()에 기반하여 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)을 생성할 수 있다.
제 7 연산 단계는 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)에 기반하여 수학식 2의 타겟 시스템(1000)에 대한 동역학 상태 방정식을 변환할 수 있다.
즉, 수학식 9의 제 7 선형 변환 행렬(Ui)을 통해 수학식 2의 A,B,E,ci를 다음과 같이 변환할 수 있다.
조건 1 하에서 수학식 9의 행렬을 활용하여 부분 상태 관측기(Partial state UIO)를 다음과 같이 설계할 수 있다.
수학식 12에서 Fi의 모든 고윳값의 실수부가 음수가 되도록 Ki,1을 설정하며, 이와 같은 파라미터(parameter) 설정은 항상 가능하다(수학적으로 증명 가능).
수학식 2의 타겟 시스템(1000)의 상태를 제 6 선형 변환 행렬(Ti)로 변환한 벡터를 라고 정의한다. zi(t)는 타겟 시스템(1000)의 실제 현재 상태 x(t) 보다 차원(dimension)이 더 작으므로 타겟 시스템(1000)의 일부 상태 정보를 포함하게 됨을 알 수 있다.
수학식 5 내지 수학식 12에 따라 부분 상태 관측기(Partial State UIO)를 설계하면, zi(t)와 부분 상태 관측기가 관측기 상태(gi(t))에 기반하여 추정한 상태 추정값()간의 추정 오차는 다음의 수학식 13과 같이 표현할 수 있다.
수학식 13의 해를 구하면,
i번째 센서에 공격이 들어오지 않는 상황을 고려하면,
따라서, 전술한 수학식에 따른 실시예에 따른 부분 상태 관측기는 외란의 영향이 없는 부분 상태 추정값을 출력할 수 있다.
실시예에 따른 시스템 상태 추정 방법은 생성부(20)에 의해, 타겟 시스템(1000)에 대한 제어 입력 및 제어 입력에 따른 타겟 시스템(1000)의 상태 관측치에 대응하는 타겟 시스템(1000)에 배치된 복수의 센서(10)의 출력값()에 기반하여 타겟 시스템(1000)의 현재 상태에 대한 복수의 부분 상태 추정값()을 생성하는 단계(S2), 조합부(30)에 의해, 복수의 부분 상태 추정값에 기반하여 타겟 시스템(1000)의 전체 상태 추정값에 대한 복수의 후보 추정값())의 집합()을 결정하는 단계(S3) 및 결정부(40)에 의해 복수의 후보 추정값() 중에서 타겟 시스템(1000)의 현재 상태에 대한 최종 상태 추정값()을 결정하는 단계(S4)를 포함할 수 있다.
단계(S2)에서 생성부(20)는, 타겟 시스템(1000)에 대한 제어 입력 및 제어 입력에 따른 타겟 시스템(1000)의 상태 관측치에 대응하는 타겟 시스템(1000)에 배치된 복수의 센서(10)의 출력값()에 기반하여 타겟 시스템(1000)의 현재 상태에 대한 복수의 부분 상태 추정값()을 생성할 수 있다.
생성부(20)는 단계(S1)에서 설계된 복수의 부분 상태 관측기를 포함할 수 있다. 일 예에서, 복수의 부분 상태 관측기는 타겟 시스템(1000)에 배치된 복수의 센서(10)와 일대일로 연계될 수 있다. 즉, 생성부(20)는 복수의 센서의 개수만큼의 복수의 부분 상태 관측기를 포함할 수 있다.
단계(S2)에서 생성부(20)는 프로세서(110)에 의해 실행되어, 복수의 센서(10)의 각 센서의 출력값(yi) 및 각 센서와 연계된 부분 상태 관측기의 관측기 상태(gi)에 기반하여, 타겟 시스템(1000)의 각 부분 상태 추정값()을 결정할 수 있다.
일 예에서 생성부(20)에 의해 생성된 복수의 부분 상태 추정값 및 결정부(40)에 의해 결정된 최종 상태 추정값은 각각 벡터로 표현되고, 각 부분 상태 추정값을 나타내는 벡터의 차원은 상기 최종 상태 추정값을 나타내는 벡터의 차원보다 더 낮다.
예를 들어, 타겟 시스템(1000)의 전체 상태 정보가 n 차원 벡터인 경우, 부분 상태 추정값은 m차원 벡터이고, m은 n 보다 작은 양의 정수일 수 있다.
즉, 부분 상태 추정값은 타겟 시스템(1000)의 전체 상태 정보 중 일부 상태 정보를 포함할 수 있다.
단계(S3)에서 조합부(30)는 단계(S2)에서 생성된 복수의 부분 상태 추정값()에 기반하여 타겟 시스템(1000)의 전체 상태 추정값에 대한 복수의 후보 추정값(X(t))의 집합()을 결정할 수 있다.
설명을 위하여 수학적 표현을 소개한다. 임의의 행렬 에 대하여, 으로 정의한다. 또한, 집합 의 부분집합 이 존재한다. 이 때, 는 부분집합 에 포함되지 않은 숫자 i로 표현된 Mi를 M에서 제거한 행렬로 정의한다. 또한, 집합 의 크기를 로 표현한다.
단계(S3)에서 조합부(30)는 전술한 단계(S2)에서 각 부분 상태 관측기로부터 얻은 부분 상태 추정값()을 조합하여 타겟 시스템(1000)의 실제 현재 상태(x(t))에 대한 복수의 후보 추정값(X(t))의 집합을 생성한다.
여기서 p와 q는 각각 타겟 시스템(1000)에 배치된 센서의 개수 및 공격 당한 센서의 개수를 나타낸다. 여기서 행렬 는 수학식 16의 행렬 에서 집합 에 들어가는 인덱스에 해당하는 Ui들만 남기고 나머지는 제거한 행렬이다.
일 예에서, 단계(S3)에서 조합부(30)는 복수의 센서(10)의 개수에 기반하여 오동작 센서 개수 임계값을 결정하고 결정된 오동작 센서 개수 임계값에 기반하여 복수의 부분 상태 추정값의 조합에 대한 경우의 수를 결정할 수 있다.
예를 들어, 센서가 4개(p=4)인 경우, 조합부(30)는 오동작 센서 개수 임계값을 1개(q=1)로 결정할 수 있다. 조합부(30)는 전체 센서 4개 중에서 순서없이 3개(즉, 전체 센서 개수에서 오동작 센서 개수 임계값을 뺀 값; p-q)를 선택하는 경우의 수(combination)에 따라 복수의 부분 상태 추정값의 조합에 대한 경우의 수를 4로 결정할 수 있다.
조합부(30)는 결정된 경우의 수에 따라 복수의 부분 상태 추정값 중에서 복수의 후보 추정값의 각 후보 추정값을 구성할 부분 상태 추정값을 선택할 수 있다.
조합부(30)는 전체 4개의 센서 중에서 순서없이 3개의 센서를 선택하는 경우의 수에 따라 각 후보 추정값을 구성할 부분 상태 추정값을 선택할 수 있다.
예를 들어, 조합부(30)는 4개의 부분 상태 추정값 중에서 순서없이 3개를 선택하는 방법으로 3개의 부분 상태 추정값의 조합을 결정할 수 있다.
즉, 4개의 부분 상태 추정값을 Z1, Z2, Z3, Z4라고 하면, 제 1 조합(Z1, Z2, Z3), 제 2 조합(Z1, Z2, Z4), 제 3 조합(Z1, Z3, Z4) 및 제 4 조합(Z2, Z3, Z4)을 결정할 수 있다.
이를 위하여 결정부(40)는 단계(S4)에서 단계(S3)에서 결정된 복수의 후보 추정값(X(t))의 각 후보 추정값 중 추정오차가 최소인 후보 추정값을 최종 상태 추정값()으로 선택할 수 있다.
단계(S4)는 복수의 후보 추정값 중에서 타겟 시스템(1000)의 실제 상태를 나타내는 후보 추정값을 골라내는 과정이다. 이는 도 2를 참조하여 유한 공간 l2 최적화 과정(Finite Space l2 optimization process)에 대응한다.
최적화 과정은 다음과 같은 수학식 18로 표현할 수 있다.
[조건 2]
조건 2를 만족하는 경우, 즉 부분 집합 람다()중 원소의 개수가 p-2q보다 큰 모든 부분 집합 람다에 대해 상응하는 가 full column rank이면, 수학식 18의 최적화 과정에서 선정된 후보 상태 ()는 센서 공격의 영향을 받지 않은 것이 된다.
따라서 주어진 후보 추정값()이 타겟 시스템(1000)의 실제 상태()를 나타내는 후보라면, 최소 p-q개의 부분 상태 추정값()에 대해 는 시간이 지남에 따라 0으로 수렴한다. 이와 같은 후보 추정값에 대하여 수학식 18의 부등식을 만족하는 최대 q개가 고장/공격 하에 있는 센서가 된다.
실제 상태와 다른 후보 추정값()은 모든 부분 상태 추정값()에 대해서 가 0으로 수렴하지 않을 수도 있다. 실제와 다른 후보 추정값에 대해서 0이 될 수 있는 이유는 행렬 Ui가 역행렬이 있는 정방행렬이 아니기 때문이다. 그러나 조건 2가 성립하면 수학식 18의 최적화의 해는 항상 타겟 시스템(1000)의 실제 상태를 나타내게 된다. 따라서 수학식 18의 결과는 센서 공격과 외란의 영향이 포함되지 않은 후보 추정값 이 된다.
즉, 단계(S4)에서 결정부(40)는 최종 상태 추정값()을 결정하기 위하여, 각 후보 추정값(X(t))마다 각 후보 추정값(X(t))에 포함된 부분 상태 추정값() 및 제 1 변환 행렬(Ui)과 각 후보 추정값(X(t))을 곱한 벡터 간의 거리()에 기반하여 최종 상태 추정값()을 결정하게 된다(수학식 18 참조).
여기서 제 1 변환 행렬(Ui)은 부분 상태 추정값()과 타겟 시스템의 실제 상태값(x(t)) 간의 선형 변환에 대한 의사 역행렬에 대응한다. 일 예에서 제 1 변환 행렬(Ui)은 전술한 수학식 9를 참조하여 제 7 선형변환행렬(Ui)과 동일한 행렬일 수 있다.
한편, 센서 공격과 외란의 영향이 포함되지 않은 후보 추정값 X(t)과 실제 상태 간의 추정오차를 보이기 위해 다음을 정의한다.
이에 따라 추정 오차는 다음의 수학식과 같이 전개된다.
이를 통해 수학식 21을 다시 쓰면, 수학식 22가 된다.
수학식 23은 지수함수에 의하여 시간이 지남에 따라 0으로 수렴하게 된다.
따라서, 실시예에 따른 시스템 상태 추정 장치(100)는 센서 고장/공격 및 외란에 상관없이 타겟 시스템(1000)의 실제 상태에 수렴하는 상태 추정값을 제공할 수 있다.
한편, 결정부(40)는 최종 상태 추정값에 기반하여 타겟 시스템(1000)에 대한 제어 입력을 재생성할 수 있다.
이상 설명된 본 발명에 따른 실시예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, SSD(Solid State Drive), SDD(Silicon Disk Drive), 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
이상 설명된 본 발명의 실시예에 대한 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 청구범위에 의하여 나타내어지며, 청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
1000: 타겟 시스템
100: 시스템 상태 추정 장치
110: 프로세서
120: 메모리
100: 시스템 상태 추정 장치
110: 프로세서
120: 메모리
Claims (17)
- 타겟 시스템에 대한 제어 입력 및 상기 제어 입력에 따른 상기 타겟 시스템의 상태 관측치에 대응하는 상기 타겟 시스템에 배치된 복수의 센서의 출력값()에 기반하여 상기 타겟 시스템의 현재 상태에 대한 복수의 부분 상태 추정값()을 생성하는 생성부;
상기 복수의 부분 상태 추정값에 기반하여 상기 타겟 시스템의 전체 상태 추정값에 대한 복수의 후보 추정값(X(t))의 집합()을 결정하는 조합부; 및
상기 복수의 후보 추정값(X(t)) 중에서 상기 타겟 시스템의 현재 상태에 대한 최종 상태 추정값()을 결정하는 결정부를 포함하고,
상기 생성부는 복수의 부분 상태 관측기(Partial state Unknown Input Observer; Partial UIO)를 포함하고,
상기 복수의 부분 상태 관측기의 각 부분 상태 관측기는 상기 복수의 센서 중 서로 다른 하나의 센서의 출력값 및 상기 제어 입력에 기반하여 하나의 부분 상태 추정값()을 생성하며, 상기 타겟 시스템의 동역학 상태 방정식에 기반하여 유도한 관측기 상태(gi)에 기반하여 상기 복수의 부분 상태 추정값() 중 하나를 생성하고,
상기 생성부는,
상기 관측기 상태(gi) 및 상기 복수의 부분 상태 추정값()을 생성하기 위하여,
상기 동역학 상태 방정식의 특성 행렬(A) 및 상기 복수의 센서에 대한 출력 행렬(C)에 기반하여 제 1 가관측성 행렬() 및 제 2 가관측성 행렬(G)을 생성하는 제 1 연산,
상기 제 2 가관측성 행렬(G)의 전치 행렬(GT)의 범위 공간(range space)(P) 및 상기 제 2 가관측성 행렬(G)의 영 공간(null space)의 직교 기저부(orthonormal bases)(Q)에 기반하여 제 1 선형 변환 행렬(Mi)을 생성하는 제 2 연산,
상기 제 1 선형 변환 행렬(Mi)을 통해 상기 제 1 가관측성 행렬()을 좌표 변경(coordinate change)하여 제 2 선형 변환 행렬()을 생성하는 제 3 연산,
상기 제 2 선형 변환 행렬()의 행렬 블록()을 블록 대각(block diagonal)으로 만드는 제 3 선형 변환 행렬()을 통해 상기 행렬 블록()을 좌표 변경하여 제 4 선형 변환 행렬()을 생성하는 제 4 연산,
상기 제 3 선형 변환 행렬에 기반하여 정의되는 제 5 선형 변환 행렬(Ni) 및 상기 제 1 선형 변환 행렬(Mi)에 기반하여 제 6 선형 변환 행렬(Ti)을 생성하는 제 5 연산,
상기 제 6 선형 변환 행렬(Ti) 및 상기 제 6 선형 변환 행렬의 역행렬()에 기반하여 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)을 생성하는 제 6 연산, 및
상기 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)에 기반하여 상기 동역학 상태 방정식을 변환하는 제 7 연산
을 수행하도록 구성되는,
시스템 상태 추정 장치.
- 삭제
- 삭제
- 삭제
- 생성부에 의해, 타겟 시스템에 대한 제어 입력 및 상기 제어 입력에 따른 상기 타겟 시스템의 상태 관측치에 대응하는 상기 타겟 시스템에 배치된 복수의 센서의 출력값()에 기반하여 상기 타겟 시스템의 현재 상태에 대한 복수의 부분 상태 추정값()을 생성하는 단계;
조합부에 의해, 상기 복수의 부분 상태 추정값()에 기반하여 상기 타겟 시스템의 전체 상태 추정값에 대한 복수의 후보 추정값(X(t))의 집합()을 결정하는 단계; 및
결정부에 의해 상기 복수의 후보 추정값(X(t)) 중에서 상기 타겟 시스템의 현재 상태에 대한 최종 상태 추정값()을 결정하는 단계를 포함하고,
상기 생성부는 복수의 부분 상태 관측기를 포함하고,
상기 복수의 부분 상태 관측기를 설계하는 단계를 더 포함하며,
상기 설계하는 단계는, 상기 타겟 시스템의 동역학 상태 방정식으로부터 상기 복수의 부분 상태 관측기의 관측기 상태(gi)를 유도하는 단계를 포함하고,
상기 유도하는 단계는,
상기 동역학 상태 방정식의 특성 행렬(A) 및 상기 복수의 센서에 대한 출력 행렬(C)에 기반하여 제 1 가관측성 행렬() 및 제 2 가관측성 행렬(G)을 생성하는 제 1 연산 단계,
상기 제 2 가관측성 행렬(G)의 전치 행렬(GT)의 범위 공간(range space)(P) 및 상기 제 2 가관측성 행렬(G)의 영 공간(null space)의 직교 기저부(orthonormal bases)(Q)에 기반하여 제 1 선형 변환 행렬(Mi)을 생성하는 제 2 연산 단계,
상기 제 1 선형 변환 행렬(Mi)을 통해 상기 제 1 가관측성 행렬()을 좌표 변경(coordinate change)하여 제 2 선형 변환 행렬()을 생성하는 제 3 연산 단계,
상기 제 2 선형 변환 행렬()의 행렬 블록()을 블록 대각(block diagonal)으로 만드는 제 3 선형 변환 행렬()을 통해 상기 행렬 블록()을 좌표 변경하여 제 4 선형 변환 행렬()을 생성하는 제 4 연산 단계,
상기 제 3 선형 변환 행렬에 기반하여 정의되는 제 5 선형 변환 행렬(Ni) 및 상기 제 1 선형 변환 행렬(Mi)에 기반하여 제 6 선형 변환 행렬(Ti)을 생성하는 제 5 연산 단계,
상기 제 6 선형 변환 행렬(Ti) 및 상기 제 6 선형 변환 행렬의 역행렬()에 기반하여 제 7 선형 변환 행렬(Ui) 및 제 8 선형 변환 행렬(Vi)을 생성하는 제 6 연산 단계, 및
상기 제 7 선형 변환 행렬Ui) 및 제 8 선형 변환 행렬(Vi)에 기반하여 상기 동역학 상태 방정식을 변환하는 제 7 연산 단계
을 포함하는,
시스템 상태 추정 방법.
- 삭제
- 삭제
- 삭제
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210050589A KR102543488B1 (ko) | 2021-04-19 | 2021-04-19 | 시스템 상태 추정 장치 및 방법 |
US17/555,705 US20220353277A1 (en) | 2021-04-19 | 2021-12-20 | Apparatus and method for estimating system state |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210050589A KR102543488B1 (ko) | 2021-04-19 | 2021-04-19 | 시스템 상태 추정 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220144206A KR20220144206A (ko) | 2022-10-26 |
KR102543488B1 true KR102543488B1 (ko) | 2023-06-13 |
Family
ID=83785318
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210050589A KR102543488B1 (ko) | 2021-04-19 | 2021-04-19 | 시스템 상태 추정 장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220353277A1 (ko) |
KR (1) | KR102543488B1 (ko) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021026755A (ja) | 2019-08-02 | 2021-02-22 | 株式会社日立製作所 | 産業用コントローラのデータ完全性を保証するためのaiの使用 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6738682B1 (en) * | 2001-09-13 | 2004-05-18 | Advances Micro Devices, Inc. | Method and apparatus for scheduling based on state estimation uncertainties |
KR101926257B1 (ko) * | 2017-05-15 | 2018-12-06 | 두산중공업 주식회사 | 이상 신호 복원 시스템 및 방법 |
WO2018229898A1 (ja) * | 2017-06-14 | 2018-12-20 | 三菱電機株式会社 | 状態推定装置 |
KR20190059024A (ko) | 2017-11-22 | 2019-05-30 | 재단법인대구경북과학기술원 | 자율복원 상태추정 시스템 및 방법 |
US11119462B2 (en) * | 2019-10-08 | 2021-09-14 | Global Energy Interconnection Research Institute (Gelrina) | Systems and methods for hybrid dynamic state estimation |
-
2021
- 2021-04-19 KR KR1020210050589A patent/KR102543488B1/ko active IP Right Grant
- 2021-12-20 US US17/555,705 patent/US20220353277A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021026755A (ja) | 2019-08-02 | 2021-02-22 | 株式会社日立製作所 | 産業用コントローラのデータ完全性を保証するためのaiの使用 |
Also Published As
Publication number | Publication date |
---|---|
US20220353277A1 (en) | 2022-11-03 |
KR20220144206A (ko) | 2022-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111670415B (zh) | 用于控制系统的预测控制器、车辆及方法 | |
Han et al. | Reduced-order observer based fault estimation and fault-tolerant control for switched stochastic systems with actuator and sensor faults | |
Tohidi et al. | Fault tolerant control design using adaptive control allocation based on the pseudo inverse along the null space | |
Demetriou | Using unknown input observers for robust adaptive fault detection in vector second-order systems | |
Park | Estimation strategies for fault isolation of linear systems with disturbances | |
Hassanabadi et al. | Robust fault detection of singular LPV systems with multiple time-varying delays | |
Bai et al. | Multi-innovation gradient iterative locally weighted learning identification for a nonlinear ship maneuvering system | |
Witczak et al. | Unknown input observers and filters | |
Lungu et al. | Design of full‐order observers for systems with unknown inputs by using the eigenstructure assignment | |
KR102543488B1 (ko) | 시스템 상태 추정 장치 및 방법 | |
JP7265965B2 (ja) | 機械学習装置および機械学習方法 | |
WO2018198267A1 (ja) | 因果関係学習方法、プログラム、装置および異常分析システム | |
KR20210104284A (ko) | 구조진동 가상센서 장치 및 그 동작 방법 | |
Zhirabok et al. | Robust virtual sensors design for linear and nonlinear systems under external disturbances | |
KR20190059024A (ko) | 자율복원 상태추정 시스템 및 방법 | |
Nazari et al. | Invariant-set-based fault tolerant control using virtual sensors | |
KR20230079804A (ko) | 상태 전이를 선형화하는 강화 학습에 기반한 전자 장치 및 그 방법 | |
Huang et al. | Sliding mode state and fault estimation for decentralized systems | |
KR101547025B1 (ko) | 이동 기기의 위치를 예측하는 방법, 및 장치 | |
Krokavec et al. | On Some Ways to Implement State–Multiplicative Fault Detection in Discrete–Time Linear Systems | |
Luzar et al. | Neural-network based robust predictive fault-tolerant control for multi-tank system | |
KR102250354B1 (ko) | 선박의 지연 가능성 판단 방법 및 장치 | |
KR102477587B1 (ko) | Ugv 모니터링 방법 및 장치 | |
KR20230116583A (ko) | 뉴럴 네트워크 제어 방법 및 장치 | |
Pérez Estrada et al. | Generalized dynamic observer design for discrete LPV systems with parameter dependent Lyapunov functions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |