KR20240037847A - 정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치 - Google Patents

정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치 Download PDF

Info

Publication number
KR20240037847A
KR20240037847A KR1020230117181A KR20230117181A KR20240037847A KR 20240037847 A KR20240037847 A KR 20240037847A KR 1020230117181 A KR1020230117181 A KR 1020230117181A KR 20230117181 A KR20230117181 A KR 20230117181A KR 20240037847 A KR20240037847 A KR 20240037847A
Authority
KR
South Korea
Prior art keywords
mxn
students
classroom
policy
processor
Prior art date
Application number
KR1020230117181A
Other languages
English (en)
Other versions
KR102671423B1 (ko
Inventor
서동진
황태일
Original Assignee
주식회사 글로랑
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 글로랑 filed Critical 주식회사 글로랑
Publication of KR20240037847A publication Critical patent/KR20240037847A/ko
Priority to KR1020240069370A priority Critical patent/KR20240083865A/ko
Application granted granted Critical
Publication of KR102671423B1 publication Critical patent/KR102671423B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • G06Q50/205Education administration or guidance
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/16Devices for psychotechnics; Testing reaction times ; Devices for evaluating the psychological state
    • A61B5/167Personality evaluation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/16Devices for psychotechnics; Testing reaction times ; Devices for evaluating the psychological state
    • A61B5/168Evaluating attention deficit, hyperactivity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • Educational Technology (AREA)
  • Economics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Marketing (AREA)
  • Developmental Disabilities (AREA)
  • General Business, Economics & Management (AREA)
  • Psychology (AREA)
  • Psychiatry (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Pathology (AREA)
  • Surgery (AREA)
  • Educational Administration (AREA)
  • Veterinary Medicine (AREA)
  • Public Health (AREA)
  • Primary Health Care (AREA)
  • Child & Adolescent Psychology (AREA)
  • Hospice & Palliative Care (AREA)
  • Social Psychology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Medical Informatics (AREA)
  • Animal Behavior & Ethology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)

Abstract

본 개시는 정책 최적화에 기반한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법에 관한 것으로, 학생들의 인적성 검사 결과 및 성적 결과를 포함하는 다양한 변수를 활용하여 학생들에 대한 교실 내 자리 배치를 최적으로 수행할 수 있다.

Description

정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치{Method for optimizing classroom structure to achieve maximum learning efficiency utilizing policy-based reinforcement learning}
본 개시는 전자 장치 및 방법에 관한 것으로, 보다 구체적으로는 본 개시는 정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치정책 최적화에 기반한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법에 관한 것이다.
모든 학생의 평균적인 집중력을 올리면서 도태되는 학생이 나오지 않도록 유도하는 것은 학교의 입장에서 중요한 일이다. 특히 교실 구조는 학생들의 학습 효율과 교사의 강의 효과에 큰 영향을 미친다. 하지만 전통적인 교실 배치 방법은 경험적이거나 주관적이어서 최적의 구조를 보장하지 못하는 경우가 있다. 예를 들어, 대표적인 기존의 교실 배치는 딱 두 명씩 짝지어 선생님으로부터 쭉 뒤로 배치되는 방식이었다. 하지만 이런 경우 뒷 자리 학생은 수업에 집중을 못하는 문제가 있었다. 또한 최근 국제적인 저출산의 영향으로 학생 수가 줄어들면서 매년 다른 학생 수에 대한 자리 배치 최적화 기술에 대한 수요가 발생하였다. 이에, 수많은 교육 매체가 발달함에도 불구하고 모든 학생의 평균적인 집중력을 올리면서 도태되는 학생이 나오지 않게 하는 최적화 방식이 필요한 실정이고, 주어진 환경에 대하여 최적의 교실 구조를 자동으로 찾아낼 수 있는 새로운 알고리즘이 필요하다.
한국등록특허 제10-2394212호, 2022년04월29일
본 개시에 개시된 실시예는 정책 최적화에 기반한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법을 제공하는데 그 목적이 있다.
본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 본 개시에 일 측면에 따른 교실 구조 최적화 장치는, 통신부; MxN개의 그리드들로 나누어진 교실 구조의 최적화를 위한 적어도 하나의 프로세스가 저장된 메모리; 및 상기 교실에 포함되고 현재 자리를 배치할 대상의 인덱스, 자리 배치 대상인 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 폴리시 네트워크의 FC(Fully Connected)에 입력하고, 상기 폴리시 네트워크에서 상기 자리 배치를 위해 상기 MxN개의 그리드들 각각에 상기 대상을 배치할 확률을 포함하는 MxN 행렬의 폴리시(policy)를 출력하고, 상기 MxN 행렬의 폴리시를 기초로 상기 MxN개의 그리드들 중 가장 큰 확률을 갖는 그리드에 상기 대상을 배치하는 액션(action)을 수행하는 프로세서를 포함한다.
본 개시에 다른 측면에 따른 MxN개의 그리드로 나누어진 교실 구조의 최적화를 위한 적어도 하나의 프로세스를 수행하는 방법은, 상기 교실에 포함되고 현재 자리를 배치할 대상의 인덱스, 자리 배치 대상인 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 폴리시 네트워크의 FC(Fully Connected)에 입력하는 단계; 상기 폴리시 네트워크에서 상기 자리 배치를 위해 상기 MxN개의 그리드 각각에 상기 대상을 배치할 확률을 포함하는 MxN 행렬의 폴리시를 출력하는 단계; 및 상기 MxN 행렬의 폴리시를 기초로 상기 MxN개의 그리드 중 가장 큰 확률을 갖는 그리드에 상기 대상을 배치하는 액션(action)을 수행하는 단계를 포함한다.
이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.
이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 개시의 전술한 과제 해결 수단에 의하면, 정책 최적화에 기반하여 교실 구조를 최적화함으로써 최대의 학습 효율을 달성하는 효과를 제공한다.
본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 실시예에 따른 교실 구조 최적화 장치의 블록도이다.
도 2는 본 개시의 일 실시예에 따른 교실 구조 최적화 방법의 흐름도이다.
도 3은 본 개시의 다른 실시예에 따른 교실 구조 최적화 방법의 흐름도이다.
도 4, 도 5, 및 도 6은 본 개시의 실시예들에 따른 교실 구조 최적화의 전체적인 알고리즘을 설명하기 위한 도면들이다.
도 7, 도 8, 및 도 9는 본 개시의 실시예들에 따른 자리 배치를 설명하기 위한 도면이다.
본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 ‘부, 모듈, 부재, 블록’이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
본 명세서에서 '본 개시에 따른 교실 구조 최적화 장치(100)'는 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들이 모두 포함된다. 예를 들어, 본 개시에 따른 교실 구조 최적화 장치(100)는, 컴퓨터, 서버 장치 및 휴대용 단말기를 모두 포함하거나, 또는 어느 하나의 형태가 될 수 있다.
여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다.
상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다.
상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.
본 명세서에서, “교실 구조 배치”와 “자리 배치”는 동일한 의미로 해석될 수 있다.
본 개시에 따른 인공지능과 관련된 기능은 프로세서(110)와 메모리(130)를 통해 동작된다. 프로세서(110)는 하나 또는 복수의 프로세서(110)로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서(110)는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서(110), GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서(110) 또는 NPU와 같은 인공지능 전용 프로세서(110)일 수 있다. 하나 또는 복수의 프로세서(110)는, 메모리(130)에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서(110)가 인공지능 전용 프로세서(110)인 경우, 인공지능 전용 프로세서(110)는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/ 또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도 형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공지능 모델은 하나의 인공지능 모델일 수 있고, 복수의 인공지능 모델로 구현될 수도 있다. 인공지능 모델은 뉴럴 네트워크(또는 인공 신경망)로 구성될 수 있으며, 기계학습과 인지과학에서 생물학의 신경을 모방한 통계학적 학습 알고리즘을 포함할 수 있다. 뉴럴 네트워크는 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)이 학습을 통해 시냅스의 결합 세기를 변화시켜, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 뉴럴 네트워크의 뉴런은 가중치 또는 바이어스의 조합을 포함할 수 있다. 뉴럴 네트워크는 하나 이상의 뉴런 또는 노드로 구성된 하나 이상의 레이어(layer)를 포함할 수 있다. 예시적으로, 장치(100)는 input layer, hidden layer, output layer를 포함할 수 있다. 장치(100)를 구성하는 뉴럴 네트워크는 뉴런의 가중치를 학습을 통해 변화시킴으로써 임의의 입력(input)으로부터 예측하고자 하는 결과(output)를 추론할 수 있다.
프로세서(110)는 뉴럴 네트워크를 생성하거나, 뉴럴 네트워크를 훈련(train, 또는 학습(learn))하거나, 수신되는 입력 데이터를 기초로 연산을 수행하고, 수행 결과를 기초로 정보 신호(information signal)를 생성하거나, 뉴럴 네트워크를 재훈련(retrain)할 수 있다. 뉴럴 네트워크의 모델들은 GoogleNet, AlexNet, VGG Network 등과 같은 CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restrcted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network 등 다양한 종류의 모델들을 포함할 수 있으나 이에 제한되지는 않는다. 프로세서(110)는 뉴럴 네트워크의 모델들에 따른 연산을 수행하기 위한 하나 이상의 프로세서를 포함할 수 있다. 예를 들어 뉴럴 네트워크는 심층 뉴럴 네트워크 (Deep Neural Network)를 포함할 수 있다.
뉴럴 네트워크는 CNN(Convolutional Neural Network), RNN(Recurrent Neural Network), 퍼셉트론(perceptron), 다층 퍼셉트론(multilayer perceptron), FF(Feed Forward), RBF(Radial Basis Network), DFF(Deep Feed Forward), LSTM(Long Short Term Memory), GRU(Gated Recurrent Unit), AE(Auto Encoder), VAE(Variational Auto Encoder), DAE(Denoising Auto Encoder), SAE(Sparse Auto Encoder), MC(Markov Chain), HN(Hopfield Network), BM(Boltzmann Machine), RBM(Restricted Boltzmann Machine), DBN(Depp Belief Network), DCN(Deep Convolutional Network), DN(Deconvolutional Network), DCIGN(Deep Convolutional Inverse Graphics Network), GAN(Generative Adversarial Network), LSM(Liquid State Machine), ELM(Extreme Learning Machine), ESN(Echo State Network), DRN(Deep Residual Network), DNC(Differentiable Neural Computer), NTM(Neural Turning Machine), CN(Capsule Network), KN(Kohonen Network) 및 AN(Attention Network)를 포함할 수 있으나 이에 한정되는 것이 아닌 임의의 뉴럴 네트워크를 포함할 수 있음은 통상의 기술자가 이해할 것이다.
본 개시의 예시적인 실시예에 따르면, 프로세서(110)는 GoogleNet, AlexNet, VGG Network 등과 같은 CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restrcted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network, Generative Modeling, eXplainable AI, Continual AI, Representation Learning, AI for Material Design, 자연어 처리를 위한 BERT, SP-BERT, MRC/QA, Text Analysis, Dialog System, GPT-3, GPT-4, 비전 처리를 위한 Visual Analytics, Visual Understanding, Video Synthesis, ResNet 데이터 지능을 위한 Anomaly Detection, Prediction, Time-Series Forecasting, Optimization, Recommendation, Data Creation 등 다양한 인공지능 구조 및 알고리즘을 이용할 수 있으며, 이에 제한되지 않는다.
이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세하게 설명한다.
도 1은 본 개시의 실시예에 따른 교실 구조 최적화 장치의 블록도이다.
도 2는 본 개시의 실시예에 따른 교실 구조 최적화 방법의 흐름도이다.
도 3은 본 개시의 다른 실시예에 따른 교실 구조 최적화 방법의 흐름도이다.
도 4, 도 5, 및 도 6은 본 개시의 실시예들에 따른 교실 구조 최적화의 전체적인 알고리즘을 설명하기 위한 도면들이다.
도 7, 도 8, 및 도 9는 본 개시의 실시예들에 따른 자리 배치를 설명하기 위한 도면이다.
종래에는 선생님을 마주보고 뒤쪽으로 순서대로 자리 배치가 이루어졌다. 한편, 본 개시는, 최대의 학습 효율을 달성하기 위한 교실 구조의 최적화 문제를 설정하고 강화학습으로 최적화 문제를 해결하는 장치 및 방법에 관한 것이다. 여기서, 최적화 문제는 교실 구조를 효율적으로 배치하는 것이며, 구체적으로 교실에 포함되는 대상을 교실에 효율적으로 배치하는 것일 수 있다. 교실에 포함 가능한 대상은, 예를 들면, 학생(또는 학생에 대응되는 책상), 강의자(예, 선생님, 교수님, 강사 등), 칠판, 사물함, 칠판, 프로젝터, 교실의 기타 장비 등을 포함할 수 있다. 본 개시의 실시예에 따른 교실 구조 최적화 시스템은 인공지능 모델과 교실 구조 최적화 알고리즘을 이용하여 학생들의 인적성 검사 결과 및 성적을 포함하는 다양한 변수들을 기반으로 배정하여 종래의 교실 구조 배치에서 발생하던 각종 문제점을 없애거나 최소화하는 것을 목적으로 한다. 또한, 본 개시의 실시예에 따른 교실 구조 최적화 시스템은 교실 구조를 최적화하기 위한 새로운 알고리즘으로서 강화 학습과 최적화 기술을 활용하여 교실 배치를 최적화하고, 학생들의 학습 효율과 교사-학생 상호작용을 향상시키는 것을 목표로 한다. 최적화된 교실 구조는 학습 환경을 개선하고 학생들의 학습 성과와 집중도를 향상시키는데 기여할 수 있다.
도 1을 참조하면, 본 개시의 실시예에 따른 교실 구조 최적화 장치(100)는 프로세서(110), 통신부(120) 및 메모리(130)를 포함한다.
다만, 몇몇 실시예에서 교실 구조 최적화 장치(100)는 도 1에 도시된 구성요소보다 더 적은 수의 구성요소나 더 많은 구성요소를 포함할 수도 있다.
예를 들어, 본 개시의 실시예에 따른 교실 구조 최적화 장치(100)는 입출력부(입력부, 출력부), 사용자 인터페이스 등의 구성을 더 포함할 수 있다.
본 개시의 실시예에서 교실 구조 최적화 장치(100)는 서버 장치를 포함하여 서버로 동작하고, 웹 또는 애플리케이션을 통해 서버에 접속한 사용자에게 자리 배치 프로그램, 서비스를 제공할 수도 있다.
프로세서(110)는 교실 구조 최적화 장치(100) 내 구성들의 제어, 작동을 담당하며, 메모리(130)에 저장되어 있는 각종 명령어, 알고리즘, 인공지능 모델을 이용하여 학생과 교사들의 반 배정을 진행할 수 있다.
프로세서(110)는 교실 구조 최적화 장치(100) 내의 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 메모리(130), 및 메모리(130)에 저장된 데이터를 이용하여 전술한 동작을 수행하는 적어도 하나의 프로세서(110)로 구현될 수 있다. 이때, 메모리(130)와 프로세서(110)는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리(130)와 프로세서(110)는 단일 칩으로 구현될 수도 있다.
또한, 프로세서(110)는 이하의 도면에서 설명되는 본 개시에 따른 다양한 실시 예들을 교실 구조 최적화 장치(100) 상에서 구현하기 위하여, 위에서 살펴본 구성요소들을 중 어느 하나 또는 복수를 조합하여 제어할 수 있다.
본 개시의 실시예에서 교실 구조 최적화 장치(100)는 수신부를 통해서 자리 배치 대상에 해당되는 복수의 학생에 대한 인적성 검사 결과를 수신하고, 복수의 학생에 대한 성적 결과를 수신할 수 있다.
이때, 교실 구조 최적화 장치(100)는 유무선 통신이 가능한 통신부(120)를 통해서 외부 서버로부터 인적성 검사 결과 또는 성적 결과를 수신할 수도 있다.
또한, 교실 구조 최적화 장치(100)는 미리 수신된 정보들을 메모리(130)에 저장하고, 교실 구조 최적화 과정에서 활용할 수도 있다.
통신부(120)는 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어, 방송 수신 모듈, 유선통신 모듈, 무선통신 모듈, 근거리 통신 모듈, 위치정보 모듈 중 적어도 하나를 포함할 수 있다.
유선 통신 모듈은, 지역 통신(Local Area Network; LAN) 모듈, 광역 통신(Wide Area Network; WAN) 모듈 또는 부가가치 통신(Value Added Network; VAN) 모듈 등 다양한 유선 통신 모듈뿐만 아니라, USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), DVI(Digital Visual Interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 케이블 통신 모듈을 포함할 수 있다.
무선 통신 모듈은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(universal mobile telecommunications system), TDMA(Time Division Multiple Access), LTE(Long Term Evolution), 4G, 5G, 6G 등 다양한 무선 통신 방식을 지원하는 무선 통신 모듈을 포함할 수 있다.
무선 통신 모듈은 신호를 송신하는 안테나 및 송신기(Transmitter)를 포함하는 무선 통신 인터페이스를 포함할 수 있다. 또한, 무선 통신 모듈은 프로세서(110)의 제어에 따라 무선 통신 인터페이스를 통해 프로세서(110)로부터 출력된 디지털 제어 신호를 아날로그 형태의 무선 신호로 변조하는 신호 변환 모듈을 더 포함할 수 있다.
근거리 통신 모듈은 근거리 통신(Short range communication)을 위한 것으로서, 블루투스(Bluetooth™), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), UWB(Ultra Wideband), ZigBee, NFC(Near Field Communication), Wi-Fi(Wireless-Fidelity), Wi-Fi Direct, Wireless USB(Wireless Universal Serial Bus) 기술 중 적어도 하나를 이용하여, 근거리 통신을 지원할 수 있다.
메모리(130)는 MxN개의 그리드로 나누어진 교실 구조의 최적화를 위한 적어도 하나의 프로세스가 저장되어 있다.
또한, 메모리(130)는 학생들의 인적성 검사 결과와 성적 결과, 교실 구조 배치 결과가 저장될 수 있다.
메모리(130)는 교실 구조 최적화 장치(100)의 다양한 기능을 지원하는 데이터와, 프로세서(110)의 동작을 위한 프로그램을 저장할 수 있고, 입/출력되는 데이터들(예를 들어, 음악 파일, 정지영상, 동영상 등)을 저장할 수 있고, 반 배정 장치(100)에서 구동되는 다수의 응용 프로그램(application program 또는 애플리케이션(application)), 반 배정 장치(100)의 동작을 위한 데이터들, 명령어들을 저장할 수 있다. 이러한 응용 프로그램 중 적어도 일부는, 무선 통신을 통해 외부 서버로부터 다운로드 될 수 있다.
이러한, 메모리(130)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), SSD 타입(Solid State Disk type), SDD 타입(Silicon Disk Drive type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리(130) 등), 램(random access memory; RAM), SRAM(static random access memory), 롬(read-only memory; ROM), EEPROM(electrically erasable programmable read-only memory), PROM(programmable read-only memory), 자기 메모리, 자기 디스크 및 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. 또한, 메모리(130)는 교실 구조 최적화 장치(100)와는 분리되어 있으나, 유선 또는 무선으로 연결된 데이터베이스가 될 수도 있다.
입력부는 영상 정보(또는 신호), 오디오 정보(또는 신호), 데이터, 또는 사용자로부터 입력되는 정보의 입력을 위한 것으로서, 적어도 하나의 카메라, 적어도 하나의 마이크로폰 및 사용자 입력부 중 적어도 하나를 포함할 수 있다. 입력부에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어명령으로 처리될 수 있다.
사용자 입력부는 사용자로부터 정보를 입력받기 위한 것으로서, 사용자 입력부를 통해 정보가 입력되면, 프로세서(110)는 입력된 정보에 대응되도록 교실 구조 최적화 장치(100)의 동작을 제어할 수 있다. 이러한, 사용자 입력부는 하드웨어식 물리 키(예를 들어, 교실 구조 최적화 장치(100)의 전면, 후면 및 측면 중 적어도 하나에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 소프트웨어식 터치 키를 포함할 수 있다. 일 예로서, 터치 키는, 소프트웨어적인 처리를 통해 터치스크린 타입의 디스플레이부 상에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있다. 한편, 상기 가상키 또는 비주얼 키는, 다양한 형태를 가지면서 터치스크린 상에 표시되는 것이 가능하며, 예를 들어, 그래픽(graphic), 텍스트(text), 아이콘(icon), 비디오(video) 또는 이들의 조합으로 이루어질 수 있다.
출력부는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부, 음향 출력부, 햅틱 모듈(Haptic Module) 및 광 출력부 중 적어도 하나를 포함할 수 있다. 디스플레이부는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, 교실 구조 최적화 장치(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부로써 기능함과 동시에, 교실 구조 최적화 장치(100)와 사용자 간에 출력 인터페이스를 제공할 수 있다.
디스플레이부는 교실 구조 최적화 장치(100)에서 처리되는 정보를 표시(출력)한다. 예를 들어, 디스플레이부는 교실 구조 최적화 장치(100)에서 구동되는 응용 프로그램(일 예로, 어플리케이션)의 실행화면 정보, 또는 이러한 실행화면 정보에 따른 UI(User Interface), GUI(Graphic User Interface) 정보를 표시할 수 있다.
인터페이스부는 교실 구조 최적화 장치(100)에 연결되는 다양한 종류의 외부 기기와의 통로 역할을 수행한다. 이러한 인터페이스부는 유/무선 헤드셋 포트(port), 외부 충전기 포트(port), 유/무선 데이터 포트(port), 메모리(130) 카드(memory card) 포트, 식별 모듈(SIM)이 구비된 장치를 연결하는 포트(port), 오디오 I/O(Input/Output) 포트(port), 비디오 I/O(Input/Output) 포트(port), 이어폰 포트(port) 중 적어도 하나를 포함할 수 있다. 교실 구조 최적화 장치(100)에서는, 상기 인터페이스부에 연결된 외부 기기와 관련된 적절한 제어를 수행할 수 있다.
아래에서는 도 2의 흐름도, 도 3의 흐름도, 도 4 내지 도 6의 알고리즘의 예시도, 및 도 7 내지 도 9의 배치 예시도를 참조하여, 교실 구조 최적화 프로세스가 후술된다.
설명에 앞서, 본 개시에서는 교실에 포함되는 대상(예, 강의자, 책상, 칠판, 프로젝터, 교실의 기타 장비 등)을 배치하는 문제의 설정 방법에 대하여 정의한다. 교실에 포함되는 대상은, 교실의 구성 요소로 지칭될 수 있다. 한편, 본 개시의 학생을 배치하는 것은, 책상을 배치하는 것과 동일할 수 있다.
해당 문제의 정의는 최적화 문제이며, 최적화 문제는 주어진 함수의 최소 혹은 최대인 지점을 찾는 과정이다. 최대화하고자 하는 특정 값을 ‘목적 함수(objective function)’ 혹은 ‘효용 함수(utility function)’라 칭하며, 이하에서는 목적 함수로 통일하여 본 개시에 대한 실시예들이 후술된다.
최적화 문제를 정의하는 과정에서 1) ‘변수(variable)’와 2) ‘제약 조건(constraint)’을 설정해야 한다.
1) 변수는 목적 함수의 정의역으로, 함수의 입력값이다. 변수는 교실 내에서 어떤 대상(즉, 교실의 구성 요소)을 배치하는가에 관한 것이이다.
2) 제약 조건은 최적화 문제에서 변수가 가질 수 있는 값의 범위를 제한하며, 모든 조건을 만족하는 해를 ‘실현 가능한 해’(feasible solution)라 하며, 이 중 목적 함수가 가장 크거나 작아서 최적화를 가장 잘 수행한 변수값을 ‘최적 해’(optimal solution)라고 한다. 제약 조건은, 예를 들면, 현재 학생의 상태, 현재 강의자의 상태, 수업의 형태, 학생의 수, 학생들 간의 친구 관계, 선생님의 수, 책상의 수 및 넓이, 교실의 크기 및 형태, 문(door)의 위치, 및 학생의 기존 성적 등을 포함할 수 있다. 여기서, 현재 학생의 상태 및 현재 강의자의 상태는, 학생 및 강의자 각각의 인적성 검사 결과를 기초로 추출될 수 있다. 예를 들면, 학생과 강의자가 각각 미리 준비된 인적성 검사 문항에 응답하고, 이에 따른 인적성 검사 결과(예, 문항 및 응답을 포함하는 정보)가 획득되며, 인적성 검사 결과를 인공지능 모델에 입력하여, 인공지능 모델의 출력으로서 학생의 상태 및 강의자의 상태가 예측될 수 있다. 상태는 내향성, 독립성, 신뢰성, 및 개방성 등을 포함할 수 있다. 수업의 형태는, 예를 들면, 토론형이나 강의형 등을 포함할 수 있다. 학생들 간의 친구 관계는, 학생들의 인적성 검사 결과들 기반의 그래프 데이터로 생성될 수 있다. 그래프 데이터의 그래프는, 학생의 상태를 나타내는 노드와, 노드들 간의 연결 관계를 나타내는 엣지를 포함할 수 있다. 학생들의 인적성 검사 결과들에는 학생들 간의 친밀도를 나타내는 지표가 포함되며, 학생들의 인적성 검사 결과들이 인공지능 모델에 입력되고, 각 학생들의 간의 관계를 나타내는 지표 및 상태를 기초로 그래프가 생성될 수 있다. 교실의 크기는 교실 구조를 2차원의 평면 상에서 X축 상의 길이와 Y축 상의 길이를 고려한 넓이일 수 있다. 예를 들어, 현재 적용되고 있는 학급 교실의 모듈과 면적은 , ), , , 등 다양할 수 있다. 교실의 형태는 정사각형, 직사각형, 불규칙한 다각형, 원형 등의 다양한 형태를 포함할 수 있다.
최적화 문제를 설정하는 것은, 교실 구조를 그리드(grid, 또는 격자 구조)로 나누어 학생(또는 학생에 대응되는 책상), 강의자, 및 기타 구성 요소 등을 배치하는 방식으로 문제를 설정할 수 있다. 그리드 단위의 기준은 다양하게 설정될 수 있다. 예를 들면, 학생들의 양팔 너비가 그리드 단위로 설정될 수 있다.
최적화 함수는, 학생들의 집중력, 학생들과 강의자 간의 상호 작용, 및 학생들의 학업 성과(또는 학업 성취도)를 기반으로 하는 최적화 함수가 활용될 수 있다. 학생들의 집중력은, 학생들이 수업 중간 중간에 배운 내용에 대한 간단한 퀴즈의 정답률을 측정함으로써 측정될 수 있다. 또한, 학생들의 집중력은, 표정과 언어, 몸짓 등의 멀티모달(음성, 얼굴 이미지 등) 데이터를 기반으로 멀티모달 러닝 모델에 의해 추정될 수 있다. 학생들과 강의자 간의 상호 작용은, 표정과 언어, 몸짓 등의 멀티모달 데이터를 통하여 학생이 적극적으로 참여하고 있는지에 의해 측정 또는 멀티모달 러닝 모델에 추정될 수 있다. 학업 성과(또는 학업 성취도)는, 학생들에게 정기적인 시험을 실시하여 그 결과를 분석하는 방법에 의해 측정될 수 있다.
최적화 문제를 해결하는, 즉 주어진 조건에서 목적 함수를 최대화/최소화하는 알고리즘을 최적화 알고리즘(optimization algorithm)으로 정의한다. 이러한 알고리즘의 예시로 강화학습이 있으며, 본 개시에서는 최적화 문제의 해결로 딥 강화학습(Deep Reinforcement Learning)을 제안한다.
본 개시에서는 교실 구조를 그리드로 나누어 다양한 변수를 고려하여 교실 구조를 배치할 수 있다. 여기서, 변수는 학생의 친구 관계, 학생의 인성, 적성 및 성향, 학생의 수, 교실의 x축 길이 및 y축 길이, 교실 내 선생님의 위치, 수업의 형태, 수업 과목의 종류, 학생의 나이, 문의 위치, 사물함의 위치를 포함할 수 있다.
도 2를 참조하면, 교실 구조 최적화 장치(100)의 프로세서(110)가 자리 배치 대상인 학생의 인적성 검사 결과 및 성적을 GCN(Graph Convolutional Networks)에 입력하여 그래프 임베딩(graph embedding) 데이터를 출력한다(S100). 그래프 임베딩 데이터는, 그래프 임베딩으로 간략히 지칭될 수 있다.
교실 구조 최적화 장치(100)의 프로세서(110)가 상기 그래프 임베딩 데이터 및 매크로 피쳐(macro feature)를 FC(Fully Connected)에 입력하여 상기 자리 배치를 위한 MxN의 폴리시(policy)를 출력한다(S200). 폴리시는 정책으로 지칭될 수 있다.
프로세서(110)는 교실의 x축 길이 및 y축 길이, 학생의 수, 학생의 팔 길이, 선생님의 위치 중 적어도 하나를 기반으로 교실 구조를 MxN개의 그리드(grid)로 나눌 수 있다.
프로세서(110)는 이렇게 나뉜 그리드 각각에 학생을 적절하게 배치하여 최적의 교실 구조를 만들 수 있다.
프로세서(110)는 수신부 또는 통신부(120)를 이용하여 인적성 검사 결과 및 성적을 수신할 수 있다.
이때, 교실 구조 최적화 장치(100)는 미리 수행된 인적성 검사 결과를 수신할 수도 있고, 자리 배치를 위해 인적성 검사를 요청할 수도 있다.
또한, 교실 구조 최적화 장치(100)는 각 학생들의 성적 결과를 수신할 수 있으며, 각 학생의 이전 학기 또는 이전의 누적된 성적 결과를 수신할 수도 있고, 자리 배치를 위해 시험 진행을 요청할 수도 있다.
일 실시예로, 교실 구조 최적화 장치(100)는 자리 배치 대상 학생이 2학년 이상인 경우, 이전의 성적 결과를 이용하거나 자리 배치를 위한 시험 진행을 요청할 수 있고, 자리 배치 대상 학생이 1학년에 해당되는 경우 입학 시험을 요청할 수도 있다.
이때, 인적성 검사는 성격 5 요인 검사, SLT 자기조절 학습검사 등이 적용 가능하며, 이외에도 자리 배치와 관련되어 학생의 인성, 적성 등을 평가할 수 있는 방법이라면 무엇이든 적용이 가능하다.
도 3을 참조하면, 교실 구조 최적화 장치(100)는 MxN개의 그리드로 나누어진 교실 구조의 최적화를 위한 적어도 하나의 프로세스를 수행할 수 있다. 프로세서(110)가 상기 교실에 포함되고 현재 자리를 배치할 대상의 인덱스, 자리 배치 대상인 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 폴리시 네트워크의 FC(Fully Connected)에 입력할 수 있다(S1000).
프로세서(110)가 상기 폴리시 네트워크에서 상기 자리 배치를 위해 상기 MxN개의 그리드 각각에 상기 대상을 배치할 확률을 포함하는 MxN 행렬의 폴리시를 출력할 수 있다(S2000).
프로세서(110)가 상기 MxN 행렬의 폴리시를 기초로 상기 MxN개의 그리드 중 가장 큰 확률을 갖는 그리드에 상기 대상을 배치하는 액션(action)을 수행할 수 있다(S3000).
강화학습은 에이전트(agent)라고 불리는 행동 주체가 환경(environment)과 상호작용하며 보상(reward)를 신호로 받아 주어진 상태(state)에 대하여 자신이 한 행동(action)이 좋은지 혹은 나쁜지에 대해 배우면서 학습하는 알고리즘을 의미한다. 강화학습으로 문제를 풀기 위해서는 먼저 문제를 MDP(Markov Decision Process, 마르코프(마르코브) 의사 결정)로 표현해야 한다. MDP는 마르코프 조건(상태가 오직 이전의 상태와 행동에만 의존한다는 조건)을 만족하는 경우에 대한 문제 셋업으로, 구성 요소는 (S, A, , R, )이다. 본 개시에서는 교실의 구조를 ‘그리드(grid)’로 나누어 해당 그리드를 ‘상태 공간(state space)’' 및 ‘행동 공간(action space)’으로 정의하였으며, MDP의 각 구성 요소는 다음과 같다.
1) S : 상태 공간으로 모든 상태가 담긴 집합이다. 본 개시에서는, 교실 내부의 가능한 배치 상태를 상태 공간으로 정의하며, 상태는 학생들의 좌석 배치, 교사의 위치 등을 포함한다.
2) A : 행동 공간으로 에이전트(알고리즘)가 취할 수 있는 모든 행동을 포함한다. 본 개시에서는, 상태 공간에서 이미 배치된 구역을 배제한 공간으로 정의한다.
3) : 상태 트랜지션 또는 상태전이확률(state transition probability)로 환경의 확률성(stochasticity)을 반영한다. 본 개시에서는 해당 환경에 확률성이 없다고 가정한다. 즉, 상태전이확률()의 값이 생략될 수 있다.
4) R : 보상 함수(reward function)로 에이전트가 자신이 한 행동에 대해 환경으로부터 좋은지 또는 나쁜지에 대해서 받는 신호이다. 본 개시의 최적화 문제에서 정의된 최적화 함수를 보상 함수로써 활용한다.
5) : 감쇠 인자(discount factor)로 미래의 보상에 대하여 감소시키기 위해 곱하는 값이다. 각 문제에 대하여 적절한 값을 설정한다. 예시는 0.99 혹은 0.95가 될 수 있다. 그러나, 이에 한정되는 것은 아니며, 본 개시에서는 감쇠 인자가 생략될 수 있다.
본 개시에서의 환경은 희소 보상(sparse reward)을 환경으로부터 받는 형태이다. 희소 보상은, 매 행동마다 보상을 받지 않고 모든 배치가 마무리된 뒤에 보상이 발생하는 것을 의미한다.
그 밖에 강화학습에서 정의해야 하는 파라미터에는, 예를 들어, 학습 속도(learning rate), 리플레이 메모리(Replay Memory)의 크기, 에피소드(episode)의 길이, 전체 학습의 step 수, epsilon-greedy algorithm에서 epsilon의 감쇠 비율, 학습 이 시작되는 메모리의 크기, 학습 수행 시 gradient descent의 수행 횟수 등이 있다.
강화학습 알고리즘은 여러 시뮬레이션 또는 실제 교실에서 반복적으로 최적의 구조를 찾아내며, 보상 함수를 활용한 학습과 탐색을 통해 점차적으로 성능이 향상된다. 강화학습 알고리즘은 크게 가치 기반 강화학습(value-based RL)과 정책 기반 강화학습(policy-based RL), 그리고 두 가지를 모두 활용한 액터-크리틱(actor-critic) 방식이 있다. 정책 기반 강화학습(policy-based RL)은, 예를 들면, 도 4 및 도 5에 예시적으로 도시된 것과 같을 수 있다. 액터-크리틱(actor-critic) 방식은, 예를 들면, 도 6에 예시적으로 도시된 것과 같을 수 있다.
도 4를 참조하면, 정책 기반 강화학습을 통한 정책 최적화는 상태에서 행동으로의 매핑(mapping)에 해당하는 정책을 최적화하는데 그 초점이 맞춰져 있으며, 보상의 기댓값을 최대화하는 것이 목표이다. 프로세서(110)는 상기 대상의 인덱스, 학생들의 인적성 검사 결과들, 상기 학생들의 성적, 및 매크로 피쳐들을 FC(Fully Connected)에 입력할 수 있다. 상기 대상의 인덱스는 현재 배치할 학생(또는 학생에 대응되는 책상)이나 강의자, 칠판 등 중에서 특정된 것일 수 있다. 프로세서(110)는, 폴리시 네트워크의 FC를 통해 상기 대상의 인덱스, 학생들의 인적성 검사 결과들, 상기 학생들의 성적, 및 매크로 피쳐들로부터 폴리시(policy)를 출력할 수 있다. 구체적으로 예를 들면, 프로세서(110)는 FC로부터 출력된 결과를 폴리시 네트워크의 FC에 입력할 수 있다. 프로세서(110)는 폴리시 네트워크의 FC의 출력을 적어도 하나의 디컨볼루션 레이어에 입력하여, 상기 MxN 행렬을 포함하는 데이터를 출력할 수 있다. 프로세서(110)는 상기 대상의 인덱스, 학생들의 인적성 검사 결과들, 상기 학생들의 성적, 및 매크로 피쳐들로부터 MxN 행렬의 폴리시(policy)를 출력할 수 있다. 폴리시 네트워크 또는 폴리시넷은 상태를 입력으로 수신하여, 행동을 출력으로 제공하는 인공지능 네트워크일 수 있다. 즉, 폴리시 네트워크는 주어진 상태에 대해 행동하는 것일 수 있다. 폴리시에서 MxN 행렬은, 교실에서 구분된 MxN개의 그리드들 각각에 대상을 배치할 확률들을 포함할 수 있다. 폴리시에서 출력되는 것은 전술한 변수일 수 있다.
일 실시예에서, 상기 교실 구조의 특성에 관한 상기 매크로 피쳐들은, 강의자의 수, 학생의 수, 책상의 수 및 크기, x축 길이 및 y축 길이를 포함하는 교실의 크기, 교실 내 강의자의 위치, 수업의 형태, 문(door)의 위치, 수업 과목의 종류 등을 포함할 수 있다.
일 실시예에서, 프로세서(110)는 MxN 행렬을 포함하는 마스킹 데이터를 상기 MxN 행렬을 포함하는 데이터와 연산하여 상기 MxN 행렬의 폴리시를 출력할 수 있다. 예를 들면, 폴리시 네트워크에서 디컨볼루션 레이어를 통과한 MxN 행렬의 데이터와 MxN 행렬을 포함하는 마스킹 데이터에 대해서, 행렬곱 연산이 수행될 수 있다. 행렬곱 연산의 결과로 상기 MxN 행렬의 폴리시가 출력될 수 있다. 이때, 마스킹 데이터는 도 9에 도시된 바와 같이, 상기 MxN개의 그리드 중에서 상기 학생이 배치된 그리드에 해당하는 위치가 마스킹된 메이터를 의미할 수 있다. 즉, 마스킹 데이터는 상기 MxN개의 그리드 중에서 상기 학생이 배치된 그리드에 해당하는 위치의 값이 0인 데이터를 의미할 수 있다. 예를 들면, 상기 마스킹 데이터에 포함된 MxN 행렬에서, 상기 MxN개의 그리드들 중 상기 대상이 배치된 그리드에 대응되는 인자의 값이 0이고, 상기 MxN개의 그리드들에서 상기 대상이 배치된 그리드를 제외한 나머지 그리드들 각각에 대응되는 인자의 값이 1일 수 있다.
프로세서(110)는, 상기 MxN개의 그리드들에 대한 자리 배치가 완료되면, MxN명의 학생들의 집중력, 상기 MxN명의 학생들과 강의자 간의 상호 작용, 및 상기 MxN명의 학생들의 학업 성과를 측정하고, 상기 MxN명의 학생들의 집중력, 상기 MxN명의 학생들과 강의자 간의 상호 작용, 및 상기 MxN명의 학생들의 학업 성과 기반의 최적화 함수를 상기 폴리시 네트워크에 대한 보상 함수로써 설정하고, 상기 보상 함수를 기초로 상기 폴리시 네트워크의 보상을 부여할 수 있다. 학업 성과 측정은 정기적인 시험을 통해 실시될 수 있고, 집중력 측정은 수업 중간중간에 배운 내용에 대한 간단한 퀴즈의 정답률을 측정하거나 표정과 언어, 몸짓 등의 멀티 모달 데이터를 기반으로 추정될 수 있다. 상호 작용 측정은 멀티 모달 데이터를 기반으로 추정될 수 있다.
일 실시예에서, 프로세서(110)는, 멀티모달 인식을 위한 인공지능 모델을 이용하여, 상기 MxN명의 학생들에 대한 멀티 모달(Multi Modal)을 포함하는 멀티 모달 데이터으로부터 상기 MxN명의 학생들의 집중력, 상기 MxN명의 학생들과 강의자 간의 상호 작용을 추정할 수 있다.
프로세서(110)는, PPO(Proximal Policy Optimization)를 기반으로 상기 폴리시 네트워크의 업데이트를 수행할 수 있다. 즉, 프로세서(110)는 각 학생마다 자리 배치가 완료되면 이를 기반으로 폴리시를 업데이트할 수 있다. PPO는 강화학습(Reinforcement Learning) 알고리즘 중 하나로서, 강화학습은 주어진 환경(environment)에서 에이전트(Agent)가 최대 보상(Reward)을 받을 수 있는 활동(Action)을 할 수 있도록 폴리시(Policy)을 학습하는 것이다. PPO는 정책최적화 방식에서 학습 데이터를 재사용하는 모델로, 에피소드(episode) 단위로 반영하는 것이 아닌 스템(step) 단위로 학습데이터를 만들어 내어 학습하는 방식으로 학습 효과를 높이는 방식이다. 즉, 프로세서(110)는 PPO를 기반으로 한 학생에 대한 자리 배치에 대한 액션이 완료된 폴리시를 업데이트하고, 이를 다음 학생에 대한 자리 배치에 대한 액션에 반영할 수 있다.
도 5를 참조하면, 프로세서(110)는, 상기 대상에 해당되는 학생의 인덱스, 상기 모든 학생들의 인적성 검사 결과들, 및 상기 모든 학생들의 성적을 GCN(Graph Convolutional Networks)에 입력하여, 상기 학생에 대응되는 노드와 노드들 간의 엣지를 포함하는 그래프에서 상기 학생에 대응되는 노드와 연결된 노드들의 정보를 포함하는 결과를 상기 GCN으로부터 추출할 수 있다. 상기 학생에 대응되는 노드와 연결된 노드들의 정보를 포함하는 결과는, 예를 들면, 임베딩일 수 있으나 이에 한정되는 것은 아니다. 프로세서(110)는, GNN(Graph Neural Network)을 이용하여 임베딩을 수행할 수도 있다. 도 5에 도시된 실시예는 전술한 도 4에 도시된 실시예와 일부 중복된 내용을 포함하므로, 중복되는 내용에 대한 설명은 생략될 수 있다. 프로세서(110)는, 결과 및 상기 매크로 피쳐를 상기 폴리시 네트워크의 FC에 입력할 수 있다.
여기서 입력값의 경우 그래프 데이터를 활용하는데, 그래프 데이터는 객체 사이의 관련성을 나타내기 위한 데이터 형태로 노드(node)와 엣지(edge)로 구성된다. 노드(node)는 그래프의 개별 객체로, 예를 들어 소셜 네트워크의 개인, 인터넷의 웹페이지 등을 예시로 들 수 있다. 엣지는 노드와 노드 사이의 관계 혹은 연결을 나타낸다. 엣지는 방향이나 세기를 가질 수 있다. 소셜 네트워크에서의 친구 관계, 인터넷에서 하이퍼링크로 연결되는 관계를 엣지로 볼 수 있다. 본 개시에서는 입력 데이터를 그래프 데이터로 환산하기 위하여 각 학생을 노드(node)로 설정하고 학생들 사이에 관계될 만한 데이터를 엣지(edge)로 설정한다. 노드 데이터는 학생의 성적, 인적성 검사 결과가 예시로 있을 수 있다. 엣지 데이터는 ‘학생들 사이의 관계'에 해당하는 데이터, 즉 인적성 검사 결과 학생들 사이의 친밀도를 추정한 값을 활용할 수 있을 수 있다.
도 6을 참조하면, 액터 크리틱(Actor-Critic, AC) 알고리즘은 Actor와 Critic으로 네트워크를 나눠서, Actor는 에이전트의 행동을 결정하는 정책(Policy)을 결정하는 역할을 하고, Critic은 주어진 상태와 행동에 대해 행동의 가치를 추정한다. 두 네트워크가 번갈아가며 업데이트되면서 성능이 개선되는 방식이다. 프로세서(110)는 이렇게 수신된 대상의 인덱스, 인적성 검사 결과 및 성적을 GCN(Graph Convolutional Network)에 입력하여 그래프 임베딩을 수행할 수 있다. 프로세서(110)는, GNN(Graph Neural Network)을 이용하여 임베딩을 수행할 수도 있다. 여기에서 그래프 임베딩(graph embedding) 결과는 지도 학습(supervised learning)을 활용하여 학습할 수 있으며, 이후 강화학습의 학습에서는 이 학습 결과를 인코더(encoder)로써 활용한다. pretraining(supervised learning)을 통해서는 representation learning을 통해 좋은 encoder를 만들고, finetune(reinforcement learning)을 통해서는 그 Encoder를 사용하여 policy net과 value net을 학습하는 것일 수 있다.
프로세서(110)는 GCN을 통해 학생의 인적성 검사 결과로부터 학생의 친구 관계, 학생의 인성, 적성 및 성향을 파악하고, 이를 그래프 임베딩 데이터로 출력할 수 있다.
도 6을 참조하면, 일 실시예에서, 프로세서(110)는, 상기 대상의 인덱스, 상기 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 밸류 네트워크의 FC에 입력함으로써, 상기 MxN 행렬의 폴리시의 가치를 계산할 수 있다. 밸류를 출력하기 위한 밸류 네트워크(또는 밸류넷)은, 현재 상태 또는 다음 상태에 대한 값(가치)을 하나의 스칼라 값으로 계산하는 인공지능 네트워크일 수 있다. 예를 들면, 프로세서(110)는 FC(Fully Connected)를 통해 그래프 임베딩 데이터 및 매크로 변수로부터 폴리시(policy) 및 밸류(value)를 출력할 수 있다.
여기서, 그래프 임베딩 데이터는 학생의 친구 관계, 학생의 인성, 적성 및 성향을 포함할 수 있다. 매크로 변수는 학생의 수, 교실의 x축 길이 및 y축 길이, 교실 내 선생님의 위치, 수업의 형태, 수업 과목의 종류, 학생의 나이, 문의 위치, 사물함의 위치를 포함할 수 있다.
프로세서(110)는 이러한 모든 변수를 모두 고려하여 학생의 자리 배치에 대한 폴리시 및 밸류를 출력할 수 있다.
여기서, 폴리시는 상기 MxN개의 그리드 중 값이 가장 큰 그리드에 상기 학생을 배치하는 것일 수 있다.
밸류는 MxN개의 그리드 중 어느 위치에 학생을 배치할지에 대한 값을 의미할 수 있다.
도 7을 참조하면, 프로세서(110)는 교실(700)의 구조를 MxN개의 그리드들 그리드들(GRID)로 나눌 수 있다. 일 실시예에서, 상기 MxN개의 그리드들 각각의 사이즈는, 상기 교실에 포함되는 상기 대상의 사이즈와 동일할 수 있다. 다른 실시에에서, 상기 MxN개의 그리드들 각각의 사이즈는, 학생의 양팔 간격과 동일할 수 있다. 하지만, 이에 한정되는 것은 아니다.
도 8를 참조하면, 프로세서(110)는 각 그리드 중에서 확률 값이 가장 큰 그리드에 해당하는 위치에 학생을 배치할 수 있다. 예를 들면, 가장 행동 확률이 큰 (1,4) 위치에 해당 구성 요소(예, 학생(또는 책상), 혹은 강의자 등)가 배치된다. 도 8에서는 (1,4) 위치에 해당되는 그리드의 크기와 해당 그리드에 배치된 구성 요소의 크기가 다른 것으로 예시적으로 도시되어 있으나, 이는 설명의 편의를 위한 것이며, 일부 실시예들에서는 그리드의 크기와 배치된 구성 요소의 크기가 동일할 수도 있다.
프로세서(110)는 PPO(Proximal Policy Optimization)를 기반으로 상기 폴리시의 업데이트를 수행할 수 있다. 즉, 프로세서(110)는 각 학생마다 자리 배치가 완료되면 이를 기반으로 폴리시를 업데이트할 수 있다.
PPO는 강화학습(Reinforcement Learning) 알고리즘 중 하나로서, 강화학습은 주어진 환경(environment)에서 에이전트(Agent)가 최대 보상(Reward)을 받을 수 있는 활동(Action)을 할 수 있도록 폴리시(Policy)을 학습하는 것이다. PPO는 학습 데이터를 재사용하는 모델로, 에피소드(episode) 단위로 반영하는 것이 아닌 스템(step) 단위로 학습데이터를 만들어 내어 학습하는 방식으로 학습 효과를 높이는 방식이다. 즉, 프로세서(110)는 PPO를 기반으로 한 학생에 대한 자리 배치에 대한 액션이 완료된 폴리시를 업데이트하고, 이를 다음 학생에 대한 자리 배치에 대한 액션에 반영할 수 있다.
이때, 강화학습에서 정의해야 하는 파라미터는 학습 속도(learning rate), 감쇠 계수(discount factor), 리플레이 메모리(Replay Memory)의 크기, 에피소드(episode)의 길이, 전체 학습의 step 수, epsilon-greedy algorithm에서 epsilon의 감쇠 비율, 학습 이 시작되는 메모리의 크기, 학습 수행 시 gradient descent의 수행 횟수를 포함할 수 있다.
도 6을 참조하면, 프로세서(110)는 MxN의 마스킹 데이터를 더 이용하여 폴리시(policy)를 출력할 수 있다. 여기서, 마스킹 데이터는 도 9에 도시된 바와 같이, 상기 MxN개의 그리드 중에서 상기 학생이 배치된 그리드에 해당하는 위치가 마스킹된 메이터를 의미할 수 있다. 즉, 마스킹 데이터는 상기 MxN개의 그리드 중에서 상기 학생이 배치된 그리드에 해당하는 위치의 값이 0인 데이터를 의미할 수 있다. 예를 들면, 도 8에 도시된 바와 같이 특정 대상의 배치가 끝난 이후, 그 다음 대상의 정보가 입력되고, 이전에 배치된 대상의 경우 마스크(mask)되어, 이후에 행동으로 그 자리를 선택할 수 없도록 한다. 도 9에서는 예시적으로 4번의 배치가 완료되어 4개의 그리드가 마스킹된 것이 도시되어 있다. 마스크된 영역을 제외한 부분 중 최대의 행동 확률을 가지는 0.09의 위치(3,4)가 선택될 수 있다.
도 6을 참조하면, 프로세서(110)는 자리 배치가 완료된 그리드가 마스킹된 상태의 MxN의 마스킹 데이터를 상기 FC를 거쳐 출력된 MxN의 FC 데이터와 결합하여 MxN의 폴리시를 출력할 수 있다.
프로세서(110)는 상기 MxN개의 그리드에 대한 자리 배치가 전부 완료되면, MxN명의 학생들에 대한 학업 성과 및 집중력을 측정할 수 있다. 학업 성과 측정은 정기적인 시험을 통해 실시될 수 있고, 집중력 측정은 수업 중간중간에 배운 내용에 대한 간단한 퀴즈의 정답률을 측정하거나 표정과 언어, 몸짓 등의 멀티 모달 데이터를 기반으로 추정될 수 있다.
본 개시는 sparse reward를 주는 형태로, 매 액션마다 리워드가 나오는 것이 아니라 모든 배치(모든 액션)이 끝난 후에 발생한다.
실시예에 따라, 리워드는 아래 식을 기반으로 계산될 수 있다.
리워드 = 모든 학생의 집중력 평균 + lambda * 가장 낮은 집중력을 가진 학생의 집중력
즉, 본 개시는 pretraining(supervised learning)을 통해서는 representation learning을 통해 좋은 encoder를 만들고, finetune(reinforcement learning)을 통해서는 그 Encoder를 사용하여 policy net과 value net을 학습하는 것일 수 있다. 여기서, value net 아웃풋은 다양하게 설정이 가능하다.
한편, 본 개시는 실시예에 따라, 교실 공간의 감소를 고려하여 구조 배치를 수행할 수도 있다. 구체적으로, 선생님의 위치가 교실 앞쪽에 고정된 경우, 해당 고정 영역은 제외하고 교실 구조를 그리드로 다시 나누어서 배치를 수행할 수 있다.
또한, 본 개시는 실시예에 따라, 메타버스 교실에 대해서도 구조 최적화를 수행할 수 있다.
본 개시는 초등학교, 중학교, 고등학교 등의 다양한 교실 구조에 적용 가능하다. 또한, 대학교, 기업 교육장, 세미나실 등 교육 및 교육 관련 시설의 구조 최적화에도 활용할 수 있다. 기존의 주관적이고 경험적인 교실 배치 방법을 대체하여 학생들의 학습 환경을 최적화하고 학습 성과를 향상시킬 수 있다. 또한, 교사의 강의 효과를 개선하고 교실의 효율성을 향상시키는데 기여하여 교육 분야에 긍정적인 영향을 미칠 것으로 기대된다.
이상으로 설명한 실시예에서, 교실 구조 최적화 장치(100)는 학생들의 인적성 검사 결과 및 성적 결과뿐만 아니라 다양한 변수를 고려하여 각 학생마다 교실 내에서 적절한 위치에 자리를 배치해줌으로써, 모든 학생들이 서로 고루고루 어울릴 수 있도록 하고 담임 교사의 관심도 고루고루 받을 수 있도록 하는 효과를 발휘하게 된다.
이상에서 전술한 본 개시의 일 실시예에 따른 방법은, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
본 개시의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 개시가 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 개시의 실시예를 설명하였지만, 본 개시가 속하는 기술분야의 통상의 기술자는 본 개시가 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
100: 교실 구조 최적화 장치
110: 프로세서
120: 통신부
130: 메모리

Claims (10)

  1. 통신부;
    MxN개의 그리드들로 나누어진 교실 구조의 최적화를 위한 적어도 하나의 프로세스가 저장된 메모리; 및
    교실에 포함되고 현재 자리를 배치할 대상의 인덱스, 자리 배치 대상인 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 폴리시 네트워크의 FC(Fully Connected)에 입력하고,
    상기 폴리시 네트워크에서 상기 자리 배치를 위해 상기 MxN개의 그리드들 각각에 상기 대상을 배치할 확률을 포함하는 MxN 행렬의 폴리시(policy)를 출력하고,
    상기 MxN 행렬의 폴리시를 기초로 상기 MxN개의 그리드들 중 가장 큰 확률을 갖는 그리드에 상기 대상을 배치하는 액션(action)을 수행하는 프로세서를 포함하는, 교실 구조 최적화 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 대상의 인덱스, 상기 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 매크로 피쳐가 상기 폴리시 네트워크의 FC에 입력되어 상기 폴리시 네트워크의 FC의 출력을 적어도 하나의 디컨볼루션 레이어에 입력하여, 상기 MxN 행렬을 포함하는 데이터를 출력하고,
    MxN 행렬을 포함하는 마스킹 데이터를 상기 데이터와 연산하여 상기 MxN 행렬의 폴리시를 출력하고,
    상기 마스킹 데이터에 포함된 MxN 행렬에서, 상기 MxN개의 그리드들 중 상기 대상이 배치된 그리드에 대응되는 인자의 값이 0이고, 상기 MxN개의 그리드들에서 상기 대상이 배치된 그리드를 제외한 나머지 그리드들 각각에 대응되는 인자의 값이 1인 것을 특징으로 하는, 교실 구조 최적화 장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 MxN개의 그리드들에 대한 자리 배치가 완료되면, MxN명의 학생들의 집중력, 상기 MxN명의 학생들과 강의자 간의 상호 작용, 및 상기 MxN명의 학생들의 학업 성과를 측정하고,
    상기 MxN명의 학생들의 집중력, 상기 MxN명의 학생들과 강의자 간의 상호 작용, 및 상기 MxN명의 학생들의 학업 성과 기반의 최적화 함수를 상기 폴리시 네트워크에 대한 보상 함수로써 설정하고,
    상기 보상 함수를 기초로 상기 폴리시 네트워크의 보상을 부여하는 것을 특징으로 하는, 교실 구조 최적화 장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    멀티모달 인식을 위한 인공지능 모델을 이용하여, 상기 MxN명의 학생들에 대한 멀티 모달(Multi Modal)을 포함하는 멀티 모달 데이터으로부터 상기 MxN명의 학생들의 집중력, 상기 MxN명의 학생들과 강의자 간의 상호 작용을 추정하는 것을 특징으로 하는, 교실 구조 최적화 장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    PPO(Proximal Policy Optimization)를 기반으로 상기 폴리시 네트워크의 업데이트를 수행하는 것을 특징으로 하는, 교실 구조 최적화 장치.
  6. 제5항에 있어서,
    상기 프로세서는,
    상기 대상에 해당되는 학생의 인덱스, 상기 모든 학생들의 인적성 검사 결과들, 및 상기 모든 학생들의 성적을 GCN(Graph Convolutional Networks)에 입력하여, 상기 학생에 대응되는 노드와 노드들 간의 엣지를 포함하는 그래프에서 상기 학생에 대응되는 노드와 연결된 노드들의 정보를 포함하는 결과를 상기 GCN으로부터 추출하고,
    상기 결과 및 상기 매크로 피쳐를 상기 폴리시 네트워크의 FC에 입력하는 것을 특징으로 하는, 교실 구조 최적화 장치.
  7. 제6항에 있어서,
    상기 프로세서는,
    상기 대상의 인덱스, 상기 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 밸류 네트워크의 FC에 입력함으로써, 상기 MxN 행렬의 폴리시의 가치를 계산하는 것을 특징으로 하는, 교실 구조 최적화 장치.
  8. 제7항에 있어서,
    상기 교실 구조의 특성에 관한 상기 매크로 피쳐는,
    강의자의 수, 학생의 수, 책상의 수 및 크기, x축 길이 및 y축 길이를 포함하는 교실의 크기, 교실 내 강의자의 위치, 수업의 형태, 문(door)의 위치, 수업 과목의 종류를 포함하는 것을 특징으로 하는, 교실 구조 최적화 장치.
  9. 제8항에 있어서,
    상기 MxN개의 그리드들 각각의 사이즈는,
    상기 교실에 포함되는 상기 대상의 사이즈와 동일한 것을 특징으로 하는, 교실 구조 최적화 장치.
  10. 장치에 의해 수행되는, MxN개의 그리드로 나누어진 교실 구조의 최적화를 위한 적어도 하나의 프로세스를 수행하는 방법에 있어서,
    상기 교실에 포함되고 현재 자리를 배치할 대상의 인덱스, 자리 배치 대상인 모든 학생들의 인적성 검사 결과들, 상기 모든 학생들의 성적, 및 상기 교실 구조의 특성에 관한 매크로 피쳐를 폴리시 네트워크의 FC(Fully Connected)에 입력하는 단계;
    상기 폴리시 네트워크에서 상기 자리 배치를 위해 상기 MxN개의 그리드 각각에 상기 대상을 배치할 확률을 포함하는 MxN 행렬의 폴리시를 출력하는 단계; 및
    상기 MxN 행렬의 폴리시를 기초로 상기 MxN개의 그리드 중 가장 큰 확률을 갖는 그리드에 상기 대상을 배치하는 액션(action)을 수행하는 단계를 포함하는, 방법.
KR1020230117181A 2022-09-14 2023-09-04 정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치 KR102671423B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020240069370A KR20240083865A (ko) 2022-09-14 2024-05-28 인공지능 기반의 교실 구조 최적화 장치, 방법 및 프로그램

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20220115483 2022-09-14
KR1020220115483 2022-09-14

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020240069370A Division KR20240083865A (ko) 2022-09-14 2024-05-28 인공지능 기반의 교실 구조 최적화 장치, 방법 및 프로그램

Publications (2)

Publication Number Publication Date
KR20240037847A true KR20240037847A (ko) 2024-03-22
KR102671423B1 KR102671423B1 (ko) 2024-06-04

Family

ID=90481001

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020230117181A KR102671423B1 (ko) 2022-09-14 2023-09-04 정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치
KR1020240069370A KR20240083865A (ko) 2022-09-14 2024-05-28 인공지능 기반의 교실 구조 최적화 장치, 방법 및 프로그램

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020240069370A KR20240083865A (ko) 2022-09-14 2024-05-28 인공지능 기반의 교실 구조 최적화 장치, 방법 및 프로그램

Country Status (1)

Country Link
KR (2) KR102671423B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160137423A (ko) * 2015-05-21 2016-11-30 강원대학교산학협력단 스마트 출결관리 서버, 시스템 및 강의실 좌석배치도 생성 방법
JP2018063493A (ja) * 2016-10-11 2018-04-19 富士通株式会社 座席配置作成装置、座席配置システム、座席配置提案プログラムおよび座席配置提案方法
KR20210039921A (ko) * 2019-10-02 2021-04-12 한국전자통신연구원 신경망 모델을 최적화하도록 구성된 심층 신경망 시스템의 동작 방법
KR20210048311A (ko) * 2019-10-23 2021-05-03 (주)데이터리퍼블릭 활동 정보 기반 스마트 오피스 시스템
KR20210078212A (ko) * 2019-12-18 2021-06-28 주식회사 하나금융티아이 정책 벡터 기반 인공신경망 탐색 장치 및 방법
KR102394212B1 (ko) 2020-04-06 2022-05-03 박중기 스마트 교실의 통합 관리 시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160137423A (ko) * 2015-05-21 2016-11-30 강원대학교산학협력단 스마트 출결관리 서버, 시스템 및 강의실 좌석배치도 생성 방법
JP2018063493A (ja) * 2016-10-11 2018-04-19 富士通株式会社 座席配置作成装置、座席配置システム、座席配置提案プログラムおよび座席配置提案方法
KR20210039921A (ko) * 2019-10-02 2021-04-12 한국전자통신연구원 신경망 모델을 최적화하도록 구성된 심층 신경망 시스템의 동작 방법
KR20210048311A (ko) * 2019-10-23 2021-05-03 (주)데이터리퍼블릭 활동 정보 기반 스마트 오피스 시스템
KR20210078212A (ko) * 2019-12-18 2021-06-28 주식회사 하나금융티아이 정책 벡터 기반 인공신경망 탐색 장치 및 방법
KR102394212B1 (ko) 2020-04-06 2022-05-03 박중기 스마트 교실의 통합 관리 시스템

Also Published As

Publication number Publication date
KR102671423B1 (ko) 2024-06-04
KR20240083865A (ko) 2024-06-12

Similar Documents

Publication Publication Date Title
Joshi et al. Evaluating artificial intelligence in education for next generation
JP2020126684A (ja) 才能のデータ駆動型識別のシステム及び方法
Lao Reorienting machine learning education towards tinkerers and ML-engaged citizens
RU2670781C9 (ru) Система и способ для хранения и обработки данных
Wang et al. A data mining approach for training evaluation in simulation-based training
Fu A reinforcement learning-based smart educational environment for higher education
Zhang An IoT-based English translation and teaching using particle swarm optimization and neural network algorithm
KR102671423B1 (ko) 정책 기반 강화학습을 활용한 최대의 학습 효율 달성을 위한 교실 구조의 최적화 방법 및 장치
CN117940941A (zh) 基于注意力确定的会议会话控制
KR102583005B1 (ko) 비대면 교육을 위한 온라인 플랫폼을 운용하는 서버
Johnson et al. Analysing the learning commons in the digital age
WO2020046159A1 (ru) Система и способ для хранения и обработки данных
KR102314007B1 (ko) 인공지능을 이용한 사용자 맞춤형 강의 제공 시스템
KR102231392B1 (ko) 빅 데이터 및 머신 러닝 모델을 이용한 추천 교육 컨텐트를 제공하기 위한 전자 장치 및 그 동작 방법
Zhang et al. Construction and research of constructive English teaching model applying multimodal neural network algorithm
KR102671422B1 (ko) 학생의 인적성 및 성적 자료와 머신러닝 기술을 활용하여 학교에서 반 배정을 하는 장치 및 방법
US20220335555A1 (en) Systems and methods for personality analysis for selection of courses, colleges, and/or careers
KR102625441B1 (ko) 디지털 경전에 대한 필사를 체험하기 위한 시스템 및 방법
Borg et al. InclusiveRender A metaverse Engine prototype to support Accessible Environments for people with ASD
KR102663479B1 (ko) 인공지능 기반의 응답자 집단 표집 장치, 방법 및 프로그램
Anough et al. Implementing temporally coherent clustering on student activity to predict exam performance & optimizing the learning pathway through markov chain analysis
Hu Feedback Analysis of Digital Course Teaching Effectiveness Based on Neural Network
CN117911206A (zh) 基于双注意力机制的动态评估学生知识水平方法
KR20230114127A (ko) 사용자의 개념 이해도에 관한 정보를 제공하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
Wang et al. Knowledge ontology enhanced model for explainable knowledge tracing

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant