KR20210025796A - 기계 학습을 이용한 작물의 최대 생장 구현 방법 - Google Patents
기계 학습을 이용한 작물의 최대 생장 구현 방법 Download PDFInfo
- Publication number
- KR20210025796A KR20210025796A KR1020190105569A KR20190105569A KR20210025796A KR 20210025796 A KR20210025796 A KR 20210025796A KR 1020190105569 A KR1020190105569 A KR 1020190105569A KR 20190105569 A KR20190105569 A KR 20190105569A KR 20210025796 A KR20210025796 A KR 20210025796A
- Authority
- KR
- South Korea
- Prior art keywords
- information
- crop growth
- machine learning
- crop
- growth
- Prior art date
Links
- 230000012010 growth Effects 0.000 title claims abstract description 197
- 238000000034 method Methods 0.000 title claims abstract description 78
- 238000010801 machine learning Methods 0.000 title claims abstract description 67
- 230000007613 environmental effect Effects 0.000 claims description 106
- 238000003860 storage Methods 0.000 claims description 19
- 235000013399 edible fruits Nutrition 0.000 claims description 8
- 239000002689 soil Substances 0.000 claims description 6
- 238000010835 comparative analysis Methods 0.000 claims description 5
- 238000013527 convolutional neural network Methods 0.000 claims description 5
- 238000005259 measurement Methods 0.000 claims description 5
- 238000004088 simulation Methods 0.000 claims description 4
- 238000012804 iterative process Methods 0.000 claims description 3
- 230000008635 plant growth Effects 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 1
- 230000002787 reinforcement Effects 0.000 abstract description 22
- 230000001939 inductive effect Effects 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 13
- 238000013528 artificial neural network Methods 0.000 description 9
- 238000012272 crop production Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000012364 cultivation method Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 238000002604 ultrasonography Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 235000012055 fruits and vegetables Nutrition 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/02—Agriculture; Fishing; Forestry; Mining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Marine Sciences & Fisheries (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mining & Mineral Resources (AREA)
- General Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Animal Husbandry (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Agronomy & Crop Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
본 발명은 기계학습을 이용하여 장소와 시간에 구애 받지 않고 작물의 최대생장을 이루어낼 수 있는 학습 방법을 제시하고 있으며, 기계학습을 이용한 작물의 최대생장 유도방법은 지도학습을 통해 보편적인 작물 데이터를 학습하고 강화학습을 통해 원하는 환경에서의 작물의 최대 생장을 이루어낼 수 있는 방법을 제공할 수 있다.
Description
본 발명은 기계학습을 이용한 작물의 최대 생장 구현 방법에 관한 것으로서, 보다 상세하게는, 어느 하나의 작물에 구애 받지 않고, 다양한 환경에서 다양한 작물의 최대 생장을 이루어 낼 수 있는 방법에 관한 것이다.
일반적으로, 원예시설에서 재배되는 작물은 "생명체"이기 때문에 아무리 정밀하게 주기관리를 하더라도 작물마다 자라는 속도, 폭과 높이, 외형 형태, 예를 들면 열리는 과채의 수와 자라는 위치나 성숙도, 질병의 유무 등에서 일치하는 것이 하나도 없다(이하 이러한 특징을 작물 개체의 "비정형성"이라 칭하기로 함). 작물의 생산성과 품질을 높이기 위해서는 시설 내부의 재배작물 전체를 고려한 거시적 관리도 필요하지만 궁극적으로는 시설 내부의 작물 하나하나를 모니터링하고 적절하게 관리하거나 과채를 수확하는 미시적 관리가 필수적이다.
때문에 종래에는 다양한 작물 모니터링 장치가 존재하며, 특정 작물에 대해서 최적의 생장환경을 제공하기 위한 방법이나 장치가 다수 존재하고 있다.
그런데 이러한 작물 개체의 비정형성 때문에, 현재로서는 원예시설 작물을 개체 별로 다루는 미시적 관리는 완전히 작업자의 감각에 의존할 수밖에 없고, 이로 인해, 종래의 시설작물의 모니터링은 농민이 직접 시설에 들어가서 눈으로 확인해야만 된다.
하지만, 이러한 경우 시설작물은 대부분 고온 다습한 환경에서 자라게 되고, 모니터링을 위해 직접 시설에 접근해야 하므로 작업자의 피로도가 상승하게 된다. 또한, 시설작물의 위치가 원거리인 경우 이동을 위한 시간, 비용, 체력 등과 같은 요소들의 소모가 증가하게 된다.
또한, 스마트팜을 통한 최적의 생장환경을 제공하기 위한 방법이 존재하고 있다. 하지만, 스마트팜 기술은 예를 들어, 네덜란드에 특화된 작물재배방법 데이터베이스를 바탕으로 한국에서 작물들을 기르고 있는 실정으로, 이 알고리즘은 네덜란드 환경에 특화된 것이지 한국환경에는 맞지 않는 경우가 존재하였다.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 특정 환경에 특화된 작물 데이터 베이스에 구애 받지 않는 언제 어디에서나 작물의 최대생장을 이루어 내는 방법을 제공하는데 그 목적이 있다.
나아가, 본 발명의 기계학습방법을 이용한 작물의 최대생장 유도방법은 지도학습을 통해 보편적인 작물 데이터 베이스를 학습하고 강화학습을 통해 원하는 환경에서의 작물의 최대 생장을 이루어낼 수 있는 방법을 제공하는데 그 목적이 있다.
서버에 의해 수행되는, 기계학습을 이용한 작물의 최대 생장 구현 방법에 있어서, (a) 환경정보, 작물생장 정보, 환경제어 정보로 구성되는 복수의 작물 생장 데이터 셋을 구축하는 단계; (b) 구축된 작물 생장 데이터 셋 내에서 환경정보, 작물생장 정보를 입력 값, 환경제어 정보를 출력 값으로 하여 기계학습 하고, 상기 기계학습을 통해 획득한 인공망을 저장하는 단계; (c) 실제 작물을 생장시키기 위한 장소에서 획득한 환경정보 및 작물 생장 정보를 상기 저장된 인공망에 통과시켜 환경제어정보를 출력 값으로 도출하는 단계; (d) 상기 환경제어정보를 기초로 상기 장소에 배치된 제어장치들을 제어하여 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득하는 단계; 및 (e) 상기 (c) 내지 (d) 단계를 반복수행 하되, 이전 단계의 리워드 또는 페널티를 이용하여 이전에 저장된 인공망을 업데이트하여 다음 단계의 기계학습 수행 시에 반영하는 단계; 를 포함할 수 있다.
이때, 상기 (a) 단계는, 상기 기계학습을 수행함에 있어서, 복수의 작물에 대한 상기 환경 정보와 상기 작물 생장 정보를 입력정보로 설정하고, 상기 환경 제어 정보를 출력정보로 설정하는 것이고, 상기 복수의 작물 생장 데이터 셋을 구성함에 있어서, 각 정보 별로 측정 단위에 따라 기 설정된 기준에 의해 분류하여 구성될 수 있다.
상기 환경 정보는 외부의 온도, 습도, 토양의 산성도 중 어느 하나 이상을 포함하는 정보인 것이고, 상기 서버의 저장부는, 상기 환경제어 정보에 기초하여 환경을 제어하였을 때, 기대할 수 있는 작물 생장 기대치를 포함할 수 있다.
상기 (e) 단계는, (e-1) 실제 작물을 생장시키기 위한 장소에서 추출한 제 n 환경 정보 및 작물 생장 정보를 입력 받는 단계; (e-2) 상기 제 n 환경 정보 및 작물 생장 정보에 대응하는 제 n 환경 제어 정보를 도출하는 단계; 및 (e-3) 상기 제 n 환경 제어 정보에 따라, 상기 장소에 설치된 복수의 환경 제어 장치를 제어한 뒤, 작물에 대한 제 n+1 작물 생장 정보를 수집하는 단계; 를 포함하되, 상기 n은 자연수이고, 최초 입력 받는 상기 제 n 환경 정보 및 작물 생장 정보는 제 1 환경 정보 및 작물 생장 정보가 될 수 있다.
상기 (e-1) 단계 내지 (e-3) 단계는, 기 설정된 시간 동안, 상기 n을 상향 카운팅 하면서 기 설정된 횟수만큼 반복 수행할 수 있으며, 반복수행 후, (e-4) 상기 제 1 환경 정보 및 작물 생장 정보에 대응하는 서버의 저장부 내 작물 생장 기대치와 상기 제 n+1 작물 생장 정보를 비교 분석하여 리워드 및 페널티를 획득하는 단계; 와 (e-5) 이전 리워드 및 패널티를 기반으로 강화학습의 인공망을 업데이트 하는 단계; 를 더 포함할 수 있다.
이때, (e-4) 단계는, 비교 분석을 수행하되, 상기 제 n+1 작물 생장 정보와 상기 제 1 작물 생장 정보 간의 차이가 상기 작물 생장 기대치보다 높은 경우, 기 설정된 기준에 따라 보상을 제공하는 단계; 및 상기 작물 생장 기대치보다 낮은 경우, 기 설정된 기준에 따라 페널티를 제공하는 단계를 더 포함할 수 있으며, 상기 반복 수행 과정에 포함되어, 수행될 수 있다.
상기 보상을 제공하는 단계는 상기 (e-1) 내지 (e-3) 단계 수행 시, 기존의 환경 제어 정보가 유지되도록 하는 가중치를 제공하는 것이고, 상기 페널티를 제공하는 단계는, 상기 (e-1) 내지 (e-3) 단계 수행 시, 기존의 환경 제어 정보가 변경되도록 하는 가중치를 제공할 수 있다.
상기 작물 생장 기대치 및 상기 작물 생장 정보는, 줄기의 굵기, 잎의 크기, 열매의 크기, 열매의 개수 중 어느 하나 이상을 포함하는 정보가 될 수 있으며, 상기 작물 생장 정보는, 카메라모듈 또는 센서모듈로부터 수집된 작물에 대한 이미지를 수신하고, 상기 이미지에 대해 convolutional neural networks 학습 및 분석을 수행할 수 있다.
또한, 상기 (d-2) 단계는, 추가 실시예(추가 아이디어)에 관한 것으로서, 상기 제 n 환경 제어 정보를 도출함에 있어서, 상기 작물 생장 데이터 셋 중 작물에 대한 생장 기대치가 가장 높은 작물 생장 데이터 셋의 환경 제어 정보로 도출할 수 있고, 상기 작물의 생장에 대한 시뮬레이션에 기초하여, 상기 작물 생장 데이터 셋 중 작물에 대한 생장 기대치가 가장 높은 작물 생장 데이터 셋의 환경 제어 정보로 도출할 수 있다.
아울러, 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하는 서버는, 기계학습을 이용한 작물의 최대 생장 구현 프로그램이 저장된 메모리; 및 상기 프로그램을 실행하는 프로세서를 포함하되, 상기 프로세서는 상기 프로그램의 실행에 따라, 환경정보, 작물생장 정보, 환경제어 정보로 구성되는 복수의 작물 생장 데이터 셋을 구축하고, 구축된 작물 생장 데이터 셋을 기반으로 기계학습하여 학습된 인공망을 다른 기계학습의 초기 인공망으로 사용하고, 실제 작물을 생장시키기 위한 장소에서 획득한 환경정보 및 작물 생장 정보를 입력 값으로 하여 기계학습을 수행함으로써 환경제어정보를 출력 값으로 도출하고, 상기 환경제어정보를 기초로 상기 장소에 배치된 제어장치들을 제어하여 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득하고, 상기 환경정보와 작물 생장 정보에 대응하는 환경제어정보를 출력 값으로 도출하고, 상기 환경제어정보를 기초로 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득하는 과정을 반복 수행하되, 기 설정된 시점에서 이전 단계의 리워드 또는 페널티를 통해 상기 인공망을 업데이트 하고 다음 단계의 기계학습 수행 시에 반영할 수 있다.
본 발명은 기계학습을 이용하여 보편적인 작물 재배 방법 데이터베이스를 수정하여 장소와 시간에 구애 받지 않고 작물의 최대생장을 이루어낼 수 있는 학습 방법을 제시하고 있으며, 기계학습을 이용한 작물의 최대생장 유도방법은 지도학습을 통해 보편적인 작물 데이터를 학습하고 강화학습을 통해 원하는 환경에서의 작물의 최대 생장을 이루어낼 수 있는 방법을 제공할 수 있다.
또한, 리워드 값에 에너지 소모량과 관련된 항을 추가하면 작물 생산에 소모되는 에너지 소모량의 최소화 또한 이루어 낼 수 있다. 이 외에도 작물 생산과 관련된 다양한 부분을 기계학습으로 최적화 시킬 수 있다.
아울러, 지도학습을 통해, 특정 환경에 맞게 데이터를 학습한 뒤, 강화학습을 통해 특정 환경이 아닌 현재 환경에 맞게 데이터를 구축하는 것이 가능할 수 있다.
도 1은, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하는 시스템에 대한 구조도 이다.
도 2은, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하는 서버의 구조에 대한 블록도 이다.
도 3은, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 설명하기 위한 순서도 이다.
도 4는 본 발명의 일 실시예에 따르는 강화학습을 설명하기 위한 개념도이다.
도 2은, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하는 서버의 구조에 대한 블록도 이다.
도 3은, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 설명하기 위한 순서도 이다.
도 4는 본 발명의 일 실시예에 따르는 강화학습을 설명하기 위한 개념도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. 한편, '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, '~부'는 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
이하에서 언급되는 "단말"은 네트워크를 통해 서버나 타 단말에 접속할 수 있는 컴퓨터나 휴대용 단말기로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), VR HMD(예를 들어, HTC VIVE, Oculus Rift, GearVR, DayDream, PSVR 등)등을 포함할 수 있다. 여기서, VR HMD 는 PC용 (예를 들어, HTC VIVE, Oculus Rift, FOVE, Deepon 등)과 모바일용(예를 들어, GearVR, DayDream, 폭풍마경, 구글 카드보드 등) 그리고 콘솔용(PSVR)과 독립적으로 구현되는 Stand Alone 모델(예를 들어, Deepon, PICO 등) 등을 모두 포함한다. 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 스마트폰(smart phone), 태블릿 PC, 웨어러블 디바이스뿐만 아니라, 블루투스(BLE, Bluetooth Low Energy), NFC, RFID, 초음파(Ultrasonic), 적외선, 와이파이(WiFi), 라이파이(LiFi) 등의 통신 모듈을 탑재한 각종 디바이스를 포함할 수 있다. 또한, "네트워크"는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷 (WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 블루투스 통신, 적외선 통신, 초음파 통신, 가시광 통신(VLC: Visible Light Communication), 라이파이(LiFi) 등이 포함되나 이에 한정되지는 않는다.
이하 도 1을 참조하여, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하기 위한 시스템에 대해 구체적으로 설명한다.
본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하기 위한 시스템(10)은, 서버(100), 환경제어기기(200), 센서 모듈(300) 및 카메라 모듈(400)을 포함할 수 있으며, 유/무선 네트워크를 통해 통신연결 되어 있을 수 있다.
본 발명의 일 실시예에 따르는 서버(100)는, 기계학습을 이용한 작물의 최대 생장 구현 프로그램이 저장된 메모리 및 프로그램을 실행하는 프로세서를 포함할 수 있으며, 프로세서는 프로그램의 실행에 따라 환경정보, 작물생장 정보, 환경제어 정보를 포함하는 데이터를 제공받고, 기계 학습을 수행하여 복수의 작물 생장 데이터 셋을 구성하고, 제 n 환경 정보 및 작물 생장 정보를 입력 받고, 작물 생장 데이터 셋에 기초하여, 제 n 환경 정보 및 작물 생장 정보에 대응하는 제 n 환경 제어 정보를 도출할 수 있다.
이때, 제 n 환경 제어 정보에 따라, 복수의 환경 제어 장치를 제어한 뒤, 작물에 대한 제 n+1 작물 생장 정보를 수집하되, n은 자연수이고, 최초 입력 받는 상기 제 n 환경 정보 및 작물 생장 정보는 제 1 환경 정보 및 작물 생장 정보가 될 수 있다.
본 발명의 일 실시예에 따르는, 환경제어기기(200)는, 작물이 생장하는 환경을 제어하는 기기로써, 온도, 습도, 토양의 산성도 등을 제어할 수 있는 모든 기기가 될 수 있다.
환경제어기기(200)는, 서버(100)로부터 수신한 환경제어정보에 기초하여, 동작할 수 있으며, 환경제어정보에 포함된 특정 수치에 도달하도록 동작할 수 있다.
본 발명의 일 실시예에 따르는 센서 모듈(300)은, 작물의 생장 정도를 수집하여 서버(100)로 제공할 수 있으며, 생장정보 이외에도, 온도, 습도 및 토양의 산성도 등을 확인할 수 있는 센서를 포함할 수 있으며, 서버(100)와 유/무선 네트워크로 연결되어 지속적으로 정보를 제공할 수 있다.
본 발명의 일 실시예에 따르는, 카메라 모듈(400)은, 작물의 생장 정보를 판단 할 수 있는 잎 크기, 줄기 굵기, 색깔 및 열매 갯 수 등에 대한 정보를 이미지 또는 영상으로 서버(100)에 제공할 수 있다.
즉, 센서 모듈(300) 및 카메라 모듈(400)로부터 서버(100)는 지속적으로 이미지, 영상 또는 정보를 수신할 수 있으며, 수신된 이미지, 영상 또는 정보는 서버(100)에 저장될 수 있으며, 기계학습을 위한 데이터로 사용될 수 있다.
이하, 도 2를 참조 하며, 본 발명의 일 실시예에 따르는, 서버에 대해 구체적으로 설명한다.
본 발명의 일 실시예에 따르는, 서버(100)는, 저장부(110), 학습부(120), 통신부(130) 및 제어부(140)를 포함할 수 있다.
저장부(110)는 종래의 여러 작물에 대한 데이터를 저장하고, 본 발명의 일 실시예에 따라 생성되는 데이터 셋을 저장할 수 있다.
본 발명의 일 실시예에 따르는, 서버(100)의 저장부(110)는 환경정보, 작물생장 정보, 환경제어 정보를 포함하는 데이터를 제공 받아 저장할 수 있으며, 작물 생장 데이터 셋을 구성하기 위한 기초 데이터로 활용될 수 있다.
또한, 본 발명의 일 실시예에 따르는, 학습부(120)는, 저장부(110)에 기 저장된 보편적인 작물 데이터를 기반으로 구축된 작물 생장 데이터 셋을 학습하여 생육환경을 제어할 기준을 알아낼 수 있다.
저장부(110)에 기 저장된 작물 데이터를 학습부(120)로 제공하면, 기존의 여러 작물 데이터를 기반으로 하여, 데이터 셋을 생성하고, 지도 학습을 수행하여 환경제어정보를 분류할 수 있다.
이때, 기계학습을 위한 데이터는 환경정보와 작물 생장 정보가 입력 정보가 될 수 있으며, 환경 제어 정보가 출력정보가 될 수 있다.
또한, 환경 제어정보를 분류함에 있어서, 분류 간격은 각각의 정보 별로 측정 단위에 따라 기 설정된 기준에 의해 분류하여 구성될 수 있으며, 분류 간격 및 기준은 사용자의 필요에 따라 다양하게 조절할 수 있다.
예를 들어, 온도에 대한 환경 제어정보는 섭씨 온도 1도 간격 또는 0.5도 간격으로 분류할 수 있으며, 습도 및 토양의 산성도 역시 측정 단위에 따라 사용자가 원하는 간격으로 조절하여, 분류하는 것이 가능할 수 있다. 혹은, 분류하지 않고 연속적인 값으로 사용할 수도 있다.
위와 같이 학습부(120)에서 작물 데이터 셋에 기초하여, 학습된 지도학습 인공망은 본 발명의 일 실시예에 따라 수행되는 기계학습의 초기 학습정보로 사용될 수 있다.
본 발명의 일 실시예에 따르는 통신부(130)는, 서버(100)와 환경제어기기(200), 센서 모듈(300) 및 카메라 모듈(400)간의 통신을 수행할 수 있다.
즉, 센서 모듈(300) 및 카메라 모듈(400)을 통해 수집된 환경정보 및 작물생장 정보를 수신하고, 이를 학습부(120)로 제공할 수 있다. 여기서, 학습부(120)는 통신부(130)로부터 수신한 정보를 입력 값으로 설정하여, 환경 제어정보를 출력 값으로 획득할 수 있다.
또한, 통신부(130)는 학습부(120)로 제공하는 정보를 저장부(110)로도 제공하여, 지속적으로 데이터를 수집할 수 있도록 할 수 있다.
본 발명의 일 실시예에 따르는, 제어부(140)는 환경제어기기(200)를 제어하기 위한 신호를 제공하여, 각각의 환경제어기기들을 제어할 수 있다.
즉, 학습부(120)로부터 학습되어 획득한 출력 값인, 환경 제어정보를 수신하고, 이에 대응하는 제어 신호를 환경제어기기(200)로 제공하여, 환경제어기기(200)를 제어할 수 있다.
이하, 도 3을 참조하여, 본 발명의 일 실시예에 따르는, 기계학습을 이용한 작물의 최대 생장 구현 방법에 대해 구체적으로 설명한다.
환경정보, 작물생장 정보, 환경제어 정보로 구성되는 복수의 작물 생장 데이터 셋을 구축할 수 있다(S510).
이때, 환경정보, 작물생장 정보, 환경제어 정보를 포함하는 작물 데이터는 저장부(110)에 기 저장된 데이터가 될 수 있으며, 작물 데이터의 환경 정보는 외부의 온도, 습도, 토양의 산성도 중 어느 하나 이상을 포함하는 정보가 될 수 있다.
본 발명의 일 실시예에 따라, 기계학습을 수행함에 있어서, 복수의 작물에 대한 환경 정보와 작물 생장 정보를 입력정보로 설정하고, 환경 제어 정보를 출력정보로 설정하여, 기계학습을 수행할 수 있다.
또한, 복수의 작물 생장 데이터 셋은 각 정보 별로 측정 단위에 따라 기 설정된 기준에 의해 분류하여 구성되되, 단위에 따른 기준은 사용자가 필요에 따라 개별적으로 상이하게 설정하는 것이 가능할 수 있다.
아울러, 저장부(110)는 각각의 작물 생장 데이터 셋 내의 환경제어 정보에 기초하여 환경을 제어하였을 때, 기대할 수 있는 작물 생장 기대치를 포함할 수 있다. 이때, 기대치는 사람에 의해 임의로 기 설정된 하이퍼 파라미터가 될 수 있다.
분류되어 구성된 복수의 작물 생장 데이터 셋은 서버(100)의 저장부(110)에 저장될 수 있다.
실제 작물을 생장시키기 위한 장소에서 획득한 환경정보 및 작물 생장 정보를 기계학습 된 인공망을 통과시킴으로써 환경제어정보를 출력 값으로 도출할 수 있다(S520).
작물의 생장을 위해, 작물 생장 데이터 셋을 구성하고, 특정 작물의 생장환경 조성을 위해, 현재 작물의 상태인 작물 생장정보 및 작물을 생장시킬 환경에 대한 정보를 센서 모듈(300) 및 카메라 모듈(400)을 통해 입력 받을 수 있다.
최초 입력 받은 환경 정보 및 작물 생장 정보는 제 1 환경 정보 및 작물 생장 정보가 될 수 있으며, 반복 수행되는 과정에서 변경되는 정보 이므로, 본 명세서에서는 제 n 이라는 자연수를 사용하여 표기 하였다.
서버(100)는, 기계학습 인공망을 통하여, 제 n 환경 정보 및 작물 생장 정보에 대응하는 제 n 환경 제어 정보를 도출할 수 있다.
본 발명의 일 실시예에 따라, 센서 모듈(300) 및 카메라 모듈(400)로부터 수신한 제 n 환경 정보 및 작물 생장 정보를, 기게학습의 인공망에 대하여, 입력 값으로 환경 정보 및 작물 생장 정보를 넣어 이에 대응하는 환경 제어 정보를 도출할 수 있다.
즉, 작물 생장 정보는 카메라모듈 또는 센서모듈로부터 수집된 작물에 대한 이미지 또는 영상을 수신한 것이고, 이미지 또는 영상에 대해 convolutional neural networks 학습 및 분석을 수행할 수 있다.
CNN(convolutional neural networks) 기계 학습 방법은, 이미지의 공간 정보를 유지하면서 인접 이미지와의 특징을 효과적으로 인식하고 강조하는 방식으로 이미지의 특징을 추출하는 부분과 이미지를 분류하는 부분으로 구성되는 보편적인 방법이므로 자세한 설명은 생략한다.
본 발명의 추가 실시예(추가 아이디어)로써, 제 n 환경 제어 정보를 도출함에 있어서, 작물의 생장에 대한 시뮬레이션에 기초하여 도출할 수 있다.
예를 들어, 작물 생장 데이터 셋 중 제 n 환경 제어 정보를 도출하기 위한 정보인, 제 n 환경 정보 및 작물 생장 정보에 대응하는 복수의 작물 생장 데이터 셋들을 추출하고, 추출된 복수의 작물 생장 데이터 셋에 대해 시뮬레이션을 진행하여, 작물에 대한 생장 기대치가 가장 높은 작물 생장 데이터 셋의 환경 제어 정보로 도출할 수 있다.
이후, 도출된 제 n 환경 제어 정보에 따라, 복수의 환경 제어 장치를 제어한 뒤, 작물에 대한 제 n+1 작물 생장 정보를 수집할 수 있다.
상술한 n 환경 제어 정보 도출 및 n+1 작물 생장 정보를 수집하는 과정에 대해 기 설정된 횟수만큼의 반복 수행이 수행된 후, 제 1 환경 정보 및 작물 생장 정보에 대응하는 작물 생장 기대치와 상기 제 n+1 작물 생장 정보를 비교 분석할 수 있다.
실제 작물을 생장시키기 위한 장소에서 획득한 환경정보 및 작물 생장 정보를 인공망에 통과시켜 환경제어정보를 출력 값으로 도출할 수 있다(S530).
환경제어정보를 기초로 장소에 배치된 제어장치들을 제어하여 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득할 수 있다(S540).
이후, (S530) 내지 (S540) 단계를 반복수행 하되, 이전 단계의 리워드 또는 페널티를 다음 단계의 기계학습 수행 시에 반영할 수 있다(S550).
비교 분석을 수행함에 있어서, 제 n+1 작물 생장 정보와 상기 제 1 작물 생장 정보 간의 차이가 상기 작물 생장 기대치보다 높은 경우, 기 설정된 기준에 따라 보상을 제공할 수 있으며, 작물 생장 기대치보다 낮은 경우, 기 설정된 기준에 따라 페널티를 제공할 수 있다.
이때, 보상을 제공하는 단계는 (S530)~(S540) 단계 수행 시, 기존의 환경 제어 정보가 유지되도록 하는 가중치를 제공할 수 있으며, 페널티를 제공하는 단계는, (S530)~(S540) 단계 수행 시, 기존의 환경 제어 정보가 변경되도록 하는 가중치를 제공할 수 있다.
또한, 비교 분석 시 사용되는 작물 생장 기대치 및 작물 생장 정보는, 줄기의 굵기, 잎의 크기, 열매의 크기, 열매의 개수 중 어느 하나 이상을 포함하는 정보가 될 수 있으나, 이는 본 발명의 일 실시예를 설명하기 위한 예시에 불과하며, 작물의 종류에 따라, 상이한 기준으로 비교 분석 할 수 있음은 당업자에게 자명한 기술적 특징이다.
(S530) 내지 (S540) 단계를 반복 수행하여, 얻어진, 복수의 환경 정보, 작물 생장 정보 및 환경 제어 정보는 (S550) 단계를 통해 저장부(110)에 저장됨과 동시에 지정된 시점에 학습부(120)를 통해 추가적인 강화 학습이 진행되어, 기존의 인공망에 대한 보완, 수정이 수행될 수 있다.
강화 학습을 통해 지속적으로 기계학습 인공망이 업데이트 될 수 있으며, 이로 인해, 작물에 대한 최대 생장 구현이 가능할 수 있다.
본 발명의 일 실시예에 따르는 강화 학습은(reinforcement learning)은 입력 값에 따른 출력 값을 랜덤하게 바꿔가면서 테스트를 한 뒤 결과를 토대로 리워드 및 패널티를 주면서 최적화된 값을 찾아가는 과정이 될 수 있다.
예를 들어, 입력 값으로 1을 줬을 때 출력 값이 1인 경우, 2인 경우, 3인 경우 중 가장 결과가 좋게 나오는 출력 값을 찾아서 다음 입력 값이 1이 들어왔을 때 최적화된 출력 값을 얻는 방법이다. 즉, 결과가 좋으면 리워드를 줘서 다음 번에 비슷한 입력이 들어오면 비슷한 출력이 일어나게 유도하고 결과가 나쁘면 패널티를 줘서 다음 번에 비슷한 입력이 들어오면 다른 출력 값을 유도하는 과정이 될 수 있다.
하지만, 이때 초기 값이 없다면 강화 학습은 입력 값이 들어오면 완전 랜덤한 출력 값을 도출하게 되며, 이러한 경우 학습과정에 소요되는 시간이 길어지게 되어 레퍼런스를 줘서 초기 학습에 도움을 주게 되는데, 본 발명의 일 실시예에서는 작물 데이터 및 지도 학습 결과를 레퍼런스로 사용할 수 있다.
지도 학습은, 예를 들어 입력 값이 1일 때 출력 값이 1, 입력 값이 2일 때 출력 값이 2라는 데이터가 존재한다고 하면, 기계학습의 neural network에 1이라는 입력 값을 줬을 때 1과 비슷한 값이 나오게, 2라는 입력을 줬을 때 출력으로 2와 비슷한 값이 출력되도록 neural network의 hidden(weight)값을 조정하여 최대한 정답에 가깝게 학습을 시킬 수 있다.
강화학습에 필요한 레퍼런스를 획득하고, 획득한 레퍼런스를 강화학습의 초기학습에 사용할 수 있다.
예를 들어 입력 값에 1을 주면 연산을 통해 출력 값으로 1과 비슷한 값이 도출될 수 있다(1을 넣으면 1이 나온다는 정답지를 학습). 하지만 정답지보다 더 좋은 결과를 내는 새로운 정답지가 있을 수도 있으므로 새로운 정답지를 찾는 과정이 강화학습이 될 수 있다.
예를 들어, 전술한 바와 같이 1을 입력하면 1과 비슷한 값이 출력될 수 있다(기존 정답지). 다르게 말하면 1이 나올 확률이 가장 높을 수 있다. 하지만 e-greedy와 같은 방법으로 1이외의 값이 나올 확률을 높여줘서 1외의 다른 출력 값을 도출시킬 수 있다.
E-greedy란 각각의 출력 값이 나올 확률에 랜덤한 확률을 추가로 더해줘서 가장 높은 확률의 출력 값 이외의 다른 출력 값들도 가끔 도출되게 해주는 방법이다.
이렇게 도출된 새로운 출력 값을 통해 새로운 결과를 얻게 될 수 있으며, 이때, 결과에 따른 리워드 또는 패널티를 줘서 연산 부분을 업데이트 시킬 수 있다. 즉, 1이라는 입력을 받았을 때 1이 나올 확률이 가장 높지만 e-greedy를 통해 2가 출력되었다고 가정하면, 2라는 출력에 따른 결과가 좋은 경우, 리워드를 줘서 다음에 1이 입력되었을 때 2가 출력될 확률을 조금 더 높일 수 있게 연산 부분을 업데이트 시킬 수 있다.
반대로 결과가 나쁘면 패널티를 줘서 다음에 1이 입력되었을 때 2가 출력될 확률을 더 낮추게 연산 부분을 업데이트 시킬 수 있다. 이러한 과정으로 강화학습을 반복하면 결과적으로 가장 결과가 잘 나오는 입력 값에 따른 출력 값의 확률은 매우 높게 나오고 결과가 나쁜 입력에 따른 출력 값들은 낮게 나오게 연산 부분이 완성될 수 있다.
본 발명의 추가 실시예로써, 단순히 작물의 생장 정도에 따라 보상을 제공할 수도 있다.
본 발명의 추가 실시예에 따라, (S550) 단계는, 반복 수행 과정에 포함되어 수행되는 것이 가능할 수 있다.
(S530) 내지 (S540) 단계의 반복마다 혹은 기 설정된 반복 수행 횟수보다 짧은 주기로 (S550) 단계를 수행하여, 강화 학습을 위한 데이터 수집을 보다 효율적으로 수행하는 것이 가능할 수 있다.
예를 들어, (S530) 내지 (S540) 단계에 대한 반복 수행 횟수를 10회로 설정하고, (S530) 내지 (S540) 단계가 수행되는데 3일이 소요된다고 가정하면, (S550) 단계는 최초 (S530) 단계가 수행된 이후 30일이 경과한 시점에서 수행될 수 있으며, 강화 학습을 위한 보상 및 패널티에 대한 인공망 업데이트는 30일에 한 번 진행되므로, 데이터를 얻는데 많은 시간이 소요 될 수 있다.
하지만, (S530) 내지 (S540) 단계가 1회 수행될 때 마다 (S550) 단계를 수행하는 방법이나, 반복 수행 횟수가 10회 이므로 (S530) 내지 (S540) 단계가 2회 수행될 때 (S550)단계를 1회 수행하는 형태로 반복 수행에 대한 루틴을 설정하게 되면, 강화 학습에 의한 인공망 업데이트가 3일 또는 6일 주기로 수행될 수 있으며, 최적화를 위한 학습시간이 현저히 단축될 수 있다.
즉, 본 발명의 일 실시예에 따라, 작물을 생장 시키게 되면, 작물의 최대 성장을 구현할 수 있으며, 작물 생산에 소모되는 에너지 소모량은 최소화할 수 있다.
기존의 환경 제어 방식이 반복되는 경우, 기 저장된 작물 데이터에서 크게 개선되는 사항이 없기 때문에, 기존의 환경 제어 방식과 상이한 환경 제어 방식을 적용하기 위해 e-greedy와 같은 랜덤성을 부여하는 알고리즘을 사용할 수 있다.
이하, 도 4를 참조하여, 본 발명의 일 실시예에 따라 반복 수행되는 강화학습에 대해 구체적으로 설명한다.
본 발명의 일 실시예에 따라, 환경정보와 작물생장 정보를 바탕으로 환경을 제어하는 정보는 기 저장된 데이터 셋이며, 예를 들어, '온도가 25도이고 작물의 크기가 5cm일때는 물을 하루에 1L주어라'라고 하는 데이터 셋이 이미 있고 이를 데이터 셋으로 이용하여 지도학습을 통해 학습하는 것은 neural network의 weight값이 될 수 있다.
즉, 환경정보와 작물생장 정보가 있을 때 어떤식으로 환경을 제어할 것인가 라는 정답지가 이미 있고 이 정답지를 기반으로 지도학습을 한 뒤 환경정보와 작물생장 정보를 입력으로 넣었을 때 정답지 없이도 최대한 정답지에 가까운 정답을 내는 것을 목적으로 할 수 있다.
지도학습을 통해 학습된 인공망은 강화학습의 초기값으로 사용될 weight가 될 수 있다.
학습된 weight를 강화학습 부분의 초기weight로 사용할 수 있다. 강화학습에는 도 4에 도시된 바와 같이 환경제어기기, 제어정보, 생장정보 및 리워드 또는 패널티가 존재할 수 있다.
즉, 입력으로 작물의 생장정보와 환경정보가 입력되면 앞서 지도학습을 통해 얻은 neural network를 통과하여 환경제어 정보를 얻을 수 있다.
제어정보를 통해 제어기를 제어한 뒤 센서를 통해 얻은 작물 생장 정도와 에너지 사용량 등으로 적절한 리워드 또는 패널티를 제공할 수 있으며, 리워드 또는 패널티를 제공하는 과정 까지가 1step이 될 수 있다.
1step이 복수회 반복 수행될 수 있으며, 반복 수행 중 기 설정된 특정 규칙에 도달하면 반복과정이 종료되고, 반복된 step의 집합을 episode라고 할때, 1episode가 수행된 후 해당 episode안에 포함된 매 step별 reward를 계산할 수 있다.
이 리워드 또는 패널티 값을 토대로 앞선 neural network의 weight값을 수정할 수 있으며, 각 episode가 수행될 때 마다 수정을 할 수도 있고 정해놓은 episode개수가 충족되었을 때 수정할 수도 있다.
예를 들어, 10분에 한번씩 작물과 환경정보를 통해 제어 값을 얻는 경우, 얻은 제어 값으로 환경을 제어하고 그 결과 얻어진 리워드 또는 패널티를 저장하는 과정이 1step이 될 수 있다.
10분마다 이렇게 step이 반복되고 작물이 다 자랐다고 판단이 될 때 반복과정을 끝내기로 정했다면 대략 1달 뒤 작물이 다 자랐을 때 반복과정이 종료되는 시기까지가 episode가 될 수 있다.
각 episode안에 복수의 step들에 포함되어 있는 리워드 또는 패널티를 특정 규칙에 의해 계산하고, 이렇게 episode를 반복하여 정해놓은 episode수, 예를 들어, 5번의 episode마다 weight를 수정하겠다고 정했으면 5번의 episode가 반복될 때 마다 weight를 리워드 또는 패널티 값을 기반으로 수정하고, 수정과정이 반복되면 본 발명의 일 실시예에 따르는, 바람직한 weight값을 얻을 수 있으며, 바람직한 weight값에 환경정보와 작물생장정보를 입력하면 작물의 최대 생장을 이루어 낼 수 있는 환경제어 값을 얻는 것이 가능할 수 있다.
n환경 제어 정보를 도출하는 것은 학습된 neural network에 생장정보 및 환경정보를 통과시켜 획득하는 값이 될 수 있다.
y=wx+b에서 x에 생장정보 및 환경정보를 입력하여 획득되는 y(환경제어 정보)값이며, w, b는 기계학습을 통해 학습된 weight, bias 값(neural network)이 될 수 있다.
즉, 리워드 또는 패널티 (하이퍼 파라미터)를 통해 지속적으로 w, b(neural network)를 업데이트시켜 작물의 생장 정보와 환경정보에 대해 최적의 환경제어 정보를 도출할 수 있게 강화학습이 수행될 수 있다.
이와 같이 작물생장정보와 환경정보를 neural network(w, b)에 통과시키면 y=wx+b에 의해 계산된 y값, 즉 출력 값인 환경제어정보를 얻을 수 있으며, 이때 최적의 y(환경제어정보)값을 얻기 위해 지속적으로 w, b값을 수정, 변경할 수 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능 한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비 휘발성 매체, 분리형 및 비 분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비 휘발성, 분리형 및 비 분리형 매체를 모두 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 서버
110: 저장부 120: 학습부
130: 통신부 140: 제어부
200: 환경제어기기 300: 센서모듈
400: 카메라 모듈
110: 저장부 120: 학습부
130: 통신부 140: 제어부
200: 환경제어기기 300: 센서모듈
400: 카메라 모듈
Claims (17)
- 서버에 의해 수행되는, 기계학습을 이용한 작물의 최대 생장 구현 방법에 있어서,
(a) 환경정보, 작물생장 정보, 환경제어 정보로 구성되는 복수의 작물 생장 데이터 셋을 구축하는 단계;
(b) 구축된 작물 생장 데이터 셋 내에서 환경정보, 작물생장 정보를 입력 값, 환경제어 정보를 출력 값으로 하여 기계학습 하고, 상기 기계학습을 통해 획득한 인공망을 저장하는 단계;
(c) 실제 작물을 생장시키기 위한 장소에서 획득한 환경정보 및 작물 생장 정보를 상기 저장된 인공망에 통과시켜 환경제어정보를 출력 값으로 도출하는 단계;
(d) 상기 환경제어정보를 기초로 상기 장소에 배치된 제어장치들을 제어하여 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득하는 단계; 및
(e) 상기 (c) 내지 (d) 단계를 반복수행 하되, 이전 단계의 리워드 또는 페널티를 이용하여 이전에 저장된 인공망을 업데이트하여 다음 단계의 기계학습 수행 시에 반영하는 단계;
를 포함하는,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 1 항에 있어서,
상기 (a) 단계는,
상기 기계학습을 수행함에 있어서,
복수의 작물에 대한 상기 환경 정보와 상기 작물 생장 정보를 입력정보로 설정하고, 상기 환경 제어 정보를 출력정보로 설정하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 2 항에 있어서,
상기 복수의 작물 생장 데이터 셋을 구성함에 있어서,
각 정보 별로 측정 단위에 따라 기 설정된 기준에 의해 분류하여 구성되는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 1 항에 있어서,
상기 환경 정보는,
외부의 온도, 습도, 토양의 산성도 중 어느 하나 이상을 포함하는 정보인 것이고,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 1 항에 있어서,
상기 서버의 저장부는,
상기 환경제어 정보에 기초하여 환경을 제어하였을 때, 기대할 수 있는 작물 생장 기대치를 포함하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 1 항에 있어서,
상기 (e) 단계는,
(e-1) 실제 작물을 생장시키기 위한 장소에서 추출한 제 n 환경 정보 및 작물 생장 정보를 입력 받는 단계;
(e-2) 상기 제 n 환경 정보 및 작물 생장 정보에 대응하는 제 n 환경 제어 정보를 도출하는 단계; 및
(e-3) 상기 제 n 환경 제어 정보에 따라, 상기 장소에 설치된 복수의 환경 제어 장치를 제어한 뒤, 작물에 대한 제 n+1 작물 생장 정보를 수집하는 단계;
를 포함하되,
상기 n은 자연수이고, 최초 입력 받는 상기 제 n 환경 정보 및 작물 생장 정보는 제 1 환경 정보 및 작물 생장 정보인 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 6 항에 있어서,
상기 (e-1) 단계 내지 (e-3) 단계는,
기 설정된 시간 동안, 상기 n을 상향 카운팅 하면서 기 설정된 횟수만큼 반복 수행되는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 7 항에 있어서,
상기 반복 수행 후,
(e-4) 상기 제 1 환경 정보 및 작물 생장 정보에 대응하는 서버의 저장부 내 작물 생장 기대치와 상기 제 n+1 작물 생장 정보를 비교 분석하여 리워드 및 페널티를 획득하는 단계;
를 더 포함하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 8 항에 있어서,
상기 (e-4) 단계는,
상기 비교 분석을 수행하되,
상기 제 n+1 작물 생장 정보와 상기 제 1 작물 생장 정보 간의 차이가 상기 작물 생장 기대치보다 높은 경우,
기 설정된 기준에 따라 보상을 제공하는 단계; 및
상기 작물 생장 기대치보다 낮은 경우, 기 설정된 기준에 따라 페널티를 제공하는 단계를 더 포함하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 9 항에 있어서,
상기 (e-4) 단계는,
상기 반복 수행 과정에 포함되어, 수행될 수 있는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 9 항에 있어서,
상기 보상을 제공하는 단계는 상기 (e-1) 내지 (e-3) 단계 수행 시, 기존의 환경 제어 정보가 유지되도록 하는 가중치를 제공하는 것이고,
상기 페널티를 제공하는 단계는, 상기 (e-1) 내지 (e-3) 단계 수행 시, 기존의 환경 제어 정보가 변경되도록 하는 가중치를 제공하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 9 항에 있어서,
상기 작물 생장 기대치 및 상기 작물 생장 정보는,
줄기의 굵기, 잎의 크기, 열매의 크기, 열매의 개수 중 어느 하나 이상을 포함하는 정보인 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 1 항에 있어서,
상기 작물 생장 정보는 카메라모듈 또는 센서모듈로부터 수집된 작물에 대한 이미지 또는 영상을 수신한 것이고,
상기 이미지 또는 영상에 대해 convolutional neural networks 학습 및 분석을 수행하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 6 항에 있어서,
상기 (e-2) 단계는,
상기 제 n 환경 제어 정보를 도출함에 있어서,
상기 작물 생장 데이터 셋 중 작물에 대한 생장 기대치가 가장 높은 작물 생장 데이터 셋의 환경 제어 정보로 도출하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 제 6 항에 있어서,
상기 (e-2) 단계는,
상기 제 n 환경 제어 정보를 도출함에 있어서,
상기 작물의 생장에 대한 시뮬레이션에 기초하여, 상기 작물 생장 데이터 셋 중 작물에 대한 생장 기대치가 가장 높은 작물 생장 데이터 셋의 환경 제어 정보로 도출하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법.
- 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하는 서버에 있어서,
기계학습을 이용한 작물의 최대 생장 구현 프로그램이 저장된 메모리; 및
상기 프로그램을 실행하는 프로세서를 포함하되,
상기 프로세서는 상기 프로그램의 실행에 따라,
환경정보, 작물생장 정보, 환경제어 정보로 구성되는 복수의 작물 생장 데이터 셋을 구축하고, 구축된 작물 생장 데이터 셋을 기반으로 기계학습하여 학습된 인공망을 다른 기계학습의 초기 인공망으로 사용하고,
실제 작물을 생장시키기 위한 장소에서 획득한 환경정보 및 작물 생장 정보를 입력 값으로 하여 기계학습을 수행함으로써 환경제어정보를 출력 값으로 도출하고,
상기 환경제어정보를 기초로 상기 장소에 배치된 제어장치들을 제어하여 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득하고,
상기 환경정보와 작물 생장 정보에 대응하는 환경제어정보를 출력 값으로 도출하고, 상기 환경제어정보를 기초로 작물 생장환경을 제어한 후, 수집된 작물 생장 정보를 기초로 리워드 또는 페널티를 획득하는 과정을 반복 수행하되, 기 설정된 시점에서 이전 단계의 리워드 또는 페널티를 통해 상기 인공망을 업데이트 하고 다음 단계의 기계학습 수행 시에 반영하는 것인,
기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하는 서버.
- 제 1 항에 따르는 기계학습을 이용한 작물의 최대 생장 구현 방법을 수행하기 위한 컴퓨터 프로그램이 기록된 컴퓨터 판독가능 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190105569A KR102307036B1 (ko) | 2019-08-28 | 2019-08-28 | 기계 학습을 이용한 작물의 최대 생장 구현 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190105569A KR102307036B1 (ko) | 2019-08-28 | 2019-08-28 | 기계 학습을 이용한 작물의 최대 생장 구현 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210025796A true KR20210025796A (ko) | 2021-03-10 |
KR102307036B1 KR102307036B1 (ko) | 2021-09-30 |
Family
ID=75148985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190105569A KR102307036B1 (ko) | 2019-08-28 | 2019-08-28 | 기계 학습을 이용한 작물의 최대 생장 구현 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102307036B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076979A (zh) * | 2021-03-23 | 2021-07-06 | 广州快必妥营销策划咨询有限公司 | 合格作物筛选方法、作物栽培控制方法以及系统和装置 |
KR20230104521A (ko) | 2021-12-30 | 2023-07-10 | 한양대학교 산학협력단 | 식물 피노믹스 기반의 식물 상태 예측 방법 및 분석장치 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102577350B1 (ko) * | 2022-05-10 | 2023-09-12 | 스페이스워크 주식회사 | 작물 생육 정보를 추정하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능한 기록 매체 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180029381A (ko) * | 2016-09-12 | 2018-03-21 | 한국전자통신연구원 | 시설원예 환경 제어 장치 및 방법 |
KR20180076766A (ko) * | 2016-12-28 | 2018-07-06 | 농업회사법인 만나씨이에이 주식회사 | 인공지능 스마트팜 관리 시스템 |
KR101974638B1 (ko) * | 2017-01-23 | 2019-05-03 | 한국과학기술연구원 | 식물 영상 처리 장치 및 방법 |
-
2019
- 2019-08-28 KR KR1020190105569A patent/KR102307036B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180029381A (ko) * | 2016-09-12 | 2018-03-21 | 한국전자통신연구원 | 시설원예 환경 제어 장치 및 방법 |
KR20180076766A (ko) * | 2016-12-28 | 2018-07-06 | 농업회사법인 만나씨이에이 주식회사 | 인공지능 스마트팜 관리 시스템 |
KR101974638B1 (ko) * | 2017-01-23 | 2019-05-03 | 한국과학기술연구원 | 식물 영상 처리 장치 및 방법 |
Non-Patent Citations (1)
Title |
---|
‘핸즈온머신러닝|Chap.1 한 눈에 보는 머신러닝’, 티스토리(2019.05.17. 게재) 1부.* * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076979A (zh) * | 2021-03-23 | 2021-07-06 | 广州快必妥营销策划咨询有限公司 | 合格作物筛选方法、作物栽培控制方法以及系统和装置 |
CN113076979B (zh) * | 2021-03-23 | 2024-05-17 | 广州快必妥营销策划咨询有限公司 | 合格作物筛选方法、作物栽培控制方法以及系统和装置 |
KR20230104521A (ko) | 2021-12-30 | 2023-07-10 | 한양대학교 산학협력단 | 식물 피노믹스 기반의 식물 상태 예측 방법 및 분석장치 |
Also Published As
Publication number | Publication date |
---|---|
KR102307036B1 (ko) | 2021-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102307036B1 (ko) | 기계 학습을 이용한 작물의 최대 생장 구현 방법 | |
Kang et al. | From parallel plants to smart plants: intelligent control and management for plant growth | |
KR20180086738A (ko) | 작물 재배 가이드 정보 제공 장치, 및 그 방법 | |
CN103890767A (zh) | 可编程植物系统 | |
Chen et al. | An ensemble learning model for agricultural irrigation prediction | |
JP2018099067A (ja) | 生育管理装置、生育管理方法、及び、プログラム | |
Kolmanič et al. | An algorithm for automatic dormant tree pruning | |
Samuel et al. | Crop price prediction system using machine learning algorithms | |
WO2023086221A1 (en) | Simulation and automated control of physical systems | |
CN116186392A (zh) | 柑橘品种的种植推荐方法、装置、终端设备和存储介质 | |
Jie | RETRACTED ARTICLE: Precision and intelligent agricultural decision support system based on big data analysis | |
Shaker | Greenhouse micro climate monitoring based on WSN with smart irrigation technique | |
CN113010529A (zh) | 基于知识图谱的作物管理方法和装置 | |
Devi et al. | Hybrid deep WaveNet-LSTM architecture for crop yield prediction | |
Kumari et al. | Multidisciplinary real-time model for smart agriculture based on weather forecasting using IoT, machine learning, big data and cloud | |
WO2021157260A1 (ja) | 予測装置、予測システム、及び予測方法 | |
CN111639804B (zh) | 培育空间的监控方法、设备、存储介质和生长柜 | |
WO2020218157A1 (ja) | 予測システム、予測方法、および予測プログラム | |
Tripathi et al. | 2 Food security and farming through IoT and machine learning | |
Gong et al. | Studies of evolutionary algorithms for the reduced Tomgro model calibration for modelling tomato yields | |
Udupi et al. | Predicting Global Ranking of Universities Across the World Using Machine Learning Regression Technique | |
Ramachandra et al. | Crop Recommendation Using Machine Learning | |
Abdulghani et al. | Cyber-Physical System Based Data Mining and Processing Toward Autonomous Agricultural Systems | |
JP2022014477A (ja) | 果物品質推定プログラム及びシステム | |
Hanafi et al. | Performance Evaluation of Rice Seed Classification System Based on The CNN with VGG-GoogleNet Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |