KR20210141323A - 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 전자 장치 및 그 동작 방법 - Google Patents
가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 전자 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- KR20210141323A KR20210141323A KR1020210025122A KR20210025122A KR20210141323A KR 20210141323 A KR20210141323 A KR 20210141323A KR 1020210025122 A KR1020210025122 A KR 1020210025122A KR 20210025122 A KR20210025122 A KR 20210025122A KR 20210141323 A KR20210141323 A KR 20210141323A
- Authority
- KR
- South Korea
- Prior art keywords
- performance information
- simulator module
- value
- virtual
- module
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3457—Performance evaluation by simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/25—Design optimisation, verification or simulation using particle-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Geometry (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
복수의 동작에 대한 시뮬레이션을 수행하기 위한, 시뮬레이션 파라미터 셋을 각 동작에 대하여 획득하고, 시뮬레이터 모듈을 이용하여, 시뮬레이션 파라미터 셋에 기초한, 시뮬레이션된 동작의 성능을 나타내는 제1 성능 정보를 각 동작에 대하여 획득하고, 시뮬레이터 모듈에서 시뮬레이션된 동작의 성능을 나타내는 제2 성능 정보를, 모델링 모듈을 이용하여, 제1 성능 정보에 기초해, 각 동작에 대하여 획득하고, 제1 성능 정보 및 제2 성능 정보에 기초하여, 복수의 동작 중 하나의 동작을 수행하는, 전자 장치에서, 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 방법이 개시된다.
Description
본 개시는, 실제 동작을 가상으로 구현하기 위한, 가상 시뮬레이터 모듈 에 기초하여 동작을 수행하는 전자 장치 및 그 동작 방법에 관한 것이다.
가상 시뮬레이터 모듈은, 실제 환경(real world)을 가상으로 구현하여, 소정의 동작을 수행함으로써, 실제 환경에서 획득될 수 있는 실제 데이터를 예측하기 위한 모듈이다.
기존의 가상 시뮬레이터 모듈은, 미리 설정된 다양한 종류의 파라미터를 포함한 함수를 이용하여, 가상의 환경이 구현됨으로써, 실제 동작이 수행된 결과를 예측할 수 있다. 예를 들면, 네트워크에서 전송되는 데이터의 블록 크기, 부호화율, 모듈레이션 순서, 채널의 상태 등이 가상 시뮬레이터 모듈에 입력됨으로써, 가상으로 데이터가 전송되는 네트워크 환경이 구현됨에 따라, 데이터 전송 시의 에러율이 예측될 수 있다.
그러나, 실제 환경은, 다양한 요인에 의하여, 지속적으로 변화될 수 있으므로, 가상 시뮬레이터 모듈에서 가상의 환경을 구현하기 위해, 고정된 파라미터를 이용하는 것이 적절하지 않은 경우가 발생될 수 있다.
본 개시가 해결하고자 하는 과제는 전술한 문제를 해결하기 위한 것으로서, 실제 동작을 가상으로 구현하기 위한, 가상 시뮬레이터 모듈에 기초하여 동작을 수행하는 전자 장치 및 그 동작 방법을 제공하기 위한 것이다.
또한, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다. 해결하려는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 전자 장치에서, 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 방법에 있어서, 복수의 동작에 대한 시뮬레이션을 수행하기 위한, 시뮬레이션 파라미터 셋을 각 동작에 대하여 획득하는 단계; 시뮬레이터 모듈을 이용하여, 상기 시뮬레이션 파라미터 셋에 기초한, 상기 시뮬레이션된 동작의 성능을 나타내는 제1 성능 정보를 상기 각 동작에 대하여 획득하는 단계; 상기 시뮬레이터 모듈에서 상기 시뮬레이션된 동작의 성능을 나타내는 제2 성능 정보를, 모델링 모듈을 이용하여, 상기 제1 성능 정보에 기초해, 상기 각 동작에 대하여 획득하는 단계; 및 상기 제1 성능 정보 및 제2 성능 정보에 기초하여, 상기 복수의 동작 중 하나의 동작을 수행하는 단계를 포함하는, 방법방법을 제공할 수 있다.
또한, 본 개시의 제2 측면은, 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 전자 장치에 있어서, 하나 이상의 명령어들(instructions)을 저장하는 메모리; 및 상기 메모리에 저장된 하나 이상의 명령어들을 실행하는 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는, 복수의 동작에 대한 시뮬레이션을 수행하기 위한, 시뮬레이션 파라미터 셋을 각 동작에 대하여 획득하고, 시뮬레이터 모듈을 이용하여, 상기 시뮬레이션 파라미터 셋에 기초한, 상기 시뮬레이션된 동작의 성능을 나타내는 제1 성능 정보를 상기 각 동작에 대하여 획득하고, 상기 시뮬레이터 모듈에서 상기 시뮬레이션된 동작의 성능을 나타내는 제2 성능 정보를, 모델링 모듈을 이용하여, 상기 제1 성능 정보에 기초해, 상기 각 동작에 대하여 획득하고, 상기 제1 성능 정보 및 제2 성능 정보에 기초하여, 상기 복수의 동작 중 하나의 동작을 수행하는, 전자 장치를 제공할 수 있다.
또한, 본 개시의 제3 측면은, 제1 측면의 방법을 수행하도록 하는 프로그램이 저장된 기록매체를 제공할 수 있다.
도 1은 일 실시 예에 의한 가상 환경에서 시뮬레이션을 수행한 결과에 기초하여, 동작을 수행하는 일 예를 나타낸 것이다.
도 2는 일 실시 예에 의한 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 일 예를 나타낸 블록도이다.
도 3은 일 실시 예에 의한 가상 시뮬레이터 모듈의 일 예를 나타낸 도면이다.
도 4는 일 실시 예에 의한 전자 장치의 내부 구성을 설명하기 위한 블록도이다.
도 5는 일 실시 예에 의한 전자 장치의 내부 구성을 설명하기 위한 블록도이다.
도 6은 일 실시 예에 의한 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 방법을 나타낸 순서도이다.
도 7은 일 실시 예에 따라 네트워크 환경의 동작을 시뮬레이션하는 일 예를 나타낸 도면이다.
도 8은 일 실시 예에 의한 네트워크 환경의 동작을 시뮬레이션하는 일 예를 나타낸 도면이다.
도 9는 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여, 가상 환경의 데이터 전송 동작에 대한 에러율을 검출하는 일 예를 나타낸 도면이다.
도 10은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여, 가상 환경의 동작에 대한 에러율을 검출하는 일 예를 나타낸 도면이다.
도 11은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여 파라미터 셋을 예측하는 일 예를 나타낸 도면이다.
도 12는 일 실시 예에 의한 파라미터 셋을 예측하기 위한 파라미터 조합을 획득하는 일 예를 나타낸 도면이다.
도 2는 일 실시 예에 의한 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 일 예를 나타낸 블록도이다.
도 3은 일 실시 예에 의한 가상 시뮬레이터 모듈의 일 예를 나타낸 도면이다.
도 4는 일 실시 예에 의한 전자 장치의 내부 구성을 설명하기 위한 블록도이다.
도 5는 일 실시 예에 의한 전자 장치의 내부 구성을 설명하기 위한 블록도이다.
도 6은 일 실시 예에 의한 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 방법을 나타낸 순서도이다.
도 7은 일 실시 예에 따라 네트워크 환경의 동작을 시뮬레이션하는 일 예를 나타낸 도면이다.
도 8은 일 실시 예에 의한 네트워크 환경의 동작을 시뮬레이션하는 일 예를 나타낸 도면이다.
도 9는 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여, 가상 환경의 데이터 전송 동작에 대한 에러율을 검출하는 일 예를 나타낸 도면이다.
도 10은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여, 가상 환경의 동작에 대한 에러율을 검출하는 일 예를 나타낸 도면이다.
도 11은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여 파라미터 셋을 예측하는 일 예를 나타낸 도면이다.
도 12는 일 실시 예에 의한 파라미터 셋을 예측하기 위한 파라미터 조합을 획득하는 일 예를 나타낸 도면이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에 따른 인공지능과 관련된 기능은 프로세서와 메모리를 통해 동작된다. 프로세서는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서는, 메모리에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.
기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
인공지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다. 인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 일 실시 예에 의한 가상 환경에서 시뮬레이션을 수행한 결과에 기초하여, 동작을 수행하는 일 예를 나타낸 것이다.
도 1을 참조하면, 일 실시 예에 의한 전자 장치(1000)는, 가상 환경에서 복수의 동작에 대해 각각 시뮬레이션을 수행한 결과에 기초하여, 복수의 동작 중 실제 수행할 동작을 선택할 수 있다.
일 실시 예에 의한 전자 장치(1000)는, 각 동작의 성능을 나타내는 입력 KPI(key performance indicator, 130) 및 목표 KPI(140)에 기초하여, 가상 환경에서 시뮬레이션된 복수의 동작 중 실제 수행할 동작을 선택할 수 있다.
일 실시 예에 의한 KPI는, 동작의 성능을 나타내는 다양한 종류의 정보를 포함할 수 있다. 일 실시 예에 의하면, 시뮬레이터 모듈에 의해 획득이 가능한지 여부에 따라서, KPI는 입력 KPI(110, 130) 및 목표 KPI(120, 140)로 구분될 수 있다.
일 실시 예에 의한 입력 KPI(130)는, 동작을 수행하기 위한 시뮬레이션 파라미터 셋에 기초하여, 시뮬레이션을 수행하는 시뮬레이터 모듈에 의해, 획득될 수 있다. 예를 들면, 입력 KPI(130)는, 무선 자원 제어에 접속된 단말 장치의 개수(Number of RRC(Radio resource control)-connected UEs(User Entity)), 물리적인 자원 블록의 이용률(Utilization factor of physical RB(Resource block)), 단말 장치 당 IP 레이어의 처리량(IP(internet protocol) layer throughput per UE), 다운링크 트래픽 크기(Downlink traffic volume at L2) 등을 포함할 수 있다.
상술한 예에 한하지 않고, 입력 KPI(130)는, 실제 환경에서 관측될 수 있는 여러가지 시뮬레이션 파라미터(ex. 패킷 사이즈(packet size), 패킷 요청 간격(packet request interval), 핫스팟 거리 비율(hotspot distance ratio), 핫스팟 단말 장치 비율(hotspot UE ratio))에 기초하여, 시뮬레이터 모듈에 의해 획득될 수 있는 적어도 하나의 KPI를 포함할 수 있다.
일 실시 예에 의한 목표 KPI(140)는, 입력 KPI(130)보다 상위 개념 또는 확률로 나타나는 성능 정보를 포함하여, 시뮬레이터 모듈에 의해 직접적으로 획득될 수 없고, 시뮬레이터 모듈에 의해 획득된 입력 KPI(130)에 기초하여, 모델링 모듈에 의해 획득될 수 있다. 예를 들면, 목표 KPI(120, 140)는, 무선 자원 제어 접속이 드롭되는 비율(Rate of RRC drop event), 핸드오버 실패율(Rate of handover fail event), 세션 설정 실패율(Rate of session setup fail event) 등을 포함할 수 있다.
상술한 예에 한하지 않고, 목표 KPI(140)는, 시뮬레이션 파라미터 셋에 기초하여 시뮬레이터 모듈에 의해 직접적으로 획득되기 어려운, 다양한 종류의 성능 정보를 포함할 수 있다.
일 실시 예에 의한 전자 장치(1000)는, 시뮬레이터 모듈 및 모듈링 모듈을 각각 시나리오 재생 및 KPI 모델링을 통해 획득할 수 있다.
일 실시 예에 의한 모델링 모듈은, 적어도 하나의 입력 KPI(110)를 포함하는 입력 KPI 셋에 기초하여, 적어도 하나의 목표 KPI(120)를 포함하는 목표 KPI 셋을 출력할 수 있는, 인공지능 모델, 함수 등으로 구성된 모듈일 수 있다. 일 실시 예에 의한 모델링 모듈은, 실제 환경에서 획득된 입력 KPI(110) 셋 및 목표 KPI(120) 셋의 쌍을 포함하는 학습 데이터에 기초하여, 학습될 수 있다.
일 실시 예에 의한 학습 데이터는, 적어도 하나의 입력 KPI(110)를 입력 정보로서 포함하고, 적어도 하나의 목표 KPI(120)를 출력 정보로서 포함할 수 있다.
다만, 일 실시 예에 의한 학습 데이터에 포함된 정보 중 입력 KPI의 값 또는 목표 KPI의 값은, 전체 범위에서 골고루 분포되지 않고, 일부 범위에 편향된 값을 가질 수 있다. 예를 들어, 목표 KPI(120) 중 무선 자원 제어 접속이 드롭되는 비율(이하, RRC 드롭율)은, 무선 제어 접속이 드롭되는 것이 매우 드문 현상이어서, 학습 데이터로서, 실제 환경에서 수집된 값들이 대부분 0에 가까운 값을 가질 수 있다. 그러나, 일부 범위에 편향된 값을 가진 학습 데이터에 의하면, 인공지능 모델의 성능이 저하되는 문제가 존재할 수 있다.
따라서, 일 실시 예에 의하면, 학습 데이터로 수집된 KPI 값 중 데이터 개수가 적은 범위에 속하는 KPI 값들의 개수가, 업샘플링을 통해, 증가될 수 있다.
예를 들면, RRC 드롭율 값의 최소값 및 최대값을 각각 0%, 100%으로 둘 때, 0~2% 및 2~20%는 각각 10개 범위로, 20~100%는 4개 범위로 분할될 수 있고, 각 분할된 범위 중 학습 데이터로서 수집된 값의 개수가, 기준값 이하인 범위에 속하는 RRC 드롭율 값에 대해 업샘플링이 수행될 수 있다. 또한, RRC 드롭율 값의 분포가 가진 특성(ex. 0에 가까운 값이 많은 특성)에 따라서, 0에 가까운 범위인, 0~2% 및 2~20%에서, 20~100%에 비해 더 많은 개수의 범위가 분할될 수 있다.
일 예로, 0.2~0.4% 범위에 속한 RRC 드롭율 값의 개수가 기준값 이하인 경우, 0.2~0.4% 범위에 속하는 RRC 드롭율 값에 기초하여, 업샘플링이 수행됨으로써, 새로운 학습 데이터가 생성될 수 있다. 새로운 학습 데이터는 0.2~0.4% 범위에 속하는 기존의 RRC 드롭율 값에 기초하여, 새롭게 생성된 0.2~0.4% 범위에 속하는 RRC 드롭율의 값을 포함하도록 생성될 수 있다.
일 실시 예에 의하면, RRC 드롭율의 값이 단순 복사(simple copy)된 값 또는, RRC 드롭율의 값들 간 선형 보간된 값(ex. SMOTE(Synthetic Minority Oversampling Technique))에 기초하여, RRC 드롭율의 값이 새롭게 생성될 수 있다. 상술한 예에 한하지 않고, 학습 데이터의 편향성을 해소하기 위한 다양한 방법에 따라서, 새로운 학습 데이터가 생성될 수 있다.
일 실시 예에 의한 학습 데이터에 포함된 입력 KPI 셋은 서로 다른 입력 KPI 값들을 각각 다른 차원으로 하는 벡터 값으로 표현될 수 있다. 마찬가지로, 목표 KPI 셋도 서로 다른 목표 KPI 값들을 각각 다른 차원으로 하는 벡터 값으로 표현될 수 있다. 상술한 예에 한하지 않고, 입력 KPI 셋 및 목표 KPI 셋은, 다양한 방식에 따라서, 표현될 수 있다.
일 실시 예에 의한 다수의 입력 KPI 셋을 각각 나타내는, 서로 다른 벡터 값은, 목표 KPI 셋의 동일 유사한 벡터 값과 매핑되어, 학습 데이터로서 획득되는 문제가 존재할 수 있다. 이와 유사하게, 동일 유사한 입력 KPI 셋의 벡터 값들이 서로 다른 다수의 목표 KPI 셋의 벡터 값들과 각각 매핑되어, 학습 데이터로서 획득될 수도 있다. 예를 들어, 목표 KPI의 셋 또는 입력 KPI 셋이, RRC 드롭율과 같이, 좁은 범위에서 대부분의 값을 가지는 KPI들을 포함하는 경우, 각 KPI 값 간의 차이가 크지 않음에 따라, 학습 데이터의 혼란이 발생될 수 있다.
상술한 벡터 값으로 KPI 셋이 표현되는 경우에 한하지 않고, 다양한 방법으로 표현된 KPI 셋을 포함한 학습 데이터도 동일한 문제가 존재할 수 있다. 이경우, 학습 데이터에 일관성이 없음으로 인하여, 학습 데이터에 따라 학습되는, 모델링 모듈의 성능이, 문제될 수 있다.
따라서, 일 실시 예에 의하면, KPI 값이 업샘플링되는 경우와 동일하게, 각각의 KPI의 값의 최소값 내지 최대값의 범위가, 각 KPI 값의 분포 특성에 따라, 적응적으로, 복수 개의 범위로 분할될 수 있고, 각 분할된 범위가 라벨링될 수 있다. 예를 들면, KPI 값의 범위 중 상대적으로 데이터 개수가 많은 범위는 더 좁은 범위로 분할되어, 라벨링될 수 있다. 따라서, 학습 데이터의 각 KPI 값은, 확률적인 빈도수에 따라서, 라벨링된 값으로 대체될 수 있으므로, 상술한 학습 데이터의 혼란이 존재하는 문제점이 해소될 수 있다.
일 실시 예에 의한 시나리오 재생(scenario reproduction)에 의하면, 시뮬레이터 모듈을 획득하기 위한 동작이 수행될 수 있다.
일 실시 예에 의한 시뮬레이터 모듈은, 적어도 하나의 시뮬레이션 파라미터에 기초하여, 적어도 하나의 입력 KPI(130)를 출력할 수 있는 인공지능 모델, 함수 등으로 구성될 수 있다.
일 실시 예에 의하면, 복수 개의 서로 다른 시뮬레이터 파라미터 중 입력 KPI(110, 130)를 출력하는데 가장 적합한 적어도 하나의 시뮬레이션 파라미터가 결정될 수 있다. 일 실시 예에 의하면, 시뮬레이션 파라미터 중, 입력 KPI(110, 130)의 값의 변화와 직접적으로 연관된 시뮬레이션 파라미터가 시뮬레이션에 이용됨이 바람직하다. 일 실시 예에 의한 시뮬레이터 모듈은, 결정된 시뮬레이션 파라미터에 기초하여, 입력 KPI(130)를 출력할 수 있다.
일 실시 예에 의한 입력 KPI(130)를 시뮬레이션하기 위한, 적어도 하나의 시뮬레이션 파라미터는, 각각의 시뮬레이터 파라미터를 제어하여, 시뮬레이터 모듈에 의해 획득된 입력 KPI(130)가 실제 관측된 입력 KPI(110)와 가장 유사한 값이 획득될 수 있는 시뮬레이터 파라미터로, 결정될 수 있다. 상술한 예에 한하지 않고, 다양한 방법에 따라서, 시뮬레이션 파라미터가 결정될 수 있다.
일 실시 예에 의한 시뮬레이터 모듈은, 학습 데이터를 이용하는 지도 학습 없이, 입자 군집 최적화(Particle Swarm Optimization; PSO) 또는 강화 학습(reinforcement learning)에 기초하여, 획득될 수 있다. PSO는, 반복적인 계산을 통해, 후보 값들이 동시에 개선되도록 하여, 최종적으로 최적화된 값을 획득할 수 있는 알고리즘이다. 또한, 강화 학습은, 학습 데이터 없이, 시뮬레이션 결과(ex. 입력 KPI)의 좋고 나쁨에 대한 판단 결과에 따라서, 시뮬레이터 모듈을 개선하는 학습 방법이다.
상술한 예에 한하지 않고, 시뮬레이터 모듈은, 시뮬레이션 파라미터에 기초하여, 입력 KPI가 시뮬레이션 결과로서 출력될 수 있도록, 다양한 방법에 따라서, 학습되거나 획득될 수 있다.
일 실시 예에 의하면, 시나리오 재생에 따라 예측된 입력 KPI(130)에 기초하여, KPI 모델링에 따라 가상 환경의 목표 KPI(140)가 결정되고, 입력 KPI(130) 및 목표 KPI(140) 중 적어도 하나에 기초하여, 동작이 수행될 수 있다. 예를 들면, 복수 개의 각 동작에 대하여 획득된 입력 KPI(130) 및 목표 KPI(140) 중 적어도 하나에 기초하여, 하나의 동작이 결정될 수 있고, 최종적으로 결정된 동작이 수행될 수 있다.
일 실시 예에 의한 복수 개의 동작은, 단말 장치(150)가 무선 네트워크에 접속하기 위한 캐리어에 접속하는 동작을 포함할 수 있다. 일 실시 예에 의하면, 단말 장치(150)가 복수 개의 캐리어를 각각 선택하여 네트워크에 접속하는 동작이, 모델링 모듈 및 시뮬레이터 모듈을 통해 시뮬레이션됨으로써, 복수 개의 캐리어 중, 단말 장치(150)의 무선 네트워크 접속을 위한 캐리어가 선택될 수 있다.
일 실시 예에 의한 단말 장치(150)는, 모델링 모듈 및 시뮬레이터 모듈에 따라 시뮬레이션을 수행하는 전자 장치(1000)와 동일한 장치일 수 있으나, 이에 한하지 않고, 서로 다른 장치일 수 있다. 예를 들면, 단말 장치(150)는, 전자 장치(1000)로부터 캐리어가 선택된 결과를 수신하고, 수신된 결과에 기초하여 무선 네트워크에 접속할 수 있다.
일 실시 예에 의하면, 복수 개의 각 캐리어에 대하여, 시뮬레이션 파라미터 값이 결정되고, 시뮬레이터 모듈에 의해 획득된 입력 KPI(130)에 기초하여, 모델링 모듈에 의해 목표 KPI(140)가 획득될 수 있다.
예를 들면, 복수 개의 캐리어 중 RRC 드롭율의 값이 기준값 이상인 캐리어의 경우, 패널티가 부과되어, 상술한 캐리어는 선택될 확률이 낮아질 수 있다. RRC 드롭율 이외에, 다른 목표 KPI(140) 값에 기초하여, 각 캐리어에 대한 패널티가 부과될 수도 있다. 또한, 입력 KPI(130) 중 IP 처리량이 기준값 이상인 캐리어 중에서, 단말 장치(150)와 연결될 캐리어가 선택될 수 있다.
일 실시 예에 의한 네트워크에 접속하는 단말 장치(150)는, 선택된 캐리어를 통해, 네트워크에 접속함으로써, 최적의 네트워크 환경에서 통신을 수행할 수 있다.
도 2는 일 실시 예에 의한 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 일 예를 나타낸 블록도이다.
도 2를 참조하면, 일 실시 예에 의한 전자 장치(1000)는, 실제 환경에서 획득된 실제 데이터(real data)에 기초하여, 복수 개의 가상 시뮬레이터 모듈 중에서, 가상 환경을 구현하기에 적합한, 가상 시뮬레이터 모듈을 획득할 수 있다.
도 2에 의하면, 도 1과는 달리, 모델링 모듈 또는 성능 정보에 관한 결정 없이, 가상 시뮬레이터 모듈에 의한 시뮬레이션의 수행 결과에 기초하여, 파라미터 셋이 결정되고, 결정된 파라미터 셋에 따라, 동작이 수행될 수 있다. 따라서, 도 2에 의하면, 도 1과는 달리, 시뮬레이션 파라미터 셋에 기초하여, 시뮬레이터 모듈에 의해 획득될 수 없는 성능 정보(ex. 목표 KPI)가 이용되지 않을 수 있다.
일 실시 예에 의한 실제 데이터는, 실제 환경에서 수집된 데이터를 나타낸다. 예를 들어, 가상 시뮬레이터 모듈이, 데이터 전송 시의 에러율을 예측하기 위한 모듈인 경우, 실제 데이터는, 실제로 전송된 데이터의 에러율에 관한 정보를 포함할 수 있다. 상술한 예에 한하지 않고, 실제 데이터는, 가상 시뮬레이터 모듈에 의해 예측될 수 있는 정보와 관련하여, 실제 환경에서 수집될 수 있는 다양한 종류의 데이터를 포함할 수 있다.
일 실시 예에 의한 가상 시뮬레이터 모듈은, 입력값에 기초하여, 가상 환경에서의 동작을 구현하고, 구현된 동작에 기초하여, 출력값을 획득할 수 있다. 일 실시 예에 의한 입력값은, 가상 환경을 구현하기 위한, 파라미터로서, 예를 들면, 데이터의 블록 크기, 부호화율, 전송 채널의 상태, 모듈레이션 순서 등을 포함할 수 있다. 일 실시 예에 의한 출력값은, 상황 정보에 따라 구현된 가상 환경에서, 동작이 수행된 결과와 관련된 정보로서, 예를 들면, 데이터 전송 시의 에러율에 관한 정보를 포함할 수 있다.
일 실시 예에 의하면, 가상 시뮬레이터 모듈에 의해, 최적의 값이 출력 값으로 출력될 수 있는, 입력 값이 획득될 수 있다. 일 실시 예에 의하면, 획득된 입력 값에 따라, 실제 환경에서, 동작을 수행하기 위한 조건이 설정됨으로써, 최적의 결과가 획득될 수 있는, 동작이 수행될 수 있다.
예를 들어, 가상 시뮬레이터 모듈이 데이터 전송 시의 에러율을 예측하기 위한 모듈인 경우, 데이터 전송 동작을 구현하기 위한 파라미터 셋에 기초하여, 데이터 전송 시의 에러율이 획득될 수 있다. 또한, 가상 시뮬레이터 모듈에 의해, 서로 다른 파라미터 셋에 기초하여, 각각의 파라미터 셋에 대응되는 데이터 전송 에러율이 획득될 수 있고, 데이터 전송 시의 에러율이 낮아질 수 있는, 파라미터 셋이 최종적으로 결정될 수 있다.
일 실시 예에 의하면, 최종적으로 결정된 파라미터 셋에 따라, 동작이 수행됨으로써, 최적의 결과가 획득될 수 있다.
일 실시 예에 의하면, 가상 시뮬레이터 모듈 없이, 데이터 전송의 에러율이 획득되려면, 실제로 데이터를 송수신하고, 실제 송수신된 데이터로부터 에러율을 판단하기 위한 동작이 수행되어야 한다. 따라서, 데이터 전송의 에러율이 낮아질 수 있는, 파라미터 셋이 획득되려면, 서로 다른 파라미터 셋에 따라, 데이터 전송 동작이 수행되어야 하므로, 상당한 연산량과 시간이 소요될 수 있다.
그러나, 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하면, 실제로 데이터를 전송하는 동작을 수행함이 없이, 서로 다른 파라미터 셋에 따른, 가상으로 구현된 데이터 전송 동작이 여러 번 수행될 수 있다. 따라서, 일 실시 예에 의하면, 가상 시뮬레이터 모듈에 의하면, 짧은 시간 동안에 적은 연산량으로, 서로 다른 파라미터 셋에 따라 수행된 데이터 전송 동작에 대한 에러율이 예측될 수 있다.
일 실시 예에 의하면, 전자 장치(1000)는, 가상 시뮬레이터 모듈을 이용하여 빠르고 적은 연산량으로 예측된 에러율에 기초하여, 실제 환경에서, 최소의 에러율로 데이터가 전송될 수 있는 전송 동작에 대한 파라미터 셋을 결정할 수 있다. 예를 들면, 전자 장치(1000)는 가상 시뮬레이터 모듈에 의해 예측된 에러율 중 최소의 에러율과 대응되는, 전송 동작에 대한 파라미터 셋에 따라서, 실제로 데이터를 전송하는 동작을 수행할 수 있다.
다만, 일 실시 예에 의하면, 가상 시뮬레이터 모듈에 의하여 구현되는 가상의 환경과 대응되는, 실제 환경은 지속적으로 변할 수 있다. 실제 환경이 변화됨에 따라, 동일한 파라미터 셋에 기초하여 실제 환경에서 수행된 동작의 결과와, 가상 시뮬레이터 모듈에 의해, 가상 환경에서 수행된 동작의 결과가 서로 상이할 수 있다.
따라서, 일 실시 예에 의하면, 실제 환경에서, 획득된 실제 데이터(ex. 데이터 전송 동작에 대한 에러율)에 기초하여, 가상 시뮬레이터 모듈이 실제 환경과 동일 유사한 가상 환경을 구현할 수 있도록 갱신될 수 있다. 예를 들면, 동일한 파라미터 셋에 기초하여, 실제 환경에서, 획득된 데이터 전송 동작에 대한 에러율과, 가상 시뮬레이터 모듈에 의해 출력된 에러율 간 차이가 최소화되도록, 가상 시뮬레이터 모듈의 구성이 변경될 수 있다.
일 실시 예에 의하면, 복수 개의 가상 시뮬레이터 모듈 중 실제 환경과 가장 유사한 가상 환경을 구현할 수 있는 가상 시뮬레이터 모듈이 선택되고, 선택된 가상 시뮬레이터 모듈이 파라미터 셋을 결정하는데 이용될 수 있다.
일 실시 예에 의한 복수 개의 가상 시뮬레이터 모듈은, 동일한 학습 데이터에 기초하여 학습되더라도, 학습에 따라 갱신된 결과는 서로 다를 수 있다. 확률적으로 학습 데이터의 값이 나오도록, 각각의 가상 시뮬레이터 모듈이 학습될 수 있으므로, 학습에 따라, 각각의 가상 시뮬레이터 모듈의 구성이 변경되는 부분은 서로 다를 수 있다.
따라서, 일 실시 예에 의하면, 복수 개의 가상 시뮬레이터 모듈은, 동일한 파라미터 셋에 기초하여, 서로 다른 출력 값들을 출력할 수 있다. 일 실시 예에 의하면, 출력 값들 중, 실제 환경에서 수집된 실제 데이터와, 가장 유사한 출력 값을 출력하는 가상 시뮬레이터 모듈이 선택되어, 실제 환경의 동작을 가상으로 구현하는데 이용될 수 있다.
일 실시 예에 의한 전자 장치(1000)는, 실제 데이터에 기초하여, 가상 시뮬레이터 모듈을 획득할 수 있는 다양한 형태로 구현될 수 있는 장치를 포함할 수 있다. 예를 들어, 본 명세서에서 기술되는 전자 장치(1000)는, 디지털 카메라, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 태블릿 PC, 전자북 단말기, 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, MP3 플레이어, 차량(vehicle) 등이 있을 수 있으나, 이에 한정되는 것은 아니다. 본 명세서에서 기술되는 전자 장치(1000)는 사용자에 의해 착용될 수 있는 장치(wearable device)일 수 있다. 웨어러블 디바이스는 액세서리 형 장치(예컨대, 시계, 반지, 팔목 밴드, 발목 밴드, 목걸이, 안경, 콘택트 렌즈), 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형 장치(예: 전자 의복), 신체 부착형 장치(예컨대, 스킨 패드(skin pad)), 또는 생체 이식형 장치(예: implantable circuit) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
일 실시 예에 의한 전자 장치(1000)는, 210에서, 실제 환경에서 획득된 실제 데이터에 기초하여, 복수 개의 가상 시뮬레이터 모듈을 획득할 수 있다. 예를 들면, 전자 장치(1000)는, 실제 데이터와 대응되는 파라미터 셋을 학습 데이터로서 획득하고, 학습 데이터에 기초하여 학습된, 가상 시뮬레이터 모듈을 획득할 수 있다. 또한, 전자 장치(1000)는, 동일한 가상 시뮬레이터 모듈에 대해, 동일한 학습 데이터에 기초한 학습을 복수 번 수행함으로써, 복수 개의 가상 시뮬레이터 모듈이 획득될 수 있다. 일 실시 예에 의한 인공지능 모델의 학습은, 학습 데이터에 따른, 입력 값 및 출력 값이 출력될 수 있도록, 인공지능 모델의 구성 요소들이 임의로 변형됨으로써, 갱신되므로, 인공지능 모델들이, 동일한 학습 데이터에 기초하여 학습되어도, 서로 다른 구성 요소들을 포함할 수 있다.
일 실시 예에 의한 가상 시뮬레이터 모듈은, 실제 환경에서의 동작을 가상으로 구현하여, 상기 동작이 수행된 결과와 관련된 적어도 하나의 출력 값을 출력할 수 있다.
일 실시 예에 의한 전자 장치(1000)는, 가상 시뮬레이터 모듈에서, 최적의 출력 값이 획득될 수 있는, 가상 시뮬레이터 모듈의 입력 값인 파라미터 셋을 획득할 수 있다. 예를 들어, 전자 장치(1000)는, 가상 시뮬레이터 모듈의 출력 값인, 적어도 하나의 전송 동작의 에러율 값 중에서, 최저의 에러율 값과 대응되는, 가상 시뮬레이터 모듈의 입력 값인 파라미터 셋을 획득할 수 있다.
따라서, 일 실시 예에 의한 전자 장치(1000)는, 서로 다른 파라미터 셋에 따라 데이터 전송 동작을 실제로 복수 번 수행할 필요 없이, 가상 시뮬레이터 모듈을 통해, 가장 낮은 데이터 전송 에러율이 획득될 수 있는, 데이터 전송 동작에 대한 파라미터 셋을 획득할 수 있다.
일 실시 예에 의한 전자 장치(1000)는, 가상 시뮬레이터 모듈을 이용함으로써, 낮은 연산량으로 빠르게, 데이터 전송 동작의 파라미터 셋을 결정할 수 있고, 결정된 파라미터 셋에 따라서, 실제 환경에서, 데이터 전송 동작을 수행할 수 있다.
일 실시 예에 의한 파라미터 셋은, 예를 들면, 동작을 구성하기 위한 파라미터(ex. 전송 동작에 포함된, 데이터의 에러를 조정하기 위한 설정 값) 등, 동작이 수행되는데 영향을 줄 수 있는 다양한 파라미터 값을 포함할 수 있다.
일 실시 예에 따른, 실제 데이터는, 실제 환경에서 수행된 동작과 관련하여 수집된 데이터를 포함할 수 있다. 예를 들어, 데이터 전송의 에러율을 예측하는 동작과 관련하여 수집된, 실제 데이터는, 데이터 전송 동작을 구현하기 위한 입력 값으로서, 데이터 전송 동작의 파라미터 셋과, 입력 값과 대응되는, 출력 값으로서, 데이터 전송 시의 에러율을 포함할 수 있다.
일 실시 예에 의한 가상 시뮬레이터 모듈은, 함수 또는 미리 학습된 인공지능 모델을 통해 가상의 동작을 구현할 수 있다. 일 실시 예에 의한 가상 시뮬레이터 모듈이, 함수를 통해 동작을 구현하는 모듈인 경우, 실제 데이터에 기초하여, 함수에 포함된 적어도 하나의 변수나, 함수의 구성(ex. 수식 구조)가 수정됨으로써, 생성될 수 있다. 예를 들면, 실제 데이터에 따른, 입력 값이 상기 가상 시뮬레이터 모듈에 입력됨에 따라서, 상기 입력 값에 대응하는 실제 데이터의 출력 값이 출력될 수 있도록, 적어도 하나의 변수가 결정될 수 있다.
또한, 일 실시 예에 의한 가상 시뮬레이터 모듈이, 미리 학습된 인공지능 모델을 통해 가상의 동작을 구현할 수 있는 경우, 상기 인공지능 모델이, 실제 데이터에 따른 입력 값에 기초하여 출력 값을 출력할 수 있도록, 수정됨으로써, 110에서 생성된 가상 시뮬레이터 모듈이 획득될 수 있다. 예를 들면, 상기 인공지능 모델은, 상기 실제 데이터에 기초하여, 상기 인공지능 모델을 구성하는, 각 노드에 대한 가중치 값, 바이어스 값, 노드 구조 등이 수정됨으로써, 실제 데이터에 기초하여 수정된 인공지능 모델이 획득될 수 있다.
220에서, 일 실시 예에 의한 전자 장치(1000)는, 210에서 획득된 복수 개의 가상 시뮬레이터 모듈 중 적어도 하나의 가상 시뮬레이터를 선택할 수 있다. 일 실시 예에 의하면, 전자 장치(1000)는 복수 개의 가상 시뮬레이터를 각각 평가함으로써, 수행하고자 하는 동작을 구현하기에 적합한 가상 시뮬레이터를 선택할 수 있다.
일 실시 예에 의한 전자 장치(1000)는, 각각의 가상 시뮬레이터가 실제 데이터와 차이가 가장 적은 출력 값을 실제 데이터로서 출력하는지 여부에 기초하여, 각각의 가상 시뮬레이터를 평가할 수 있다. 일 실시 예에 의한, 전자 장치(1000)는, 복수 개의 가상 시뮬레이터를 평가하기 위해, 실제 환경에서 획득된 적어도 하나의 실제 데이터를 획득할 수 있다. 또한, 가상 시뮬레이터를 평가하기 위한, 실제 데이터는, 실제 환경에서, 평가를 위해, 임의의 파라미터 셋에 따라 데이터가 전송된 동작에 기초하여, 획득될 수 있다. 일 실시 예에 의한 전자 장치(1000)는, 복수 개의 가상 시뮬레이터에 상기 임의의 파라미터 셋이 입력됨에 따라, 출력된 값과, 실제 환경에서 획득된 실제 데이터와의 차이가 가장 작은 가상 시뮬레이터를, 가장 성능이 좋은 가상 시뮬레이터로 판단하고, 최종적으로 선택할 수 있다.
일 실시 예에 의하면, 전자 장치(1000)는, 상술한 예에 한하지 않고, 복수 개의 가상 시뮬레이터에 대해, 다양한 방법에 따라서, 평가할 수 있다. 예를 들면, 전자 장치(1000)는, 가상 시뮬레이터에 의해 구현될 수 있는 각각의 동작들의, 처리 속도, 복잡도, 출력 값에 대한 예측 정확도 등 다양한 기준에 따라서, 복수 개의 가상 시뮬레이터를 평가할 수 있다. 상술한 예에 한하지 않고, 전자 장치(1000)는, 다양한 방법에 따라, 복수 개의 가상 시뮬레이터를 평가하여, 다양한 파라미터 셋, 즉, 입력 값에 따라서, 최적의 동작이 구현됨으로써, 최적의 출력 값이 획득될 수 있는 적어도 하나의 가상 시뮬레이터를 선택할 수 있다.
또한, 일 실시 예에 의한, 220의 가상 시뮬레이터를 선택하는 동작은, 미리 학습된 인공지능 모델에 의하여 수행될 수도 있다. 예를 들면, 복수 개의 가상 시뮬레이터 중에서, 최적의 동작이 구현될 수 있는 가상 시뮬레이터가 획득될 수 있도록 미리 학습된 인공지능 모델이 이용될 수 있다.
일 실시 예에 의한 전자 장치(1000)는 240에서, 적어도 하나의 선택된 가상 시뮬레이터 모듈에 따라, 최적의 결과를 획득할 것으로 예측되는 동작의 파라미터 셋을 결정하고, 결정된 파라미터 셋에 기초하여, 동작을 수행할 수 있다. 일 실시 예에 의하면, 전자 장치(1000)는, 적어도 하나의 가상 시뮬레이터 모듈에, 현재 수행하고자 하는 동작에 대한 다양한 파라미터 셋을 입력하여, 최적의 출력 값이 획득될 수 있는 파라미터 셋을 결정할 수 있다. 일 실시 예에 의한 전자 장치(1000)는, 결정된 파라미터 셋에 따라서, 동작을 수행할 수 있다.
예를 들어, 데이터 전송 에러율을 예측하는 가상 시뮬레이터 모듈의 경우, 전자 장치(1000)는, 가상 시뮬레이터 모듈에 따라, 최소의 에러율이 획득될 수 있는, 상황 정보를 결정하고, 상기 결정된 상황 정보에 따라서, 데이터를 전송하는 동작을 수행할 수 있다.
또한, 일 실시 예에 의한 전자 장치(1000)는, 상기 230에서 수행된 동작의 결과에 기초하여, 240에서, 실제 데이터를 획득할 수 있다. 일 실시 예에 의하면, 240에서 획득된 실제 데이터에 기초하여, 210에서, 복수 개의 가상 시뮬레이터 모듈이 갱신될 수 있다.
예를 들어, 데이터 전송 에러율을 예측하는 가상 시뮬레이터 모듈의 경우, 전자 장치(1000)는, 230에서 수행된 데이터를 전송하는 동작에 대한 파라미터 셋 및 전송 에러율이, 상기 240에서, 실제 데이터로서 획득될 수 있다.
따라서, 일 실시 예에 의하면, 실제 환경에서 획득된 실제 데이터에 기초하여, 적응적으로 변형된 가상 시뮬레이터 모듈이 획득됨에 따라서, 가상 시뮬레이터 모듈의 성능이 보다 향상될 수 있다.
도 3은 일 실시 예에 의한 가상 시뮬레이터 모듈의 일 예를 나타낸 도면이다.
도 3을 참조하면, 일 실시 예에 의한 가상 시뮬레이터 모듈(320)에 입력값(310)이 입력됨에 따라서, 출력값(350)이 획득될 수 있다.
일 실시 예에 의한, 데이터 전송 에러율을 예측하는 값을 출력값으로서 출력하는 가상 시뮬레이터 모듈(320)의 경우, 상기 가상 시뮬레이터 모듈(320)의 입력 값(310)은 채널 상태(γ), 데이터의 블록 크기(B), 부호화율(R), 모듈레이션 순서(M) 등의 값 중 적어도 하나를 포함할 수 있다.
일 실시 예에 의한 채널 상태는, 채널에서, 전송되는 데이터에 포함될 수 있는 잡음에 관한 정보로서, 예를 들면, SINR(signal to interference plus Noise Ratio), SNR(signal to noise ratio) 등의 정보를 포함할 수 있다.
일 실시 예에 의하면, 상기 입력 값(310)이 가상 시뮬레이터 모듈(320)에 입력됨으로써 출력된 값(340)과, 실제 환경에서 수행된 동작에 의하여, 획득된 실제 데이터(330)가 비교됨에 따라, 가상 시뮬레이터 모듈(320)이 변형될 수 있다.
예를 들어, 가상 시뮬레이터 모듈(320)에 의해 예측된 에러율(340)과, 실제 환경에서 수행된 데이터 전송 동작에 따라 획득된 에러율(330) 간 차이가 최소화되도록, 가상 시뮬레이터 모듈(320)이 변형될 수 있다. 일 실시 예에 의한 가상 시뮬레이터 모듈(320)은, 가상 시뮬레이터 모듈(320)을 구성하는 함수, 함수의 변수 등이 다른 값으로 설정됨으로써, 변형될 수 있다.
예를 들어, 가상 시뮬레이터 모듈(320)은, 이하 수학식 1에 따른 함수로 구성될 수 있다.
[수학식 1]
일 실시 예에 의한 가상 시뮬레이터 모듈(320)은, 수학식 1의 Pe(γ, B, R) 값을 출력 값으로서 출력할 수 있다. 또한, 가상 시뮬레이터 모듈(320)의 함수를 구성하는 변수들인, k1, k2, 내지 k12의 값은, 실제 데이터에 기초하여, 적응적으로 설정될 수 있다.
또한, 일 실시 예에 의한 가상 시뮬레이터 모듈(320)이 미리 학습된 인공지능 모델에 따라서 동작하는 경우, 230 및 240 간의 차이가 최소화되도록, 인공지능 모델을 구성하는, 가중치, 노드 구조 및 바이어스 값 중 적어도 하나가 수정됨으로써, 변형될 수 있다.
도 4는 일 실시 예에 의한 전자 장치(1000)의 내부 구성을 설명하기 위한 블록도이다.
도 5는 일 실시 예에 의한 전자 장치(1000)의 내부 구성을 설명하기 위한 블록도이다.
도 4를 참조하면, 전자 장치(1000)는, 프로세서(1300) 및 메모리(1700)을 포함할 수 있다. 그러나, 도 4에 도시된 구성 요소 모두가 전자 장치(1000)의 필수 구성 요소인 것은 아니다. 도 4에 도시된 구성 요소보다 많은 구성 요소에 의해 전자 장치(1000)가 구현될 수도 있고, 도 4에 도시된 구성 요소보다 적은 구성 요소에 의해 전자 장치(1000)가 구현될 수도 있다.
예를 들면, 전자 장치(1000)는 도 5에 도시된 바와 같이, 일 실시예에 따른 전자 장치(1000)는, 프로세서(1300) 및 메모리(1700) 이외에 사용자 입력부(1100), 출력부(1200), 센싱부(1400), 통신부(1500), 및 A/V 입력부(1600)를 더 포함할 수도 있다.
사용자 입력부(1100)는, 사용자가 전자 장치(1000)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(1100)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.
일 실시 예에 의한 사용자 입력부(1100)는, 제1 가상 시뮬레이터 모듈 및 제2 가상 시뮬레이터 모듈을 획득하고, 획득된 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하기 위한 사용자 입력을 수신할 수 있다. 예를 들어, 사용자 입력에 기초하여, 제1 가상 시뮬레이터 모듈 및 제2 가상 시뮬레이터 모듈에 기초한, 단말 장치(150)의 캐리어를 선택하기 위한 동작이 수행될 수 있다.
또 다른 예로, 사용자 입력에 따라, 데이터를 전송하는 동작이 수행되는 경우, 데이터를 전송하는 동작과 관련된, 데이터 전송 에러율을 예측하는 가상 시뮬레이터 모듈이 획득될 수 있고, 상기 획득된 가상 시뮬레이터 모듈에 따라서, 데이터 전송 에러율이 최저로 예측된 동작의 파라미터 셋에 기초하여, 데이터를 전송하는 동작이 수행될 수 있다.
출력부(1200)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력부(1200)는 디스플레이부(1210), 음향 출력부(1220), 및 진동 모터(1230)를 포함할 수 있다.
디스플레이부(1210)는 전자 장치(1000)에서 처리되는 정보를 표시 출력한다. 일 실시 예에 의하면, 디스플레이부(1210)는 가상 시뮬레이터 모듈을 획득하는 동작과 관련된 정보가 출력될 수 있다. 예를 들어, 일 실시 예에 따라 획득된 가상 시뮬레이터 모듈에 따라서 수행된 동작과 관련된 정보가 출력될 수 있다.
한편, 디스플레이부(1210)와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부(1210)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이부(1210)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 전자 장치(1000)의 구현 형태에 따라 전자 장치(1000)는 디스플레이부(1210)를 2개 이상 포함할 수도 있다.
음향 출력부(1220)는 통신부(1500)로부터 수신되거나 메모리(1700)에 저장된 오디오 데이터를 출력한다.
진동 모터(1230)는 진동 신호를 출력할 수 있다. 또한, 진동 모터(1230)는 터치스크린에 터치가 입력되는 경우 진동 신호를 출력할 수도 있다.
일 실시 예에 의하면, 음향 출력부(1220) 및 진동 모터(1230)는 가상 시뮬레이터 모듈에 기초하여 수행되는 동작과 관련된 정보가 출력될 수 있다. 예를 들어, 일 실시 예에 따라 획득된 가상 시뮬레이터 모듈에 따라서 수행된 동작인, 캐리어 선택 동작 또는 데이터 전송 동작과 관련된 정보가 출력될 수 있다.
프로세서(1300)는, 통상적으로 전자 장치(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1300)는, 메모리(1700)에 저장된 프로그램들을 실행함으로써, 사용자 입력부(1100), 출력부(1200), 센싱부(1400), 통신부(1500), A/V 입력부(1600) 등을 전반적으로 제어할 수 있다.
전자 장치(1000)는 적어도 하나의 프로세서(1300)를 포함할 수 있다. 예를 들면, 전자 장치(1000)는 CPU(Central Processing Unit), GPU(Graphics Processing Unit), NPU(Neural Processing Unit) 등의 다양한 종류의 프로세서를 포함할 수 있다.
프로세서(1300)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(1700)로부터 프로세서(1300)에 제공되거나, 통신부(1500)를 통해 수신되어 프로세서(1300)로 제공될 수 있다. 예를 들면 프로세서(1300)는 메모리와 같은 기록 장치에 저장된 프로그램 코드에 따라 명령을 실행하도록 구성될 수 있다.
일 실시 예에 의한 프로세서(1300)는 동작을 가상으로 구현하기 위한, 시뮬레이터 모듈 및 모델링 모듈을 이용하여, 복수 개의 동작 중 하나의 동작을 수행할 수 있다. 프로세서(1300)는, 시뮬레이터 모듈을 이용하여, 동작의 성능을 나타내는 제1 성능 정보를 복수 개의 각 동작에 대해 획득할 수 있다. 또한, 프로세서(1300)는, 모델링 모듈을 이용하여, 제1 성능 정보에 기초하여, 제2 성능 정보를, 복수 개의 각 동작에 대해 획득할 수 있다. 프로세서(1300)는, 복수 개의 각 동작에 대해 획득된 제1 성능 정보 및 제2 성능 정보에 기초하여, 복수의 동작 중 하나의 동작을 수행할 수 있다
또한, 일 실시 예에 의한 프로세서(1300)는, 실제 데이터에 기초하여, 학습된, 복수 개의 가상 시뮬레이터 모듈을 획득하고, 복수 개의 가상 시뮬레이터 모듈이 실제 환경의 동작의 구현에 적합한지 여부에 기초하여, 복수 개의 가상 시뮬레이터 모듈 중에서, 적어도 하나의 가상 시뮬레이터 모듈을 획득할 수 있다.
또한, 일 실시 예에 의한 프로세서(1300)는, 적어도 하나의 가상 시뮬레이터 모듈에 의해 구현된 동작에 기초하여, 실제 환경에서, 동작을 수행할 수 있다.
예를 들면, 프로세서(1300)는, 적어도 하나의 가상 시뮬레이터 모듈에 의해 구현된 동작에 기초하여, 동작에 대한 파라미터 셋을 결정하고, 결정된 파라미터 셋에 기초하여, 실제 환경에서 동작을 수행할 수 있다. 일 실시 예에 따르면, 복수 개의 파라미터 셋에 기초하여, 가상 시뮬레이터 모듈을 이용하여, 복수 개의 동작이 가상으로 구현될 수 있다. 따라서, 가상으로 구현된 복수 개의 동작의 결과인 가상 시뮬레이터 모듈의 출력 값에 기초하여, 복수 개의 파라미터 셋 중 동작이 최적으로 수행될 수 있는, 파라미터 셋이 결정될 수 있다. 일 실시 예에 의하면, 결정된 파라미터 셋에 기초하여, 동작이 수행됨에 따라, 최적의 동작이 수행될 수 있다.
센싱부(1400)는, 전자 장치(1000)의 상태 또는 전자 장치(1000) 주변의 상태를 감지하고, 감지된 정보를 프로세서(1300)로 전달할 수 있다.
센싱부(1400)는, 지자기 센서(Geomagnetic sensor)(1410), 가속도 센서(Acceleration sensor)(1420), 온/습도 센서(1430), 적외선 센서(1440), 자이로스코프 센서(1450), 위치 센서(예컨대, GPS)(1460), 기압 센서(1470), 근접 센서(1480), 및 RGB 센서(illuminance sensor)(1490) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다.
통신부(1500)는, 전자 장치(1000)가 서버(2000) 또는 외부 장치(미도시)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(1500)는, 근거리 통신부(1510), 이동 통신부(1520), 방송 수신부(1530)를 포함할 수 있다.
근거리 통신부(short-range wireless communication unit)(1510)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
이동 통신부(1520)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.
방송 수신부(1530)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 전자 장치(1000)가 방송 수신부(1530)를 포함하지 않을 수도 있다.
일 실시 예에 의한, 통신부(1500)는 가상 시뮬레이터 모듈을 획득하는데 필요한 데이터를 송수신할 수 있다. 또한, 통신부(1500)는, 가상 시뮬레이터 모듈에 기초하여 선택된 캐리어를 통해, 무선 네트워크에 접속할 수 있다.
A/V(Audio/Video) 입력부(1600)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1610)와 마이크로폰(1620) 등이 포함될 수 있다. 카메라(1610)는 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 프로세서(1300) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다.
마이크로폰(1620)은, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크로폰(1620)은 가상 시뮬레이터 모듈을 획득하는 동작과 관련된 사용자의 음성 입력을 수신할 수 있다.
메모리(1700)는, 프로세서(1300)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 전자 장치(1000)로 입력되거나 전자 장치(1000)로부터 출력되는 데이터를 저장할 수도 있다.
일 실시 예에 의한 메모리(1700)는 가상 시뮬레이터 모듈을 획득하는데 필요한 데이터를 저장할 수 있다. 예를 들면, 메모리(1700)는 실제 환경의 동작과 관련된 실제 데이터를 저장할 수 있다.
메모리(1700)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
메모리(1700)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(1710), 터치 스크린 모듈(1720), 알림 모듈(1730) 등으로 분류될 수 있다.
UI 모듈(1710)은, 애플리케이션 별로 전자 장치(1000)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(1720)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 프로세서(1300)로 전달할 수 있다. 일부 실시예에 따른 터치 스크린 모듈(1720)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(1720)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.
터치스크린의 터치 또는 근접 터치를 감지하기 위해 터치스크린의 내부 또는 근처에 다양한 센서가 구비될 수 있다. 터치스크린의 터치를 감지하기 위한 센서의 일례로 촉각 센서가 있다. 촉각 센서는 사람이 느끼는 정도로 또는 그 이상으로 특정 물체의 접촉을 감지하는 센서를 말한다. 촉각 센서는 접촉면의 거칠기, 접촉 물체의 단단함, 접촉 지점의 온도 등의 다양한 정보를 감지할 수 있다.
사용자의 터치 제스처에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭, 스와이프 등이 있을 수 있다.
알림 모듈(1730)은 전자 장치(1000)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다.
도 6은 일 실시 예에 의한 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 방법을 나타낸 순서도이다.
도 6을 참조하면, 단계 610에서, 일 실시 예에 의한 전자 장치(1000)는, 복수의 동작에 대한 시뮬레이션을 수행하기 위하여, 시뮬레이션 파라미터 셋을 복수의 각 동작에 대해 획득할 수 있다. 일 실시 예에 의한 시뮬레이션 파라미터 셋은, 시뮬레이터 모듈이 동작을 시뮬레이션하여, 제1 성능 정보를 획득하기 위한, 파라미터들을 포함할 수 있다. 예를 들어, 캐리어를 통해 무선 네트워크에 연결하는 동작의 경우, 패킷 사이즈, 패킷 요청 간격, 핫스팟 거리 비율, 핫스팟 단말 장치 비율 등의 파라미터들을 포함할 수 있다. 상술한 예에 한하지 않고, 시뮬레이션 파라미터 셋은, 시뮬레이션된 동작의 성능과 관련된 정보를 획득하기 위한, 다양한 파라미터를 포함할 수 있다.
단계 620에서, 일 실시 예에 의한 전자 장치(1000)는, 시뮬레이터 모듈을 이용하여, 복수의 각 동작에 대한 제1 성능 정보를, 단계 610에서 획득된 시뮬레이션 파라미터 셋에 기초하여, 획득할 수 있다.
일 실시 예에 의한 제1 성능 정보는, 시뮬레이터 모듈에 의해 획득될 수 있는, 도 1에 도시된 입력 KPI(130)을 포함할 수 있다.
일 실시 예에 의하면, 시뮬레이터 모듈에 의해 획득된 제1 성능 정보와, 실제 관측된 제1 성능 정보 간의 차이가 작아지도록, 반복적으로 학습된 결과에 따라, 가장 적합한 파라미터 셋이, 제1 성능 정보를 획득하기 위한, 시뮬레이터 파라미터 셋으로 결정될 수 있다. 일 실시 예에 의한 시뮬레이터 모듈의 학습은, 입자 군집 최적화에 따른 학습 및 강화 학습 중 적어도 하나에 따라서, 수행될 수 있다.
일 실시 예에 의한 실제 환경에서 획득된 제1 성능 정보는, 실제 수행된 동작에 대한 성능을 나타내는 정보를 포함할 수 있다. 일 실시 예에 의하면, 제1 성능 정보를 획득하기 위하여, 서로 다른 설정에 따른, 동작이 여러 번 수행됨으로써, 실제 환경에서 제1 성능 정보가 획득될 수 있다.
단계 630에서, 일 실시 예에 의한 전자 장치(1000)는, 모델링 모듈을 이용하여, 단계 620에서 획득된 제1 성능 정보에 기초하여, 복수의 각 동작에 대한 제2 성능 정보를 획득할 수 있다.
일 실시 예에 의한 제2 성능 정보는, 모델링 모듈에 의해 획득될 수 있는, 도 1에 도시된 목표 KPI(140)을 포함할 수 있다.
일 실시 예에 의한 모델링 모듈은 실제 환경에서 획득된 제1 성능 정보 및 제2 성능 정보의 쌍을 포함하는 학습 데이터에 기초하여, 제1 성능 정보로부터 제2 성능 정보가 획득될 수 있도록, 미리 학습된 인공지능 모델일 수 있다.
일 실시 예에 의한 모델링 모듈은, 학습 데이터에 포함된 적어도 하나의 성능 정보가 업샘플링됨에 따라 생성된 새로운 학습 데이터를 포함할 수 있다. 적어도 하나의 성능 정보는, 제1 성능 정보 및 제2 성능 정보 중 적어도 하나를 포함할 수 있다.
일 실시 예에 의한 업샘플링은, 학습 데이터에 포함된 성능 정보의 값들 중 각 분할된 범위에 속하는, 성능 정보의 값의 개수가 기준값 이하인 성능 정보의 값에 기초하여, 새로운 학습 데이터가 생성됨으로써, 수행될 수 있다. 일 실시 예에 의하면, 성능 정보의 값의 범위가 복수 개의 범위로 분할될 수 있고, 각 분할된 범위에 속하는, 성능 정보의 값의 개수가 기준값 이하인지 여부가 식별될 수 있다.
또한, 일 실시 예에 의한 모델링 모듈의 학습 데이터는, 학습 데이터에 포함된 각각의 성능 정보의 분포 특성에 따라서, 분할된 범위에 따라 라벨링된 값을 성능 정보의 값 대신에 포함할 수 있다. 예를 들면, 성능 정보 중 RRC 드롭율은 대부분 0에 가까운 값을 가지는 분포 특성을 가지므로, 0에 가까운 0~2%의 범위는 다른 범위에 비해 더 많은 개수로 분할될 수 있다. 또한, 학습 데이터는, RRC 드롭율 값이 속하는 범위를 나타내는 라벨링된 값을, RRC 드롭율의 값 대신 포함할 수 있다.
단계 640에서, 일 실시 예에 의한 전자 장치(1000)는, 제1 성능 정보 및 제2 성능 정보에 기초하여, 복수의 동작 중 하나의 동작을 수행할 수 있다. 예를 들어, 전자 장치(1000)는, 제1 성능 정보 및 제2 성능 정보에 기초하여, 각 동작에 대한 스코어를 결정하고, 결정된 스코어가 가장 높은 동작을 수행할 수 있다. 일 예로, 제1 성능 정보 중 IP 처리량을 나타내는 값이 기준 값 이상인 동작이 수행될 수 있도록, 각 동작에 대한 스코어가 결정될 수 있다. 또한, 제2 성능 정보 중 RRC 드롭율이 기준값 이상인 동작의 스코어에는 패널티가 부과될 수 있다. 상술한 예에 한하지 않고, 전자 장치(1000)는, 복수의 동작 중 하나의 동작을 다양한 방법에 따라 결정하고 수행할 수 있다.
도 7은 일 실시 예에 따라 네트워크 환경의 동작을 시뮬레이션하는 일 예를 나타낸 도면이다.
도 7을 참조하면, 일 실시 예에 의한 전자 장치(1000)는, 실제 네트워크 환경에서 획득된 실제 데이터에 기초하여, 네트워크 환경에서 수행되는 동작을 구현하기 위한 가상 시뮬레이터 모듈을 획득할 수 있다.
일 실시 예에 의한 네트워크 환경의 동작은, 적어도 하나의 KPI에 기초하여, 설정된 조건에 따라서, 수행될 수 있다.
일 실시 예에 의한 KPI (710)는, 실제 네트워크 환경 및 가상 네트워크 환경에 대해 각각 존재할 수 있다. 일 실시 예에 의한 실제 네트워크 환경에 대한 KPI (710)는, 실제 네트워크 환경에서 수행된 동작에 대한 지표를 나타내고, 가상 네트워크 환경에 대한 KPI (710)는, 가상 네트워크 환경에서, 가상 시뮬레이터 모듈에 의해 가상으로 구현된 동작에 대한 지표를 나타낼 수 있다.
일 실시 예에 의하면, KPI (710)에 따라서, 실제 네트워크 환경 또는 가상 네트워크 환경에서 수행될 동작에 대한 설정 정보가 조정됨으로써, 최적의 성능으로 동작이 수행될 수 있다.
720에서, 일 실시 예에 의한 가상 네트워크 환경의 동작(721)은, 가상 시뮬레이터 모듈에 의하여, 가상의 네트워크 환경에서 구현될 수 있다. 일 실시 예에 의한 가상 시뮬레이터 모듈은, 실제 네트워크 환경의 동작이 수행되는데 이용되는 알고리즘, 모델, 함수 등에 기초하여, 가상의 네트워크 환경에서 수행된 동작에 대한 KPI를 획득할 수 있도록, 생성될 수 있다.
730에서, 일 실시 예에 의하면, 가상 시뮬레이터 모듈은, 실제 네트워크 환경에서 수행된 동작과 관련하여 획득된, 실제 데이터에 기초하여, 획득될 수 있다. 예를 들면, 가상 시뮬레이터 모듈은, 실제 데이터에 따른 입력값(ex. 동작에 대한 파라미터 셋)에 기초하여, 실제 데이터에 따른 출력값(ex. 동작의 결과, KPI)이 획득될 수 있도록, 변형됨으로써, 실제 네트워크 환경이 반영된 가상 시뮬레이터 모듈이 획득될 수 있다.
도 8은 일 실시 예에 의한 네트워크 환경의 동작을 시뮬레이션하는 일 예를 나타낸 도면이다.
도 8을 참조하면, 일 실시 예에 의한 전자 장치(1000)는, 810 또는 820에 도시된 모델에 따라서, 네트워크 환경의 동작을 수행할 수 있다. 일 실시 예에 의한 전자 장치(1000)는, 외부 단말(미도시)의 요청에 따라, 외부 단말이 통신을 수행할 수 있도록 데이터를 처리하는, 서버 또는 기지국이거나, 서버 또는 기지국을 제어할 수 있는 장치일 수 있다.
일 실시 예에 의한 810 및 820에 포함된 적어도 하나의 모델은, 네트워크 환경에서, 전자 장치(1000)가 로드 밸런싱(Load balancing) 동작 또는 에너지 절약(Energy saving) 동작을 수행하는데 이용될 수 있다.
일 실시 예에 의한 로드 밸런싱 동작은, 외부 단말의 통신 요청을 여러 개의 서버 또는 기지국으로 분산 처리하는 동작을 의미한다. 일 실시 예에 의하면, 로드 밸런싱 모델(812, 822)에 따라, 복수 개의 서버 또는 기지국에서, 적어도 하나의 외부 단말의 통신 요청이 처리될 수 있다.
또한, 일 실시 예에 의한 에너지 절약 동작은, 네트워크의 트래픽 상황에 따라서, 외부 단말의 통신 요청을 처리하는 서버 또는 기지국 중 일부 장치의 전원을 오프하는 동작을 의미한다. 일 실시 예에 의하면, 에너지 절약 모델(812, 822)에 따라서, 복수 개의 서버 또는 기지국의 전원이 제어될 수 있다.
일 실시 예에 의한, 로드 밸런싱 모델 또는 에너지 절약 모델(812, 822)은, 트래픽 모델(811, 812)에 따라 가상의 환경에서 구현된 다양한 트래픽 상황에 따라, 로드 밸런싱 동작 또는 에너지 절약 동작을 가상의 환경에서, 구현할 수 있다.
일 실시 예에 의한, PRACH(physical random access channel) 모델(814, 824), DRB(Data Radio Bearer) 성공 모델(815, 825), SRB(Signaling Radio Bearer) 성공 모델(816, 826), 및 싱크 모델(817, 827), 및 채널 모델(818)에 기초하여, 다양한 상황에서의 데이터 전송의 성공 확률이 획득될 수 있다. 또한, 일 실시 예에 의한, ARQ(automatic repeat request) 알고리즘(813-1), 스케줄러(813-2), HARQ(hybrid automatic repeat request) 알고리즘(813-3)은, 가상의 환경에서, 데이터의 에러를 제어하는 동작을 수행할 수 있다.
일 실시 예에 의한 ARQ 알고리즘 내지 HARQ 알고리즘(813-1, 813-2, 813-3)은, 810과 같이 각각 개별적으로 수행될 수 있으나, 820과 같이, 각각의 모델(824 내지 827)에서 ARQ 알고리즘 내지 HARQ 알고리즘에 따른 데이터의 에러를 제어하는 동작을 포함하여, 데이터 전송의 성공 확률이 획득될 수도 있다.
일 실시 예에 의하면, 상기 ARQ 알고리즘 내지 채널 모델(813-1, 813-2, 813-3, 814 내지 818, 824 내지 828)에 의해 획득될 수 있는 데이터가 전송되는 상황과 관련된 정보에 기초하여, 로드 밸런싱 모델 또는 에너지 절약 모델(812, 822)에 의해 로드 밸런싱 동작 또는 에너지 절약 동작이 가상 환경에서 구현될 수 있다. 예를 들면, 상기 ARQ 알고리즘 내지 채널 모델(813-1, 813-2, 813-3, 814 내지 818, 824 내지 828)에 기초하여 획득된 값이 로드 밸런싱 모델 또는 에너지 절약 모델(812, 822)에 대해 입력 값으로 이용됨으로써, 로드 밸런싱 동작 또는 에너지 절약 동작이 구현될 수 있다.
일 실시 예에 의하면, 로드 밸런싱 모델 또는 에너지 절약 모델(812, 822)뿐만 아니라, PRACH 모델 내지 싱크 모델(814 내지 817, 824 내지 827)도, 일 실시 예에 따른 가상 시뮬레이터 모듈을 획득하는 방법에 따라서, 획득될 수 있다.
또한, 일 실시 예에 의한 상기 ARQ 알고리즘 내지 채널 모델(813-1, 813-2, 813-3, 814 내지 818, 824 내지 828) 및 로드 밸런싱 모델과 에너지 절약 모델(812, 822)은, 일 실시 예에 따른, 가상 시뮬레이터 모듈을 획득하는 방법에 따라서, 실제 데이터에 기초하여, 지속적으로 수정될 수 있다.
도 9은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여, 가상 환경의 데이터 전송 동작에 대한 에러율을 검출하는 일 예를 나타낸 도면이다.
도 9을 참조하면, 일 실시 예에 의한 에러율(BLER; Block Error Rate)은, 링크 레벨 시뮬레이터에 의하여, 전송되는 소스 신호(910)와 수신 신호(950) 간의 차이에 기초하여 결정될 수 있다.
일 실시 예에 의한 소스 신호(910)는, 가상의 네트워크 환경에서 전송되는 신호로 임의로 생성될 수 있으며, 실제로 전송 동작이 수행되지 않는 신호이다. 일 실시 예에 의한 수신 신호(950)는, 소스 신호(910)가 모듈레이터(920), 채널 모델(930) 및 디모듈레이터(940)에 의하여, 가상의 네트워크 환경에서, 전송됨에 따라, 획득될 수 있다.
일 실시 예에 의한 모듈레이터(920)는 소스 신호(910)가 네트워크 환경으로 전송될 수 있도록, 소스 신호(910)를 적합하게 변환하는 동작을 수행할 수 있다. 예를 들면, 소스 신호(910)의 데이터는, 네트워크 환경에서 전송될 때 적은 양의 노이즈가 포함될 수 있는 형태로, 변환된 후 전송될 수 있다.
일 실시 예에 의한 채널 모델(930)은, 전송이 수행되는, 네트워크 환경을 가상으로 구현할 수 있다. 예를 들어, 채널 모델(930)에 의하면, 데이터가 전송됨에 따라, 전송 과정에서 포함될 수 있는 노이즈가 소스 신호(910)에 부가될 수 있도록, 네트워크 환경이 가상으로 구현될 수 있다.
일 실시 예에 의한 디모듈레이터(940)는, 채널 모델(930)에 의해 구현된 네트워크 환경을 통해 수신된 신호를 다시 변환함으로써, 소스 신호(910)와 대응되는 신호인, 수신 신호(950)를 출력하는 동작을 수행할 수 있다. 일 실시 예에 의한 디모듈레이터(940)는, 수신된 소스 신호(910)에 전송 과정에서 발생된 노이즈를 고려하여, 수신 신호(950)에 포함된 노이즈가 최소화될 수 있도록, 수신된 소스 신호(910)를 변환하여, 수신 신호(950)를 획득할 수 있다.
일 실시 예에 의한 BLER(960)은, 소스 신호(910)와 수신 신호(950)의 차이를 구함으로써, 데이터 전송의 에러율을 획득할 수 있다. 예를 들면, 소스 신호(910)가 채널 모델(930)에 의해 발생된 노이즈를 적게 포함할수록, 소스 신호(910)와 수신 신호(950) 간 차이가 적어짐에 따라서, 데이터 전송의 에러율이 낮아질 수 있다.
일 실시 예에 의하면 BLER(960)에서 획득된 에러율에 따라, 모듈레이터(910) 및 디모듈레이터(940)의 성능이 판단될 수 있다. 예를 들어, BLER(960)의 에러율이 낮을수록, 모듈레이터(910)에 의하여, 소스 신호(910)에 노이즈가 적게 포함될 수 있도록, 소스 신호(910)가 적절하게 변환된 것으로 판단될 수 있다. 또한, BLER(960)의 에러율이 낮을수록, 디모듈레이터(940)에 의하여, 채널 모델(930)을 통해 수신된 소스 신호(910)에 포함된 노이즈가 최소화될 수 있도록 상기 소스 신호(910)가 적절하게 변환됨으로써, 수신 신호(950)가 획득된 것으로 판단될 수 있다.
일 실시 예에 의하면 BLER(960)에서 획득된 에러율에 기초하여, 판단된 모듈레이터(910) 및 디모듈레이터(920)의 성능에 따라서, BLER(960)의 에러율이 더 낮아질 수 있도록, 모듈레이터(910) 또는 디모듈레이터(920)의 구성 요소가 수정될 수 있다. 예를 들면, 모듈레이터(910) 또는 디모듈레이터(920)의 동작이 수행되는데 이용되는, 함수의 구성요소(ex. 파라미터)나, 미리 학습된 인공지능 모델의 구성 요소가, BLER(960)의 에러율이 낮아질 수 있도록, 수정될 수 있다.
도 10은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여, 가상 환경의 동작에 대한 에러율을 검출하는 일 예를 나타낸 도면이다.
도 10을 참조하면, 일 실시 예에 의한 에러율(BLER)은, 시스템 레벨 시뮬레이터에 의하여, 전송된 신호(1010)에 관한 정보 없이, 수신된 신호(1030)에 기초하여 결정될 수 있다.
일 실시 예에 의하면, 시스템 레벨 시뮬레이터에서, 네트워크 환경에서 데이터 신호가 전송(1010)되고, 채널 모델(1020)에 의해 구현된 네트워크 환경을 거쳐 수신(1030)된 신호에 대하여, SINR(1040) 값이 획득될 수 있다. 일 실시 예에 의한 모델(1050)은, SINR(1040) 값을 입력 값으로 하여, 에러율인, BLER(1060)을 출력할 수 있다.
따라서, 일 실시 예에 의한 시스템 레벨 시뮬레이터에 의하면, 전송된 신호(1010)에 관한 정보 없이도, 수신 측에서, SINR(1040) 값에 기초하여, BLER(1060)이 획득될 수 있다.
다만, 일 실시 예에 의한 시스템 레벨 시뮬레이터의 모델(1050)은, 전송된 신호(1010)에 관한 정보 없이 획득된 BLER(1060)의 값의 정확도를 고려하여, 도 8의 링크 레벨 시뮬레이터에 의해, 가상으로 구현된 소스 신호(810)에 따라서, 획득된 BLER 값 및 수신 신호(850)의 SNR 또는 SINR 값에 기초하여, 수정될 수 있다. 예를 들어, 도 8의 수신 신호(850)의 SNR 또는 SINR와 BLER 값 간의 대응 관계에 따라서, 도 10의 SINR(1040)에 대응되는 BLER(1060)이 획득될 수 있도록, 모델(1050)이 수정될 수 있다.
그러나, 일 실시 예에 의한, 시스템 레벨 시뮬레이터의 모델(1050)이, 실제 데이터에 기초하여, 적응적으로 수정될 수 있는 경우, 전송된 신호(1010)에 관한 정보는, 실제 데이터가 획득된 네트워크 환경으로서, 시스템 레벨 시뮬레이터의 모델(1050)에 고려될 수 있다. 따라서, 시스템 레벨 시뮬레이터의 모델(1050)은, 일 실시 예에 따라, 실제 데이터에 기초하여, 수정됨으로써, 도 8의 링크 레벨 시뮬레이터의 BLER 값을 고려하지 않아도, 전송된 신호(1010)에 관한 정보 없이 모델(1050)로부터 획득된 BLER(1060)의 값의 정확도가 충분히 확보될 수 있다.
일 실시 예에 의한 모델(1050)은, 도 2에 도시된 가상 시뮬레이터 모듈(220)과 대응될 수 있다. 예를 들어, 도 10의 모델(1050)에 입력되는 SINR(1040)은, 도 2에서, 채널 상태(γ)로서 입력되는 값과 대응될 수 있다. 따라서, 일 실시 예에 의한 모델(1050)은, 도 2의 가상 시뮬레이터 모듈(220)과 같이, SINR(1040)에 기초하여, BLER(1060)이 출력될 수 있는, 함수 또는 인공지능 모델로 구성될 수 있다.
또한, 일 실시 예에 의한 모델(1050)은, 도 2의 가상 시뮬레이터 모듈(220)과 같이, 실제 데이터에 기초하여 적응적으로 수정될 수 있다. 예를 들어, 모델(1050)은, 실제 데이터에 포함된 SINR(1040)에 기초하여, 실제 데이터에 포함된 BLER(1060)을 출력할 수 있도록, 모델(1050)의 동작을 구성하는 요소들(ex. 함수의 구성, 함수의 파라미터, 인공지능 모델의 구성요소)이 수정될 수 있다.
따라서, 일 실시 예에 의한 가상 시뮬레이터 모듈은, 실제 데이터에 기초하여 적응적으로 수정됨에 따라서, 고정된 파라미터를 포함하는 함수에 따라 동작하는 기존의 가상 시뮬레이터 모듈보다 더 나은 성능을 제공할 수 있다.
도 11은 일 실시 예에 의한 가상 시뮬레이터 모듈을 이용하여 파라미터 셋을 예측하는 일 예를 나타낸 도면이다.
도 11을 참조하면, 실제 환경에서 관측된 적어도 하나의 파라미터를 포함하는 파라미터 조합(1110)에 기초하여, 가상 시뮬레이터 모듈(1120)은, 적어도 하나의 파라미터를 포함하는 파라미터 셋(1123)을 예측할 수 있다. 일 실시 예에 의해 예측되는 파라미터 셋(1123)은, 실제 환경(1130)에서 수행된 네트워크 동작(1131)에 따라 예측될 수 있는 파라미터 셋(1132)과 대응될 수 있다.
일 실시 예에 의한 파라미터 조합(1110)은, 가상 시뮬레이터 모듈(1120)에서 실제 환경을 가상으로 구현하는데 이용될 수 있다. 일 실시 예에 의한 파라미터 조합(1110)은, 실제 환경에서 관측될 수 있는, 예를 들면, 전자 장치(1000)에 의해 획득될 수 있는, 여러 파라미터 중, 실제 환경을 가상으로 구현하여, 파라미터 셋을 예측하는데 적합한 적어도 하나의 파라미터의 조합(combination)을 포함할 수 있다.
일 실시 예에 의하면, 가상 환경(1121)에서 가상의 네트워크 동작(1122)이 수행된 결과에 기초하여, 파라미터 셋(1123)이 예측될 수 있다. 일 실시 예에 의한 가상 시뮬레이터 모듈(1120)은, 미리 학습된 인공지능 모델로부터 예측된 파라미터 셋(1123)을 출력할 수 있다. 일 실시 예에 의한 인공지능 모델은, 파라미터 조합(1110)을 입력으로 하여, 가상 환경(1121)을 구현하고, 가상의 네트워크 동작(1122)을 수행함으로써, 파라미터 셋(1123)을 출력할 수 있다. 상술한 인공지능 모델에 한하지 않고, 미리 설정된 함수에 의해, 파라미터 셋(1123)이 예측될 수도 있다.
일 실시 예에 의한 가상 시뮬레이터 모듈(1120)에서, 파라미터 셋(1123)을 예측하는데 이용될 수 있는, 함수 또는 인공지능 모델과, 파라미터 조합(1110)은, 실제 환경(1130)에서 획득된 파라미터 셋(1132)에 기초하여, 최적화(1150)될 수 있다. 일 실시 예에 의한 파라미터 셋(1132)은, 실제 환경(1130)에서, 네트워크 동작(1131)이 실제로 수행된 결과에 기초하여, 획득될 수 있다.
일 실시 예에 의해 실제 환경(1130) 및 가상 환경(1121)에서 수행되는 동작(1122, 1131)은, 네트워크 동작에 한하지 않고, 다양한 종류의 동작을 포함할 수 있다.
일 실시 예에 의하면, 파라미터 셋(1132)과, 가상 시뮬레이터 모듈(1120)에 의해 예측된 파라미터 셋(1123)이 비교(1140)되어, 두 파라미터 셋(1123, 1132)의 차이가 최소화될 수 있도록, 최적화(1150)가 수행될 수 있다. 예를 들면, 최적화(1150)는, 두 파라미터 셋(1123, 1132)의 차이가 최소화될 수 있도록, 함수 또는 인공지능 모델이 수정되거나, 파라미터 조합(1110)에 포함된 적어도 하나의 파라미터가 다른 파라미터로 변경됨으로써, 수행될 수 있다.
도 12는 일 실시 예에 의한 파라미터 셋(1123)을 예측하기 위한 파라미터 조합(1110)을 획득하는 일 예를 나타낸 도면이다.
도 12를 참조하면, 1201에서, 다양한 파라미터들의 조합 중에서, 어느 하나의 파라미터 조합(1202)에 기초하여, 가상 환경에서의 파라미터 셋(1123)이 획득될 수 있다. 일 실시 예에 의한 파라미터 조합(1202)은, 실제 환경에서 관측된 값으로서, 가상 환경을 구현하는데 이용될 수 있다. 일 실시 예에 의한 파라미터 조합(1202)은, 실제 환경에서 관측될 수 있는 적어도 하나의 파라미터를 포함할 수 있다.
예를 들어, 파라미터 조합(1202)이 서로 다른 종류의 P1 및 P2의 파라미터로 구성되는 경우, P1 및 P2는 1201에 도시된 바와 같이, 다양한 종류의 파라미터들의 조합으로 결정될 수 있다. 일 예로, 파라미터 조합(1202)은, 실제 환경에서, 네트워크를 이용하는 장치들의 개수, 네트워크에서 송수신되는 패킷 크기 등, 다양한 종류의 파라미터를 포함할 수 있다. 일 실시 예에 의하면, 다양한 종류의 파라미터들의 조합 중 하나(1202)에 기초하여, 가상 환경의 파라미터 셋(1123)이 획득될 수 있다. 상술한 예에 한하지 않고, 파라미터 조합(1202)은, 다양한 개수의 파라미터들의 조합으로서 획득될 수 있다.
일 실시 예에 의한 가상 환경 및 실제 환경의 파라미터 셋들(1123, 1132)은, 도시된 예와 같이, OBS1, OBS2 등의 서로 다른 종류의 적어도 하나의 파라미터 값을 포함함에 따라서, 벡터 형태의 값으로 표현될 수 있다. 일 실시 예에 의한 가상 환경의 파라미터 셋(1123)과 실제 환경의 파라미터 셋(1132)에 포함된 OBS1, OBS2 등의 파라미터 값은, 각각 파라미터 셋들(1123, 1132) 간에 대응되는 값들을 포함할 수 있다.
일 실시 예에 의한, 파라미터 셋들(1123, 1132) 간의 차이를 나타내는 값인, 에러 정보(1205)도, 벡터 형태로 획득될 수 있다. 예를 들면, 에러 정보(1205)는, L2 디스턴스(L2 distance, 유클리드 거리 공식)에 따라, 두 벡터(1123, 1132) 간의 차이를 나타내는 값으로서, 획득될 수 있다. 상술한 예에 한하지 않고, 파라미터 셋들(1123, 1132) 간의 차이를 나타내는 에러 정보(1205)는, 다양한 방법에 따라서, 다양한 형태로 획득될 수 있다.
일 실시 예에 의하면, 에러 정보(1205)의 크기가 최소화될 수 있도록, 파라미터 조합(1202) 및 가상 시뮬레이터 모듈(1120)에서 이용되는 인공지능 모델 또는 함수가 수정될 수 있다.
일 실시 예에 의하면, 가상의 환경을 구현하기 위해 이용되는 가상 시뮬레이터 모듈을, 이용하여, 복수의 동작 중 더 적절한 동작을 선택하고 수행할 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
또한, 본 명세서에서, “부”는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Claims (15)
- 전자 장치에서, 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 방법에 있어서,
복수의 동작에 대한 시뮬레이션을 수행하기 위한, 시뮬레이션 파라미터 셋을 각 동작에 대하여 획득하는 단계;
시뮬레이터 모듈을 이용하여, 상기 시뮬레이션 파라미터 셋에 기초한, 상기 시뮬레이션된 동작의 성능을 나타내는 제1 성능 정보를 상기 각 동작에 대하여 획득하는 단계;
상기 시뮬레이터 모듈에서 상기 시뮬레이션된 동작의 성능을 나타내는 제2 성능 정보를, 모델링 모듈을 이용하여, 상기 제1 성능 정보에 기초해, 상기 각 동작에 대하여 획득하는 단계; 및
상기 제1 성능 정보 및 제2 성능 정보에 기초하여, 상기 복수의 동작 중 하나의 동작을 수행하는 단계를 포함하는, 방법. - 제1항에 있어서, 상기 시뮬레이터 모듈은
실제 환경에서 획득된 상기 제1 성능 정보와 상기 시뮬레이터 모듈에 의해 출력된 상기 제1 성능 정보 간의 차이가 작아지도록, 반복적으로 학습됨으로써 획득되는, 방법. - 제2항에 있어서, 상기 시뮬레이터 모듈은,
입자 군집 최적화(PSO)에 따른 학습 및 강화 학습 중 적어도 하나에 따라서 학습되는, 방법. - 제1항에 있어서, 상기 모델링 모듈은
실제 환경에서 획득된 제1 성능 정보 및 제2 성능 정보의 쌍을 포함하는 학습 데이터에 기초하여, 상기 제1 성능 정보로부터 상기 제2 성능 정보가 획득될 수 있도록, 미리 학습된 인공지능 모델인, 방법. - 제4항에 있어서, 상기 모델링 모듈은
상기 학습 데이터에 포함된 적어도 하나의 성능 정보가 업샘플링됨에 따라 생성된 새로운 학습 데이터에 기초하여, 학습된 인공지능 모델인, 방법. - 제5항에 있어서, 상기 업샘플링은,
상기 성능 정보의 값의 범위가 복수 개의 범위로 분할되고, 각 분할된 범위에 속하는, 상기 성능 정보의 값의 개수가 기준값 이하인 범위에 속하는 상기 성능 정보의 값에 기초하여, 새로운 학습 데이터가 생성됨으로써, 수행되는, 방법. - 제4항에 있어서,
상기 학습 데이터에 포함된, 적어도 하나의 성능 정보의 분포 특성에 따라, 상기 성능 정보의 값의 범위가 복수 개의 범위로 분할되고,
상기 학습 데이터는, 상기 성능 정보의 값이 속한 범위를 나타내는 라벨링된 값을 상기 성능 정보의 값으로서 포함하는, 방법. - 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 전자 장치에 있어서,
하나 이상의 명령어들(instructions)을 저장하는 메모리; 및
상기 메모리에 저장된 하나 이상의 명령어들을 실행하는 적어도 하나의 프로세서를 포함하며,
상기 적어도 하나의 프로세서는,
복수의 동작에 대한 시뮬레이션을 수행하기 위한, 시뮬레이션 파라미터 셋을 각 동작에 대하여 획득하고,
시뮬레이터 모듈을 이용하여, 상기 시뮬레이션 파라미터 셋에 기초한, 상기 시뮬레이션된 동작의 성능을 나타내는 제1 성능 정보를 상기 각 동작에 대하여 획득하고,
상기 시뮬레이터 모듈에서 상기 시뮬레이션된 동작의 성능을 나타내는 제2 성능 정보를, 모델링 모듈을 이용하여, 상기 제1 성능 정보에 기초해, 상기 각 동작에 대하여 획득하고,
상기 제1 성능 정보 및 제2 성능 정보에 기초하여, 상기 복수의 동작 중 하나의 동작을 수행하는, 전자 장치. - 제8항에 있어서, 상기 시뮬레이터 모듈은
실제 환경에서 획득된 상기 제1 성능 정보와 상기 시뮬레이터 모듈에 의해 출력된 상기 제1 성능 정보 간의 차이가 작아지도록, 반복적으로 학습됨으로써 획득되는, 전자 장치. - 제9항에 있어서, 상기 시뮬레이터 모듈은,
입자 군집 최적화(PSO)에 따른 학습 및 강화 학습 중 적어도 하나에 따라서 학습되는, 전자 장치. - 제8항에 있어서, 상기 모델링 모듈은
실제 환경에서 획득된 제1 성능 정보 및 제2 성능 정보의 쌍을 포함하는 학습 데이터에 기초하여, 상기 제1 성능 정보로부터 상기 제2 성능 정보가 획득될 수 있도록, 미리 학습된 인공지능 모델인, 전자 장치. - 제11항에 있어서, 상기 모델링 모듈은
상기 학습 데이터에 포함된 적어도 하나의 성능 정보가 업샘플링됨에 따라 생성된 새로운 학습 데이터에 기초하여, 학습된 인공지능 모델인, 전자 장치. - 제12항에 있어서, 상기 업샘플링은,
상기 성능 정보의 값의 범위가 복수 개의 범위로 분할되고, 각 분할된 범위에 속하는, 상기 성능 정보의 값의 개수가 기준값 이하인 범위에 속하는 상기 성능 정보의 값에 기초하여, 새로운 학습 데이터가 생성됨으로써, 수행되는, 전자 장치. - 제11항에 있어서, 상기 학습 데이터에 포함된, 적어도 하나의 성능 정보의 분포 특성에 따라, 상기 성능 정보의 값의 범위가 복수 개의 범위로 분할되고,
상기 학습 데이터는, 상기 성능 정보의 값이 속한 범위를 나타내는 라벨링된 값을 상기 성능 정보의 값으로서 포함하는, 전자 장치. - 제1항 내지 제7항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/320,885 US20210357722A1 (en) | 2020-05-14 | 2021-05-14 | Electronic device and operating method for performing operation based on virtual simulator module |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063024822P | 2020-05-14 | 2020-05-14 | |
US63/024,822 | 2020-05-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210141323A true KR20210141323A (ko) | 2021-11-23 |
Family
ID=78695301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210025122A KR20210141323A (ko) | 2020-05-14 | 2021-02-24 | 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 전자 장치 및 그 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210141323A (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102506622B1 (ko) * | 2022-04-01 | 2023-03-07 | 리벨리온 주식회사 | 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치 |
WO2023214795A1 (ko) * | 2022-05-04 | 2023-11-09 | 삼성전자 주식회사 | 상용망 기지국 데이터 기반 디지털 트윈 구축 전자 장치 및 방법 |
US11907098B2 (en) | 2022-04-01 | 2024-02-20 | Rebellions Inc. | Method for measuring performance of neural processing device and device for measuring performance |
-
2021
- 2021-02-24 KR KR1020210025122A patent/KR20210141323A/ko unknown
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102506622B1 (ko) * | 2022-04-01 | 2023-03-07 | 리벨리온 주식회사 | 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치 |
US11907098B2 (en) | 2022-04-01 | 2024-02-20 | Rebellions Inc. | Method for measuring performance of neural processing device and device for measuring performance |
WO2023214795A1 (ko) * | 2022-05-04 | 2023-11-09 | 삼성전자 주식회사 | 상용망 기지국 데이터 기반 디지털 트윈 구축 전자 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20210141323A (ko) | 가상 시뮬레이터 모듈에 기초하여, 동작을 수행하는 전자 장치 및 그 동작 방법 | |
KR102607880B1 (ko) | 전자 장치 및 그의 제어 방법 | |
WO2020068158A1 (en) | Photo relighting using deep neural networks and confidence learning | |
KR20200120557A (ko) | 인공지능 모델을 갱신하는 전자 장치, 서버 및 그 동작 방법 | |
EP3816917A1 (en) | Electronic device for updating artificial intelligence model, server, and operation method therefor | |
CN116057853A (zh) | 融合射频和传感器测量结果以进行波束管理的方法和设备 | |
US11531912B2 (en) | Electronic apparatus and server for refining artificial intelligence model, and method of refining artificial intelligence model | |
KR20220045800A (ko) | 인공지능 모델을 분산 처리하는 시스템 및 그 동작 방법 | |
KR20210124896A (ko) | 통신 네트워크용 전자 장치 및 상기 전자 장치에 대한 동작 방법 | |
KR20220088385A (ko) | 뉴럴 네트워크를 이용한 의상 추천 방법 및 장치 | |
US20210357722A1 (en) | Electronic device and operating method for performing operation based on virtual simulator module | |
US20220004874A1 (en) | Electronic apparatus training individual model of user and method of operating the same | |
US12061955B2 (en) | Electronic apparatus and server for refining artificial intelligence model, and method of refining artificial intelligence model | |
WO2024039987A1 (en) | Adjusting haptic rendering based on contextual awareness | |
CN113052198B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
US11991059B1 (en) | Techniques for generating service-specific server health scores and application traffic forecasts | |
KR102433654B1 (ko) | 뉴럴 네트워크를 이용하여 서버가 색상 이미지에 기반한 심리 상태와 관련된 정보를 단말에게 제공하는 방법 및 장치 | |
US11659584B2 (en) | Configuration of wireless communication signals between devices | |
US20220405546A1 (en) | Electronic device for converting artificial intelligence model and operating method thereof | |
CN117750103B (zh) | 一种智能大屏设备投屏的播放控制方法及系统 | |
KR102513048B1 (ko) | 뉴럴 네트워크를 이용하여 지원 사업과 관련된 리포트 정보 및 지원 사업과 관련된 진행 정보를 기반으로 진단 정보를 멘토 단말에게 전송하는 방법 및 장치 | |
US12067754B2 (en) | Electronic device and method of inferring object in image | |
US20230035961A1 (en) | Emoji recommendation system using user context and biosignals | |
Liu et al. | V2X User Scheduling for Collaborative Perception Based on Reinforcement Learning | |
KR20220057353A (ko) | 인공지능 모델을 갱신하는 전자 장치 및 그 동작 방법 |