KR20220085827A - Prediction systems, information processing devices and recording media - Google Patents
Prediction systems, information processing devices and recording media Download PDFInfo
- Publication number
- KR20220085827A KR20220085827A KR1020227017702A KR20227017702A KR20220085827A KR 20220085827 A KR20220085827 A KR 20220085827A KR 1020227017702 A KR1020227017702 A KR 1020227017702A KR 20227017702 A KR20227017702 A KR 20227017702A KR 20220085827 A KR20220085827 A KR 20220085827A
- Authority
- KR
- South Korea
- Prior art keywords
- prediction
- model
- predictive model
- section
- determining
- Prior art date
Links
Images
Classifications
-
- 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
-
- 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/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/024—Quantitative history assessment, e.g. mathematical relationships between available data; Functions therefor; Principal component analysis [PCA]; Partial least square [PLS]; Statistical classifiers, e.g. Bayesian networks, linear regression or correlation analysis; Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- 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
- G05B13/04—Adaptive 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/048—Adaptive 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
-
- 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
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- 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
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
- G05B19/41875—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by quality surveillance of production
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32191—Real time statistical process monitoring
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32194—Quality prediction
Abstract
예측 시스템의 예측 모델 생성부는, 예측 모델의 생성에 이용되는 학습용 샘플에 관련되는 복수의 상태치 중, 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단과, 탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단과, 결정된 설명 변수 및 결정된 구간의 조건하에서, 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단을 포함한다.The predictive model generating unit of the predictive system includes: means for determining one or a plurality of state values as explanatory variables from among a plurality of state values related to the learning sample used for generating the predictive model, based on the importance to the learning sample; Means for determining a section to be used for prediction by sequentially varying the sections included in the section and evaluating the prediction precision by the determined explanatory variable, and under the conditions of the determined explanatory variable and the determined section, the model parameters defining the predictive model and means for determining a model parameter for defining the predictive model by evaluating a plurality of indices with respect to the predictive model defined by each model parameter, sequentially and differently.
Description
본 발명은, 제어 대상에 생기는 변화를 예측하는 예측 시스템, 예측 시스템을 구성하는 정보 처리 장치, 및 정보 처리 장치를 실현하기 위한 정보 처리 프로그램을 격납한 기록 매체에 관한 것이다.The present invention relates to a prediction system for predicting a change occurring in a control target, an information processing apparatus constituting the prediction system, and a recording medium storing an information processing program for realizing the information processing apparatus.
다양한 생산 현장에서, 어떠한 이유에 의해, 본래와는 다른 변화나 통상과는 다른 변화가 생기는 일이 있다. 이와 같은 변화의 발생을 사전에 예측하여, 어떠한 대처를 취할 수 있으면, 생산 설비의 성능 유지나 제품의 품질 확보 등에 유익하다.In various production sites, for some reason, an unusual change or an unusual change may occur. If the occurrence of such a change can be predicted in advance and some countermeasures can be taken, it is beneficial for maintaining the performance of production facilities, securing product quality, and the like.
이와 같은 사전의 예측에 관해, 예를 들면, 특개2009-237832호 공보(특허 문헌 1)는, 모든 기간·계절에서 수요 예측 정밀도의 향상이 가능한 가변적 예측 모델 구축 방법을 개시한다. 특허 문헌 1에 개시되는 가변적 예측 모델 구축 방법은, 축적한 시계열 데이터에 보정을 가한 학습 데이터를 이용하여, 7∼70일의 복수의 학습 기간마다 적절한 예측 모델을 구축하고, 각 학습 기간의 모델화 정밀도 평가를 행함으로써, 예측 정밀도가 가장 높은 최적의 학습 기간, 예측 모델을 선택하는 처리를 채용한다.Regarding such prior prediction, for example, Japanese Patent Application Laid-Open No. 2009-237832 (Patent Document 1) discloses a method for constructing a variable prediction model capable of improving the precision of demand prediction in all periods and seasons. The variable predictive model construction method disclosed in
그렇지만, 상술한 특허 문헌 1에 개시되는 가변적 예측 모델 구축 방법에서는, 복수의 학습 기간마다 적절한 예측 모델을 구축한 다음, 각 학습 기간의 모델화 정밀도를 평가할 필요가 있어, 최적의 학습 기간, 예측 모델을 선택하기 위해 필요로 하는 공수가 크다는 과제가 있다.However, in the variable predictive model construction method disclosed in
본 발명은, 예측 모델을 보다 효율적으로 생성할 수 있는 수법을 제공하는 것이다.An object of the present invention is to provide a method capable of generating a predictive model more efficiently.
본 발명의 한 예에 따른 예측 시스템은, 제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부와, 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부와, 예측 모델을 미리 결정하는 예측 모델 생성부를 포함한다. 예측 모델 생성부는, 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단과, 탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단과, 결정된 설명 변수 및 결정된 구간의 조건하에서, 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단을 포함한다.A prediction system according to an example of the present invention includes a control calculation unit that executes a control operation for controlling a control target, and inputting performance values including one or a plurality of state values among the state values that the control calculation unit can refer to into a prediction model. It includes a predictive value obtaining unit to be acquired, and a predictive model generating unit for determining a predictive model in advance. The predictive model generating unit includes means for determining one or a plurality of state values as explanatory variables from among the plurality of state values associated with the learning sample used for generating the predictive model, based on the importance to the learning sample, and included in the search section Means for determining an interval used for prediction by sequentially different intervals to be used for prediction by evaluating prediction precision by the determined explanatory variable, and under the conditions of the determined explanatory variable and the determined interval, the model parameters defining the predictive model are sequentially different and means for determining a model parameter for defining the predictive model by evaluating a plurality of indices with respect to the predictive model defined by each model parameter.
이 구성에 의하면, 복수의 지표를 평가한 예측 모델을 용이하게 생성할 수 있다.According to this structure, the predictive model which evaluated a some parameter|index can be produced|generated easily.
예측 모델 생성부는, 각 샘플로부터 산출되는 1 또는 복수의 특징량을 이용한 클러스터링에 의해, 복수의 샘플 중 학습용 샘플로서 이용되는 샘플을 선택하는 수단을 또한 포함하고 있어도 좋다. 이 구성에 의하면, 서로 유사한 샘플이 다수 학습용 샘플로서 선택되는 것을 방지할 수 있다.The predictive model generation unit may further include means for selecting a sample to be used as a learning sample from among a plurality of samples by clustering using one or a plurality of feature quantities calculated from each sample. According to this configuration, it is possible to prevent a plurality of samples similar to each other from being selected as samples for learning.
예측 모델 생성부는, 학습용 샘플 및 관련되는 복수의 상태치에 결정목(決定木) 알고리즘을 적용함으로써, 각 상태치의 중요도를 산출하도록 해도 좋다. 이 구성에 의하면, 결정목 알고리즘을 적용함으로써, 어느 상태치가 예측 모델에 알맞은 것인지를 용이하게 판단할 수 있다.The predictive model generation unit may calculate the importance of each state value by applying a decision tree algorithm to the learning sample and a plurality of related state values. According to this configuration, by applying the decision tree algorithm, it is possible to easily determine which state value is suitable for the prediction model.
예측 모델 생성부는, 탐색 구간에 포함되는 구간의 길이 및 위치의 적어도 일방을 다르게 한 각 패턴에서 생성되는 예측 모델의 성능을 각각 평가하도록 해도 좋다. 이 구성에 의하면, 탐색 구간에 포함되는 알맞은 구간을 용이하게 찾을 수 있다.The predictive model generating unit may evaluate the performance of the predictive model generated from each pattern in which at least one of the length and position of the section included in the search section is different. According to this configuration, it is possible to easily find a suitable section included in the search section.
예측 모델 생성부는, 예측 모델의 모델 파라미터를 고정한 다음, 예측에 이용하는 구간을 탐색하도록 해도 좋다. 이 구성에 의하면, 일단 예측 모델의 모델 파라미터를 고정함으로써, 탐색에 관한 처리량을 저감할 수 있다.The predictive model generation unit may search for a section used for prediction after fixing the model parameters of the predictive model. According to this configuration, by temporarily fixing the model parameters of the predictive model, it is possible to reduce the amount of processing related to the search.
예측 모델 생성부는, 예측에 이용하는 구간을 변경하기 위한, 유저 조작을 접수하는 제1 유저 인터페이스를 제공하는 수단을 또한 포함하고 있어도 좋다. 이 구성에 의하면, 유저는, 확인하면서 결정된 구간의 미조정 등이 가능해진다.The predictive model generation unit may further include means for providing a first user interface that accepts a user operation for changing a section used for prediction. According to this configuration, the user can fine-tune the determined section while confirming, and the like.
복수의 지표는, 예측 정밀도, 모델 사이즈, 처리 속도 중 적어도 하나를 포함하도록 해도 좋다. 이 구성에 의하면, 운용 시에 중요시되는 요소가 지표에 포함됨으로써, 운용을 고려하여 최적의 예측 모델을 생성할 수 있다.The plurality of indexes may include at least one of prediction accuracy, model size, and processing speed. According to this configuration, an optimal predictive model can be generated in consideration of the operation by including an important factor in the index in the operation.
예측 모델 생성부는, 복수의 지표를 표시하는 제2 유저 인터페이스를 제공하는 수단을 또한 포함하도록 해도 좋다. 이 구성에 의하면, 유저는, 결정된 복수의 지표를 일견하여 파악할 수 있다.The predictive model generating unit may further include means for providing a second user interface for displaying a plurality of indices. According to this structure, a user can grasp|ascertain at a glance a plurality of determined indexes.
본 발명의 다른 한 예에 따르면, 제어 장치에 접속되는 정보 처리 장치가 제공된다. 제어 장치는, 제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부와, 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부를 포함한다. 정보 처리 장치는, 예측 모델을 미리 결정하는 예측 모델 생성부로서, 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단과, 탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단과, 결정된 설명 변수 및 결정된 구간의 조건하에서, 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단을 포함한다.According to another example of the present invention, an information processing apparatus connected to a control apparatus is provided. The control device includes a control arithmetic unit that executes a control operation for controlling a control target, and a predicted value acquisition unit that acquires a predicted value by inputting an performance value comprising one or more state values among the state values that the control arithmetic unit can refer to into a predictive model. . The information processing device is a predictive model generator that determines a predictive model in advance, and among a plurality of state values associated with a learning sample used for generating the predictive model, based on the importance to the learning sample, one or a plurality of state values A means for determining as an explanatory variable; a means for determining a section to be used for prediction by sequentially differentiating the sections included in the search section and evaluating the prediction precision by the determined explanatory variable; , means for determining a model parameter for defining the predictive model by sequentially varying the model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter.
본 발명의 또 다른 한 예에 따르면, 제어 장치에 접속되는 컴퓨터에서 실행되는 정보 처리 프로그램이 제공된다. 제어 장치는, 제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부와, 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부를 포함한다. 정보 처리 프로그램은, 예측 모델을 미리 결정하기 위한 처리로서, 컴퓨터에, 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 스텝과, 탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 스텝과, 결정된 설명 변수 및 결정된 구간의 조건하에서, 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 스텝을 실행시킨다.According to another example of the present invention, there is provided an information processing program that is executed on a computer connected to a control device. The control device includes a control arithmetic unit that executes a control operation for controlling a control target, and a predicted value acquisition unit that acquires a predicted value by inputting an performance value comprising one or more state values among the state values that the control arithmetic unit can refer to into a predictive model. . The information processing program is a process for pre-determining a predictive model, and, among a plurality of state values associated with the learning sample used for generation of the predictive model, in the computer, based on the importance to the learning sample, one or a plurality of states a step of determining the value as an explanatory variable, determining a section to be used for prediction by sequentially differentiating the sections included in the search section and evaluating the prediction precision by the determined explanatory variable, and the determined explanatory variable and the conditions of the determined section In the following, a step of determining a model parameter for defining a predictive model is executed by sequentially differentiating the model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter.
본 발명에 의하면, 예측 모델을 보다 효율적으로 생성할 수 있다.According to the present invention, a predictive model can be generated more efficiently.
도 1은 본 실시의 형태에 관한 예측 시스템의 전체 구성례를 도시하는 모식도.
도 2는 본 실시의 형태에 관한 예측 시스템의 응용례를 도시하는 모식도.
도 3은 본 실시의 형태에 관한 예측 시스템에 의한 예측 결과에 의거하는 제어의 한 예를 도시하는 모식도.
도 4는 본 실시의 형태에 관한 예측 시스템을 이용한 예측 모델의 생성 처리의 처리 순서를 도시하는 플로우차트.
도 5는 본 실시의 형태에 관한 예측 시스템을 구성하는 제어 장치의 하드웨어 구성례를 도시하는 블록도.
도 6은 본 실시의 형태에 관한 예측 시스템을 구성하는 서포트 장치의 하드웨어 구성례를 도시하는 블록도.
도 7은 본 실시의 형태에 관한 예측 시스템을 구성하는 제어 장치 및 서포트 장치의 소프트웨어 구성례를 도시하는 블록도.
도 8은 도 7에 도시하는 해석 프로그램에 포함되는 기능 모듈의 개요를 도시하는 블록도.
도 9는 본 실시의 형태에 관한 예측 시스템에서의 학습용 샘플의 선택례를 설명하기 위한 도면.
도 10은 도 4에 도시되는 생성 처리의 처리 순서에서의 학습용 샘플의 선택(스텝 S3)에 관한 보다 상세한 처리 순서를 도시하는 플로우차트.
도 11은 도 4에 도시되는 생성 처리의 처리 순서에서의 학습용 샘플의 선택에 관한 클러스터링의 한 예를 도시하는 도면.
도 12는 실시의 형태에 관한 예측 시스템에서의 학습용 샘플을 선택하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면.
도 13은 실시의 형태에 관한 예측 시스템에서의 학습용 샘플을 선택하는 처리에서 제공되는 유저 인터페이스의 다른 한 예를 도시하는 도면.
도 14는 도 4에 도시되는 생성 처리의 처리 순서에서의 설명 변수 및 구간의 결정(스텝 S4)에 관한 보다 상세한 처리 순서를 도시하는 플로우차트.
도 15는 도 4에 도시되는 생성 처리의 처리 순서에서의 설명 변수 및 구간의 결정(스텝 S4)의 처리 내용을 개략하기 위한 모식도.
도 16은 실시의 형태에 관한 예측 시스템에서의 설명 변수 및 구간을 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면.
도 17은 실시의 형태에 관한 예측 시스템에서의 설명 변수 및 구간을 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면.
도 18은 실시의 형태에 관한 예측 시스템에서의 설명 변수 및 구간을 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면.
도 19는 실시의 형태에 관한 예측 시스템에서의 설명 변수 및 구간을 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면.
도 20은 도 4에 도시되는 모델 파라미터의 결정(스텝 S5)에 관한 보다 상세한 처리 순서를 도시하는 플로우차트.
도 21은 실시의 형태에 관한 예측 시스템(1)에서의 모델 파라미터를 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면.
도 22는 본 실시의 형태의 변형례에 관한 이상 검지 시스템의 개요 구성을 도시하는 모식도.
도 23은 도 22에 도시되는 샘플 선택의 처리례를 설명하기 위한 도면.BRIEF DESCRIPTION OF THE DRAWINGS It is a schematic diagram which shows the overall structural example of the prediction system which concerns on this embodiment.
2 is a schematic diagram showing an application example of the prediction system according to the present embodiment.
3 is a schematic diagram showing an example of control based on a prediction result by the prediction system according to the present embodiment.
4 is a flowchart showing a processing procedure of a prediction model generation processing using the prediction system according to the present embodiment.
Fig. 5 is a block diagram showing a hardware configuration example of a control device constituting the prediction system according to the present embodiment.
Fig. 6 is a block diagram showing a hardware configuration example of a support device constituting the prediction system according to the present embodiment.
Fig. 7 is a block diagram showing an example of a software configuration of a control device and a support device constituting the prediction system according to the present embodiment.
Fig. 8 is a block diagram showing an outline of a function module included in the analysis program shown in Fig. 7;
It is a figure for demonstrating the selection example of the sample for learning in the prediction system which concerns on this embodiment.
Fig. 10 is a flowchart showing a more detailed processing procedure regarding selection of a learning sample (step S3) in the processing procedure of the generation processing shown in Fig. 4;
Fig. 11 is a diagram showing an example of clustering regarding selection of samples for learning in the processing sequence of the generation processing shown in Fig. 4;
Fig. 12 is a diagram showing an example of a user interface provided in a process for selecting a sample for learning in the prediction system according to the embodiment;
Fig. 13 is a diagram showing another example of a user interface provided in a process for selecting a sample for learning in the prediction system according to the embodiment;
Fig. 14 is a flowchart showing a more detailed processing procedure regarding the determination of explanatory variables and sections (step S4) in the processing procedure of the generation processing shown in Fig. 4;
Fig. 15 is a schematic diagram for schematically illustrating the processing contents of the determination of explanatory variables and sections (step S4) in the processing procedure of the generation processing shown in Fig. 4;
Fig. 16 is a diagram showing an example of a user interface provided in processing for determining explanatory variables and sections in the prediction system according to the embodiment;
Fig. 17 is a diagram showing an example of a user interface provided in processing for determining explanatory variables and sections in the prediction system according to the embodiment;
Fig. 18 is a diagram showing an example of a user interface provided in processing for determining explanatory variables and sections in the prediction system according to the embodiment;
Fig. 19 is a diagram showing an example of a user interface provided in processing for determining explanatory variables and sections in the prediction system according to the embodiment;
Fig. 20 is a flowchart showing a more detailed processing procedure related to the determination of the model parameter (step S5) shown in Fig. 4;
Fig. 21 is a diagram showing an example of a user interface provided in a process for determining a model parameter in the
22 is a schematic diagram showing an outline configuration of an abnormality detection system according to a modification of the present embodiment.
Fig. 23 is a diagram for explaining a sample selection processing example shown in Fig. 22;
본 발명의 실시의 형태에 관해, 도면을 참조하면서 상세히 설명한다. 또한, 도면 중의 동일 또는 상당 부분에 관해서는, 동일 부호를 붙여서 그 설명은 반복하지 않는다.EMBODIMENT OF THE INVENTION Embodiment of this invention is described in detail, referring drawings. In addition, about the same or equivalent part in a figure, the same code|symbol is attached|subjected and the description is not repeated.
<A. 적용례><A. Application example>
우선, 본 발명이 적용되는 장면의 한 예에 관해 설명한다.First, an example of a scene to which the present invention is applied will be described.
본 실시의 형태에 관한 예측 기능을 갖는 제어 시스템의 주요한 국면에 관해 설명한다. 이하의 설명에서는, 주로, 제어 시스템이 가지고 있는 예측 기능에 주목하여 설명하기 때문에, 제어 시스템 전체를 「예측 시스템」이라고도 칭한다.The main aspects of the control system with a prediction function according to the present embodiment will be described. In the following description, the entire control system is also referred to as a "prediction system" because the explanation is mainly focused on the prediction function that the control system has.
도 1은, 본 실시의 형태에 관한 예측 시스템(1)의 전체 구성례를 도시하는 모식도이다. 도 1을 참조하면, 본 실시의 형태에 관한 예측 시스템(1)은, 주된 구성 요소로서, 제어 대상을 제어하는 제어 장치(100)와, 제어 장치(100)에 접속되는 서포트 장치(200)를 포함한다.1 : is a schematic diagram which shows the overall structural example of the
제어 장치(100)는, PLC(프로그래머블 컨트롤러) 등의, 일종의 컴퓨터로서 구현화되어도 좋다. 제어 장치(100)는, 필드 버스(2)를 통하여 필드 장치군(10)과 접속됨과 함께, 필드 버스(4)를 통하여 1 또는 복수의 표시 장치(400)와 접속되어도 좋다. 또한, 제어 장치(100)는, 상위 네트워크(6)를 통하여 상위 서버(300)에 접속되어도 좋다. 또한, 상위 서버(300) 및 표시 장치(400)는 옵셔널한 구성이고, 예측 시스템(1)의 필수의 구성은 아니다.The
제어 장치(100)는, 설비나 기계를 제어하기 위한 각종 연산을 실행하는 제어 로직(이하, 「PLC 엔진」이라고도 칭한다.)을 가지고 있다. PLC 엔진에 더하여, 제어 장치(100)는, 필드 장치군(10)에서 계측되고, 제어 장치(100)에 전송되는 데이터(이하, 「입력 데이터」라고도 칭한다.)를 수집하는 수집 기능을 가지고 있다. 또한, 제어 장치(100)는, 수집한 입력 데이터에 의거하여 장래의 시간 변화를 예측하는 예측 기능도 가지고 있다.The
구체적으로는, 제어 장치(100)에 실장되는 시계열 데이터베이스(이하, 「TSDB(Time Series Data Base)」라고도 기재한다.)(130)가 수집 기능을 제공하고, 제어 장치(100)에 실장되는 예측 모델(140)이 감시 기능을 제공한다. TSDB(130) 및 예측 모델(140)의 상세에 관해서는 후술한다.Specifically, a time series database (hereinafter, also referred to as "Time Series Data Base (TSDB)") 130 mounted on the
필드 버스(2) 및 필드 버스(4)는, 산업용의 통신 프로토콜을 채용하는 것이 바람직하다. 이와 같은 통신 프로토콜로서는, EtherCAT(등록 상표), EtherNet/IP(등록 상표), DeviceNet(등록 상표), CompoNet(등록 상표) 등이 알려져 있다.It is preferable that the
필드 장치군(10)은, 제어 대상 또는 제어에 관련되는 제조 장치나 생산 라인 등(이하, 「필드」라고도 총칭한다.)으로부터 입력 데이터를 수집하는 장치를 포함한다. 이와 같은 입력 데이터를 수집하는 장치로서는, 입력 릴레이나 각종 센서 등이 상정된다. 필드 장치군(10)은, 또한, 제어 장치(100)에서 생성되는 지령(이하, 「출력 데이터」라고도 칭한다.)에 의거하여, 필드에 대해 어떠한 작용을 주는 장치를 포함한다. 이와 같은 필드에 대해 어떠한 작용을 주는 장치로서는, 출력 릴레이, 콘택터, 서보 드라이버 및 서보 모터, 그 외에 임의의 액추에이터가 상정된다. 이들 필드 장치군(10)은, 필드 버스(2)를 통하여, 제어 장치(100)와의 사이에서, 입력 데이터 및 출력 데이터를 포함하는 데이터를 주고 받는다.The
도 1에 도시하는 구성례에서는, 필드 장치군(10)은, 리모트 I/O(Input/Output) 장치(12)와, 릴레이군(14)과, 화상 센서(18) 및 카메라(20)와, 서보 드라이버(22) 및 서보 모터(24)를 포함한다.In the configuration example shown in FIG. 1 , the
리모트 I/O 장치(12)는, 필드 버스(2)를 통하여 통신을 행하는 통신부와, 입력 데이터의 수집 및 출력 데이터의 출력을 행하기 위한 입출력부(이하, 「I/O 유닛」이라고도 칭한다.)를 포함한다. 이와 같은 I/O 유닛을 통하여, 제어 장치(100)와 필드 사이에서 입력 데이터 및 출력 데이터가 주고 받아진다. 도 1에는, 릴레이군(14)을 통하여, 입력 데이터 및 출력 데이터로서, 디지털 신호가 주고 받아지는 예가 도시되어 있다.The remote I/
I/O 유닛은, 필드 버스에 직접 접속되도록 해도 좋다. 도 1에는, 필드 버스(2)에 I/O 유닛(16)이 직접 접속되어 있는 예를 도시한다.The I/O unit may be directly connected to the field bus. 1 shows an example in which the I/
화상 센서(18)는, 카메라(20)에 의해 촬상된 화상 데이터에 대해, 패턴 매칭 등의 화상 계측 처리를 행하여, 그 처리 결과를 제어 장치(100)에 송신한다.The
서보 드라이버(22)는, 제어 장치(100)로부터의 출력 데이터(예를 들면, 위치 지령 등)에 따라, 서보 모터(24)를 구동한다.The
상술한 바와 같이, 필드 버스(2)를 통하여, 제어 장치(100)와 필드 장치군(10) 사이에서 데이터가 주고 받아지게 되는데, 이들 주고 받아지는 데이터는, 수백μsec 오더∼수십msec 오더의 극히 짧은 주기로 갱신되게 된다. 또한, 이와 같은 주고 받아지는 데이터의 갱신 처리를, 「I/O 리프레시 처리」라고 칭하는 일도 있다.As described above, data is exchanged between the
또한, 필드 버스(4)를 통하여 제어 장치(100)와 접속되는 표시 장치(400)는, 유저로부터의 조작을 받아서, 제어 장치(100)에 대해 유저 조작에 응한 커맨드 등을 송신함과 함께, 제어 장치(100)에서의 연산 결과 등을 그래피컬하게 표시한다.In addition, the
상위 서버(300)는, 제어 장치(100)와 상위 네트워크(6)를 통하여 접속되고, 제어 장치(100)와의 사이에서 필요한 데이터를 주고 받는다. 상위 네트워크(6)에는, 이서넷(등록 상표) 등의 범용 프로토콜이 실장되어도 좋다.The
서포트 장치(200)는, 제어 장치(100)가 제어 대상을 제어하기 위해 필요한 준비를 지원하는 정보 처리 장치(컴퓨터의 한 예)이다. 구체적으로는, 서포트 장치(200)는, 제어 장치(100)에서 실행되는 유저 프로그램의 개발 환경(프로그램 작성 편집 툴, 파서, 컴파일러 등), 제어 장치(100) 및 제어 장치(100)에 접속되는 각종 디바이스의 파라미터(컨피겨레이션)를 설정하기 위한 설정 환경, 생성한 유저 프로그램을 제어 장치(100)에 송신하는 기능, 제어 장치(100)상에서 실행되는 유저 프로그램 등을 온라인으로 수정·변경하는 기능, 등을 제공한다.The
또한, 본 실시의 형태에 관한 서포트 장치(200)는, 제어 장치(100)에 실장되는 예측 모델(140)의 생성 및 최적화를 지원하기 위한 기능을 가지고 있다. 즉, 서포트 장치(200)는, 예측 모델(140)을 미리 결정하는 예측 모델 생성부를 가지고 있다. 이들 기능의 상세에 관해서는 후술한다.In addition, the
다음으로, 예측 시스템(1)에 포함되는 제어 장치(100)의 응용례에 관해 설명한다.Next, an application example of the
도 2는, 본 실시의 형태에 관한 예측 시스템(1)의 응용례를 도시하는 모식도이다. 도 2에는, 프레스기(30)를 포함하는 생산 설비의 예를 도시한다.2 is a schematic diagram showing an application example of the
도 2를 참조하면, 프레스기(30)는, 워크(31)를 받아들이고, 베이스(33)에 마련된 지지대(34)상에 받아들인 워크(31)를 배치한다. 그리고, 모터(37)로 구동되는 구동축(36)의 선단에 마련된 압입판(押入板)(35)으로 워크(31)를 압축하여, 중간 제품(32)을 생성한다.Referring to FIG. 2 , the
프레스기(30)에서는, 예기하지 않는 요인 변동에 의해 중간 제품(32)에 불량이 발생할 수 있다고 한다. 그때문에, 프레스기(30)의 하류측에 배치된 검사기에 의한 검사, 또는, 검사원에 의한 육안 검사 또는 발취(拔取)에 의한 검사에 의해, 중간 제품(32)에 불량이 발생하고 있는지의 여부를 판단한다. 만약, 불량이 발생하고 있다고 판단되면, 목표치 등을 그때마다 조정하게 된다.In the
이와 같이, 통상의 제조 공정에서는, 중간 제품(32)의 양품률을 유지 및 향상시키기 위해서는, 목표치를 그때마다 조정할 필요가 있는데, 다양한 관점에서 사전 설계했다 하더라도, 모든 요인 변동에 대응하기가 어렵다.As described above, in a normal manufacturing process, in order to maintain and improve the yield rate of the
이에 대해, 본 실시의 형태에 관한 예측 모델(140)을 이용하여, 중간 제품(32)의 상태(즉, 가공 후의 품질)를 예측함으로써, 불량이 실제로 발생하기 전에, 제어 장치(100)에 의한 제어를 보정할 수 있다. 이와 같은 사전의 불량 발생의 예측을 이용할 수 있음으로써, 목표치 등의 그때마다 조정에 관한 공수를 삭감함과 함께, 중간 제품(32)에 불량이 발생하는 것을 방지할 수 있다.On the other hand, by predicting the state of the intermediate product 32 (that is, the quality after processing) using the
도 3은, 본 실시의 형태에 관한 예측 시스템(1)에 의한 예측 결과에 의거하는 제어의 한 예를 도시하는 모식도이다.3 is a schematic diagram illustrating an example of control based on a prediction result by the
도 3(A)에는, 어떤 시점에서의 프레스기의 압입 위치의 계획치(지령)와, 실제의 프레스기(30)의 압입 위치(실적치)를 도시한다. 목표치는, 가공 후의 중간 제품(32)의 바람직한 두께를 나타낸다.3(A) shows the planned value (command) of the press-in position of the press machine at a certain point in time, and the actual press-in position (actual value) of the
도 3(B)를 참조하면, 어떤 시점에서, 그때까지의 정보(실적치를 포함할 수 있다)에 의거하여, 금후의 프레스기(30)의 압입 위치(예측치)를 산출하고, 그 산출된 예측치에 의거하여, 프레스기(30)에 대한 제어량을 보정하도록 해도 좋다.Referring to Fig. 3(B), at a certain point in time, based on the information (which may include actual values) up to that point, the press-fitting position (predicted value) of the
도 2 및 도 3에 도시하는 프레스기(30)에서는, 프레스기(30)의 압입 위치를 예측하고, 그 예측 결과에 의거하여 제어량을 보정함으로써, 예를 들면, 워크(31)의 경도의 편차 등에 응하여, 작업자가 목표치를 그때마다 조정하는 일은 필요없다. 그 결과, 예기하지 않는 요인 변동에 의한 불량품의 발생을 억제할 수 있고, 워크(31)에 어떠한 편차가 있어도, 품질을 안정화할 수 있다.In the
예측에 이용하는 데이터(실적치 또는 관측치)와 예측되는 데이터는, 일부 또는 전부가 동일해도 좋고, 완전히 다른 것이라도 좋다.Data used for prediction (actual values or observation values) and predicted data may be partially or entirely the same, or may be completely different from each other.
본 실시의 형태에 관한 예측 시스템(1)은, 예측 모델(140)을 적절하게 생성하기 위한 기능을 제공한다. 예측 모델(140)을 적절하게 생성하기 위한 기능은, 전형적으로는, 서포트 장치(200)에 실장되어도 좋다.The
<B. 예측 모델의 생성 및 운용의 개요><B. Overview of the creation and operation of predictive models>
다음으로, 본 실시의 형태에 관한 예측 시스템(1)을 이용한 예측 모델(140)의 생성 및 운용의 개요에 관해 설명한다.Next, the outline|summary of generation|occurrence|production and operation of the
도 4는, 본 실시의 형태에 관한 예측 시스템(1)을 이용한 예측 모델(140)의 생성 처리의 처리 순서를 도시하는 플로우차트이다. 도 4에 도시하는 각 스텝은, 전형적으로는, 서포트 장치(200)의 프로세서(202)가 프로그램(해석 프로그램(226) 및 OS(228) 등)을 실행함으로써 실현된다.4 is a flowchart showing a processing procedure of the generation processing of the
도 4를 참조하면, 서포트 장치(200)는, TSDB(130)에 격납되어 있는 실적치의 시계열 데이터를 취득한다(스텝 S1). 이어서, 서포트 장치(200)는, 취득한 실적치의 시계열 데이터로부터 예측 대상 구간의 설정을 접수한다(스텝 S2).When FIG. 4 is referred, the
서포트 장치(200)는, 스텝 S2에서 설정된 예측 대상 구간의 변화를 예측하기 위한 예측 모델의 생성에 이용되는 학습용 샘플을 선택한다(스텝 S3). 스텝 S3에서는, 복수 종류의 데이터 중, 어느 데이터가 학습에 이용될 것인지가 선택된다. 보다 구체적으로는, 서포트 장치(200)는, 각 시계열 데이터(파형 샘플)의 통계량(특징량)에 대한 클러스터링에 의해 클래스를 결정하고, 결정된 클래스로부터 대상의 데이터를 추출한다. 스텝 S3의 처리에 관해서는 상세히 기술한다.The
이어서, 서포트 장치(200)는, 설명 변수 및 구간을 결정한다(스텝 S4). 그리고, 서포트 장치(200)는, 사용하는 모델 파라미터를 결정한다(스텝 S5). 스텝 S5에서는, 서포트 장치(200)는, 스텝 S4에서 선택된 설명 변수 및 구간에 따라, 예측 모델(140)을 생성함과 함께, 생성된 예측 모델(140)의 성능을 평가함으로써, 적절한 예측 알고리즘을 탐색한다. 서포트 장치(200)는, 예측 정밀도 및 예측 속도의 성능이 높은 예측 알고리즘을 사용하는 모델 파라미터로서 결정한다.Next, the
최종적으로, 서포트 장치(200)는, 결정된 모델 파라미터 등에 의거하여, 예측 모델(140)을 생성한다(스텝 S6).Finally, the
이상과 같은 처리 순서에 의해 생성된 예측 모델(140)을 제어 장치(100)에 설정함으로써, 도 2 및 도 3에 도시하는 운용이 가능해진다.By setting the
<C. 하드웨어 구성례><C. Hardware configuration example>
다음으로, 본 실시의 형태에 관한 예측 시스템(1)을 구성하는 주요한 장치의 하드웨어 구성례에 관해 설명한다.Next, a hardware configuration example of a main device constituting the
(c1: 제어 장치(100)의 하드웨어 구성례)(c1: hardware configuration example of control device 100)
도 5는, 본 실시의 형태에 관한 예측 시스템(1)을 구성하는 제어 장치(100)의 하드웨어 구성례를 도시하는 블록도이다. 도 5를 참조하면, 제어 장치(100)는, CPU(Central Processing Unit)나 MPU(Micro-Processing Unit) 등의 프로세서(102)와, 칩 세트(104)와, 주기억 장치(106)와, 2차 기억 장치(108)와, 상위 네트워크 컨트롤러(110)와, USB(Universal Serial Bus) 컨트롤러(112)와, 메모리 카드 인터페이스(114)와, 내부 버스 컨트롤러(122)와, 필드 버스 컨트롤러(118, 120)와, I/O 유닛(124-1, 124-2, …)을 포함한다.5 is a block diagram showing an example of the hardware configuration of the
프로세서(102)는, 2차 기억 장치(108)에 격납된 각종 프로그램을 판독하여, 주기억 장치(106)에 전개하여 실행함으로써, PLC 엔진(150)(도 7 참조) 및 예측 모델(140)을 실현한다. 칩 세트(104)는, 프로세서(102)와 각 컴포넌트 사이의 데이터 전송 등을 제어한다.The
2차 기억 장치(108)에는, PLC 엔진(150)을 실현하기 위한 시스템 프로그램에 더하여, PLC 엔진(150)을 이용하여 실행되는 유저 프로그램이 격납된다. 또한, 2차 기억 장치(108)에는, 예측 모델(140)을 실현하기 위한 프로그램도 격납된다.In the
상위 네트워크 컨트롤러(110)는, 상위 네트워크(6)를 통한 다른 장치와의 사이의 데이터의 주고 받음을 제어한다. USB 컨트롤러(112)는, USB 접속을 통하여 서포트 장치(200)와의 사이의 데이터의 주고 받음을 제어한다.The
메모리 카드 인터페이스(114)는, 메모리 카드(116)를 착탈 가능하게 구성되어 있고, 메모리 카드(116)에 대해 데이터를 기록하고, 메모리 카드(116)로부터 각종 데이터(유저 프로그램이나 트레이스 데이터 등)를 판독하는 것이 가능하게 되어 있다.The
내부 버스 컨트롤러(122)는, 제어 장치(100)에 탑재되는 I/O 유닛(124-1, 124-2, …)과의 사이에서 데이터를 주고 받는 인터페이스이다.The
필드 버스 컨트롤러(118)는, 필드 버스(2)를 통한 다른 장치와의 사이의 데이터의 주고 받음을 제어한다. 마찬가지로, 필드 버스 컨트롤러(120)는, 필드 버스(4)를 통한 다른 장치와의 사이의 데이터의 주고 받음을 제어한다.The
도 5에는, 프로세서(102)가 프로그램을 실행함으로써 필요한 기능이 제공되는 구성례를 도시했는데, 이들 제공되는 기능의 일부 또는 전부를, 전용의 하드웨어 회로(예를 들면, ASIC(Application Specific Integrated Circuit) 또는 FPGA(Field-Programmable Gate Array) 등)를 이용하여 실장해도 좋다. 또는, 제어 장치(100)의 주요부를, 범용적인 아키텍처에 따른 하드웨어(예를 들면, 범용 퍼스널 컴퓨터를 베이스로 한 산업용 퍼스널 컴퓨터)를 이용하여 실현해도 좋다. 이 경우에는, 가상화 기술을 이용하여, 용도가 다른 복수의 OS(Operating System)를 병렬적으로 실행시킴과 함께, 각 OS상에서 필요한 어플리케이션을 실행시키도록 해도 좋다.5, the
(c2: 서포트 장치(200)의 하드웨어 구성례)(c2: hardware configuration example of support device 200)
본 실시의 형태에 관한 서포트 장치(200)는, 한 예로서, 범용적인 아키텍처에 따른 하드웨어(예를 들면, 범용 퍼스널 컴퓨터)를 이용하여 프로그램을 실행함으로써 실현된다.The
도 6은, 본 실시의 형태에 관한 예측 시스템(1)을 구성하는 서포트 장치(200)의 하드웨어 구성례를 도시하는 블록도이다. 도 6을 참조하면, 서포트 장치(200)는, CPU나 MPU 등의 프로세서(202)와, 광학 드라이브(204)와, 주기억 장치(206)와, 2차 기억 장치(208)와, USB 컨트롤러(212)와, 상위 네트워크 컨트롤러(214)와, 입력부(216)와, 표시부(218)를 포함한다. 이들 컴포넌트는 버스(220)를 통하여 접속된다.6 is a block diagram showing an example of the hardware configuration of the
프로세서(202)는, 2차 기억 장치(208)에 격납된 각종 프로그램을 판독하여, 주기억 장치(206)에 전개하여 실행함으로써, 후술하는 모델 생성 처리를 포함하는 각종 처리를 실현한다.The
2차 기억 장치(208)는, 예를 들면, HDD(Hard Disk Drive)나 SSD(Flash Solid State Drive) 등으로 구성된다. 2차 기억 장치(208)에는, 전형적으로는, 서포트 장치(200)에서 실행되는 유저 프로그램의 작성, 작성한 유저 프로그램의 디버그, 시스템 구성의 정의, 각종 파라미터의 설정 등을 행하기 위한 개발 프로그램(222)과, 제어 장치(100)와의 사이에서 예측 기능에 관한 데이터를 주고 받기 위한 PLC 인터페이스 프로그램(224)과, 예측 모델(140)의 생성 등을 실현하기 위한 해석 프로그램(226)과, OS(228)가 격납된다. 2차 기억 장치(208)에는, 도 6에 도시하는 프로그램 이외의 필요한 프로그램이 격납되어도 좋다.The
서포트 장치(200)는, 광학 드라이브(204)를 가지고 있고, 컴퓨터 판독 가능한 프로그램을 비일과적(非一過的)으로 격납하는 기록 매체(205)(예를 들면, DVD(Digital Versatile Disc) 등의 광학 기록 매체)로부터, 그 중에 격납된 프로그램이 판독되어 2차 기억 장치(208) 등에 인스톨된다.The
서포트 장치(200)에서 실행되는 각종 프로그램은, 컴퓨터 판독 가능한 기록 매체(205)를 통하여 인스톨되어도 좋지만, 네트워크상의 임의의 서버로부터 다운로드하는 형태로 인스톨하도록 해도 좋다. 또한, 본 실시의 형태에 관한 서포트 장치(200)가 제공하는 기능은, OS가 제공하는 모듈의 일부를 이용하는 형태로 실현되는 경우도 있다.The various programs executed by the
USB 컨트롤러(212)는, USB 접속을 통하여 제어 장치(100)와의 사이의 데이터의 주고 받음을 제어한다. 상위 네트워크 컨트롤러(214)는, 임의의 네트워크를 통한 다른 장치와의 사이의 데이터의 주고 받음을 제어한다.The
입력부(216)는, 키보드나 마우스 등으로 구성되고, 유저 조작을 접수한다. 표시부(218)는, 디스플레이, 각종 인디케이터, 프린터 등으로 구성되고, 프로세서(202)로부터의 처리 결과 등을 출력한다.The
도 6에는, 프로세서(202)가 프로그램을 실행함으로써 필요한 기능이 제공되는 구성례를 도시했는데, 이들 제공되는 기능의 일부 또는 전부를, 전용의 하드웨어 회로(예를 들면, ASIC 또는 FPGA 등)를 이용하여 실장해도 좋다.6 shows a configuration example in which necessary functions are provided when the
<D. 소프트웨어 구성례/기능 구성례><D. Software configuration example/function configuration example>
다음으로, 본 실시의 형태에 관한 예측 시스템(1)을 구성하는 제어 장치(100) 및 서포트 장치(200)의 소프트웨어 구성례 및 기능 구성례에 관해 설명한다.Next, a software configuration example and a functional configuration example of the
도 7은, 본 실시의 형태에 관한 예측 시스템(1)을 구성하는 제어 장치(100) 및 서포트 장치(200)의 소프트웨어 구성례를 도시하는 블록도이다.7 is a block diagram showing an example of the software configuration of the
도 7을 참조하면, 제어 장치(100)는, 주요한 기능 구성으로서, PLC 엔진(150)에 더하여, TSDB(130) 및 예측 모델(140)을 포함한다.Referring to FIG. 7 , the
PLC 엔진(150)은, 유저 프로그램(154)를 순차적으로 해석하여, 지정된 제어 연산을 실행한다. PLC 엔진(150)은, 필드로부터 수집되는 상태치를 변수(152)의 형태로 관리하고 있고, 변수(152)는 미리 정해진 주기로 갱신된다. PLC 엔진(150)은, 제어 장치(100)의 프로세서(102)가 시스템 프로그램을 실행함으로써 실현되어도 좋다.The
본 명세서에서, 「상태치」는, 필드로부터 수집되는 입력치, 필드에 출력되는 지령치, 및, 제어 장치(100)의 내부에서 관리되는 시스템 상태치나 내부치를 포함한다. 본 실시의 형태에 관한 제어 장치(100)에서는, 「상태치」를 「변수」의 형태로 참조하기 때문에, 이하의 설명에서는, 편의상, 「변수」라는 용어를 「상태치」를 포함하는 취지로 이용한다. 또한, 본 발명의 기술적 범위는, 「상태치」를 「변수」의 형태로 참조하는 구성으로 한정되는 일은 없다.In this specification, the "state value" includes an input value collected from a field, a command value output to the field, and a system state value or internal value managed inside the
유저 프로그램(154)은, 예측치 취득 코드(156)와, 오차 평가 코드(158)와, 추가 학습 코드(160)와, TSDB 기록 코드(162)와, 제어 연산 코드(164)를 포함한다.The
예측치 취득 코드(156)는, 제어 연산 코드(164)가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델(140)에 입력함으로써 예측치를 취득하는 예측치 취득부를 실현한다. 보다 구체적으로는, 예측치 취득 코드(156)는, 변수(152)로서 관리되는 필요한 실적치를 취득하여, 예측 모델(140)에 입력함으로써, 예측치를 취득하는 명령을 포함한다.The predicted
오차 평가 코드(158)는, 예측치 취득 코드(156)에 의해 취득된 예측치와 목표치의 오차를 평가하는 명령을 포함한다.The
추가 학습 코드(160)는, 오차 평가 코드(158)에 의해 평가된 오차에 응하여, 필요에 응하여, 예측 모델(140)을 추가 학습하는 명령을 포함한다. 추가 학습 코드(160)는, 예측 모델(140)을 규정하는 모델 파라미터(142)를 갱신하게 된다.The
TSDB 기록 코드(162)는, 변수(152)로서 관리되는 변수 중, 미리 정해진 변수를 취득하여, TSDB(130)의 기억 영역(132)에 기록한다.The
제어 연산 코드(164)는, 제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부를 실현한다. 보다 구체적으로는, 제어 연산 코드(164)는, 제어 대상을 제어하기 위한 제어 연산을 실행함과 함께, 오차 평가 코드(158)에 의해 평가된 오차에 응하여, 필요에 응하여, 제어 연산에 이용하는 목표치를 보정한다.The
TSDB(130)는, 기억 영역(132)에 기록된 데이터를 필요에 응하여, 서포트 장치(200) 등에 엑스포트하는 엑스포트 모듈(134)을 가지고 있다.The
예측 모델(140)은, 예측 모델(140)을 규정하는 모델 파라미터(142)에 더하여, 참조 궤도(144)를 가지고 있다.The
한편, 서포트 장치(200)는, 개발 프로그램(222) 및 해석 프로그램(226)이 인스톨되어 있다.On the other hand, in the
개발 프로그램(222)은, 유저 조작에 따라, 유저 프로그램(154)을 생성하고, 제어 장치(100)에 전송한다. 또한, 개발 프로그램(222)은, 제어 연산 코드(164)의 내용을 적절히 수정하는 기능도 가지고 있다.The
해석 프로그램(226)은, 예측 모델(140)을 미리 결정하는 예측 모델 생성부를 실현하기 위한 정보 처리 프로그램에 상당한다. 보다 구체적으로는, 해석 프로그램(226)은, 예측 모델(140)의 생성을 지원하는 것이고, 설명 변수·구간 결정 모듈(2261)과, 모델 생성 모듈(2262)과, 추론 모듈(2263)과, 평가 모듈(2264)을 포함한다.The
설명 변수·구간 결정 모듈(2261)은, 설명 변수 및 구간을 결정하는(도 4에 도시하는 스텝 S4 참조) 처리에 필요한 기능을 실현한다.The explanatory variable/
모델 생성 모듈(2262)은, 예측 모델(140)을 생성하는(도 4에 도시하는 스텝 S6 참조) 처리에 필요한 기능을 실현한다.The
추론 모듈(2263)은, 생성된 예측 모델(140)을 이용하여 추론(예측)을 행함과 함께, 그 예측 결과를 평가 모듈(2264)에 제공한다. 평가 모듈(2264)은, 추론 모듈(2263)로부터의 예측 결과에 의거하여, 대상의 예측 모델(140)의 성능을 평가한다. 추론 모듈(2263) 및 평가 모듈(2264)이 제공하는 기능에 의해, 사용하는 모델 파라미터를 결정하는 처리(도 4에 도시하는 스텝 S5 참조)가 실현된다.The
도 8은, 도 7에 도시하는 해석 프로그램(226)에 포함되는 기능 모듈의 개요를 도시하는 블록도이다. 도 8을 참조하면, 서포트 장치(200)의 해석 프로그램(226)은, 주요한 기능 구성으로서, 유저 인터페이스(230)와, 입출력 관리 모듈(236)과, 화면 표시 모듈(238)과, 그래프 라이브러리(240)와, 해석 모듈(242)과, 해석 라이브러리(244)를 포함한다.FIG. 8 is a block diagram showing an outline of a function module included in the
유저 인터페이스(230)는, 유저로부터의 설정을 접수함과 함께, 유저에 대해 각종 정보를 제공하기 위한 통괄적인 처리를 실행한다. 구체적인 실장 형태로서, 유저 인터페이스(230)는, 스크립트 엔진(232)을 가지고 있고, 필요한 처리를 기술한 스크립트를 포함하는 설정 파일(234)을 판독하여, 설정된 처리를 실행한다.The
입출력 관리 모듈(236)은, 지정된 파일 등으로부터 데이터를 판독하는 파일 입력 기능과, 데이터 스트림을 수신하는 스트림 입력 기능과, 생성한 데이터 등을 포함하는 파일을 출력하는 파일 출력 기능을 포함한다.The input/
화면 표시 모듈(238)은, 입력된 데이터 등에 의거하여 꺾은선 그래프를 생성하는 꺾은선 그래프 생성 기능과, 유저의 조작을 받아서 각종 파라미터를 변경하는 파라미터 조정 기능을 포함한다. 파라미터의 변경에 따라, 꺾은선 그래프 생성 기능은 꺾은선을 갱신하는 일도 있다. 꺾은선 그래프 생성 기능 및 파라미터 조정 기능은, 그래프 라이브러리(240)를 참조하여 필요한 처리를 실행한다.The
해석 모듈(242)은, 해석 프로그램(226)의 주요한 처리를 실현하는 모듈이고, 파형 샘플 기능과, 설명 변수·구간 선택 기능과, 파라미터 선택 기능과, 모델 생성 기능을 가지고 있다. 해석 모듈(242)에 포함되는 각 기능은, 해석 라이브러리(244)를 참조함으로써 실현된다.The
해석 라이브러리(244)는, 해석 모듈(242)에 포함되는 각 기능이 처리를 실행하기 위한 라이브러리를 포함한다. 보다 구체적으로는, 해석 라이브러리(244)는, 통계량 기능, 결정목(決定木) 기능, 시계열 회귀 기능, 그리드 서치 기능, 클러스터링 기능, 추론 속도 평가 기능, 정밀도 평가 기능, 및, 이상(異常) 검지 기능을 가지고 있어도 좋다.The
이하, 도 4에 도시하는 예측 모델(140)을 생성하기 위한 주요한 처리에 관해 설명한다.Hereinafter, the main processing for generating the
<E. 실적치의 시계열 데이터의 취득(스텝 S1) 및 예측 대상 구간의 결정(스텝 S2)><E. Acquisition of time series data of performance value (step S1) and determination of prediction target section (step S2)>
도 4에 도시하는 스텝 S1에서, 서포트 장치(200)는, 유저 조작에 따라, 제어 장치(100)의 TSDB(130)에 격납되어 있는 실적치의 시계열 데이터를 취득한다. 유저는, 서포트 장치(200)에 표시되는 실적치의 시계열 데이터를 보면서, 예측 대상 구간을 설정한다.In step S1 shown in FIG. 4, the
예측 대상 구간은, 상술한 도 2 및 도 3에 도시하는 제어 대상의 특성 등에 응하여, 적절히 설정되어도 좋다.The prediction target section may be appropriately set in accordance with the characteristics of the control target shown in Figs. 2 and 3 described above.
<F. 예측 모델의 생성에 이용되는 학습용 샘플의 선택(스텝 S3)><F. Selection of a learning sample used for generation of a predictive model (step S3)>
도 4에 도시하는 스텝 S3에서, 서포트 장치(200)는, 예측 모델(140)의 생성에 이용되는 학습용 샘플을 선택한다.In step S3 shown in FIG. 4 , the
본 명세서에서, 「샘플」은, 예측 모델(140)로부터 출력되어야 할 예측치의 교사(敎師) 데이터로서 이용되는 소정 시간 길이의 데이터열을 의미한다. 「샘플」은, 기본적으로는, 예측 대상의 시계열 데이터(생(生) 데이터)가 이용되지만, 예측 대상이 시계열 데이터로부터 추출되는 특징량인 경우에는, 특징량을 이용해도 좋다. 「샘플」이라는 용어는, 복수의 데이터를 처리할 때의 처리 단위에 주목한 것이고, 그것에 포함되는 데이터의 내용 등에 관해서는, 특히 한정하는 것이 아니다.In this specification, "sample" means a data string of a predetermined time length used as teacher data of prediction values to be output from the
본 명세서에서, 임의의 예측치를 산출 또는 결정하기 위해 참조되는 데이터를 「설명(說明) 변수」라고도 칭한다. 1 또는 복수의 「설명 변수」를 이용하여, 임의의 예측치가 산출 또는 결정된다. 그때문에, 학습용 샘플은, 「설명 변수」의 후보가 될 수 있는 데이터와 어떠한 방법으로 연관되게 된다.In this specification, data referred to for calculating or determining an arbitrary predictive value is also referred to as an "explanatory variable". An arbitrary predicted value is calculated or determined using one or a plurality of “explanatory variables”. Therefore, the learning sample is related in some way to data that can be a candidate for "explanatory variable".
본 명세서에서, 「특징량」은, 처리 대상의 시계열 데이터에 포함되는 정보를 포함하는 용어이고, 예를 들면, 대상의 시계열 데이터에 관한, 최대치, 최소치, 중간치, 평균치, 표준 편차, 분산 등을 포함할 수 있다. 또한, 「특징량」은, 대상의 시계열 데이터 그 자체도 포함할 수 있다.In the present specification, "feature amount" is a term containing information contained in the time series data to be processed, for example, the maximum, minimum, median, average, standard deviation, variance, etc. of the time series data of the object. may include In addition, the "characteristic amount" may also include the target time series data itself.
도 9는, 본 실시의 형태에 관한 예측 시스템(1)에서의 학습용 샘플의 선택례를 설명하기 위한 도면이다. 도 9에는, 예측 대상 구간에 대응하여, 소정 시간 길이의 시계열 데이터(샘플)의 한 예를 도시한다.9 : is a figure for demonstrating the selection example of the sample for learning in the
이들 샘플 중, 변화 패턴의 다른 것을 학습에 이용할수록, 예측 모델(140)의 예측 정밀도를 높일 수 있다. 즉, 같은 변화 패턴을 나타내는 샘플을 이용하여 학습해도, 예측 모델(140)의 예측 정밀도의 향상에는 공헌하지 않는다.Among these samples, the more different the change pattern is used for learning, the higher the prediction accuracy of the
변화 패턴이 서로 다른 샘플로서, 도 9에 도시하는 예에서는, 굵은 테두리로 둘러싸인 4개의 샘플이 학습용 샘플로서 선택되어 있다.As samples having different change patterns, in the example shown in Fig. 9, four samples surrounded by thick borders are selected as the learning samples.
변화 패턴이 서로 다른 샘플을 선택하는 방법의 한 예로서, 각 샘플로부터 1 또는 복수의 특징량(예를 들면, 평균치나 표준 편차 등)을 산출하고, 산출된 1 또는 복수의 특징량에 의거하여, 샘플을 클러스터링한다. 이와 같은 클러스터링에 의해, 대상의 샘플군에 포함되는 1 또는 복수의 클래스를 추출한다. 그리고, 추출된 각 클래스에 속하는 1 또는 복수의 샘플을 각각 학습용 샘플로서 선택한다.As an example of a method of selecting samples with different change patterns, one or more feature quantities (eg, average values or standard deviations, etc.) are calculated from each sample, and based on the calculated one or more feature quantities, , cluster the samples. By such clustering, one or a plurality of classes included in the target sample group are extracted. Then, one or a plurality of samples belonging to each extracted class are respectively selected as a learning sample.
도 10은, 도 4에 도시되는 생성 처리의 처리 순서에서의 학습용 샘플의 선택(스텝 S3)에 관한 보다 상세한 처리 순서를 도시하는 플로우차트이다.Fig. 10 is a flowchart showing a more detailed processing procedure regarding the selection of a learning sample (step S3) in the processing procedure of the generation processing shown in Fig. 4 .
도 10을 참조하면, 서포트 장치(200)는, 대상의 시계열 데이터를 트리밍하여 샘플을 생성한다(스텝 S31). 시계열 데이터의 트리밍은, 예측 대상 구간에 관련된 부분만을 추출함으로써 행해진다.Referring to FIG. 10 , the
이어서, 서포트 장치(200)는, 각 샘플로부터 1 또는 복수의 특징량을 산출하고(스텝 S32), 산출한 1 또는 복수의 특징량에 의거하여 클러스터링을 행한다(스텝 S33).Next, the
서포트 장치(200)는, 클러스터링에 의해 결정된 1 또는 복수의 클래스의 각각으로부터 1 또는 복수의 샘플을 선택하고, 선택된 샘플을 학습용 샘플로서 결정한다(스텝 S34).The
이와 같이, 서포트 장치(200)는, 예측 모델(140)의 생성에 관한 기능으로서, 각 샘플로부터 산출되는 1 또는 복수의 특징량을 이용한 클러스터링에 의해, 복수의 샘플 중 학습용 샘플로서 이용되는 샘플을 선택하는 처리를 실행한다.In this way, as a function related to the generation of the
도 11은, 도 4에 도시되는 생성 처리의 처리 순서에서의 학습용 샘플의 선택에 관한 클러스터링의 한 예를 도시하는 도면이다. 도 11에는, 각 샘플로부터 2개의 특징량(평균치 및 표준 편차)을 산출하고, 각 특징량을 좌표로 하는 2차원 공간에 각 샘플을 플롯한 예를 도시한다.FIG. 11 is a diagram showing an example of clustering regarding selection of samples for learning in the processing sequence of the generation processing shown in FIG. 4 . Fig. 11 shows an example in which two characteristic quantities (average value and standard deviation) are calculated from each sample, and each sample is plotted in a two-dimensional space using each characteristic quantity as a coordinate.
도 11에 도시하는 샘플군은, 평균치 및 표준 편차의 특징량에 관해 보면, 3개의 클러스터(클래스(1∼3))가 포함되어 있는 것을 알 수 있다. 추출된 각 클래스에 속하는 1 또는 복수의 샘플이 각각 선택된다. 즉, 클래스(1)에 속하는 1 또는 복수의 샘플이 추출되고, 클래스(2)에 속하는 1 또는 복수의 샘플이 추출되고, 클래스(3)에 속하는 1 또는 복수의 샘플이 추출된다. 이에 따라, 서로 클래스가 다른 복수의 샘플이 학습용 샘플로서 결정된다.It turns out that the sample group shown in FIG. 11 contains three clusters (class (1 - 3)) with respect to the characteristic amount of an average value and standard deviation. One or a plurality of samples belonging to each extracted class are respectively selected. That is, one or a plurality of samples belonging to class (1) are extracted, one or a plurality of samples belonging to class (2) are extracted, and one or a plurality of samples belonging to class (3) are extracted. Accordingly, a plurality of samples having different classes are determined as the learning samples.
학습용 샘플의 대상이 되는 샘플의 선택은, 서포트 장치(200)가 자동적으로 행해도 좋고, 유저가 처리를 지원 또는 선택 결과를 확인하도록 해도 좋다. 예를 들면, 샘플 선택 결과를 유저가 확인하고, 수동으로 다시 선택할 수 있도록 해도 좋다.The
도 12는, 실시의 형태에 관한 예측 시스템(1)에서의 학습용 샘플을 선택하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면이다. 도 13은, 실시의 형태에 관한 예측 시스템(1)에서의 학습용 샘플을 선택하는 처리에서 제공되는 유저 인터페이스의 다른 한 예를 도시하는 도면이다. 도 12 및 도 13에는, 샘플 선택의 결과 표시의 한 예를 도시한다.12 is a diagram showing an example of a user interface provided in a process for selecting a sample for learning in the
도 12에 도시하는 유저 인터페이스 화면(250)은, 선택된 샘플군(254) 중 체크된 샘플을 동일 시간축상에 맞겹쳐서 표시한 합성 파형(252)을 표시할 수 있도록 되어 있다. 유저는, 샘플군(254)으로부터 임의의 샘플을 선택하여, 합성 파형(252)으로서 표시함으로써, 샘플의 선택의 적부를 용이하게 확인할 수 있다.The
도 13에 도시하는 유저 인터페이스 화면(260)은, 선택된 샘플 사이의 유사도를 행렬 형식으로 표시한다. 유저 인터페이스 화면(260)은 행렬형상으로 배치된 표시 요소를 가지고 있고, 하나의 대각선형상으로 각 샘플의 파형이 배치되어 있다. 당해 대각선보다 상측에는, 샘플 사이의 유사도(264)(상관 계수)가 나타나고 있고, 당해 대각선보다 하측에는, 대응하는 2의 샘플을 동일 시간축상에 맞겹쳐서 표시한 합성 파형(262)이 표시되어 있다.The
도 12 및 도 13에 도시하는 유저 인터페이스 화면을 동일 화면 내에 표시하도록 해도 좋다. 이 경우에는, 유저가 유저 인터페이스 화면(250)에서 임의의 샘플을 선택하면, 당해 선택된 샘플에 대응하여, 도 13에 도시하는 유저 인터페이스 화면(260)의 대응하는 샘플이 강조 표시되어도 좋다. 또한, 유저 인터페이스 화면(250)에서 임의의 파형을 선택함으로써, 선택 대상 및 선택 비대상이 교대로 전환되도록 해도 좋다.The user interface screens shown in FIGS. 12 and 13 may be displayed on the same screen. In this case, when the user selects an arbitrary sample on the
이상과 같은 처리에 의해, 예측 모델의 생성에 이용되는 학습용 샘플이 선택된다.By the above processing, the learning sample used for generation|generation of a predictive model is selected.
<G. 설명 변수 및 구간의 결정(스텝 S4)><G. Determination of explanatory variables and sections (step S4)>
도 4에 도시하는 스텝 S4에서, 서포트 장치(200)는, 예측 모델(140)에 관한 설명 변수 및 구간을 결정한다.In step S4 shown in FIG. 4 , the
스텝 S4에서는, 예측 모델(140)에 채용하는 예측 알고리즘에 관해서는, 디폴트 값 등에 고정한 다음, 설명 변수 및 구간을 각각 변화시킨 조합에 관해, 예측 모델(140)을 생성함과 함께, 성능을 평가함으로써, 사용하는 설명 변수 및 구간을 결정한다. 즉, 서포트 장치(200)는, 예측 모델(140)의 모델 파라미터를 고정한 다음, 예측에 이용하는 설명 변수 및 구간을 탐색한다.In step S4, with respect to the prediction algorithm employed in the
사용하는 설명 변수 및 구간을 결정할 때의 탐색 구간에 관해서는, 제어 장치(100)에서 실행되는 유저 프로그램에 설정되어 있는 제어 주기를 참조하고, 설정되어 있는 제어 주기에 의거하여 바람직한 탐색 구간을 결정해도 좋다.Regarding the explanatory variable to be used and the search section for determining the section, the control cycle set in the user program executed by the
도 14는, 도 4에 도시되는 생성 처리의 처리 순서에서의 설명 변수 및 구간의 결정(스텝 S4)에 관한 보다 상세한 처리 순서를 도시하는 플로우차트이다. 도 14를 참조하면, 서포트 장치(200)는, 대상의 제어 장치(100)에서 실행되고 있는 유저 프로그램을 참조하여 제어 주기를 취득한다(스텝 S41). 서포트 장치(200)가 제어 장치(100)에 접속되어 있는 경우에는, 제어 장치(100)에 액세스하여 필요한 정보를 취득하면 되고, 서포트 장치(200)가 제어 장치(100)에 접속되어 있지 않는 경우에는, 서포트 장치(200)가 유지하고 있는 프로젝트 등을 참조하여, 제어 주기를 취득하도록 해도 좋다.Fig. 14 is a flowchart showing a more detailed processing procedure regarding the determination of explanatory variables and sections (step S4) in the processing procedure of the generation processing shown in Fig. 4 . Referring to FIG. 14 , the
서포트 장치(200)는, 취득한 제어 주기의 정수배를, 구간을 탐색하기 위한 탐색 구간으로서 설정한다(스텝 S42).The
서포트 장치(200)는, 미리 선택된 학습용 샘플(상술한 스텝 S3 참조)에 관련되는 복수의 변수로부터 1 또는 복수의 설명 변수를 선택한다(스텝 S43). 보다 구체적으로는, 서포트 장치(200)는, 학습용 샘플 및 관련되는 복수의 변수에 결정목 알고리즘을 적용하여, 각 변수의 중요도(importance)를 산출한다. 그리고, 서포트 장치(200)는, 중요도가 높은 변수를 설명 변수로서 선택한다.The
또한, 결정목 알고리즘으로서는 공지인 임의의 알고리즘을 채용할 수 있는데, 예를 들면, 랜덤포레스트 등을 이용할 수 있다.In addition, as the decision tree algorithm, any known algorithm can be employed, for example, a random forest or the like can be used.
이와 같이, 서포트 장치(200)는, 예측 모델(140)의 생성에 관한 기능으로서, 예측 모델(140)의 생성에 이용되는 학습용 샘플에 연관되는 복수의 변수(상태치) 중, 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 변수(상태치)를 설명 변수로서 결정하는 처리를 실행한다.In this way, as a function related to the generation of the
서포트 장치(200)는, 탐색 구간에 포함되는 어느 하나의 후보 구간을 설정한다(스텝 S44). 후보 구간은, 탐색 구간에 포함되는 구간의 길이 및/또는 위치를 다르게 함으로써 생성된다. 그리고, 서포트 장치(200)는, 스텝 S43에서 선택한 1 또는 복수의 설명 변수, 및, 스텝 S44에서 설정한 후보 구간을 파라미터로 하여, 학습용 샘플을 이용하여 예측 모델(140)을 생성한다(스텝 S45). 그리고, 서포트 장치(200)는, 생성한 예측 모델(140)의 추론에 관한 성능을 평가한다(스텝 S46). 스텝 S46에서는, 성능을 나타내는 수치가 대응하는 후보 구간과 관련지어서 격납된다.The
그리고, 서포트 장치(200)는, 탐색 구간에 포함되는 모든 후보 구간에 관한 예측 모델(140)의 생성 및 성능 평가가 완료되었는지의 여부를 판단한다(스텝 S47). 탐색 구간에 포함되는 모든 후보 구간에 관한 예측 모델(140)의 생성 및 성능 평가가 완료되어 있지 않으면(스텝 S47에서 NO), 서포트 장치(200)는, 탐색 구간에 포함되는 다른 후보 구간을 설정하고(스텝 S48), 스텝 S45 이하의 처리를 반복한다.Then, the
한편, 탐색 구간에 포함되는 모든 후보 구간에 관한 예측 모델(140)의 생성 및 성능 평가가 완료되어 있으면(스텝 S47에서 YES), 서포트 장치(200)는, 가장 높은 성능 평가를 나타낸 후보 구간을 예측 모델(140)의 구간으로서 결정한다(스텝 S49).On the other hand, if the generation and performance evaluation of the
이와 같이, 서포트 장치(200)는, 예측 모델(140)의 생성에 관한 기능으로서, 탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 처리를 실행한다. 이 예측에 이용하는 구간을 결정하는 처리에서는, 서포트 장치(200)는, 탐색 구간에 포함되는 구간의 길이 및 위치의 적어도 일방을 다르게 한 각 패턴에서 생성되는 예측 모델의 성능을 각각 평가하게 된다.As such, the
도 15는, 도 4에 도시되는 생성 처리의 처리 순서에서의 설명 변수 및 구간의 결정(스텝 S4)의 처리 내용을 개략하기 위한 모식도이다. 도 15를 참조하면, 복수의 변수 1, 2, …, n에 대해 결정목 알고리즘을 적용함으로써, 설명 변수가 결정된다. 결정목 알고리즘의 적용에는, 학습용 샘플이 이용된다.FIG. 15 is a schematic diagram for schematically illustrating the processing contents of the determination of explanatory variables and sections (step S4) in the processing sequence of the generation processing shown in FIG. 4 . 15 , a plurality of
또한, 유저 프로그램에 의거하여 탐색 구간이 결정되고, 결정된 탐색 구간에서 1 또는 복수의 후보 구간이 설정된다. 그리고, 후보 구간마다 예측 모델(140)이 생성되고, 생성된 예측 모델(140)의 성능이 평가된다.In addition, a search section is determined based on the user program, and one or a plurality of candidate sections are set in the determined search section. Then, the
최종적으로, 성능이 높은 예측 모델(140)에 대응하는 설명 변수 및 구간이 결정된다.Finally, explanatory variables and intervals corresponding to the high-performance
이와 같이, 도 4에 도시하는 스텝 S4에서, 서포트 장치(200)는, 결정목 알고리즘에 의해 산출되는 중요도에 의거하여 설명 변수를 결정하고, 결정한 설명 변수를 이용하여 탐색 구간 내에서 구간을 그리드 서치(전체 탐색)함으로써, 설명 변수 및 구간을 결정한다.In this way, in step S4 shown in FIG. 4 , the
또한, 상술한 도 14에 도시하는 생성 처리의 처리 순서에서는, 스텝 S43에서, 1 또는 복수의 설명 변수를 먼저 결정했는데, 설명 변수에 관해서도 몇 개의 후보를 설정하고, 각 후보(각 후보가 1 또는 복수의 설명 변수를 포함한다)에 관해 스텝 S44 이하의 처리를 실행하도록 해도 좋다.In addition, in the process sequence of the generation processing shown in Fig. 14 described above, in step S43, one or a plurality of explanatory variables are first determined, but some candidates are also set for the explanatory variables, and each candidate (each candidate is 1 or (including a plurality of explanatory variables) may be made to execute the processing following step S44.
도 16∼도 19는, 실시의 형태에 관한 예측 시스템(1)에서의 설명 변수 및 구간을 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면이다.16 to 19 are diagrams showing an example of a user interface provided in the processing for determining explanatory variables and sections in the
도 16∼도 19를 참조하면, 유저 인터페이스 화면(270)은, 실적치 및 예측치를 표시하는 파형 표시 영역(276)을 포함한다.16 to 19 , the
파형 표시 영역(276)에는, 실적치 및 예측치의 파형(시계열 데이터)이 표시된다. 실적치는, 학습용 샘플에 포함되는 어느 하나의 샘플의 파형(시계열 데이터)이다. 예측치는, 생성한 예측 모델(140)에 의해 출력되는 파형(시계열 데이터)이다.In the
미리 정해진 예측점(271)에 대해, 예측 모델(140)에 입력하는 설명 변수의 범위를 정하는 구간(272)의 위치 및 시간폭을 임의로 설정할 수 있다. 유저는, 마우스 등을 조작하여, 구간(272)의 위치를 이동시킴으로써, 구간(272)의 구간폭(273) 및 예측점과의 시간차(274)를 임의로 변경할 수 있다.With respect to the
유저가 임의로 설정한 구간(272)에 응하여, 예측치의 파형(시계열 데이터)이 산출되고, 그 산출된 예측치의 파형(시계열 데이터)이 파형 표시 영역(276)에 표시된다.In response to the
유저 인터페이스 화면(270)은, 설명 변수 리스트(277)를 포함하고, 1 또는 복수의 변수 중 체크된 변수가 설명 변수로서 이용된다.The
도 16∼도 19에 도시되는 유저 인터페이스 화면(270)에서, 도 18에 도시되는 유저 인터페이스 화면(270)의 설정이 가장 높은 정밀도의 예측치를 산출하고 있는 것을 알 수 있다.From the
유저 인터페이스 화면(270)은, 실적치와 예측치의 어긋남을 나타내는 예측 오차(275)를 포함한다.The
유저가 유저 인터페이스 화면(270)을 조작하는 것에 응하여, 서포트 장치(200)는, 도 14에 도시되는 처리에 의해 생성되는 예측 모델(140)을 그대로 이용하여, 예측치를 산출해도 좋다. 또는, 서포트 장치(200)는, 유저가 유저 인터페이스 화면(270)을 조작하여, 설명 변수 및/또는 구간을 적절히 변경하는 것에 응답하여, 도 14의 스텝 S43 이후의 처리, 또는, 스텝 S44 이후의 처리를 재실행하도록 해도 좋다. 즉, 예측 모델(140)을 재생성해도 좋다.In response to the user operating the
도 16∼도 19에 도시되는 유저 인터페이스 화면(270)에 응하여, 예측 모델(140)을 재생성함으로써, 유저는, 예측 모델(140)에 설정해야 할 설명 변수 및/또는 구간을 탐색하면서, 결정할 수 있다.By regenerating the
이와 같이, 서포트 장치(200)는, 예측에 이용하는 구간을 변경하기 위한, 유저 조작을 접수하는 유저 인터페이스 화면(270)(도 16∼도 19 참조)을 제공한다.In this way, the
이상과 같은 처리에 의해, 예측 모델의 생성에 이용되는 설명 변수 및 구간이 결정된다.By the above processing, the explanatory variable and the interval used for generation of the predictive model are determined.
<H. 모델 파라미터의 결정(스텝 S5)><H. Determination of model parameters (step S5)>
도 4에 도시하는 스텝 S5에서, 서포트 장치(200)는, 예측 모델(140)에 사용하는 모델 파라미터를 결정한다.In step S5 shown in FIG. 4 , the
상술한 스텝 S4에서는, 예측 모델(140)에 채용하는 예측 알고리즘 등에 관해서는 디폴트 값 등에 고정하여, 설명 변수 및 구간을 결정하였다. 스텝 S5에서는, 결정된 설명 변수 및 구간을 전제로 하여, 예측 정밀도, 모델 사이즈, 처리 속도 등의 운용상의 지표를 고려하면서, 예측 모델(140)의 모델 파라미터를 결정한다.In step S4 described above, the explanatory variable and the section are determined by fixing the prediction algorithm or the like employed in the
이하의 설명에서는, 예측 정밀도, 모델 사이즈, 처리 속도를 복수의 지표의 한 예로서 설명하지만, 반드시 이들 요소로 한정되는 일은 없다. 단, 복수의 지표로서는, 예측 정밀도, 모델 사이즈, 처리 속도 중 적어도 하나를 포함하고 있는 것이 바람직하다.In the following description, prediction accuracy, model size, and processing speed are described as examples of a plurality of indices, but they are not necessarily limited to these factors. However, it is preferable that at least one of a prediction precision, a model size, and a processing speed is included as a some parameter|index.
도 20은, 도 4에 도시되는 모델 파라미터의 결정(스텝 S5)에 관한 보다 상세한 처리 순서를 도시하는 플로우차트이다. 도 20을 참조하면, 서포트 장치(200)는, 모델 파라미터의 탐색 범위를 결정한다(스텝 S51). 모델 파라미터의 탐색 범위는, 탐색 대상의 파라미터의 종류에 더하여, 각 파라미터의 탐색 범위(상하한)를 결정한다.Fig. 20 is a flowchart showing a more detailed processing procedure related to the determination of the model parameter (step S5) shown in Fig. 4 . Referring to FIG. 20 , the
이어서, 서포트 장치(200)는, 스텝 S51에서 결정한 탐색 범위에 포함되는 임의의 모델 파라미터의 데이터 세트를 대상으로서 선택한다(스텝 S52). 그리고, 서포트 장치(200)는, 선택한 모델 파라미터의 데이터 세트에 의거하여, 예측 모델(140)을 생성하고(스텝 S53), 생성한 예측 모델(140)의 성능(예측 정밀도, 모델 사이즈, 처리 속도 등)을 평가한다(스텝 S54).Next, the
서포트 장치(200)는, 스텝 S51에서 결정한 탐색 범위에 포함되는 다른 모델 파라미터의 데이터 세트가 존재하는지의 여부를 판단한다(스텝 S55). 스텝 S51에서 결정한 탐색 범위에 포함되는 다른 모델 파라미터의 데이터 세트가 존재하고 있으면(스텝 S55에서 YES), 서포트 장치(200)는, 스텝 S51에서 결정한 탐색 범위에 포함되는 다른 모델 파라미터의 데이터 세트를 선택하고(스텝 S56), 스텝 S53 이하의 처리를 반복한다.The
이에 대해, 스텝 S51에서 결정한 탐색 범위에 포함되는 다른 모델 파라미터의 데이터 세트가 존재하고 있지 않으면(스텝 S55에서 NO), 서포트 장치(200)는, 데이터 세트마다의 성능 평가의 결과에 의거하여, 가장 적절한 모델 파라미터의 데이터 세트를 탐색하고(스텝 S57), 탐색한 모델 파라미터 및 대응하는 성능 평가의 결과를 표시한다(스텝 S58).On the other hand, if there is no data set of other model parameters included in the search range determined in step S51 (NO in step S55), the
최종적으로, 서포트 장치(200)는, 유저로부터의 지시에 따라, 예측 모델(140)을 생성하기 위한 모델 파라미터를 결정한다(스텝 S59).Finally, the
이와 같이, 서포트 장치(200)는, 예측 모델(140)의 생성에 관한 기능으로서, 결정된 설명 변수 및 결정된 구간의 조건하에서, 예측 모델(140)을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델(140)에 관해 복수의 지표를 평가함으로써, 예측 모델(140)을 규정하기 위한 모델 파라미터를 결정하는 처리를 실행한다.In this way, the
도 21은, 실시의 형태에 관한 예측 시스템(1)에서의 모델 파라미터를 결정하는 처리에서 제공되는 유저 인터페이스의 한 예를 도시하는 도면이다. 도 21에 도시하는 유저 인터페이스 화면(270)에서는, 도 16∼도 19에 도시되는 유저 인터페이스 화면(270)에 비교하여, 산출된, 예측 정밀도(281), 모델 사이즈(282) 및 처리 속도(283)가 추가로 표시되어 있다.Fig. 21 is a diagram showing an example of a user interface provided in a process for determining a model parameter in the
이와 같이, 서포트 장치(200)는, 복수의 지표를 표시하는 유저 인터페이스 화면(270)(도 21 참조)을 제공한다. 유저는, 이들 지표를 확인하면서, 설명 변수 및 구간을 조정할 수도 있다.In this way, the
또한, 도 20의 스텝 S57에서의 최적의 모델 파라미터의 탐색은, 예측 정밀도, 모델 사이즈, 처리 속도 등의 지표에 대해 우선도를 설정함으로써 실현해도 좋다.In addition, the search for the optimal model parameter in step S57 of Fig. 20 may be realized by setting priorities for indices such as prediction accuracy, model size, and processing speed.
예를 들면, 예측 정밀도, 모델 사이즈, 처리 속도의 순서로 지표의 우선도를 설정했다고 가정한다. 아울러, 각 지표에 관해 최저한의 조건을 설정해도 좋다.For example, it is assumed that the priority of the index is set in the order of prediction precision, model size, and processing speed. In addition, you may set the minimum condition about each index|index.
예를 들면, 이하와 같은 설정을 행해도 좋다.For example, you may make the following settings.
·우선도 1 지표: 예측 정밀도 조건; 조건: 예측 정밀도≥80%·
·우선도 2 지표: 모델 사이즈; 조건: 모델 사이즈≤50MB·
·우선도 3 지표: 처리 속도; 조건: 처리 속도≤0.1msec·Priority 3 indicators: processing speed; Condition: processing speed≤0.1msec
이와 같은 각 지표가 설정되면, 서포트 장치(200)는, 우선도 1 지표에 관해 양호한 모델 파라미터의 집합을 추출한 다음, 우선도 2 지표 및 우선도 3 지표의 양쪽이 양호한 데이터 세트를 탐색한다.When each of these indexes is set, the
또한, 어느 지표에 대해 어떤 우선도를 설정해도 좋고, 복수의 지표에 대해 같은 우선도를 설정해도 좋다. 또한, 우선도를 설정하지 않고, 각 지표에 관해 평가를 행한 결과를 종합하여, 최적의 데이터 세트를 결정해도 좋다.In addition, a certain priority may be set with respect to a certain index|index, and you may set the same priority with respect to a some index|index. Moreover, you may determine the optimal data set by combining the results of evaluation with respect to each index|index without setting a priority.
이와 같이, 모델 파라미터의 결정(스텝 S5)에서는, 그리드 서치(전체 탐색)에 의해, 종합적으로 지표가 좋은(전형적으로는, 정밀도가 높고, 모델 사이즈가 작고, 처리 속도가 높은) 모델 파라미터를 결정할 수 있다.In this way, in the determination of the model parameters (step S5), the model parameters with a good overall index (typically, high precision, small model size, and high processing speed) are determined by grid search (full search). can
또한, 유저는, 유저 인터페이스 화면상에서, 결정된 모델 파라미터에 의한 예측 모델의 성능을 확인하면서, 필요에 응하여 모델 파라미터, 설명 변수 및 구간 등을 미조정함으로써, 적절한 예측 모델(140)을 생성할 수 있다.In addition, the user can generate an appropriate
이와 같은 유저 인터페이스 화면이 제공됨으로써, 예측 정밀도, 모델 사이즈, 처리 속도 등의 복수의 지표를 포함하는 종합 평가로, 예측 모델(140)을 결정할 수 있다.By providing such a user interface screen, the
<I. 변형례><I. Variations>
상술한 설명에서는, 시간 변화를 예측하는 예측 시스템(1)에 관해 설명했는데, 제어 대상 등에 생기는 이상(異常)을 검지하는 이상 검지 시스템에도 적용 가능하다.In the above description, although the
도 22는, 본 실시의 형태의 변형례에 관한 이상 검지 시스템(1A)의 개요 구성을 도시하는 모식도이다. 도 22를 참조하면, 이상 검지 시스템(1A)은, 제어 대상으로부터 취득된 생(生) 데이터(40)로부터 학습용 샘플을 선택하고(샘플 선택(42)), 선택된 학습용 샘플에 의거하여 이상 검지 모델(44)이 생성된다. 그리고, 생성된 이상 검지 모델(44)을 이용하여, 이상 검지의 운용(46)이 실행된다.22 is a schematic diagram showing the outline configuration of an
이상 검지 모델(44)은, 제어 대상이 통상의 상태와는 다른 상태를 나타내고 있는 것을 검지하는 것을 주제로 하는 것이고, 제어 대상으로부터 수집되는 생 데이터(시계열 데이터)를 이용하여, 수집된 생 데이터에 적합한 이상 검지 모델(44)이 생성된다. 이상 검지 모델(44)에 통상과는 다른 생 데이터가 입력됨으로써, 통상과는 다른 상태인 것을 나타내는 값이 출력됨으로써, 제어 대상에 어떠한 이상이 발생하고 있는 것을 검지할 수 있다.The
이와 같은 이상 검지 모델(44)에 이용되는 학습용 샘플에 관해서는, 상술한 스텝 S3과 마찬가지로, 변화 패턴이 서로 다른 생 데이터를 채용하는 것이 바람직하다.As for the training sample used for such an
도 23은, 도 22에 도시되는 샘플 선택의 처리례를 설명하기 위한 도면이다. 도 23을 참조하면, 예를 들면, 5개의 생 데이터(401∼405)가 수집된 경우에, 생 데이터(401)와 생 데이터(404)는, 유사한 분포를 가지고 있다. 마찬가지로, 생 데이터(402)와 생 데이터(405)는, 유사한 분포를 가지고 있다.FIG. 23 is a diagram for explaining a sample selection processing example shown in FIG. 22 . Referring to FIG. 23 , for example, when five pieces of
이와 같은 서로 비슷한 분포를 갖는 생 데이터에 관해서는, 1개의 생 데이터만을 학습용 샘플로서 사용하는 것이 바람직하다. 그 결과, 도 23에 도시하는 예에서는, 생 데이터(401) 및 생 데이터(404)의 어느 일방과, 생 데이터(402) 및 생 데이터(405)의 어느 일방과, 생 데이터(403)의 3종류의 생 데이터를 학습용 샘플로서 선택해도 좋다.As for raw data having such a mutually similar distribution, it is preferable to use only one raw data as a learning sample. As a result, in the example shown in FIG. 23 , any one of the
이와 같이, 이상 검지 모델(44)에 이용되는 학습용 샘플에 관해서도, 상술한 스텝 S3과 마찬가지로, 변화 패턴이 서로 다른 샘플을 추출함으로써, 이상 검지 모델(44)의 검지 성능을 높일 수 있다.In this way, also about the training sample used for the
<J. 부기><J. Bookkeeping>
상술한 바와 같은 본 실시의 형태는, 이하와 같은 기술 사상을 포함한다.The present embodiment as described above includes the following technical ideas.
[구성 1][Configuration 1]
제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부(164)와,a
상기 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부(156)와,a predicted
상기 예측 모델을 미리 결정하는 예측 모델 생성부(200)를 구비하고,and a
상기 예측 모델 생성부는,The predictive model generation unit,
상기 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 상기 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단(2261)과,means 2261 for determining one or a plurality of state values as explanatory variables, based on the importance to the training sample, among a plurality of state values associated with a learning sample used for generating the predictive model;
탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 상기 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단(2261)과,
상기 결정된 설명 변수 및 상기 결정된 구간의 조건하에서, 상기 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 상기 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단(2262)을 포함하는, 예측 시스템.Under the conditions of the determined explanatory variable and the determined interval, sequentially different model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter, thereby defining the predictive model means (2262) for determining a model parameter for a prediction system.
[구성 2][Configuration 2]
상기 예측 모델 생성부는, 각 샘플로부터 산출되는 1 또는 복수의 특징량을 이용한 클러스터링에 의해, 복수의 샘플 중 상기 학습용 샘플로서 이용되는 샘플을 선택하는 수단(2261)을 또한 포함하는, 구성 1에 기재된 예측 시스템.According to
[구성 3][Configuration 3]
상기 예측 모델 생성부는, 상기 학습용 샘플 및 관련되는 복수의 상태치에 결정목 알고리즘을 적용함으로써, 각 상태치의 중요도를 산출하는, 구성 1 또는 2에 기재된 예측 시스템.The prediction system according to
[구성 4][Configuration 4]
상기 예측 모델 생성부는, 상기 탐색 구간에 포함되는 구간의 길이 및 위치의 적어도 일방을 다르게 한 각 패턴에서 생성되는 예측 모델의 성능을 각각 평가하는, 구성 1∼3의 어느 한 항에 기재된 예측 시스템.The prediction system according to any one of
[구성 5][Configuration 5]
상기 예측 모델 생성부는, 상기 예측 모델의 모델 파라미터를 고정한 다음, 상기 예측에 이용하는 구간을 탐색하는, 구성 4에 기재된 예측 시스템.The prediction system according to
[구성 6][Configuration 6]
상기 예측 모델 생성부는, 상기 예측에 이용하는 구간을 변경하기 위한, 유저 조작을 접수하는 제1 유저 인터페이스(270)를 제공하는 수단을 또한 포함하는, 구성 4 또는 5에 기재된 예측 시스템.The prediction system according to
[구성 7][Configuration 7]
상기 복수의 지표는, 예측 정밀도, 모델 사이즈, 처리 속도 중 적어도 하나를 포함하는, 구성 1∼6의 어느 한 항에 기재된 예측 시스템.The prediction system according to any one of
[구성 8][Configuration 8]
상기 예측 모델 생성부는, 상기 복수의 지표를 표시하는 제2 유저 인터페이스(270)를 제공하는 수단을 또한 포함하는, 구성 7에 기재된 예측 시스템.The prediction system according to configuration 7, wherein the prediction model generating unit further includes means for providing a second user interface (270) for displaying the plurality of indices.
[구성 9][Configuration 9]
제어 장치(100)에 접속되는 정보 처리 장치(200)로서, 상기 제어 장치는, 제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부(164)와, 상기 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부(156)를 구비하고,An information processing device (200) connected to a control device (100), the control device comprising: a control calculation unit (164) that executes a control calculation for controlling a control target; and a predicted
상기 정보 처리 장치는, 상기 예측 모델을 미리 결정하는 예측 모델 생성부로서,The information processing device is a predictive model generating unit that determines the predictive model in advance,
상기 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 상기 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단(2261)과,means 2261 for determining one or a plurality of state values as explanatory variables, based on the importance to the training sample, among a plurality of state values associated with a learning sample used for generating the predictive model;
탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 상기 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단(2261)과,
상기 결정된 설명 변수 및 상기 결정된 구간의 조건하에서, 상기 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 상기 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단(2262)을 구비하는, 정보 처리 장치.Under the conditions of the determined explanatory variable and the determined interval, sequentially different model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter, thereby defining the predictive model means (2262) for determining model parameters for
[구성 10][Configuration 10]
제어 장치(100)에 접속되는 컴퓨터(200)에서 실행되는 정보 처리 프로그램(226)으로서, 상기 제어 장치는, 제어 대상을 제어하기 위한 제어 연산을 실행하는 제어 연산부(164)와, 상기 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부(156)를 구비하고,An information processing program (226) executed on a computer (200) connected to a control device (100), the control device comprising: a control calculation unit (164) that executes a control calculation for controlling a control target; a predicted
상기 정보 처리 프로그램은, 상기 예측 모델을 미리 결정하기 위한 처리로서, 상기 컴퓨터에,The information processing program, as processing for pre-determining the predictive model, to the computer,
상기 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 상기 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 스텝(S43)과,A step (S43) of determining one or a plurality of state values as explanatory variables, based on the importance to the learning sample, among a plurality of state values associated with the learning sample used for generating the predictive model;
탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 상기 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 스텝(S44)과,A step (S44) of determining a section to be used for prediction by sequentially varying sections included in the search section and evaluating the prediction precision by the determined explanatory variable;
상기 결정된 설명 변수 및 상기 결정된 구간의 조건하에서, 상기 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 상기 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 스텝(S5;S51∼S59)을 실행시키는, 정보 처리 프로그램.Under the conditions of the determined explanatory variable and the determined interval, sequentially different model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter, thereby defining the predictive model An information processing program for executing steps (S5; S51 to S59) for determining model parameters for
<K. 이점><K. Advantages>
본 실시의 형태에 관한 예측 시스템에서는, 최종적으로, 복수의 지표에 의거하여 예측 모델을 결정할 수 있기 때문에, 실제의 운용에 알맞은 예측 모델을 용이하게 생성할 수 있다.In the prediction system according to the present embodiment, the prediction model can be finally determined based on a plurality of indexes, so that it is possible to easily generate a prediction model suitable for actual operation.
금회 개시된 실시의 형태는 모든 점에서 예시로서 제한적인 것이 아니라고 생각되어야 한다. 본 발명의 범위는, 상기한 설명이 아니라, 청구의 범위에 의해 나타나고, 청구의 범위와 균등한 의미 및 범위 내에서의 모든 변경이 포함되는 것이 의도된다.It should be considered that embodiment disclosed this time is an illustration and is not restrictive in every point. The scope of the present invention is defined by the claims rather than the above description, and it is intended that all changes within the meaning and scope equivalent to the claims are included.
1: 예측 시스템
1A: 이상 검지 시스템
2, 4: 필드 버스
6: 상위 네트워크
10: 필드 장치군
12: 리모트 I/O 장치
14: 릴레이군
16, 124: I/O 유닛
18: 화상 센서
20: 카메라
22: 서보 드라이버
24: 서보 모터
30: 프레스기
31: 워크
32: 중간 제품
33: 베이스
34: 지지대
35: 압입판
36: 구동축
37: 모터
40, 401, 402, 403, 404, 405: 생 데이터
42: 샘플 선택
44: 이상 검지 모델
46: 운용
100: 제어 장치
102, 202: 프로세서
104: 칩 세트
106, 206: 주 기억 장치
108, 208: 2차 기억 장치
110, 214: 상위 네트워크 컨트롤러
112, 212: USB 컨트롤러
114: 메모리 카드 인터페이스
116: 메모리 카드
118, 120: 필드 버스 컨트롤러
122: 내부 버스 컨트롤러
132: 기억 영역
134: 엑스포트 모듈
140: 예측 모델
142: 모델 파라미터
144: 참조 궤도
150: PLC 엔진
154: 유저 프로그램
156: 예측치 취득 코드
158: 오차 평가 코드
160: 추가 학습 코드
162: 기록 코드
164: 제어 연산 코드
200: 서포트 장치
204: 광학 드라이브
205: 기록 매체
216: 입력부
218: 표시부
220: 버스
222: 개발 프로그램
224: 인터페이스 프로그램
226: 해석 프로그램
230: 유저 인터페이스
232: 스크립트 엔진
234: 설정 파일
236: 입출력 관리 모듈
238: 화면 표시 모듈
240: 그래프 라이브러리
242: 해석 모듈
244: 해석 라이브러리
250, 260, 270: 유저 인터페이스 화면
252, 262: 합성 파형
254: 샘플군
264: 유사도
271: 예측점
272: 구간
273: 구간폭
274: 시간차
275: 예측 오차
276: 파형 표시 영역
277: 설명 변수 리스트
281: 예측 정밀도
282: 모델 사이즈
283: 처리 속도
300: 상위 서버
400: 표시 장치
2261: 구간 결정 모듈
2262: 모델 생성 모듈
2263: 추론 모듈
2264: 평가 모듈1: Prediction system
1A: Abnormality detection system
2, 4: Fieldbus
6: Upper Network
10: field device group
12: Remote I/O device
14: relay group
16, 124: I/O unit
18: image sensor
20: camera
22: servo driver
24: servo motor
30: press machine
31: work
32: intermediate product
33: base
34: support
35: press-fitting plate
36: drive shaft
37: motor
40, 401, 402, 403, 404, 405: raw data
42: sample selection
44: abnormal detection model
46: operation
100: control device
102, 202: processor
104: chip set
106, 206: main memory
108, 208: secondary memory
110, 214: upper network controller
112, 212: USB controller
114: memory card interface
116: memory card
118, 120: fieldbus controller
122: internal bus controller
132: memory area
134: export module
140: predictive model
142: model parameters
144: reference orbit
150: PLC engine
154: user program
156: prediction value acquisition code
158: error evaluation code
160: additional learning code
162: record code
164: control opcode
200: support device
204: optical drive
205: recording medium
216: input unit
218: display unit
220: bus
222: development program
224: interface program
226: analysis program
230: user interface
232: script engine
234: config file
236: I/O management module
238: display module
240: graph library
242: analysis module
244: analysis library
250, 260, 270: User interface screen
252, 262: composite waveform
254: sample group
264: similarity
271: prediction point
272: section
273: section width
274: time difference
275: prediction error
276: waveform display area
277: list of explanatory variables
281: Prediction precision
282: model size
283: processing speed
300: parent server
400: display device
2261: section determination module
2262: model creation module
2263: inference module
2264: evaluation module
Claims (10)
상기 제어 연산부가 참조 가능한 상태치 중 1 또는 복수의 상태치로 이루어지는 실적치를 예측 모델에 입력함으로써 예측치를 취득하는 예측치 취득부와,
상기 예측 모델을 미리 결정하는 예측 모델 생성부를 구비하고,
상기 예측 모델 생성부는,
상기 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 상기 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단과,
탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 상기 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단과,
상기 결정된 설명 변수 및 상기 결정된 구간의 조건하에서, 상기 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 상기 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단을 포함하는 것을 특징으로 하는 예측 시스템.a control operation unit that executes a control operation for controlling a control object;
a predicted value acquisition unit that acquires a predicted value by inputting an performance value comprising one or a plurality of state values among the state values that the control calculating unit can refer to into a prediction model;
and a predictive model generator that determines the predictive model in advance,
The predictive model generation unit,
means for determining one or a plurality of state values as explanatory variables from among a plurality of state values associated with a learning sample used for generating the predictive model, based on the importance to the learning sample;
means for determining a section to be used for prediction by sequentially varying sections included in the search section and evaluating the prediction precision by the determined explanatory variable;
Under the conditions of the determined explanatory variable and the determined interval, sequentially different model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter, thereby defining the predictive model A prediction system comprising means for determining model parameters for
상기 예측 모델 생성부는, 각 샘플로부터 산출되는 1 또는 복수의 특징량을 이용한 클러스터링에 의해, 복수의 샘플 중 상기 학습용 샘플로서 이용되는 샘플을 선택하는 수단을 또한 포함하는 것을 특징으로 하는 예측 시스템.According to claim 1,
The predictive model generating unit further includes means for selecting a sample to be used as the training sample from among a plurality of samples by clustering using one or a plurality of feature quantities calculated from each sample.
상기 예측 모델 생성부는, 상기 학습용 샘플 및 관련되는 복수의 상태치에 결정목 알고리즘을 적용함으로써, 각 상태치의 중요도를 산출하는 것을 특징으로 하는 예측 시스템.According to claim 1,
The predictive model generating unit is configured to calculate the importance of each state value by applying a decision tree algorithm to the learning sample and a plurality of related state values.
상기 예측 모델 생성부는, 상기 탐색 구간에 포함되는 구간의 길이 및 위치의 적어도 일방을 다르게 한 각 패턴에서 생성되는 예측 모델의 성능을 각각 평가하는 것을 특징으로 하는 예측 시스템.4. The method according to any one of claims 1 to 3,
The prediction model generation unit, the prediction system, characterized in that each evaluates the performance of the prediction model generated in each pattern in which at least one of the length and position of the section included in the search section is different.
상기 예측 모델 생성부는, 상기 예측 모델의 모델 파라미터를 고정한 다음, 상기 예측에 이용하는 구간을 탐색하는 것을 특징으로 하는 예측 시스템.5. The method of claim 4,
The prediction system generating unit, characterized in that after fixing the model parameter of the prediction model, searching for a section used for the prediction.
상기 예측 모델 생성부는, 상기 예측에 이용하는 구간을 변경하기 위한, 유저 조작을 접수하는 제1 유저 인터페이스를 제공하는 수단을 또한 포함하는 것을 특징으로 하는 예측 시스템.5. The method of claim 4,
The prediction system according to claim 1, wherein the prediction model generation unit further includes means for providing a first user interface for accepting a user operation for changing a section used for prediction.
상기 복수의 지표는, 예측 정밀도, 모델 사이즈, 처리 속도 중 적어도 하나를 포함하는 것을 특징으로 하는 예측 시스템.According to any one of claims 1 to 3,
The prediction system, characterized in that the plurality of indices include at least one of prediction accuracy, model size, and processing speed.
상기 예측 모델 생성부는, 상기 복수의 지표를 표시하는 제2 유저 인터페이스를 제공하여 수단을 또한 포함하는 것을 특징으로 하는 예측 시스템.8. The method of claim 7,
The prediction system according to claim 1, wherein the predictive model generating unit further includes means for providing a second user interface for displaying the plurality of indices.
상기 정보 처리 장치는, 상기 예측 모델을 미리 결정하는 예측 모델 생성부로서,
상기 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 상기 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 수단과,
탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 상기 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 수단과,
상기 결정된 설명 변수 및 상기 결정된 구간의 조건하에서, 상기 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 상기 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 수단을 구비하는 것을 특징으로 하는 정보 처리 장치.An information processing device connected to a control device, the control device comprising: a control calculation unit that executes a control operation for controlling a control object; A predicted value acquisition unit for acquiring a predicted value by inputting to
The information processing device is a predictive model generator that determines the predictive model in advance,
means for determining one or a plurality of state values as explanatory variables from among a plurality of state values associated with a learning sample used for generating the predictive model, based on the importance to the learning sample;
means for determining a section to be used for prediction by sequentially varying sections included in the search section and evaluating the prediction precision by the determined explanatory variable;
Under the conditions of the determined explanatory variable and the determined interval, sequentially different model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter, thereby defining the predictive model An information processing device comprising means for determining a model parameter for
상기 정보 처리 프로그램은, 상기 예측 모델을 미리 결정하기 위한 처리로서, 상기 컴퓨터에,
상기 예측 모델의 생성에 이용되는 학습용 샘플에 연관되는 복수의 상태치 중, 상기 학습용 샘플에 대한 중요도에 의거하여, 1 또는 복수의 상태치를 설명 변수로서 결정하는 스텝과,
탐색 구간에 포함되는 구간을 순차적으로 다르게 하여, 상기 결정된 설명 변수에 의한 예측 정밀도를 평가함으로써, 예측에 이용하는 구간을 결정하는 스텝과,
상기 결정된 설명 변수 및 상기 결정된 구간의 조건하에서, 상기 예측 모델을 규정하는 모델 파라미터를 순차적으로 다르게 하여, 각 모델 파라미터에 의해 규정되는 예측 모델에 관해 복수의 지표를 평가함으로써, 상기 예측 모델을 규정하기 위한 모델 파라미터를 결정하는 스텝을 실행시키는 것을 특징으로 하는 기록 매체.A recording medium storing an information processing program executed by a computer connected to a control device, the control device comprising: a control arithmetic unit that executes a control arithmetic for controlling a control object; A predicted value acquisition unit for acquiring a predicted value by inputting the performance value composed of a plurality of state values into the prediction model;
The information processing program, as processing for determining the predictive model in advance, to the computer,
determining one or a plurality of state values as explanatory variables based on the importance to the learning sample among a plurality of state values associated with a learning sample used for generating the predictive model;
determining a section to be used for prediction by sequentially varying sections included in the search section and evaluating the prediction precision by the determined explanatory variable;
Under the conditions of the determined explanatory variable and the determined interval, sequentially different model parameters defining the predictive model, and evaluating a plurality of indices with respect to the predictive model defined by each model parameter, thereby defining the predictive model A recording medium for executing a step of determining model parameters for
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JPJP-P-2019-220426 | 2019-12-05 | ||
JP2019220426A JP7413742B2 (en) | 2019-12-05 | 2019-12-05 | Prediction system, information processing device and information processing program |
PCT/JP2020/043755 WO2021111936A1 (en) | 2019-12-05 | 2020-11-25 | Prediction system, information processing device, and information processing program |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220085827A true KR20220085827A (en) | 2022-06-22 |
Family
ID=76220280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227017702A KR20220085827A (en) | 2019-12-05 | 2020-11-25 | Prediction systems, information processing devices and recording media |
Country Status (6)
Country | Link |
---|---|
US (1) | US20220414555A1 (en) |
EP (1) | EP4071570A4 (en) |
JP (1) | JP7413742B2 (en) |
KR (1) | KR20220085827A (en) |
CN (1) | CN114787735A (en) |
WO (1) | WO2021111936A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113822580A (en) * | 2021-09-24 | 2021-12-21 | 华润电力技术研究院有限公司 | Equipment working condition evaluation method and related equipment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009237832A (en) | 2008-03-26 | 2009-10-15 | Tokyo Gas Co Ltd | Variable prediction model construction method and variable prediction model construction system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3603182B2 (en) * | 2000-08-22 | 2004-12-22 | 株式会社日立製作所 | Wastewater treatment process simulator |
JP5751045B2 (en) * | 2010-08-31 | 2015-07-22 | 富士電機株式会社 | Plant operating condition optimization system, plant operating condition optimization method, plant operating condition optimization program |
JP2012128800A (en) | 2010-12-17 | 2012-07-05 | Nippon Steel Engineering Co Ltd | State prediction method for process and process control unit using the same |
US10496927B2 (en) * | 2014-05-23 | 2019-12-03 | DataRobot, Inc. | Systems for time-series predictive data analytics, and related methods and apparatus |
US20160071017A1 (en) * | 2014-10-15 | 2016-03-10 | Brighterion, Inc. | Method of operating artificial intelligence machines to improve predictive model training and performance |
JP6658540B2 (en) | 2014-12-05 | 2020-03-04 | 日本電気株式会社 | System analysis device, system analysis method and program |
GB2543281A (en) * | 2015-10-13 | 2017-04-19 | British Gas Trading Ltd | System for energy consumption prediction |
JP6875179B2 (en) | 2017-04-07 | 2021-05-19 | 株式会社日立製作所 | System analyzer and system analysis method |
US10417528B2 (en) * | 2018-02-18 | 2019-09-17 | Sas Institute Inc. | Analytic system for machine learning prediction model selection |
-
2019
- 2019-12-05 JP JP2019220426A patent/JP7413742B2/en active Active
-
2020
- 2020-11-25 KR KR1020227017702A patent/KR20220085827A/en unknown
- 2020-11-25 CN CN202080082409.6A patent/CN114787735A/en active Pending
- 2020-11-25 US US17/780,732 patent/US20220414555A1/en active Pending
- 2020-11-25 WO PCT/JP2020/043755 patent/WO2021111936A1/en unknown
- 2020-11-25 EP EP20895579.9A patent/EP4071570A4/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009237832A (en) | 2008-03-26 | 2009-10-15 | Tokyo Gas Co Ltd | Variable prediction model construction method and variable prediction model construction system |
Also Published As
Publication number | Publication date |
---|---|
JP2021089653A (en) | 2021-06-10 |
EP4071570A4 (en) | 2023-12-06 |
JP7413742B2 (en) | 2024-01-16 |
EP4071570A1 (en) | 2022-10-12 |
CN114787735A (en) | 2022-07-22 |
WO2021111936A1 (en) | 2021-06-10 |
US20220414555A1 (en) | 2022-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101536002B (en) | System and method for process monitoring | |
CN108628263B (en) | Control system, control device, computer-readable storage medium, and control method | |
WO2022030041A1 (en) | Prediction system, information processing device, and information processing program | |
JP2013218725A (en) | Abnormality detecting method and abnormality detecting system | |
CN110262279A (en) | Control system and control method | |
KR102343752B1 (en) | Computer-implemented method and system for automatically monitoring and determining the status of entire process segments in a process unit | |
CN103649858A (en) | Method and device for predicting the condition of a component or system, computer program product | |
KR20220085827A (en) | Prediction systems, information processing devices and recording media | |
US11339763B2 (en) | Method for windmill farm monitoring | |
CN109556861A (en) | A kind of bearing real-time fault diagnosis system of case-based reasioning | |
WO2022176375A1 (en) | Prediction system, information processing device, and information processing program | |
WO2022270056A1 (en) | Prediction system, information processing device, and information processing program | |
WO2022162957A1 (en) | Information processing device, control system, and report output method | |
WO2022181007A1 (en) | Information processing device, information processing program, and information processing method | |
Friederich et al. | A Framework for Validating Data-Driven Discrete-Event Simulation Models of Cyber-Physical Production Systems | |
Williams et al. | Digital Twin of Cyber-Physical CNC for Smart Manufacturing | |
CN115599037B (en) | Automatic monitoring method for gene detection laboratory equipment | |
WO2023053511A1 (en) | Control system, information processing method, and information processing device | |
JP2023151886A (en) | Information processing device and information processing program | |
CN114450646B (en) | System and method for detecting wind turbine operational anomalies using deep learning | |
JP2023151755A (en) | Information processing device and information processing program | |
JP2023006304A (en) | Control system, model generation method, and model generation program | |
CN116894544A (en) | Data collection device, recording medium, and method | |
CN105630642B (en) | Abnormality diagnostic method and device based on PCA overdose space | |
CN114450646A (en) | System and method for detecting wind turbine operational anomalies using deep learning |