KR20240108640A - Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법 - Google Patents

Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법 Download PDF

Info

Publication number
KR20240108640A
KR20240108640A KR1020230000159A KR20230000159A KR20240108640A KR 20240108640 A KR20240108640 A KR 20240108640A KR 1020230000159 A KR1020230000159 A KR 1020230000159A KR 20230000159 A KR20230000159 A KR 20230000159A KR 20240108640 A KR20240108640 A KR 20240108640A
Authority
KR
South Korea
Prior art keywords
value
data packet
learning
priority
packet transmission
Prior art date
Application number
KR1020230000159A
Other languages
English (en)
Inventor
박현희
김지나
김병찬
유철우
Original Assignee
명지대학교 산학협력단
Filing date
Publication date
Application filed by 명지대학교 산학협력단 filed Critical 명지대학교 산학협력단
Publication of KR20240108640A publication Critical patent/KR20240108640A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access
    • H04W74/08Non-scheduled access, e.g. ALOHA
    • H04W74/0808Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA]
    • H04W74/0816Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA] with collision avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

5G MTC 환경에서 디바이스가 데이터 패킷을 전송하는 과정에서의 충돌 확률을 감소시키기 위해 Q-러닝 기반의 슬롯 알로하를 이용하여 데이터 전송의 우선순위를 결정하는 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법에 관한 것으로, 복수의 디바이스가 미리 설정된 타임 슬롯을 통해 데이터 패킷을 전송하는 단계, 동일한 타임 슬롯에 복수의 디바이스가 동시에 데이터 패킷을 전송하는 충돌 발생 여부를 판단하는 단계, 각 디바이스의 충돌 발생 정보와, 디바이스의 Q-러닝을 학습하기 위해 각 디바이스에 미리 부여된 현재의 Q값을 기반으로 디바이스에 보상값 또는 패널티값을 부여하는 단계, 각 디바이스에 부여된 보상값 또는 패널티값을 이용하여 상기 Q값을 업데이트하는 단계, 및 업데이트된 Q값을 기반으로 각 디바이스의 데이터 패킷 전송 우선순위를 결정하는 단계를 포함하고, 데이터 패킷을 전송하는 각 디바이스의 이전 데이터 전송 정보를 반영하여 데이터 전송 처리 속도 및 데이터 전송 효율을 증대할 수 있는 효과가 있다.

Description

Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법{Method for determining the priority of data packet transmission using Q-learning based slotted ALOHA}
본 발명은 5G MTC(Machine Type Communication) 환경에서 디바이스가 데이터 패킷을 전송하는 과정에서의 충돌 확률을 감소시키기 위해 Q-러닝(Q-learning) 기반의 슬롯 알로하(slotted ALOHA)를 이용하여 데이터 전송의 우선순위를 결정하는 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법에 관한 것이다.
일반적으로 MTC(Machine Type Communication) 환경에서 다수의 디바이스들은 통신을 수행하기 위해 이동 통신 기지국에 임의 접속을 시도한다.
예를 들어, 각 디바이스들은 정해진 시간 간격을 여러개의 타임 슬롯으로 나누어 데이터 패킷을 전송하는 슬롯 알로하(slotted ALOHA) 기법을 사용하여 이동 통신 기지국에 임의 접속을 시도할 수 있다.
이때, 상기 알로하(ALOHA)는 1970년대초 하와이 군도에 있는 섬들간의 무선 데이터 통신망을 구성하기 위해 개발된 것으로, 동일 채널을 여러 사용자가 공동으로 이용하는 다중접속이 가능한 기법이다.
1970년에 개발된 순수 알로하(Pure ALOHA)는 사용자가 기지국에 전송할 데이터가 있을 때마다 데이터 프레임을 전송하는 방식이다. 즉, 상기 순수 알로하(Pure ALOHA)는 송신노드가 패킷을 전송하면 수신노드는 유효한 패킷인지를 확인하여 즉시 응답신호(ACK)를 발송한다.
또한, 순수 알로하에서 상기 송신노드는 응답신호(ACK)가 올때까지 대기한 후 최대왕복 전파지연시간 이상이 되면 패킷을 재전송하는 방법으로 동일 채널을 다수의 노드가 이용하게 된다.
따라서, 상기 순수 알로하에서는 동시에 다수의 노드가 패킷을 보내는 경우 충돌(Collision)이 발생하게 되는데, 부하가 증가할수록 패킷 충돌 횟수가 늘어나는 문제가 있다.
1972년에 개발된 슬롯 알로하(slotted ALOHA)는 각 채널을 여러개의 타임 슬롯으로 나누고, 다음 타임 슬롯이 데이터 전송을 시작할 때까지 대기한 후 타임 슬롯의 시작 부분에서 데이터 전송을 시도한다.
이로 인해, 상기 슬롯 알로하는 순수 알로하에 비해 데이터 충돌 확률이 감소하고, 데이터 처리량이 크게 증가한다.
하지만, 상기 슬롯 알로하(Slotted ALOHA)에서 타임 슬롯당 하나의 디바이스가 데이터 패킷을 전송할 수 있고, 두 대 이상의 디바이스가 하나의 타임 슬롯에 동시에 접근하여 데이터 패킷 전송을 시도할 경우에는 충돌이 발생하게 된다.
따라서, 다수의 디바이스가 동시에 데이터 패킷을 전송하는 5G MTC 환경에서 슬롯 알로하 기법을 이용하여 데이터 패킷을 전송하는 경우 충돌 확률이 급격히 증가하게 된다.
예를 들어, 하기 특허문헌 1에는 슬롯방식 알로하 임의접속방식(Slotted Aloha Random Access Control)과 자동재전송요구 오류정정방식을 결합하여 상향링크 패킷을 전송하는 긴 왕복지연시간을 가지는 무선통신 단말기에서의 패킷 전송 방법에 대해 개시되어 있다.
또한, 하기 특허문헌 1의 무선통신 단말기에서의 패킷 전송 방법은 임의의 크기를 가지는 자동재전송요구(ARQ) 버퍼에 상향링크 전송 패킷을 저장하는 패킷 저장단계, 상기 자동재전송요구(ARQ) 버퍼에 저장되어 있는 패킷을 제 1 슬롯 간격으로 전송하는 제 1 패킷 전송단계, 상기 전송한 패킷에 대한 비정상 피드백 정보를 연속하여 소정 회수 수신함에 따라 평균 왕복지연시간과 상기 자동재전송요구 버퍼의 크기를 이용하여 제 2 슬롯 간격을 산출하는 단계, 상기 산출한 제 2 슬롯 간격으로 추가 상향링크 전송 패킷을 전송하는 제 2 패킷 전송단계, 및 상기 제 2 슬롯 간격으로 전송한 패킷에 대한 정상 피드백 정보를 소정 회수 연속하여 수신함에 따라 상기 제 1 슬롯 간격으로 변경하는 슬롯 간격 변경단계를 포함한다.
이를 통해, 하기 특허문헌 1은 슬롯방식 알로하를 이용하여 무선통신 단말기에서 기지국 등으로 패킷 전송시 채널 환경에 따라 패킷의 전송 간격을 조절함으로써 타 무선통신 단말기로부터 전송되는 패킷과의 충돌 확률을 감소시켜 전송 효율을 증가시킬 수 있는 효과가 있다.
그러나, 특허문헌 1은 패킷의 전송 간격을 긴 시간 지연을 갖도록 조절함으로써 데이터 패킷 전송을 위한 전체 처리 시간이 증가하는 문제와, 다수의 디바이스가 동시에 데이터 패킷을 전송하는 5G MTC 환경에서는 충돌 확률 감소 효과가 미비한 문제가 있다.
또한, 하기 특허문헌 2에는 고속무선 패킷 데이터 시스템의 단말이 랜덤번호와 호접속 시간을 초기화한 후, 상기 랜덤번호에 따라 결정되는 호접속시간에 동기를 잡기 위한 프리앰블 데이터를 기지국으로 전송하여 동기획득 여부를 판단하는 단계와, 상기 프리앰블 데이터를 전송하여 동기획득이 이루어지면 기지국은 단말이 전송하는 데이터를 수신하여 기지국 패킷보드에서 상기 랜덤번호를 순차적으로 증가시키고, 단말은 상기 증가된 랜덤번호에 따른 호 접속시간을 결정하여 상기 결정된 호접속시간에 상기 프리앰블 데이터를 전송하는 단계를 포함하는 것을 특징으로 하는 고속무선 패킷 데이터 시스템에서 패킷 데이터의 호 충돌방지방법이 개시되어 있다.
이를 통해 하기 특허문헌 2는 패킷 데이터의 서비스시에 다수의 단말기가 동시에 호 접속을 시도하여 호 충돌이 발생되는 상황을 방지함으로써 호 접속률을 높이고, 무선자원의 운용효율을 증대시킬 수 있는 효과가 있다.
그러나, 하기 특허문헌 2는 단말의 호접속시간이 랜덤번호에 따라 결정됨으로써 단말(디바이스)의 이전 데이터 전송 정보가 반영되지 않아 데이터 전송 효율이 저하되는 문제가 있다.
대한민국 등록특허 제10-0660055호(2006년 12월 20일 공고) 대한민국 등록특허 제10-0464489호(2004년 12월 31일 공고)
본 발명의 목적은 다수의 디바이스가 데이터 패킷을 전송하는 과정에서의 충돌 확률을 감소시켜 데이터 전송 효율을 증대할 수 있는 데이터 패킷 전송의 우선순위 결정 방법을 제공하는 것이다.
또한, 본 발명의 다른 목적은 데이터 패킷을 전송하는 각 디바이스의 이전 데이터 전송 정보를 반영하여 데이터 전송 처리 속도 및 데이터 전송 효율을 증대할 수 있는 데이터 패킷 전송의 우선순위 결정 방법을 제공하는 것이다.
이러한 기술적 과제를 이루기 위한 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 (a) 복수의 디바이스가 미리 설정된 타임 슬롯을 통해 데이터 패킷을 전송하는 단계, (b) 동일한 타임 슬롯에 복수의 디바이스가 동시에 데이터 패킷을 전송하는 충돌 발생 여부를 판단하는 단계, 및 (c) 각 디바이스의 충돌 발생 정보와, 디바이스의 Q-러닝을 학습하기 위해 각 디바이스에 미리 부여된 현재의 Q값을 기반으로 디바이스에 보상값 또는 패널티값을 부여하는 단계를 포함한다.
또한, 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 (d) 각 디바이스에 부여된 보상값 또는 패널티값을 이용하여 상기 Q값을 업데이트하는 단계, 및 (e) 업데이트된 Q값을 기반으로 각 디바이스의 데이터 패킷 전송 우선순위를 결정하는 단계를 더 포함한다.
또한, 본 발명에서 상기 단계 (c)는 데이터 패킷을 성공적으로 전송한 디바이스에 양수(Positive number)의 보상값을 부여하는 것을 특징으로 한다.
또한, 본 발명에서 상기 단계 (c)는 데이터 패킷 전송에 실패한 디바이스에 음수(Negative number)의 패널티값을 부여하는 것을 특징으로 한다.
또한, 본 발명에서 상기 단계 (c)는 (c1) 데이터 패킷 전송에 실패하여 충돌이 발생한 각 디바이스에 대한 현재의 Q값 크기를 비교하는 단계, (c2) 비교 결과를 토대로 충돌이 발생한 디바이스 중 현재의 Q값이 가장 높은 디바이스에게 상대적으로 크기가 작은 음의 패널티값을 부여하는 단계, 및 (c3) 비교 결과를 토대로 충돌이 발생한 디바이스 중 현재 Q값이 가장 높은 디바이스를 제외한 나머지 디바이스에게 상대적으로 크기가 큰 음의 패널티값을 부여하는 단계를 포함한다.
또한, 본 발명에서 상기 단계 (d)는 각 디바이스에 부여된 보상값 또는 패널티값과, 이전의 데이터 패킷 전송 성공 여부에 따라 각 디바이스에 보상값 또는 패널티값이 반영된 현재의 Q값과, Q-러닝(Q-learning)의 학습율(learning rate)을 이용하여 업데이트된 Q값을 산출하는 것을 특징으로 한다.
이상에서 설명한 바와 같이, 본 발명에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 다수의 디바이스가 데이터 패킷을 전송하는 과정에서의 충돌 확률을 감소시켜 데이터 전송 효율을 증대할 수 있는 효과가 있다.
또한, 본 발명에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 데이터 패킷을 전송하는 각 디바이스의 이전 데이터 전송 정보를 반영하여 데이터 전송 처리 속도 및 데이터 전송 효율을 증대할 수 있는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 데이터 패킷 전송의 우선순위 결정 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시 예에 따른 디바이스의 데이터 패킷 전송시 타임 슬롯 내 충돌 발생을 설명하기 위한 도면이다.
도 3은 도 1의 단계(S32)를 세부적으로 나타내는 도면이다.
도 4는 본 발명의 실시 예에 따른 디바이스의 타임 슬롯 내 충돌 발생시 패넛티 부여를 설명하기 위한 도면이다.
도 5는 Q-러닝의 학습율 변화에 따른 데이터 패킷 전송 성공 비율을 설명하기 위한 도면이다.
도 6은 Q-러닝의 학습율 변화에 따른 디바이스의 충돌 발생 비율을 설명하기 위한 도면이다.
도 7은 음의 보상 파라미터에 따른 디바이스의 정규화된 처리량을 설명하기 위한 도면이다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다.
각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 데이터 패킷 전송의 우선순위 결정 방법을 나타내는 순서도이고, 도 2는 본 발명의 실시 예에 따른 디바이스의 데이터 패킷 전송시 타임 슬롯 내 충돌 발생을 설명하기 위한 도면이다.
본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 MTC(Machine Type Communication) 환경에서 데이터 패킷 전송시 발생하는 충돌 확률을 감소시키기 위해 슬롯 알로하(slotted ALOHA) 기법에 Q-러닝(Q-learning)을 적용하여 다수의 디바이스에 대한 데이터 패킷 전송의 우선순위를 결정한다.
또한, 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 도 1에서 도시된 바와 같이 복수의 디바이스(10)가 미리 설정된 타임 슬롯을 통해 데이터 패킷을 전송하는 단계(S10)와, 동일한 타임 슬롯에 복수의 디바이스(10)가 동시에 데이터 패킷을 전송하는 충돌 발생 여부를 판단하는 단계(S20)를 포함한다.
일반적으로 MTC(Machine Type Communication)는 5G 이동 통신에서 다수의 기계형 통신을 지원하는 통신 형태로서, 상기 MTC 환경에서는 다수의 디바이스(10)를 셀룰러 네트워크에 연결할 수 있다.
즉, 도 2에서 도시된 바와 같이 5G MTC(Machine Type Communication) 환경에서는 다수의 디바이스들이 동시에 데이터 패킷을 이동 통신 기지국에 전송한다.
이때, 슬롯 알로하(slotted ALOHA) 기법은 정해진 시간 간격 내에서 각 프레임(frame)을 여러 개의 타임 슬롯으로 나눈다. 또한, 각 디바이스(10)는 하나의 타임 슬롯당 하나의 데이터 패킷을 전송할 수 있다.
따라서, 하나의 타임 슬롯에 두 대 이상의 디바이스(10)가 동시에 데이터 패킷 전송을 시도할 경우 충돌(Collision)이 발생하게 된다. 예를 들어, 도 2에서 디바이스1(11)은 첫번째 타임 슬롯에서 데이터 패킷 전송을 시도하였고, 첫번째 타임 슬롯에서 데이터 패킷 전송을 시도한 디바이스가 디바이스1(11) 한개뿐이므로 충돌없이 데이터 전송에 성공한다.
마찬가지로, 디바이스2(12)는 세번째 타임 슬롯에서 단독으로 데이터 패킷 전송을 시도하여 성공적으로 데이터 패킷을 전송한다.
하지만, 도 2에서 디바이스3(13)과 디바이스4(14)는 두번째 타임 슬롯에서 동시에 데이터 패킷을 전송함으로써 충돌이 발생한다.
본 발명에서 상기 단계(S20)는 데이터 패킷의 전송 과정에서 발생하는 각각의 타임 슬롯에 대한 데이터 패킷 전송의 충돌 발생 여부와, 충돌이 발생한 디바이스(10)의 개수 정보를 파악한다.
예를 들어, 도 2에서 두번째 타임 슬롯에 데이터 전송을 시도한 디바이스(10)는 디바이스3(13)과 디바이스4(14)이므로 충돌(Collision)이 발생한 디바이스(10)의 총개수(N)는 2가 된다.
또한, 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 각 디바이스(10)의 충돌 발생 정보와, 디바이스의 Q-러닝을 학습하기 위해 각 디바이스(10)에 미리 부여된 현재의 Q값(Q-Value)을 기반으로 디바이스(10)에 보상값 또는 패널티값을 부여하는 단계(S30)를 더 포함한다.
즉, 본 발명에서 상기 단계(S30)는 강화 학습 중 하나인 Q-러닝(Q-learning) 기법을 이용하여 데이터 패킷 전송을 수행하는 각 디바이스(10)에 보상값 또는 패널티값을 부여한다.
일반적으로 Q-러닝(Q-learning) 기법은 의사결정자가 현재 상태(State)에서 정책에 따라 결정된 행동(Action)에 대한 보상(Reward)을 획득한다. 또한, Q-러닝은 이러한 보상을 바탕으로 의사결정자가 가진 다음 상태의 Q값(Q-Value)을 업데이트한다.
이때, 상기 Q값(Q-Value)은 의사결정자가 현재 상태에서 어떤 행동을 했을 때의 기대되는 보상(Reward)을 토대로 학습된 결과를 나타낸다. 또한, 본 발명에서 데이터 패킷 전송에 참여하는 디바이스(10)는 Q-러닝의 의사결정자에 해당된다.
본 발명에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 상기 Q값을 이용하여 각 디바이스(10)에 대한 데이터 패킷 전송의 우선순위를 결정할 수 있다.
또한, 본 발명에서는 전송하는 데이터 패킷의 전송 결과를 디바이스(10)가 Q-러닝을 사용하여 학습하도록 한다. 이때, 각 디바이스(10)는 데이터 패킷 전송 결과에 따라 보상값 또는 패널티값을 획득한다.
이러한, 보상값 또는 패널티값은 디바이스(10)의 다음 상태에서 사용할 정책에 반영되며, 다음 상태에서의 행동을 결정한다. 또한, 본 발명에서 각 디바이스(10)는 개별의 Q값을 가지고 있으며, 데이터 패킷 전송 결과를 바탕으로 각 디바이스(10)가 가진 Q값을 업데이트한다.
또한, 각 디바이스(10)가 가진 Q값의 Q-테이블을 통해 이전 상태의 행동을 기록할 수도 있다.
따라서, 본 발명에서 디바이스(10)는 Q값에 따라 디바이스(10)의 우선순위를 지정하도록 학습하고, Q값을 통해 보상값을 최대화할 수 있는 정책을 찾아 자신의 고유한 타임 슬롯을 점유할 수 있다.
또한, 본 발명에서 상기 단계(S30)는 도 1에서 도시된 바와 같이 데이터 패킷을 성공적으로 전송한 디바이스(10)에 양수(Positive number)의 보상값을 부여하는 단계(S31)와, 데이터 패킷 전송에 실패한 디바이스(10)에 음수(Negative number)의 패널티값을 부여하는 단계(S32)를 포함한다.
예를 들어, 본 발명에서 데이터 패킷을 성공적으로 전송한 디바이스(10)에는 +1의 보상(Reward)값을 부여하고, 데이터 패킷 전송에 실패한 디바이스(10)에는 -1의 패널티값을 부여할 수 있다.
도 3은 도 1의 단계(S32)를 세부적으로 나타내는 도면이고, 도 4는 본 발명의 실시 예에 따른 디바이스의 타임 슬롯 내 충돌 발생시 패넛티 부여를 설명하기 위한 도면이다.
본 발명에서 상기 단계(S32)는 동일한 타임 슬롯에서 데이터 전송 충돌이 발생한 디바이스(10)의 개수와, 이전의 데이터 패킷 전송 성공 여부에 따라 각 디바이스(10)에 보상값 또는 패널티값이 반영된 현재의 Q값을 기반으로 패널티값을 산출할 수 있다.
즉, 본 발명은 동일한 타임 슬롯에서 데이터 패킷 전송을 시도하여 충돌이 발생한 디바이스(10)의 수로 데이터 전송을 위한 채널 내의 혼잡도를 추정하고, 상기 혼잡도와 현재의 Q값을 이용하여 새로운 패널티값을 산출한다.
또한, 상기 단계(S32)는 도 3에서 도시된 바와 같이 데이터 패킷 전송에 실패하여 충돌이 발생한 각 디바이스(10)에 대한 현재의 Q값 크기를 비교하는 단계(S321), 비교 결과를 토대로 충돌이 발생한 디바이스(10) 중 현재의 Q값이 가장 높은 디바이스(10)에게 상대적으로 크기가 작은(완화된) 음의 패널티값을 부여하는 단계(S322), 및 비교 결과를 토대로 충돌이 발생한 디바이스(10) 중 현재 Q값이 가장 높은 디바이스(10)를 제외한 나머지 디바이스(10)에게 상대적으로 크기가 큰(강화된) 음의 패널티값을 부여하는 단계(S323)를 포함한다.
즉, 충돌이 발생한 디바이스(10) 중 현재 Q값이 가장 높은 디바이스(10)가 다른 충돌 발생 디바이스(10)에 비해 상대적으로 작은 패널티값을 부여받게 된다.
이러한 보상값 또는 패널티값은 아래의 [수학식 1]과 같이 나타낼 수 있다.
[수학식 1]
여기에서, R은 디바이스(10)의 데이터 패킷 전송 결과에 따른 보상값을 나타내고, n은 데이터 패킷 전송을 시도한 전체 디바이스(10) 중 n번째 디바이스(10)를 나타내며, i는 i번째 타임 슬롯을 나타낸다.
즉, 상기 는 데이터 패깃 전송을 시도하는 n번째 디바이스(10)가 i번째 타임 스롯에서 데이터 패킷 전송 결과에 따라 부여받은 보상값을 나타낸다.
또한, 는 데이터 패깃 전송시 n번째 디바이스(10)가 i번째 타임 스롯에서 충돌이 발생한 경우의 패널티값을 나타낸다. 또한, 상기 는 충돌이 발생한 디바이스(10)의 현재 Q값에 따라 아래의 [수학식 2]와 같이 나타낼 수 있다.
[수학식 2]
여기에서, N은 데이터 패킷 전송 과정에서 충돌이 발생한 디바이스(10)의 총개수를 나타낸다. 또한, 상기 는 충돌이 발생한 각 디바이스(10)의 현재 Q값을 비교한 후 현재 Q값의 크기에 따라 패널티값의 크기를 결정한다.
즉, 충돌이 발생한 디바이스(10) 중에서 현재 Q값이 가장 높은 디바이스(10)의 경우에는 완화된 음의 패널티값을 부여하고, 나머지 충돌 발생 디바이스(10)에는 강화된 음의 패널티값을 부여한다.
예를 들어, 도 2에서 데이터 패킷 전송시 충돌이 발생한 디바이스(10)는 디바이스3(13)과 디바이스4(14)로서 총개수는 2가 된다.
본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 도 4에서 도시된 바와 같이 디바이스3(13)과 디바이스4(14)의 현재 Q값을 비교한다.
또한, 도 4와 같이 이전 상태에서의 전송 성공 횟수에서 디바이스3(13)이 디바이스4(14)에 비해 상대적으로 많아 디바이스3(13)의 현재 Q값이 높은 경우, 디바이스3(13)에는 완화된 음의 패널티값인 (1/2)δ를 부여하고, 디바이스4(14)에는 강화된 음의 패널티값인 (1/2)ω를 부여하게 된다.
이때, 상기 δ와 ω는 충돌이 발생한 디바이스(10)에 부여되는 음수의 패널티값을 결정하기 위한 음의 보상 파라미터(Negative rewards parameter)를 나타내며, δ가 ω에 비해 상대적으로 높은 값을 나타낸다.
예를 들어, δ가 -1인 경우, ω는 -2가 설정될 수 있다. 또한, δ가 -0.1인 경우, ω는 -0.2가 설정될 수 있다.
또한, 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 각 디바이스(10)에 부여된 보상값 또는 패널티값을 이용하여 상기 Q값을 업데이트하는 단계(S40), 및 업데이트된 Q값을 기반으로 각 디바이스(10)의 데이터 패킷 전송 우선순위를 결정하는 단계(S50)를 더 포함할 수 있다.
일반적으로 Q-러닝은 현재 타임 스텝(time step)에서 다음 상태까지 고려하기 때문에 지속해서 변화하는 환경에 적응할 수 있다. 이때, 의사결정자는 총 에피소드를 학습하면서 현재 상태에서 보상값을 최대화할 수 있는 행동을 수행한다.
또한, 상기 보상값은 미래에 받을 보상의 가지를 현재 상태에서 환산하여 보상의 가치가 감소하는 것을 줄여야 한다.
따라서, Q-러닝에서 Q값은 0과 1 사이의 할인율(discount factor)()을 사용하여 현재의 가치로 환산할 수 있다. 또한, Q-러닝은 아래의 [수학식 3]을 이용하여 의사결정자가 가진 Q값을 업데이트할 수 있다.
[수학식 3]
여기에서, Q는 의사결정자가 가진 현재의 Q값을 나타내고, Q'은 새로 업데이트된 Q값을 나타낸다. 또한, 는 현재 상태(current state)를 나타내고, 는 현재 타임 스텝에서 정책에 따라 결정된 행동(current action)을 나타낸다.
또한, 는 0과 1 사이에서 미리 결정된 할인율(discount factor)을 나타내고, 는 Q-러닝의 학습률(Learning rate)을 나타낸다.
또한, 는 다음 타임 스텝의 상태(next state)를 나타내고, 는 다음 타임 스텝에서의 보상(next reward)을 나타낸다.
본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 각 디바이스(10)의 Q값을 업데이트하기 위해 상기 [수학식 3]을 아래의 [수학식 4]와 같이 정리할 수 있다.
[수학식 4]
여기에서, n은 데이터 패킷 전송을 시도한 전체 디바이스 중 n번째 디바이스를 나타내고, i는 i번째 타임 슬롯을 나타내며, 는 Q-러닝의 학습률(Learning rate)을 나타낸다.
또한, 는 현재 상태의 디바이스(10)에 대한 Q값을 나타내고, 는 다음 상태의 디바이스(10)에 대한 새로 업데이트된 Q값을 나타내며, 는 n번째 디바이스(10)가 i번째 타임 슬롯에서 데이터 전송을 시도했을 때 받을 수 있는 보상값을 나타낸다.
본 발명에서 데이터 패킷 전송에 참여하는 각 디바이스(10)의 타임 슬롯은 개별의 Q값을 가지고 있으며, 초기 접속시 상기 Q값은 0으로 초기화된다. 또한, 상기 Q값은 디바이스(10)가 타임 슬롯에 데이터 패킷을 전송한 결과를 바탕으로 이진의 보상값을 획득한다.
예를 들어, 디바이스(10)가 타임 슬롯에 데이터 패킷을 성공적으로 전송하면 +1의 양의 보상값을 받고, 동일한 타임 슬롯에 데이터 패킷 전송을 시도한 디바이스(10)가 복수개 존재하여 충돌이 발생한 경우에는 -1의 음의 패널티값을 받을 수 있다.
또한, 각 디바이스(10)는 받은 보상값 또는 패널티값을 바탕으로 상기 [수학식 4]를 이용하여 다음 상태(next state)의 Q값을 업데이트할 수 있다.
즉, 본 발명에서 각 디바이스(10)는 데이터 패킷 전송 결과에 따라 각 디바이스(10)에 부여된 보상값 또는 패널티값과, 이전의 데이터 패킷 전송 성공 여부에 따라 각 디바이스(10)에 보상값 또는 패널티값이 반영된 현재의 Q값과, Q-러닝(Q-learning)의 학습율(learning rate)을 이용하여 지속적으로 Q값을 업데이트한다.
또한, 본 발명에서 상기 학습률(Learning rate)은 아래의 [수학식 5]를 이용하여 산출할 수 있다.
[수학식 5]
여기에서, 은 데이터 전송을 시도하는 전체 디바이스(10) 중 n번째 디바이스(10)의 학습율이고, 은 상기 n번째 디바이스(10)의 전송되지 않고 남아 있는 데이터 패킷의 수이며, 은 상기 n번째 디바이스(10)가 가진 전송할 모든 데이터 패킷의 수를 나타낸다.
또한, 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법에서 각 디바이스(10)는 업데이트된 Q값을 통해 다음 타임 슬롯에서 최적의 행동을 수행할 수 있도록 업데이트된 Q값에 따라 결정된 데이터 패킷 전송 우선순위를 통해 데이터 전송을 수행한다.
또한, 본 발명에서 각 디바이스(10)의 데이터 패킷 전송 우선순위를 결정할 때 충돌이 발생한 각 디바이스(10)의 Q값을 비교하여 충돌이 발생한 디바이스(10) 중 가장 Q값이 높은 디바이스(10)는 이전 상태에서 전송 성공 횟수가 많으므로 다른 충돌이 발생한 디바이스(10)보다 빠르게 고유한 타임 슬롯을 점유할 수 있다.
즉, 본 발명은 남아있는 데이터 패킷들이 다른 디바이스(10)에 의해 제약받지 않고 데이터 패킷 전송에 성공할 수 있도록 가장 Q값이 높은 디바이스(10)에 우선순위를 지정한다.
이를 통해, 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 각 디바이스(10)의 타임 슬롯 내 혼잡도와 각 디바이스(10)가 가진 Q값을 고려하여 개별적으로 패널티값을 부여함으로써 다음 데이터 패킷 전송시 최적의 타임 슬롯을 선택하도록 학습할 수 있다.
도 5는 Q-러닝의 학습율 변화에 따른 데이터 패킷 전송 성공 비율을 설명하기 위한 도면이다. 즉, 도 5는 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법을 이용하여 Q-러닝의 학습율 변화에 따른 데이터 패킷 전송 성공 비율을 검증한 결과를 나타내는 그래프이다.
이때, 5G MTC 환경을 고려하기 위해 데이터 패킷 전송에 동시에 참여하는 전체 디바이스(10)의 개수를 150~300개로 설정하고, 각 디바이스(10)당 패킷의 수는 100개로 설정한다. 또한, Q-러닝의 학습율을 0.5, 0.1, 0.01로 변화시켜 가며 성능을 검증한다.
또한, 음의 보상 파라미터(Negative rewards parameter)가 데이터 전송 성능에 어떠한 영향을 미치는지 검증하기 위해 상기 음의 보상 파라미터값에 대한 δ(완화된 음의 패널티값)와 ω(강화된 음의 패널티값)를 각각 (-0.01, -0.02), (-0.1, -0.2), (-1, -2)로 설정하여 각 파라미터에 따른 정규화된 처리량을 나타낸다.
도 5에서 전송 성공 비율(41)은 종래의 슬롯 알로하에 대한 전송 성공 비율을 나타내고, 전송 성공 비율(42)은 Q-러닝의 학습율(Learning rate)을 0.5로 적용한 PAS 알로하의 전송 성공 비율을 나타낸다.
또한, 도 5에서 전송 성공 비율(43)은 Q-러닝의 학습율(Learning rate)을 0.1로 적용한 PAS 알로하의 전송 성공 비율을 나타내고, 전송 성공 비율(44)은 Q-러닝의 학습율(Learning rate)을 0.01로 적용한 PAS 알로하의 전송 성공 비율을 나타낸다.
도 5에서 도시된 바와 같이 본 발명에 따른 PAS 알로하(Priority based Adaptive slotted ALOHA) 기법의 전송 성공 비율(42, 43, 44)은 약 63%로서, 종래 슬롯 알로하(slotted ALOHA) 기법의 전송 성공 비율(41)보다 최대 68% 증가하는 것을 확인할 수 있다.
또한, 본 발명에 따른 PAS 알로하 기법은 Q-러닝의 학습율을 변화시키더라도 전송 성공 비율이 크게 감소하지 않는 것을 확인할 수 있다.
도 6은 Q-러닝의 학습율 변화에 따른 디바이스의 충돌 발생 비율을 설명하기 위한 도면이다. 즉, 도 6은 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법을 이용하여 학습율 변화에 따른 디바이스(10)의 충돌 발생 비율을 검증한 결과를 나타내는 그래프이다.
또한, 도 6에서 충돌 발생 비율(51)은 종래의 슬롯 알로하에 대한 충돌 발생 비율을 나타내고, 충돌 발생 비율(52)은 Q-러닝의 학습율(Learning rate)을 0.5로 적용한 PAS 알로하의 충돌 발생 비율을 나타낸다.
또한, 도 6에서 충돌 발생 비율(53)은 Q-러닝의 학습율(Learning rate)을 0.1로 적용한 PAS 알로하의 충돌 발생 비율을 나타내고, 충돌 발생 비율(54)은 Q-러닝의 학습율(Learning rate)을 0.01로 적용한 PAS 알로하의 충돌 발생 비율을 나타낸다.
도 6에서 도시된 바와 같이 본 발명에 따른 PAS 알로하의 충돌 발생 비율(52, 53, 54)이 약 52%를 나타냄으로써 종래의 알로하 기법의 충돌 발생 비율(51)에 비해 최대 30% 감소하는 것을 확인할 수 있다.
또한, 본 발명에 따른 PAS 알로하 기법은 Q-러닝의 학습율을 변화시키더라도 충돌 발생 비율이 크게 증가하지 않는 것을 확인할 수 있다.
도 7은 음의 보상 파라미터에 따른 디바이스의 정규화된 처리량을 설명하기 위한 도면이다. 즉, 도 7은 데이터 패킷 전송에 동시에 참여하는 디바이스(10)의 개수를 150~300개로 설정하고, Q-러닝의 학습율은 0.01로 설정한다.
또한, 도 7은 음의 보상 파라미터에 대한 δ(완화된 음의 패널티값)와 ω(강화된 음의 패널티값)를 각각 (-0.01, -0.02), (-0.1, -0.2), (-1, -2)로 설정하여 각 파라미터에 따른 정규화된 처리량을 나타낸다.
도 7에서 정규화된 처리량(61)은 음의 보상 파라미터를 (-1, -2)로 설정하였을 때의 값이고, 정규화된 처리량(62)은 음의 보상 파라미터를 (-0.1, -0.2)로 설정하였을 때의 값이며, 정규화된 처리량(63)은 음의 보상 파라미터를 (-0.01, -0.02)로 설정하였을 때의 값을 나타낸다.
도 7에서 도시된 바와 같이 본 발명에 따른 PAS 알로하 기법은 음의 보상 파라미터를 (-0.01, -0.02)로 설정하였을 때 평균 0.427의 가장 높은 정규화된 처리량을 나타내는 것을 확인할 수 있다.
이와 같이 본 발명의 실시 예에 따른 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법은 데이터 패킷 전송 과정에서 충돌이 발생한 디바이스(10)의 현재 Q값에 따라 패널티값을 선택적으로 부여함으로써 각 디바이스(10)의 이전 상태 정보를 반영하여 데이터의 전송 처리 속도와 전송 효율을 증대할 수 있는 효과가 있다.
이상으로 본 발명에 관한 바람직한 실시 예를 설명하였으나, 본 발명은 상기 실시예에 한정되지 아니하며, 본 발명의 실시 예로부터 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의한 용이하게 변경되어 균등하다고 인정되는 범위의 모든 변경을 포함한다.
10 : 디바이스 11 : 디바이스1
12 : 디바이스2 13 : 디바이스3
14 : 디바이스4 15 : 디바이스5

Claims (5)

  1. MTC(Machine Type Communication) 환경에서 데이터 패킷 전송시 충돌 확률을 감소시키기 위한 Q-러닝(Q-learning) 기반의 슬롯 알로하(slotted ALOHA)를 이용한 데이터 패킷 전송의 우선순위 결정 방법에 있어서,
    (a) 복수의 디바이스가 미리 설정된 타임 슬롯을 통해 데이터 패킷을 전송하는 단계;
    (b) 동일한 타임 슬롯에 복수의 디바이스가 동시에 데이터 패킷을 전송하는 충돌 발생 여부를 판단하는 단계;
    (c) 각 디바이스의 충돌 발생 정보와, 디바이스의 Q-러닝을 학습하기 위해 각 디바이스에 미리 부여된 현재의 Q값을 기반으로 디바이스에 보상값 또는 패널티값을 부여하는 단계;
    (d) 각 디바이스에 부여된 보상값 또는 패널티값을 이용하여 상기 Q값을 업데이트하는 단계; 및
    (e) 업데이트된 Q값을 기반으로 각 디바이스의 데이터 패킷 전송 우선순위를 결정하는 단계를 포함하는 데이터 패킷 전송의 우선순위 결정 방법.
  2. 제1항에서,
    상기 단계 (c)는
    데이터 패킷을 성공적으로 전송한 디바이스에 양수(Positive number)의 보상값을 부여하는 것을 특징으로 하는 데이터 패킷 전송의 우선순위 결정 방법.
  3. 제1항에서,
    상기 단계 (c)는
    데이터 패킷 전송에 실패한 디바이스에 음수(Negative number)의 패널티값을 부여하는 것을 특징으로 하는 데이터 패킷 전송의 우선순위 결정 방법.
  4. 제3항에서,
    상기 단계 (c)는
    (c1) 데이터 패킷 전송에 실패하여 충돌이 발생한 각 디바이스에 대한 현재의 Q값 크기를 비교하는 단계,
    (c2) 비교 결과를 토대로 충돌이 발생한 디바이스 중 현재의 Q값이 가장 높은 디바이스에게 상대적으로 크기가 작은 음의 패널티값을 부여하는 단계, 및
    (c3) 비교 결과를 토대로 충돌이 발생한 디바이스 중 현재 Q값이 가장 높은 디바이스를 제외한 나머지 디바이스에게 상대적으로 크기가 큰 음의 패널티값을 부여하는 단계를 포함하는 데이터 패킷 전송의 우선순위 결정 방법.
  5. 제1항에서,
    상기 단계 (d)는
    각 디바이스에 부여된 보상값 또는 패널티값과, 이전의 데이터 패킷 전송 성공 여부에 따라 각 디바이스에 보상값 또는 패널티값이 반영된 현재의 Q값과, Q-러닝(Q-learning)의 학습율(learning rate)을 이용하여 업데이트된 Q값을 산출하는 것을 특징으로 하는 데이터 패킷 전송의 우선순위 결정 방법.
KR1020230000159A 2023-01-02 Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법 KR20240108640A (ko)

Publications (1)

Publication Number Publication Date
KR20240108640A true KR20240108640A (ko) 2024-07-09

Family

ID=

Similar Documents

Publication Publication Date Title
CN108924946B (zh) 卫星物联网中智能随机接入方法
US7746837B2 (en) Overhear-based transmitting control system in WLANS
US8155006B2 (en) Method, device, and communication system for adjusting data rates in a network
US8094561B2 (en) Method and a device for acknowledging data received by a communication device in a communication network
JPWO2004114608A1 (ja) 無線パケット通信方法
CN101277271B (zh) 功率可控制的分布式cdma网络媒体接入控制方法
CN102123011B (zh) 多速率协作媒质接入控制方法和装置
KR20040072961A (ko) 통신시스템에서 반복 전송 방식의 데이터 전송 방법
CN102438326B (zh) 多速率自适应协作接入方法和系统
JP2014204443A (ja) コンテンション・アクセス・ネットワーク向けの輻輳制御の方法
US10790871B1 (en) Collision aware radio resource allocation
KR20240108640A (ko) Q-러닝 기반의 슬롯 알로하를 이용한 데이터 패킷 전송의 우선순위 결정 방법
KR101139536B1 (ko) 무선 멀티캐스트 재전송에서 경쟁 윈도우를 조정하는 단말시스템 및 그 조정 방법
JP2011199498A (ja) 基地局装置および通信方法
EP1021893A1 (en) Packet switching in a cellular radio communication system
Lee et al. A cooperative TDMA MAC protocol using dynamic slot assignment scheme
EP3031159B1 (en) Retransmission control network node and related method
JP5425852B2 (ja) アクセスチャンネルのトラフィック管理のためのシステム、方法、および装置
Ren et al. A distributed link scheduler for in-band full duplex wireless networks
CN111865480A (zh) 一种直通链路传输方法和终端
KR102635239B1 (ko) 다중 연결 네트워크에서 패킷 복제를 기반한 최적 harq 재전송 횟수 판별 장치 및 방법
KR102435109B1 (ko) 데이터 전송스케줄 결정 방법 및 시스템
EP3955483A1 (en) Data frame retransmission method and device
US20220166552A1 (en) Data retransmission method based on a code block group
US20090147747A1 (en) Apparatus for scheduling transmission of data unit in base station