KR102490281B1 - 제품 불량 원인 분석 방법 및 장치 - Google Patents
제품 불량 원인 분석 방법 및 장치 Download PDFInfo
- Publication number
- KR102490281B1 KR102490281B1 KR1020200180169A KR20200180169A KR102490281B1 KR 102490281 B1 KR102490281 B1 KR 102490281B1 KR 1020200180169 A KR1020200180169 A KR 1020200180169A KR 20200180169 A KR20200180169 A KR 20200180169A KR 102490281 B1 KR102490281 B1 KR 102490281B1
- Authority
- KR
- South Korea
- Prior art keywords
- conditional
- cause
- defect
- conditional statement
- search
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- 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/20—Administration of product repair or maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- 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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0637—Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
-
- 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/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06395—Quality analysis or management
-
- 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/10—Office automation; Time management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Tourism & Hospitality (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Factory Administration (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Machine Translation (AREA)
Abstract
제품 불량의 원인을 분석하기 위한 방법 및 장치가 제시된다. 본 발명에서 제안하는 제품 불량의 원인을 분석하기 위한 장치는 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 전처리부, 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 탐색부 및 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 후처리부를 포함한다.
Description
본 발명은 수집된 공정 데이터를 이용하여 제품 불량의 원인을 분석하기 위한 방법 및 장치에 관한 것이다.
효율적인 생산 관리를 위해 공장에 IoT 환경을 구축하고 공정에 여러 대의 센서를 설치하여 데이터를 수집할 수 있는 스마트팩토리가 늘어나고 있는 추세이다. 제조 공장에서 효율적인 운영을 위해 제품 불량의 원인을 분석해 불량률을 줄이는 것은 매우 중요한 문제이다. 기존에는 제품 불량의 원인을 분석하기 위해 현장 전문가의 경험에 근거한 주관적인 의견에 의존하였지만 스마트팩토리에서는 수집되는 공정 데이터에 근거하여 객관적인 불량의 원인을 분석할 수 있다. 따라서, 수집된 공정 데이터를 이용하여 불량의 원인을 분석기 위한 기술을 필요로 한다.
본 발명이 이루고자 하는 기술적 과제는 제조 공장에서 효율적인 운영을 위해 스마트팩토리에서 수집되는 공정 데이터에 근거하여 객관적인 불량의 원인을 분석함으로써 불량률을 감소시키기 위한 방법 및 장치를 제공하는데 있다.
일 측면에 있어서, 본 발명에서 제안하는 제품 불량의 원인을 분석하기 위한 장치는 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 전처리부, 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 탐색부 및 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 후처리부를 포함한다.
전처리부는 제품의 식별자, 제품의 생산 흐름에 따라 수집된 센서 값을 포함하는 공정 데이터를 입력 받아 오류가 있는 공정 데이터는 제거하고, 연속적인 값을 가지는 속성 또는 복수의 종류의 값을 가지는 속성은 미리 정해진 수의 종류의 값으로 제한한다.
탐색부는 조건문에 들어가는 속성을 제한하는 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수를 포함하는 탐색 설정 값에 따라 1차 불량 원인 조건문을 탐색하고, 복수의 후보 해(candidate solution)를 포함하는 집단(population)을 구성하고 각 후보 해의 적합도(fitness)를 계산한 후 진화 연산을 통해 집단을 진화시키면서 최적의 해를 탐색하는 유전 알고리즘을 통해 1차 불량 원인 조건문을 출력한다.
탐색부는 복수의 후보 해에 대하여 0~1사이의 실수로 인코딩된 해를 머리, 몸통, 꼬리 테이블을 이용하여 연산자 및 조건식으로 변환시킨 후 순서대로 가능할 때까지 트리를 만든 후 1차 불량 원인 조건문으로 변환시키고, 해 적합도 계산을 통해 1차 불량 원인 조건문이 불량 원인을 나타내는 정도에 관하여 평가한다.
후처리부는 1차 불량 원인 조건문을 입력 받아 각 1차 불량 원인 조건문에 대하여 중복되는 부분을 제거하고, 탐색부에서 계산된 해 적합도 계산 결과에 따라 조건문을 제거한다.
또 다른 일 측면에 있어서, 본 발명에서 제안하는 제품 불량의 원인을 분석하기 위한 방법은 전처리부가 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 단계, 탐색부가 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 단계 및 후처리부가 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 단계를 포함한다.
본 발명의 실시예들에 따르면 효율적인 생산 관리를 위해 제조 공장에 IoT 환경을 구축하고 복수의 센서를 설치하여 데이터를 수집함으로써, 스마트팩토리에서 수집되는 공정 데이터에 근거하여 객관적인 불량의 원인을 분석할 수 있다. 이를 통해 제조 공장의 효율적인 운영을 위한 제품 불량의 원인을 분석하여 불량률을 감소시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 제품 불량 원인 분석 장치의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 공정 데이터 구조를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 해 인코딩 및 디코딩 예시를 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 제품 불량 원인 분석 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 일 실시예에 따른 공정 데이터 구조를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 해 인코딩 및 디코딩 예시를 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 제품 불량 원인 분석 방법을 설명하기 위한 흐름도이다.
이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 제품 불량 원인 분석 장치의 구성을 나타내는 도면이다.
제안하는 제품 불량 원인 분석 장치(100)는 전처리부(110), 탐색부(120) 및 후처리부(130)를 포함한다.
전처리부(110)는 공정 데이터(111)를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행한다.
본 발명의 실시예에 따르면, 효율적인 생산 관리를 위해 제조 공장에 IoT 환경을 구축하고 복수의 센서를 설치하여 객관적인 불량의 원인을 분석하기 위한 공정 데이터를 수집할 수 있다.
전처리부(110)는 제품의 식별자, 제품의 생산 흐름에 따라 수집된 센서 값을 포함하는 공정 데이터(111)를 입력 받아 오류가 있는 공정 데이터는 제거하고, 연속적인 값을 가지는 속성 또는 복수의 종류의 값을 가지는 속성은 미리 정해진 수의 종류의 값으로 제한하여 공정 데이터를 분석에 용이한 형태로 전처리한 후 전처리된 공정 데이터(122)를 탐색부(120)로 전송한다.
더욱 상세하게는, 전처리부(110)에서는 입력된 공정 데이터를 분석에 용이한 형태로 만든다. 전처리의 첫 번째 단계로 공정 데이터를 수집할 때 오류가 생겨 잘못 입력된 값들을 제거한다. 예를 들어, 속성값 중 NaN값을 가지는 레코드나 현실에서 있을 수 없는 수치를 가진 속성값이 있는 레코드는 삭제한다.
두 번째 단계로 연속적인 값을 가지는 속성이나 매우 많은 종류의 값을 가지는 속성은 미리 정해진 개수의 종류를 갖도록 단순화 시킨다. 예를 들어, 어떤 속성값이 0에서 100사이의 실수를 가질 수 있다면 이 속성값을 0이상 25미만이면 1구간, 25이상 50미만이면 2구간, 50이상 75미만이면 3구간, 75이상 100미만이면 4구간의 값을 갖도록 단순화 시킬 수 있다.
도 2는 본 발명의 일 실시예에 따른 공정 데이터 구조를 나타내는 도면이다.
본 발명의 일 실시예에 따른 제품 불량 원인 분석 장치에 입력되는 공정 데이터는 도 2와 같이 제품의 식별자(다시 말해, 제품 ID)와 해당 제품의 생산 흐름(예를 들어, 공정1, 공정2 등)에 따라 수집된 센서 값들(예를 들어, 센서1, 센서2 등), 그리고 최종적으로 양품인지 불량인지의 판정 값으로 구성될 수 있다.
탐색부(120)는 전처리된 공정 데이터(122)를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력한다. 각 후보 해는 0과 1사이의 실수들의 나열로 표현(다시 말해, 인코딩)되며, 이는 불량의 특징적인 원인을 표현하는 문장으로 디코딩된다. 후보 해의 길이(0과 1 사이의 실수들의 개수)는 사용자가 입력하는 k값에 비례한다(2k + 1).
조건문에 들어가는 속성을 제한하는 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수를 포함하는 탐색 설정 값(121)에 따라 1차 불량 원인 조건문을 탐색한다.
탐색부(120)에서 사용되는 첫 번째 탐색 설정 값으로 조건문의 최대 길이가 필요하다. 조건문에 들어가는 속성이 많아질수록 그 길이가 길어지므로 길이에 제한을 두지 않으면 탐색 비용이 기하급수적으로 커질 수 있다. 따라서, 조건문의 최대 길이를 설정해야 한다. 두 번째 탐색 설정 값은 조건문을 탐색하기 평가 횟수이다. 평가 횟수가 많을수록 더 좋은 조건문을 탐색할 수 있지만 그만큼 시간이 더 소요된다. 따라서, 평가 횟수를 제한할 수 있다. 세 번째 탐색 설정 값은 1차 조건문 개수이다. 탐색부에서 미리 설정된 조건문 개수만큼의 조건문을 출력하게 되고 후처리부(130)에서 중복되어 의미없는 조건문을 제거하여 최종적으로 최종 불량 원인 조건문을 출력한다. 이러한 탐색부(120)에서 사용되는 탐색 설정 값은 실시예일뿐, 이에 한정되지 않으며 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수 이외의 더욱 다양한 탐색 설정 값을 적용하여 조건문을 탐색할 수 있다.
복수의 후보 해(candidate solution)를 포함하는 집단(population)을 구성하고 각 후보 해의 적합도(fitness)를 계산한 후 진화 연산을 통해 집단을 진화시키면서 최적의 해를 탐색하는 유전 알고리즘을 통해 1차 불량 원인 조건문을 출력한다.
더욱 상세하게는, 복수의 후보 해에 대하여 0~1사이의 실수로 인코딩된 해를 머리, 몸통, 꼬리 테이블을 이용하여 연산자 및 조건식으로 변환시킨다. 이후 순서대로 가능할 때까지 트리를 만든 후 1차 불량 원인 조건문으로 변환시키고, 해 적합도 계산을 통해 1차 불량 원인 조건문이 불량 원인을 나타내는 정도에 관하여 평가한다. 도 3을 참조하여 해 인코딩 및 디코딩 과정에 관하여 더욱 상세히 설명한다.
후처리부(130)는 1차 불량 원인 조건문(131)을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문(132)을 출력한다.
후처리부(130)는 1차 불량 원인 조건문을 입력 받아 각 1차 불량 원인 조건문에 대하여 중복되는 부분을 제거하고, 탐색부(120)에서 계산된 해 적합도 계산 결과에 따라 조건문을 제거한다.
후처리부(130)는 최종적으로 탐색부(120)에서 찾아낸 1차 불량 원인 조건문 중 의미없는 조건문을 제거하거나 조건문에서 의미없는 조건식을 삭제하는 단계로 그 구체적인 방법은 다음과 같다.
첫째, 각 1차 불량 원인 조건문에서 중복되는 부분을 제거한다. 예를 들어, A or (A and B) 이라는 조건문은 결국 A와 같으므로 (A and B) 부분을 제거할 수 있다.
둘째, 조건문의 길이가 늘어났는데도 WRA(아래에서 상세히 설명)가 유의미하게 늘어나지 않으면 길이가 긴 조건문을 삭제한다. 예를 들어, A 와 A and B 라는 조건문이 찾아졌는데 A and B 의 조건문의 WRA가 A의 것보다 좋지 않다면 A and B 를 삭제한다. 본 발명의 실시예에 따르면, 이전 값보다 5% 이상 늘어난 경우 유의미하게 늘어났다고 판단할 수 있다.
본 발명의 실시예에 따른 제품 불량 원인 분석 장치가 출력하는 제품의 최종 불량 원인 조건문은 "~이면 불량이다."와 같은 형태를 갖는다. 예를 들어, 도 2의 공정 데이터에서는 "공정1-센서1의 값이 0이상, 4.0이하이고, 공정2-센서1의 값이 100이면 불량이다."와 같은 조건문이 출력될 수 있다.
도 3은 본 발명의 일 실시예에 따른 해 인코딩 및 디코딩 예시를 나타내는 도면이다.
본 발명의 실시예에 따른 탐색부에서는 전처리된 공정 데이터를 기반으로 불량의 특징적인 원인을 표현하는 1차 불량 원인 조건문을 찾는다. 이를 위한 탐색 알고리즘으로 유전 알고리즘을 사용할 수 있다. 이러한 유전 알고리즘은 실시예일뿐, 이에 한정되지 않으며 유전 알고리즘 이외에도 1차 불량 원인 조건문을 탐색하기 위한 다양한 알고리즘이 적용될 수 있다.
유전 알고리즘은 널리 알려진 탐색 알고리즘으로 복수의 후보 해(candidate solution)로 이루어진 집단(population)을 구성하고 각 후보 해의 적합도(fitness)를 계산한 후 진화 연산을 통해 집단을 진화시켜나가면서 최적의 해를 탐색한다.
예를 들어, 조건문의 최대 길이는 사용자에게 입력 받은 조건문의 최대 길이로 해의 길이가 정해질 수 있다. 조건문의 최대 길이 k가 주어지면 해의 총 길이는 2k + 1 이 된다.
도 3(a)를 참조하면, 해는 머리, 몸통, 꼬리로 구성될 수 있다. 머리의 길이는 1, 몸통의 길이는 k-1, 꼬리 부분의 길이는 k+1이며 모든 부분에서 0과 1사이의 실수를 갖는다. 이 값은 조건문을 구성하는 조건식이나 연산자에 매칭되어 디코딩된다.
본 발명의 실시예에 따른 용어 '조건식'은 조건부를 구성하는 "(속성)=(값의 구간)"을 나타낸다. 예를 들어 "속성1의 값이 X이고, 속성2의 값이 Y이면 불량이다." 라는 문장에 따른 조건식은 "속성1=X", "속성2=Y" 으로 나타낼 수 있다.
머리 부분은 연산자에만, 몸통 부분은 연산자와 조건식 모두에, 꼬리 부분은 조건식에만 매칭된다. 연산자는 AND, OR, NOT 중 하나로 매칭되며, 조건식은 전처리된 공정 데이터에서 나올 수 있는 모든 속성과 그 값에 대한 조합 중 하나로 매칭된다. 도 3에서는 5구간의 값을 가지는 속성 하나로 구성된 데이터와 해의 길이 k를 4로 입력 받았을 때의 해 인코딩 및 디코딩 예시를 나타내었다.
도 3(a)에서 볼 수 있듯이 0~1사이의 실수로 인코딩된 해를 도 3(b)의 머리, 몸통, 꼬리 테이블을 이용해 연산자 및 조건식으로 변환시킨다. 이후 도 3(c)와 같이, 순서대로 가능할 때까지 트리를 만든 후 이를 최종적인 조건문으로 변환시킨다. 트리를 만들 때 AND 및 OR은 2개의 자식 노드를, NOT은 1개의 자식 노드를 가질 수 있으며 조건식 노드는 더 이상 자식 노드를 가질 수 없다. 이와 같이 생성된 조건문은 다음과 같다: (속성=3) AND ((속성≠5) OR (속성=1))
해의 적합도는 조건문이 얼마나 불량 원인을 잘 나타내는지 평가할 수 있는 값으로 계산되어야 한다. 즉, 조건문이 얼마나 많은 케이스를 포함하는, 그리고 얼마나 정상 제품을 커버하지 않으면서 불량 케이스는 많이 커버하는지를 따져야 한다. 이를 위해 다음과 같은 WRA이라는 계산식을 이용한다:
위 식에서 는 입력된 공정 데이터에서 조건문을 만족하는 레코드의 비율을 나타낸다. 는 불량 데이터 중 조건문을 만족하는 레코드의 비율을 말하며 는 전체 데이터에서 불량 레코드의 비율을 나타낸다.
도 4는 본 발명의 일 실시예에 따른 제품 불량 원인 분석 방법을 설명하기 위한 흐름도이다.
제안하는 제품 불량 원인 분석 방법은 전처리부가 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 단계(410), 탐색부가 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 단계(420) 및 후처리부가 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 단계(430)를 포함한다.
단계(410)에서, 전처리부가 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행한다.
본 발명의 실시예에 따르면, 효율적인 생산 관리를 위해 제조 공장에 IoT 환경을 구축하고 복수의 센서를 설치하여 객관적인 불량의 원인을 분석하기 위한 공정 데이터를 수집할 수 있다.
전처리부는 제품의 식별자, 제품의 생산 흐름에 따라 수집된 센서 값을 포함하는 공정 데이터를 입력 받아 오류가 있는 공정 데이터는 제거하고, 연속적인 값을 가지는 속성 또는 복수의 종류의 값을 가지는 속성은 미리 정해진 수의 종류의 값으로 제한하여 공정 데이터를 분석에 용이한 형태로 전처리한 후 전처리된 공정 데이터를 탐색부로 전송한다.
더욱 상세하게는, 전처리부에서는 입력된 공정 데이터를 분석에 용이한 형태로 만든다. 전처리의 첫 번째 단계로 공정 데이터를 수집할 때 오류가 생겨 잘못 입력된 값들을 제거한다. 예를 들어, 속성값 중 NaN값을 가지는 레코드나 현실에서 있을 수 없는 수치를 가진 속성값이 있는 레코드는 삭제한다.
두 번째 단계로 연속적인 값을 가지는 속성이나 매우 많은 종류의 값을 가지는 속성은 미리 정해진 개수의 종류를 갖도록 단순화 시킨다. 예를 들어, 어떤 속성값이 0에서 100사이의 실수를 가질 수 있다면 이 속성값을 0이상 25미만이면 1구간, 25이상 50미만이면 2구간, 50이상 75미만이면 3구간, 75이상 100미만이면 4구간의 값을 갖도록 단순화 시킬 수 있다.
단계(420)에서, 탐색부가 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력한다.
조건문에 들어가는 속성을 제한하는 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수를 포함하는 탐색 설정 값에 따라 1차 불량 원인 조건문을 탐색한다.
탐색부에서 사용되는 첫 번째 탐색 설정 값으로 조건문의 최대 길이가 필요하다. 조건문에 들어가는 속성이 많아질수록 그 길이가 길어지므로 길이에 제한을 두지 않으면 탐색 비용이 기하급수적으로 커질 수 있다. 따라서, 조건문의 최대 길이를 설정해야 한다. 두 번째 탐색 설정 값은 조건문을 탐색하기 평가 횟수이다. 평가 횟수가 많을수록 더 좋은 조건문을 탐색할 수 있지만 그만큼 시간이 더 소요된다. 따라서, 평가 횟수를 제한할 수 있다. 세 번째 탐색 설정 값은 1차 조건문 개수이다. 탐색부에서 미리 설정된 조건문 개수만큼의 조건문을 출력하게 되고 후처리부에서 중복되어 의미없는 조건문을 제거하여 최종적으로 최종 불량 원인 조건문을 출력한다. 이러한 탐색부에서 사용되는 탐색 설정 값은 실시예일뿐, 이에 한정되지 않으며 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수 이외의 더욱 다양한 탐색 설정 값을 적용하여 조건문을 탐색할 수 있다.
복수의 후보 해(candidate solution)를 포함하는 집단(population)을 구성하고 각 후보 해의 적합도(fitness)를 계산한 후 진화 연산을 통해 집단을 진화시키면서 최적의 해를 탐색하는 유전 알고리즘을 통해 1차 불량 원인 조건문을 출력한다.
더욱 상세하게는, 복수의 후보 해에 대하여 0~1사이의 실수로 인코딩된 해를 머리, 몸통, 꼬리 테이블을 이용하여 연산자 및 조건식으로 변환시킨다. 이후 순서대로 가능할 때까지 트리를 만든 후 1차 불량 원인 조건문으로 변환시키고, 해 적합도 계산을 통해 1차 불량 원인 조건문이 불량 원인을 나타내는 정도에 관하여 평가한다.
단계(430)에서, 후처리부가 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력한다.
후처리부는 1차 불량 원인 조건문을 입력 받아 각 1차 불량 원인 조건문에 대하여 중복되는 부분을 제거하고, 탐색부에서 계산된 해 적합도 계산 결과에 따라 조건문을 제거한다.
후처리부는 최종적으로 탐색부에서 찾아낸 1차 불량 원인 조건문 중 의미없는 조건문을 제거하거나 조건문에서 의미없는 조건식을 삭제하는 단계로 그 구체적인 방법은 다음과 같다.
첫째, 각 1차 불량 원인 조건문에서 중복되는 부분을 제거한다. 예를 들어, A or (A and B) 이라는 조건문은 결국 A와 같으므로 (A and B) 부분을 제거할 수 있다.
둘째, 조건문의 길이가 늘어났는데도 WRA가 유의미하게 늘어나지 않으면 길이가 긴 조건문을 삭제한다. 예를 들어, A 와 A and B 라는 조건문이 찾아졌는데 A and B 의 조건문의 WRA가 A의 것보다 좋지 않다면 A and B 를 삭제한다.
본 발명의 실시예에 따른 제품 불량 원인 분석 장치가 출력하는 제품의 최종 불량 원인 조건문은 "~이면 불량이다."와 같은 형태를 갖는다. 예를 들어, 도 2의 공정 데이터에서는 "공정1-센서1의 값이 0이상, 4.0이하이고, 공정2-센서1의 값이 100이면 불량이다."와 같은 조건문이 출력될 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (10)
- 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 전처리부;
전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 탐색부; 및
1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 후처리부
를 포함하고,
탐색부는,
조건문에 들어가는 속성을 제한하는 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수를 포함하는 탐색 설정 값에 따라 1차 불량 원인 조건문을 탐색하고,
복수의 후보 해(candidate solution)를 포함하는 집단(population)을 구성하고 각 후보 해의 적합도(fitness)를 계산한 후 진화 연산을 통해 집단을 진화시키면서 최적의 해를 탐색하는 유전 알고리즘을 통해 1차 불량 원인 조건문을 출력하며,
복수의 후보 해에 대하여 0~1사이의 실수로 인코딩된 해를 머리, 몸통, 꼬리 테이블을 이용하여 연산자 및 조건식으로 변환시킨 후 순서대로 가능할 때까지 트리를 만든 후 1차 불량 원인 조건문으로 변환시키고,
해 적합도 계산을 통해 1차 불량 원인 조건문이 불량 원인을 나타내는 정도에 관하여 평가하는
제품 불량 원인 분석 장치. - 제1항에 있어서,
전처리부는,
제품의 식별자, 제품의 생산 흐름에 따라 수집된 센서 값을 포함하는 공정 데이터를 입력 받아 오류가 있는 공정 데이터는 제거하고, 연속적인 값을 가지는 속성 또는 복수의 종류의 값을 가지는 속성은 미리 정해진 수의 종류의 값으로 제한하는
제품 불량 원인 분석 장치. - 삭제
- 삭제
- 제1항에 있어서,
후처리부는,
1차 불량 원인 조건문을 입력 받아 각 1차 불량 원인 조건문에 대하여 중복되는 부분을 제거하고, 탐색부에서 계산된 해 적합도 계산 결과에 따라 조건문을 제거하는
제품 불량 원인 분석 장치. - 전처리부가 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 단계;
탐색부가 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 후보 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 단계; 및
후처리부가 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 단계
를 포함하고,
탐색부가 전처리된 공정 데이터를 이용하여 조건문을 탐색하기 위해 복수의 해에 대한 해 인코딩 및 디코딩과 해 적합도 계산을 통해 1차 불량 원인을 표현하는 1차 불량 원인 조건문을 탐색하고 출력하는 단계는,
조건문에 들어가는 속성을 제한하는 조건문의 최대 길이, 조건문을 탐색하기 위한 평가 횟수 및 1차 불량 원인 조건문을 표현하는 조건문의 개수를 포함하는 탐색 설정 값에 따라 1차 불량 원인 조건문을 탐색하고,
복수의 후보 해(candidate solution)를 포함하는 집단(population)을 구성하고 각 후보 해의 적합도(fitness)를 계산한 후 진화 연산을 통해 집단을 진화시키면서 최적의 해를 탐색하는 유전 알고리즘을 통해 1차 불량 원인 조건문을 출력하며,
복수의 후보 해에 대하여 0~1사이의 실수로 인코딩된 해를 머리, 몸통, 꼬리 테이블을 이용하여 연산자 및 조건식으로 변환시킨 후 순서대로 가능할 때까지 트리를 만든 후 1차 불량 원인 조건문으로 변환시키고,
해 적합도 계산을 통해 1차 불량 원인 조건문이 불량 원인을 나타내는 정도에 관하여 평가하는
제품 불량 원인 분석 방법. - 제6항에 있어서,
전처리부가 공정 데이터를 입력 받아 제품 불량 원인 분석을 위한 전처리를 수행하는 단계는,
제품의 식별자, 제품의 생산 흐름에 따라 수집된 센서 값을 포함하는 공정 데이터를 입력 받아 오류가 있는 공정 데이터는 제거하고, 연속적인 값을 가지는 속성 또는 복수의 종류의 값을 가지는 속성은 미리 정해진 수의 종류의 값으로 제한하는
제품 불량 원인 분석 방법. - 삭제
- 삭제
- 제6항에 있어서,
후처리부가 1차 불량 원인 조건문을 입력 받아 중복되는 조건문을 제거한 후 최종 불량 원인 조건문을 출력하는 단계는,
1차 불량 원인 조건문을 입력 받아 각 1차 불량 원인 조건문에 대하여 중복되는 부분을 제거하고, 탐색부에서 계산된 해 적합도 계산 결과에 따라 조건문을 제거하는
제품 불량 원인 분석 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200180169A KR102490281B1 (ko) | 2020-12-21 | 2020-12-21 | 제품 불량 원인 분석 방법 및 장치 |
US17/176,734 US11494375B2 (en) | 2020-12-21 | 2021-02-16 | Method and apparatus for analyzing cause of product defect |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200180169A KR102490281B1 (ko) | 2020-12-21 | 2020-12-21 | 제품 불량 원인 분석 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220089484A KR20220089484A (ko) | 2022-06-28 |
KR102490281B1 true KR102490281B1 (ko) | 2023-01-19 |
Family
ID=82022327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200180169A KR102490281B1 (ko) | 2020-12-21 | 2020-12-21 | 제품 불량 원인 분석 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11494375B2 (ko) |
KR (1) | KR102490281B1 (ko) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6996557B1 (en) * | 2000-02-15 | 2006-02-07 | International Business Machines Corporation | Method of optimizing SQL queries where a predicate matches nullable operands |
US7127467B2 (en) * | 2002-05-10 | 2006-10-24 | Oracle International Corporation | Managing expressions in a database system |
US7966315B2 (en) * | 2005-11-15 | 2011-06-21 | Vmware, Inc. | Multi-query optimization |
US8244765B2 (en) * | 2009-09-30 | 2012-08-14 | International Business Machines Corporation | Avoiding three-valued logic in predicates on dictionary-encoded data |
KR101508641B1 (ko) | 2013-08-08 | 2015-04-08 | 국립대학법인 울산과학기술대학교 산학협력단 | 생산 공정에서 데이터마이닝을 이용하여 제품 상태를 예측하는 장치 및 방법 |
US9256824B2 (en) * | 2013-08-12 | 2016-02-09 | International Business Machines Corporation | Guiding metaheuristic to search for best of worst |
KR102238648B1 (ko) | 2014-06-03 | 2021-04-09 | 삼성전자주식회사 | 반도체 공정 관리 시스템, 이를 포함하는 반도체 제조 시스템 및 반도체 제조 방법 |
JP6364332B2 (ja) * | 2014-11-19 | 2018-07-25 | 株式会社エヌ・ティ・ティ・データ | 仕様生成方法、仕様生成装置、及びプログラム |
US20160292188A1 (en) * | 2015-03-30 | 2016-10-06 | Uop Llc | Data cleansing system and method for inferring a feed composition |
KR102016812B1 (ko) * | 2017-11-24 | 2019-10-21 | 한국생산기술연구원 | 데이터 불균형 환경에서 머신러닝 모델을 통해 공정 불량 원인을 도출하고 시각화하는 방법 |
-
2020
- 2020-12-21 KR KR1020200180169A patent/KR102490281B1/ko active IP Right Grant
-
2021
- 2021-02-16 US US17/176,734 patent/US11494375B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20220197244A1 (en) | 2022-06-23 |
US11494375B2 (en) | 2022-11-08 |
KR20220089484A (ko) | 2022-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111639344B (zh) | 一种基于神经网络的漏洞检测方法及装置 | |
JP5946423B2 (ja) | システム・ログの分類方法、プログラム及びシステム | |
US9245233B2 (en) | Automatic detection of anomalies in graphs | |
CN109726185B (zh) | 一种基于语法树的日志解析方法、系统和计算机可读介质 | |
US20160255109A1 (en) | Detection method and apparatus | |
US20060184474A1 (en) | Data analysis apparatus, data analysis program, and data analysis method | |
TW201730786A (zh) | 執行以時間序列資料與分析資料當中的至少一部分作為輸入資料之分析處理的分析系統及分析方法 | |
CN115640159A (zh) | 一种微服务故障诊断方法及系统 | |
KR102490281B1 (ko) | 제품 불량 원인 분석 방법 및 장치 | |
WO2016093839A1 (en) | Structuring of semi-structured log messages | |
WO2024148880A1 (zh) | 一种基于多源异构数据的系统检测方法及装置 | |
Kim | Enhancing code clone detection using control flow graphs. | |
JP2006277282A (ja) | モデル評価解析システムおよびモデル評価解析プログラム | |
WO2011016281A2 (ja) | ベイジアンネットワーク構造学習のための情報処理装置及びプログラム | |
CN115062144A (zh) | 一种基于知识库和集成学习的日志异常检测方法与系统 | |
CN109710538B (zh) | 一种用于大规模系统中状态相关缺陷的静态检测方法 | |
KR20220091161A (ko) | 발생될 다음 이벤트를 예측하는 방법 및 디바이스 | |
KR102141834B1 (ko) | 데이터 필터 장치 및 그 동작 방법 | |
WO2020049622A1 (ja) | 情報処理装置、分析システム、分析方法及び分析プログラムが格納された非一時的なコンピュータ可読媒体 | |
KR102502648B1 (ko) | Rnn 인코더-디코더를 이용하여 시계열에서의 이상상황을 탐지하는 방법 및 장치 | |
KR20200044649A (ko) | 데이터 변화의 검출 및 표시를 위한 장치 및 방법 | |
KR102675682B1 (ko) | 변수들의 생성순서 결정을 위한 재현자료 자동 생성 시스템 및 방법 | |
WO2024161559A1 (ja) | 予測的プロセス監視装置、予測的プロセス監視方法及びプログラム | |
KR101290847B1 (ko) | 기 개발된 시스템의 소스코드를 기반으로 휘처모델을 생성하는 방법과 그 장치 | |
Stoffers et al. | Towards specificationless monitoring of provenance-emitting systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |