KR102183429B1 - Communication method and system through machine learning based comtention window control - Google Patents
Communication method and system through machine learning based comtention window control Download PDFInfo
- Publication number
- KR102183429B1 KR102183429B1 KR1020200026077A KR20200026077A KR102183429B1 KR 102183429 B1 KR102183429 B1 KR 102183429B1 KR 1020200026077 A KR1020200026077 A KR 1020200026077A KR 20200026077 A KR20200026077 A KR 20200026077A KR 102183429 B1 KR102183429 B1 KR 102183429B1
- Authority
- KR
- South Korea
- Prior art keywords
- column
- row
- value
- contention window
- values
- Prior art date
Links
- 230000006854 communication Effects 0.000 title claims abstract description 38
- 238000004891 communication Methods 0.000 title claims abstract description 36
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000010801 machine learning Methods 0.000 title description 3
- 230000009471 action Effects 0.000 claims description 61
- 238000012795 verification Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000010187 selection method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000005562 fading Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 1
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 101150081243 STA1 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W74/00—Wireless channel access
- H04W74/08—Non-scheduled access, e.g. ALOHA
- H04W74/0808—Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA]
- H04W74/0816—Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA] with collision avoidance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/46—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for vehicle-to-vehicle communication [V2V]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
본 발명은 기계학습 기반 경쟁 윈도우 조절을 통한 통신 방법 및 시스템에 관한 것이다. The present invention relates to a communication method and system through machine learning-based contention window control.
Vehicle-to-Vehicle(V2V)는 기존 Stand-Alone으로 주행하던 차량들 간에 연결성(Connectivity)을 제공하는 기술로, 차량 운행의 안전성 향상 및 다양한 차량용 편의 기능을 제공할 수 있다.Vehicle-to-Vehicle (V2V) is a technology that provides connectivity between vehicles that have been driving with the existing Stand-Alone, and can improve the safety of vehicle operation and provide various vehicle convenience functions.
예를 들어, V2V기술을 이용하여, 차량에 부착된 센서를 통해 차량 간격, 속도 등을 차량이 스스로 체크하고, 이를 차량 간 양방향 소통을 통해 안전주행, 교통 혼잡 방지, 교통사고방지 등의 서비스가 제공될 수 있다. For example, using V2V technology, the vehicle self-checks the vehicle distance and speed through sensors attached to the vehicle, and services such as safe driving, traffic congestion prevention, and traffic accident prevention are provided through two-way communication between vehicles. Can be provided.
따라서, V2V는 Intelligent Transport Systems(ITS), Connected Car 등 최근 주목 받고 있는 다양한 지능형 차량용 서비스들의 핵심기술로 부각되고 있다.Therefore, V2V is emerging as a core technology of various intelligent vehicle services that have recently attracted attention such as Intelligent Transport Systems (ITS) and Connected Car.
한편, V2V 구현을 위한 차량용 고속 이동통신 표준인 IEEE802.11p WAVE 통신 기술은 OFDM을 이용한 고속 이동통신으로 차량 환경에 맞추어 멀티패스 페이딩 등 고속 이동환경에서의 통신 성능과 더불어 Basic Safety Message와 같이 안전을 위해 전송이 보장되어야 하는 패킷의 원활한 통신을 지원하기 위해 혼잡 채널 관리가 요구된다. 이를 위해 WAVE 통신 시스템은 5.855~5925GHz 대역에 10MHz 밴드의 7개 채널을 운용하도록 하였으며 IEEE1609.0 내지 IEEE1609.4 표준을 통하여 서비스 활용도를 높이고 있다. On the other hand, IEEE802.11p WAVE communication technology, a high-speed mobile communication standard for vehicles for V2V implementation, is a high-speed mobile communication using OFDM. In addition to the communication performance in a high-speed mobile environment such as multi-pass fading according to the vehicle environment, safety as a Basic Safety Message Congestion channel management is required to support smooth communication of packets that must be guaranteed to be transmitted. To this end, the WAVE communication system operates 7 channels of a 10MHz band in the 5.855~5925GHz band, and the service utilization is improved through the IEEE1609.0~IEEE1609.4 standards.
또한, WAVE 통신 시스템에서 효율적인 채널 관리를 위해 IEEE1609.4 표준의 채널 코디네이션 서비스를 지원하고 있는데, 이는 GPS의 PPS 신호나 Timing Advertisement(TA) 패킷을 이용하는 등 기준 시간을 동기화 하여 일정 시간의 인터벌을 두고 통신 시스템의 운용과 안전 메시지 전송을 위한 Control Channel(CCH)과 서비스 제공을 위한 Service Channel(SCH)을 교차하여 사용하도록 지원하고 있다. WAVE 통신 시스템은 IEEE802.11 표준을 따라 패킷 충돌을 피하기 위한 Enhanced Distributed Channel Access(EDCA) 방법을 MAC 레이어에서 제공하고 있는데, 4개의 우선순위 큐가 각각 경쟁 윈도우(Contention Window, CW)를 두어 백오프 시간을 랜덤하게 하여 전체 시스템에서의 패킷 송신 시의 랜덤성 향상에 중심을 두고 있다. In addition, for efficient channel management in the WAVE communication system, the IEEE 1609.4 standard channel coordination service is supported, which synchronizes the reference time such as using a GPS PPS signal or Timing Advertisement (TA) packet to set a certain time interval. It supports to use the Control Channel (CCH) for communication system operation and safety message transmission and the Service Channel (SCH) for service provision interchangeably. According to the IEEE802.11 standard, the WAVE communication system provides an Enhanced Distributed Channel Access (EDCA) method in the MAC layer to avoid packet collisions, and each of the four priority queues has a contention window (CW) for backoff. By randomizing the time, the focus is on improving the randomness in packet transmission in the entire system.
나아가, IEEE802.11p에서 브로드캐스트 전송을 수행하는 경우, IEEE802.11p에서 Broadcast 전송을 수행할 때 발생할 수 있는 충돌을 줄이기 위해 backoff 알고리즘을 사용하고 있다. 그러나, 브로드캐스트 전송의 경우 충돌여부를 알 수 없기 때문에, 전송 성공여부에 상관없이 고정된 최소 경쟁 윈도우(Minimum Contention Window, CWmin)를 사용한다. 즉, [0,CWmin]에서 랜덤한 값을 선정 후 해당 시간(Backoff delay)만큼 대기 했다가 브로드캐스트 전송을 시도하게 된다. Furthermore, when performing broadcast transmission in IEEE802.11p, a backoff algorithm is used to reduce collisions that may occur when performing broadcast transmission in IEEE802.11p. However, in the case of broadcast transmission, since it is not possible to know whether there is a collision, a fixed minimum contention window (CW min ) is used regardless of whether the transmission is successful. In other words, after selecting a random value from [0,CW min ], it waits for a corresponding time (Backoff delay) and tries to transmit broadcast.
이때, 다수의 노드가 동시에 데이터를 전송 사용하는 경우, 충돌(Collision)로 인해 빈번한 전송실패가 발생할 수 있으며 따라서, 수신 성공률을 높이기 위해 경쟁 윈도우의 크기를 조절을 통해 충돌 횟수를 줄일 필요성이 존재한다. At this time, when multiple nodes transmit and use data at the same time, frequent transmission failures may occur due to collision. Therefore, there is a need to reduce the number of collisions by adjusting the size of the contention window to increase the reception success rate. .
본 발명이 해결하고자 하는 과제는 기계학습 기반 경쟁 윈도우 조절을 통한 통신 방법 및 시스템을 제공하는 것이다.The problem to be solved by the present invention is to provide a communication method and system through machine learning-based contention window control.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems that are not mentioned will be clearly understood by those skilled in the art from the following description.
상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 IEEE802.11p 및 IEEE1609.4에 정의된 WAVE PHY, WAVE lower MAC 및 WAVE upper MAC을 이용한 통신 방법은, CCH구간에서 비콘 및 안전 메시지를 브로드캐스트를 통해 수신하는 제1 STA가, 제2 STA 로부터 ACK 메시지를 수신하였는지 여부를 판단하는 단계; 및 상기 제1 STA가, 상기 ACK 메시지 수신 여부를 바탕으로 경쟁 윈도우(Contention Window, CW)를 변경하는 단계; 를 포함한다.The communication method using WAVE PHY, WAVE lower MAC and WAVE upper MAC defined in IEEE802.11p and IEEE1609.4 according to an aspect of the present invention for solving the above-described problem, broadcasts a beacon and a safety message in a CCH section. Determining, by the first STA received through, whether or not the ACK message has been received from the second STA; And changing, by the first STA, a contention window (CW) based on whether or not the ACK message is received. Includes.
이때, 상기 CCH 구간은, 상기 CCH에서의 유니캐스트 통신 수행을 위한 CSV 인터벌(CW Suitability Verification Interval)을 포함하고, 상기 CSV 인터벌은 Tcsv의 시간 간격일 수 있다.In this case, the CCH interval includes a CW Suitability Verification Interval (CSV) for performing unicast communication in the CCH, and the CSV interval may be a time interval of T csv .
이때, 상기 제1 STA 및 상기 제2 STA는, 현재 경쟁 윈도우를 확인하기 위한 패킷을 송수신할 수 있다.In this case, the first STA and the second STA may transmit and receive a packet to check the current contention window.
이때, 상기 경쟁 윈도우가 상기 최소 경쟁 윈도우인 경우, 상기 최소 경쟁 윈도우가 Q 테이블을 초기 Q 테이블로 설정하는 단계; 및 상기 경쟁 윈도우가, 하기 Q-Learning 모델을 바탕으로 업데이트 되는 단계; 를 더 포함하고,In this case, when the contention window is the minimum contention window, setting the Q table as an initial Q table by the minimum contention window; And updating the contention window based on the following Q-Learning model. Including more,
이때, st는 t에서의 상태(CW의 크기), at는 t에서의 액션 가능성, 는 학습 속도, 는 디스카운트 팩터, 는 t에서의 리워드 값이고,At this time, s t is the state at t (the size of CW), a t is the possibility of action at t, Is the learning rate, Is the discount factor, Is the reward value at t,
상기 Q 테이블은 경쟁 윈도우의 크기에 대한 제1행 내지 제7행 및 경쟁 윈도우의 크기 변경에 대한 액션을 결정하기 위한 BE 파라미터에 대한 제1열 내지 제3열을 포함하고, 상기 Q 테이블의 제1행은 경쟁윈도우의 크기가 3, 상기 Q 테이블의 제2행은 경쟁윈도우의 크기가 7, 상기 Q 테이블의 제3행은 경쟁윈도우의 크기가 15, 상기 Q 테이블의 제4행은 경쟁윈도우의 크기가 31, 상기 Q 테이블의 제5행은 경쟁윈도우의 크기가 63, 상기 Q 테이블의 제6행은 경쟁윈도우의 크기가 127, 상기 Q 테이블의 제7행은 경쟁윈도우의 크기가 255이고,The Q table includes first to seventh rows for the size of the contention window and first to third columns for the BE parameter for determining an action for changing the size of the contention window. The first row is the size of the
상기 Q테이블의 제1열은 BE 파라미터가 BE-1, 상기 Q테이블의 제2열은 BE 파라미터가 BE, 상기 Q테이블의 제3열은 BE 파라미터가 BE+1이고,The first column of the Q table is a BE parameter BE-1, the second column of the Q table is a BE parameter BE, and the third column of the Q table is a BE parameter BE+1,
상기 초기 Q 테이블은,The initial Q table,
제1행 제1열에 대응되는 값이 -100, 제1행 제2열에 대응되는 값이 1/3, 제1행 제3열에 대응되는 값이 1/7, 제2행 제1열에 대응되는 값이 1/3, 제2행 제2열에 대응되는 값이 1/7, 제2행 제3열에 대응되는 값이 1/15, 제3행 제1열에 대응되는 값이 1/7, 제3행 제2열에 대응되는 값이 1/15, 제3행 제3열에 대응되는 값이 1/31, 제4행 제1열에 대응되는 값이 1/15, 제4행 제2열에 대응되는 값이 1/31, 제4행 제3열에 대응되는 값이 1/63, 제5행 제1열에 대응되는 값이 1/31, 제5행 제2열에 대응되는 값이 1/63, 제5행 제3열에 대응되는 값이 1/127, 제6행 제1열에 대응되는 값이 1/63, 제6행 제2열에 대응되는 값이 1/127, 제6행 제3열에 대응되는 값이 1/255, 제7행 제1열에 대응되는 값이 1/127, 제7행 제2열에 대응되는 값이 1/255, 제7행 제3열에 대응되는 값이 -100일 수 있다.The value corresponding to the first row, the first column is -100, the value corresponding to the first row, the second column is 1/3, the value corresponding to the first row, the third column is 1/7, and the value corresponding to the first column of the second row This 1/3, the value corresponding to the second row, the second column is 1/7, the value corresponding to the second row, the third column is 1/15, the value corresponding to the third row, the first column is 1/7, and the third row The value corresponding to the second column is 1/15, the value corresponding to the third row and the third column is 1/31, the value corresponding to the fourth row, the first column is 1/15, and the value corresponding to the second column of the fourth row is 1 /31, the value corresponding to row 4,
이때, 상기 업데이트 되는 단계는, 각각의 업데이트 시 0.9의 확률로 업데이트된 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 가장 큰 값에 대응되는 열을 액션으로 선택하는 단계; 및 0.1의 확률로 업데이트된 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 임의의 값에 대응되는 열을 액션으로 선택하는 단계;를 포함할 수 있다.At this time, in the updating step, the column corresponding to the largest value among the values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table updated with a probability of 0.9 at each update time. Selecting by action; And selecting, as an action, a column corresponding to an arbitrary value among values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table updated with a probability of 0.1. .
이때, 상기 가장 큰 값을 액션으로 선택하는 단계는, 상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값이 모두 동일한 경우, BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계; 상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE-1열의 값 및 BE열의 값이 동일하고, BE+1열의 값이 상기 동일한 두개의 값보다 작은 경우, BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계; 상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE-1열의 값 및 BE+1열의 값이 동일하고, BE열의 값이 상기 동일한 두개의 값보다 작은 경우, BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계; 및 상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE열의 값 및 BE+1열의 값이 동일하고, BE-1열의 값이 상기 동일한 두개의 값보다 작은 경우, BE열의 값에 대응되는 열을 액션으로 선택하는 단계;를 포함할 수 있다.In this case, the step of selecting the largest value as an action corresponds to a value in column BE-1 when the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table are all the same. Selecting a row to be an action; Among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE-1 and column BE are the same, and the values in column BE+1 are greater than the same two values. If small, selecting a column corresponding to the value of column BE-1 as an action; Among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE-1 and column BE+1 are the same, and the values in column BE are greater than the same two values. If small, selecting a column corresponding to the value of column BE-1 as an action; And the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE and column BE+1 are the same, and the values in column BE-1 are the same. If smaller than that, selecting a column corresponding to the value of the BE column as an action; may include.
이때, 상기 가장 큰 값을 액션으로 선택하는 단계는, 상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값이 중 첫번째로 큰 값이 BE-1열의 값, 두번째로 큰 값이 BE+1열의 값이고, 상기 BE-1열의 값과 BE+1열의 값의 차이가 기 설정된 범위 이내인 경우, 상기 BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계;를 포함할 수 있다.In this case, in the step of selecting the largest value as an action, the first of the values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table is the value of column BE-1. , When the second largest value is the value in column BE+1, and the difference between the value in column BE-1 and the value in column BE+1 is within a preset range, the column corresponding to the value in column BE-1 is selected as an action. Step; may include.
이때, 상기 CSV 인터벌은, 하기 수학식을 바탕으로 결정될 수 있다.In this case, the CSV interval may be determined based on the following equation.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the present invention are included in the detailed description and drawings.
상술한 본 발명의 다양한 실시예에 따라, V2V 기반 브로드캐스트 전송에서의 전송 실패를 줄여 수신 성공률을 높일 수 있는 효과가 존재한다.According to various embodiments of the present invention described above, there is an effect of increasing a reception success rate by reducing transmission failures in V2V-based broadcast transmission.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.
도 1 내지 도 5는 종래 IEEE802.11p 및 IEEE1609.4에 따른 WAVE 통신 방식을 설명하기 위한 예시도이다.
도 6은 본 발명의 일 실시예에 따른 시스템의 구조를 설명하기 위한 예시도이다.
도 7은 본 발명의 일 실시예에 따른 CCH 프레임 구조를 설명하기 위한 예시도이다.
도 8은 본 발명의 일 실시예에 따른 통신 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 Q-Learning 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 액션 선택 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 또 다른 실시예에 따른 액션 선택 방법을 설명하기 위한 흐름도이다.
도 12는 본 발명의 일 실시예에 따른 장치의 구성도이다.1 to 5 are exemplary diagrams for explaining a conventional WAVE communication method according to IEEE802.11p and IEEE1609.4.
6 is an exemplary diagram for explaining the structure of a system according to an embodiment of the present invention.
7 is an exemplary diagram illustrating a CCH frame structure according to an embodiment of the present invention.
8 is a flowchart illustrating a communication method according to an embodiment of the present invention.
9 is a flowchart illustrating a Q-Learning method according to an embodiment of the present invention.
10 is a flowchart illustrating an action selection method according to an embodiment of the present invention.
11 is a flowchart illustrating an action selection method according to another embodiment of the present invention.
12 is a block diagram of an apparatus according to an embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in a variety of different forms, only the present embodiments are intended to complete the disclosure of the present invention, It is provided to fully inform the technician of the scope of the present invention, and the present invention is only defined by the scope of the claims.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terms used in the present specification are for describing exemplary embodiments and are not intended to limit the present invention. In this specification, the singular form also includes the plural form unless specifically stated in the phrase. As used in the specification, “comprises” and/or “comprising” do not exclude the presence or addition of one or more other elements other than the mentioned elements. Throughout the specification, the same reference numerals refer to the same elements, and “and/or” includes each and all combinations of one or more of the mentioned elements. Although “first”, “second”, and the like are used to describe various elements, it goes without saying that these elements are not limited by these terms. These terms are only used to distinguish one component from another component. Therefore, it goes without saying that the first component mentioned below may be the second component within the technical idea of the present invention.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in the present specification may be used as meanings that can be commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in a commonly used dictionary are not interpreted ideally or excessively unless explicitly defined specifically.
명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.The term "unit" or "module" used in the specification refers to a hardware component such as software, FPGA or ASIC, and the "unit" or "module" performs certain roles. However, "unit" or "module" is not meant to be limited to software or hardware. The “unit” or “module” may be configured to be in an addressable storage medium, or may be configured to reproduce one or more processors. Thus, as an example, "sub" or "module" refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, It includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays and variables. Components and functions provided within "sub" or "module" may be combined into a smaller number of components and "sub" or "modules" or into additional components and "sub" or "modules". Can be further separated.
공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.Spatially relative terms "below", "beneath", "lower", "above", "upper", etc., as shown in the figure It can be used to easily describe the correlation between a component and other components. Spatially relative terms should be understood as terms including different directions of components during use or operation in addition to the directions shown in the drawings. For example, if a component shown in a drawing is turned over, a component described as "below" or "beneath" of another component will be placed "above" the other component. I can. Accordingly, the exemplary term “below” may include both directions below and above. Components may be oriented in other directions, and thus spatially relative terms may be interpreted according to orientation.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In the present specification, a computer refers to all kinds of hardware devices including at least one processor, and may be understood as encompassing a software configuration operating in a corresponding hardware device according to embodiments. For example, the computer may be understood as including all of a smartphone, a tablet PC, a desktop, a laptop, and a user client and an application running on each device, but is not limited thereto.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each of the steps described herein is described as being performed by a computer, but the subject of each step is not limited thereto, and at least some of the steps may be performed by different devices according to embodiments.
도 1 내지 도 5는 종래 IEEE802.11p 및 IEEE1609.4에 따른 WAVE 통신 방식을 설명하기 위한 예시도이다.1 to 5 are exemplary diagrams for explaining a conventional WAVE communication method according to IEEE802.11p and IEEE1609.4.
도 1에 도시된 바와 같이, WAVE 구조는 IEEE802.11p 및 IEEE1609.x(IEEE1609.0 내지 IEEE1609.4)에 의해 정의된다. 구체적으로, IEEE802.11p는 WAVE PHY 및 WAVE lower MAC에 대해 정의하고, IEEE1609.11은 WAVE upper MAC에 대해 정의한다.As shown in FIG. 1, the WAVE structure is defined by IEEE802.11p and IEEE1609.x (IEEE1609.0 to IEEE1609.4). Specifically, IEEE802.11p defines WAVE PHY and WAVE lower MAC, and IEEE1609.11 defines WAVE upper MAC.
본 발명에서 특별한 설명이 없는 경우, V2V 통신을 위한 기술은 IEEE802.11p 및 IEEE1609.x에 의해 수행될 수 있다. 나아가, 본 발명에서는 V2V를 기준으로 설명하기만, V2I(차량과 인프라간 통신) 및 V2X(V2V 및 V2I를 포함하는 통신)에도 동일한 기술적 사상이 적용될 수 있음은 물론이다.In the present invention, unless otherwise specified, techniques for V2V communication may be performed by IEEE802.11p and IEEE1609.x. Further, in the present invention, although the description is based on V2V, the same technical idea may be applied to V2I (communication between vehicle and infrastructure) and V2X (communication including V2V and V2I).
IEEE802.11p에서 정의된 WAVE PHY 계층은 기존 IEEE 802.11a/g와 비교할 때, 채널 대역폭을 줄임으로써 고속 이동, 실외 환경에서 많이 발생되는 페이딩의 영향을 줄일 수 있는 효과가 존재한다. 주요 특징으로는 통신 주파수(5.850~5.925GHz), 전송 속도(3~27Mbps), 채널 수(7개), 전송 범위(300m~1Km) 및 채널 대역폭(10MHz)이다.Compared with the existing IEEE 802.11a/g, the WAVE PHY layer defined in IEEE802.11p has the effect of reducing the effect of fading that occurs frequently in high-speed movement and outdoor environments by reducing the channel bandwidth. Its main characteristics are communication frequency (5.850~5.925GHz), transmission speed (3~27Mbps), number of channels (7), transmission range (300m~1Km), and channel bandwidth (10MHz).
한편, 도 2에 도시된 바와 같이, IEEE802.11p에서 정의된 WAVE lower MAC은 Distributed Coordination Function(DCF)에 의해 동작한다. 구체적으로 DCF는 Carrier Sense Multiple Access/Collision Avoidance(CSMA/CA)를 통한 경쟁에 의한 채널접근을 수행한다. 이때, WAVE lower MAC은 Binary Exponential Backoff(BEB)알고리즘을 사용하여 임의의 대기시간을 결정할 수 있다. 구체적으로, 0에서 경쟁 윈도우(CW)까지의 값 중 임의의 값을 선택하여 백오프 시간(Backoff Time)을 결정할 수 있으며, 도 3에 도시된 바와 같이, 충돌이 발생하는 경우, 경쟁 윈도우의 값을 2배씩 증가시킬 수 있다. 이때, 백오프 시간은 Backoff Time = Random()*SlotTime와 같은 수식을 바탕으로 결정될 수 있다. 이때, 일 실시예에 따라, 슬롯 시간(Slot time)은 9마이크로초, SIFS는 16마이크로초, DIFS는 64마이크로초일 수 있다.Meanwhile, as shown in FIG. 2, the WAVE lower MAC defined in IEEE802.11p operates by the Distributed Coordination Function (DCF). Specifically, DCF performs channel access through contention through Carrier Sense Multiple Access/Collision Avoidance (CSMA/CA). At this time, the WAVE lower MAC may determine an arbitrary waiting time using a Binary Exponential Backoff (BEB) algorithm. Specifically, a backoff time may be determined by selecting an arbitrary value from values from 0 to the contention window (CW), and as shown in FIG. 3, when a collision occurs, the value of the contention window Can be increased by 2 times. In this case, the backoff time may be determined based on an equation such as Backoff Time = Random()*SlotTime. In this case, according to an embodiment, a slot time may be 9 microseconds, SIFS may be 16 microseconds, and DIFS may be 64 microseconds.
한편, 도 4에 도시된 바와 같이, IEEE802.11p에서 정의된 WAVE lower MAC은 Enhanced Distributed Channel Access(EDCA)를 지원할 수 있으며, 이는 엑세스 카테고리 별 경쟁 윈도우 및 AIFS를 달리 설정하여 전송 우선순위를 차등화 할 수 있음을 의미한다. 나아가, 기존 IEEE 802.11a/g 표준에서 필수적으로 수행되던 Active 검색, 인증(Authentication), 결합(Association)을, IEEE 802.11p에서는 수행하지 않음으로써, 차량 간 또는 차량과 인프라간의 빠른 통신 설정이 가능할 수 있다.On the other hand, as shown in Figure 4, the WAVE lower MAC defined in IEEE802.11p can support Enhanced Distributed Channel Access (EDCA), which can differentiate transmission priority by setting a contention window and AIFS for each access category differently. Means you can. Furthermore, by not performing Active Search, Authentication, and Association, which were essential in the existing IEEE 802.11a/g standard, but not in IEEE 802.11p, quick communication setup between vehicles or between vehicles and infrastructure can be possible. have.
한편, 도 5에 도시된 바와 같이, IEEE1609.4에서 정의된 WAVE upper MAC은 7개의 멀티 채널 동작을 위한 채널 스위칭 메커니즘이 정의되어 있으며, 시간은 common time reference를 기반으로 동기화 될 수 있다. Meanwhile, as shown in FIG. 5, in the WAVE upper MAC defined in IEEE1609.4, a channel switching mechanism for 7 multi-channel operations is defined, and the time can be synchronized based on a common time reference.
나아가, Synchronization interval(SI, 100 ms) 시간간격을 CCH 및 SSH의 두 개의 구간으로 나누고 이를 반복하여 수행한다. 구체적으로, Control channel(CCH) 인터벌(50 ms)에서는 비콘, 안전 메시지를 전송(Common CH)하고, Service Channel(SCH) 인터벌(50 ms)에서는 사용자 메시지 전송할 수 있다. 이때, 비콘 프레임은 매 CCH마다 한번씩 브로드캐스트 될 수 있으며, CCH 및 SCH 간격을 주기적으로 스위치할 수 있다.Further, the synchronization interval (SI, 100 ms) is divided into two sections of CCH and SSH, and this is repeatedly performed. Specifically, a beacon and a safety message may be transmitted (Common CH) in a Control channel (CCH) interval (50 ms), and a user message may be transmitted in a Service Channel (SCH) interval (50 ms). In this case, the beacon frame may be broadcast once for every CCH, and the CCH and SCH intervals may be periodically switched.
즉, 기존에 정의된 IEEE802.11p 및 IEEE1609.4에 의한 통신 방식은 차량의 환경에서, 각 차량이 자신의 상태를 알리는 비콘 및 안전 메시지를 CCH구간에서 브로드캐스트를 통해 전송하고, IEEE 802.11p에 따라 충돌을 줄이기 위해 백오프 알고리즘을 사용한다. That is, the communication method according to the previously defined IEEE802.11p and IEEE1609.4 transmits a beacon and safety message notifying its status in the vehicle environment through broadcast in the CCH section, and It uses a backoff algorithm to reduce collisions accordingly.
이때, 브로드캐스트의 경우 충돌여부를 확인할 수 있는 방법이 없기 때문에 전송 성공여부에 상관없이 고정된 최소 경쟁 윈도우(Minimum Contention Window, CWmin)를 사용할 수밖에 없으며, [0,CWmin]에서 랜덤한 값을 선정 후 해당 시간(Backoff delay)만큼 대기 했다가 브로트캐스트 통신을 수행하여야 한다. At this time, in the case of broadcast, since there is no way to check whether or not there is a collision, there is no choice but to use a fixed minimum contention window (CW min ) regardless of whether the transmission is successful, and a random value in [0,CW min ] After selecting, wait for the relevant time (Backoff delay) and then perform broadcast communication.
따라서, 브로드캐스트 통신 환경에서, 다수의 노드가 동시에 데이터를 전송 사용하는 경우 충돌로 인해 빈번한 전송실패가 발생할 수 있으며, 따라서, 수신 성공률을 높이기 위해 경쟁 윈도우의 크기를 조절을 통해 충돌 횟수를 줄일 필요성이 존재하게 된다.Therefore, in a broadcast communication environment, when multiple nodes transmit and use data at the same time, frequent transmission failures may occur due to collisions. Therefore, it is necessary to reduce the number of collisions by adjusting the size of the contention window to increase the reception success rate. Will exist.
따라서, 브로드캐스트 통신 방법을 사용하는 CCH에서 경쟁 윈도우의 크기를 조정할 수 있는 방법을 구현하는 경우, 기존의 방식보다 더 나은 효과가 발생할 수 있다.Accordingly, when implementing a method capable of adjusting the size of a contention window in a CCH using a broadcast communication method, a better effect than the conventional method may occur.
이를 위해 본 발명에서는 CCH에서 유니캐스트 통신 방법을 접목하여 ACK 메시지를 수신하고, Q-learning 알고리즘을 통해 경쟁 윈도우의 크기를 조절하는 방법을 제시한다.To this end, the present invention proposes a method of receiving an ACK message by combining a unicast communication method in CCH, and adjusting the size of a contention window through a Q-learning algorithm.
도 6은 본 발명의 일 실시예에 따른 시스템의 구조를 설명하기 위한 예시도이다.6 is an exemplary diagram for explaining the structure of a system according to an embodiment of the present invention.
도 6에 도시된 바와 같이, STA A(또는 제1 STA)는 경쟁 윈도우 크기 조절을 위한 Q-learning 모듈을 포함할 수 있다. 제1 STA는 브로드캐스트 통신을 수행하는 경우, 주변 STA B(또는 제2 STA)로부터 ACK 메시지를 수신할 수 있다. 제1 STA의 Q-learning 모듈은, ACK 메시지의 수신 성공 여부를 바탕으로 경쟁 윈도우의 크기를 변경할 수 있다.As shown in FIG. 6, STA A (or the first STA) may include a Q-learning module for adjusting the size of the contention window. When performing broadcast communication, the first STA may receive an ACK message from neighboring STA B (or the second STA). The Q-learning module of the first STA may change the size of the contention window based on whether or not the ACK message is successfully received.
도 7은 본 발명의 일 실시예에 따른 CCH 프레임 구조를 설명하기 위한 예시도이다.7 is an exemplary diagram illustrating a CCH frame structure according to an embodiment of the present invention.
상술한 바와 같이, CCH는 브로드캐스트 통신을 수행하며, 브로드캐스트 통신의 경우 ACK 메시지를 수신하지 않는다. 따라서, 본 발명의 일 실시예에서는 메시지 교환구간(ACK 수신을 위한 구간)이 포함 되도록 WAVE 표준의 프레임 구조를 변경할 수 있다.As described above, the CCH performs broadcast communication, and does not receive an ACK message in case of broadcast communication. Accordingly, in an embodiment of the present invention, the frame structure of the WAVE standard can be changed to include a message exchange section (a section for receiving ACK).
구체적으로, 도 7에 도시된 바와 같이, CCH 구간의 끝나는 부분에서, TCSV 시간 동안 CCH에서의 유니캐스트 통신을 수행하기 위한 구간(CW Suitability Verification Interval, CSV 인터벌)을 포함시키도록 프레임 구조를 변경할 수 있다.Specifically, as shown in Fig.7, at the end of the CCH interval, the frame structure is changed to include an interval (CW Suitability Verification Interval, CSV interval) for performing unicast communication in the CCH during the T CSV time. I can.
이때 각각의 STA(예를 들어 제1 STA)는 이웃 STA(예를 들어 제2 STA) 중 하나를 선택하여 데이터(Current CW check packet)를 송수신할 수 있다. STA는 통신을 수행하기 위한 장치를 의미할 수 있다.At this time, each STA (eg, a first STA) may transmit and receive data (Current CW check packet) by selecting one of neighboring STAs (eg, a second STA). STA may mean a device for performing communication.
한편, 본 발명의 일 실시예에 따라, 초기 경쟁 윈도우는 최소 경쟁 윈도우(CWmin)로 설정될 수 있으며, 제1 STA가 ACK을 수신하지 못한 경우, 제1 STA는 ACK의 재전송을 요청하는 대신, 전송이 실패한 것으로 판단한다. 제1 STA가 ACK을 수신한 경우, 제1 STA는 현재 경쟁 윈도우에서 전송이 성공한 것으로 판단한다.Meanwhile, according to an embodiment of the present invention, the initial contention window may be set to a minimum contention window (CW min ), and when the first STA does not receive an ACK, the first STA requests retransmission of the ACK. , It is determined that the transmission has failed. When the first STA receives the ACK, the first STA determines that the transmission is successful in the current contention window.
한편, CSV 인터벌은, 하기 수학식 1을 바탕으로 결정될 수 있다.Meanwhile, the CSV interval may be determined based on
[수학식 1][Equation 1]
이때, TDIFS는 DCF Interframe Space의 시간, CWmax 는 최대 CW 값, Slottime은 IEEE 802.11p에서 정의하는 slot의 시간(예를 들어, IEEE 802.11p 표준이 정의하는 OFDM PHY의 slottime은 9μs일 수 있다), E[TData]는 CSV 구간에서 사용되는 Data (즉 Current CW check packet)를 전송하는 데 걸리는 시간의 기대값, TSIFS는, Short Interframe Space 시간, E[TACK]은 ACK를 수신받는 데 걸리는 시간의 기대값일 수 있다.At this time, T DIFS is the time of the DCF interframe space, CW max is the maximum CW value, and the slottime is the time of a slot defined by IEEE 802.11p (for example, the slottime of the OFDM PHY defined by the IEEE 802.11p standard may be 9 μs. ), E[T Data ] is the expected value of the time it takes to transmit the data (ie Current CW check packet) used in the CSV section, T SIFS is the short interframe space time, and E[T ACK ] is the ACK received. It can be the expected value of the time it takes.
일 실시예에 따라, E[TData] = (Size of data) / (Data rate)일 수 있으며, E[TACK]=(Size of ACK) / (Data rate)일 수 있다.According to an embodiment, it may be E[T Data ] = (Size of data) / (Data rate), and E[T ACK ] = (Size of ACK) / (Data rate).
도 8은 본 발명의 일 실시예에 따른 통신 방법을 설명하기 위한 흐름도이다.8 is a flowchart illustrating a communication method according to an embodiment of the present invention.
단계 S110에서, CCH구간에서 비콘 및 안전 메시지를 브로드캐스트를 통해 수신하는 제1 STA가, 제2 STA 로부터 ACK 메시지를 수신하였는지 여부를 판단할 수 있다.In step S110, it may be determined whether the first STA receiving the beacon and the safety message through broadcast in the CCH section has received the ACK message from the second STA.
상술한 바와 같이, 제1 STA는, CCH의 프레임 구조에 SIFS 구간 및 ACK 수신 구조를 추가함으로써, 제2 STA로부터 전송된 ACK 메시지의 수신 여부를 판단할 수 있다.As described above, the first STA may determine whether to receive the ACK message transmitted from the second STA by adding the SIFS interval and the ACK reception structure to the frame structure of the CCH.
단계 S120에서, 제1 STA가, ACK 메시지 수신 여부를 바탕으로 경쟁 윈도우(Contention Window, CW)를 변경할 수 있다.In step S120, the first STA may change the contention window (CW) based on whether the ACK message is received.
도 9는 본 발명의 일 실시예에 따른 Q-Learning 방법을 설명하기 위한 흐름도이다.9 is a flowchart illustrating a Q-Learning method according to an embodiment of the present invention.
단계 S210에서, 경쟁 윈도우는, Q-Learning 모델을 바탕으로 업데이트할 수 있다.In step S210, the contention window may be updated based on the Q-Learning model.
이때, 본 발명에서 사용되는 Q-Learning 모델은 하기 수학식 2와 같이 설계될 수 있다.In this case, the Q-Learning model used in the present invention may be designed as shown in
[수학식 2][Equation 2]
이때, st는 t에서의 상태(CW의 크기), at는 t에서의 액션 가능성, 는 학습 속도, 는 디스카운트 팩터, 는 t에서의 리워드 값을 의미할 수 있다.At this time, s t is the state at t (the size of CW), a t is the possibility of action at t, Is the learning rate, Is the discount factor, May mean a reward value at t.
구체적으로, st는 t에서의 상태(CW의 크기)로, 3, 7, 15, 31, 63, 127, 255의 값 중 하나일 수 있다. 이 경우, 최소 경쟁 윈도우(CWmin)은 3일 수 있다.Specifically, s t is a state at t (the size of CW), and may be one of 3, 7, 15, 31, 63, 127, and 255. In this case, the minimum contention window CW min may be 3.
또한, at는 t에서의 액션 가능성으로, 이때의 액션은 경쟁 윈도우를 줄이기 위한 액션, 경쟁 윈도우를 유지하기 위한 액션 및 경쟁 윈도우를 늘리기 위한 액션 중 어느 하나의 액션일 수 있다.In addition, a t is the possibility of an action at t, and the action at this time may be any one of an action for reducing the contention window, an action for maintaining the contention window, and an action for increasing the contention window.
한편, 는 학습 속도로, 1에 가까울수록 새로운 정보만을 기초로 학습할 수 있다.Meanwhile, Is the learning speed, and the closer to 1, the more new information can be learned.
한편, 는 디스카운트 팩터로, 1에 가까울수록 높은 보상을 획득하기 위해 학습하고, 0에 가까울수록 현재 보상에 가깝도록 학습할 수 있다.Meanwhile, Is a discount factor, and the closer it is to 1, the higher the reward can be obtained, and the closer to 0, the closer to the current reward.
한편, 는 t에서의 리워드 값으로, ACK 메시지를 수신한 경우 1의 값으로, ACK 메시지를 수신하지 못한 경우 -1의 값으로 설정될 수 있다.Meanwhile, May be set as a reward value at t, a value of 1 when an ACK message is received, and a value of -1 when an ACK message is not received.
단계 S220에서, 경쟁 윈도우가 최소 경쟁 윈도우인 경우, 최소 경쟁 윈도우가 Q테이블을 초기 Q 테이블로 설정할 수 있다.In step S220, when the contention window is the minimum contention window, the minimum contention window may set the Q table as the initial Q table.
구체적으로, 제1 STA는 최초 브로드캐스트 통신 과정에서의 경쟁 윈도우를 최소 경쟁 윈도우(CW=3)로 설정할 수 있다. Specifically, the first STA may set the contention window in the initial broadcast communication process to the minimum contention window (CW=3).
이때, Q 테이블은 경쟁 윈도우의 크기에 대한 제1행 내지 제7행 및 경쟁 윈도우의 크기 변경에 대한 액션을 결정하기 위한 BE 파라미터에 대한 제1열 내지 제3열을 포함하고, 상기 Q 테이블의 제1행은 경쟁윈도우의 크기가 3, 상기 Q 테이블의 제2행은 경쟁윈도우의 크기가 7, 상기 Q 테이블의 제3행은 경쟁윈도우의 크기가 15, 상기 Q 테이블의 제4행은 경쟁윈도우의 크기가 31, 상기 Q 테이블의 제5행은 경쟁윈도우의 크기가 63, 상기 Q 테이블의 제6행은 경쟁윈도우의 크기가 127, 상기 Q 테이블의 제7행은 경쟁윈도우의 크기가 255이고, 상기 Q테이블의 제1열은 BE 파라미터가 BE-1, 상기 Q테이블의 제2열은 BE 파라미터가 BE, 상기 Q테이블의 제3열은 BE 파라미터가 BE+1일 수 있으며, 초기 Q 테이블은,제1행 제1열에 대응되는 값이 -100, 제1행 제2열에 대응되는 값이 1/3, 제1행 제3열에 대응되는 값이 1/7, 제2행 제1열에 대응되는 값이 1/3, 제2행 제2열에 대응되는 값이 1/7, 제2행 제3열에 대응되는 값이 1/15, 제3행 제1열에 대응되는 값이 1/7, 제3행 제2열에 대응되는 값이 1/15, 제3행 제3열에 대응되는 값이 1/31, 제4행 제1열에 대응되는 값이 1/15, 제4행 제2열에 대응되는 값이 1/31, 제4행 제3열에 대응되는 값이 1/63, 제5행 제1열에 대응되는 값이 1/31, 제5행 제2열에 대응되는 값이 1/63, 제5행 제3열에 대응되는 값이 1/127, 제6행 제1열에 대응되는 값이 1/63, 제6행 제2열에 대응되는 값이 1/127, 제6행 제3열에 대응되는 값이 1/255, 제7행 제1열에 대응되는 값이 1/127, 제7행 제2열에 대응되는 값이 1/255, 제7행 제3열에 대응되는 값이 -100이되도록 설정될 수 있다.At this time, the Q table includes first to seventh rows for the size of the contention window and first to third columns for the BE parameter for determining an action for changing the size of the contention window, and The first row has a contention window size of 3, the second row of the Q table has a contention window size of 7, and the third row of the Q table has a contention window size of 15, and the fourth row of the Q table competes. The size of the window is 31, the fifth row of the Q table has a size of a
구체적으로, 상술한 최초 통신 과정에서의 경쟁 윈도우에 대한 Q값을 나타내는 최초 Q 테이블(=초기 Q 테이블)은 하기 표1과 같을 수 있다.Specifically, the initial Q table (= initial Q table) indicating the Q value for the contention window in the above-described initial communication process may be as shown in Table 1 below.
이때 BE(backoff Exponent)는 CW의 크기 변경에 대한 액션을 결정하기 위한 파라미터로서, 하기 수학식 3과 같이 결정될 수 있다.At this time, a backoff exponent (BE) is a parameter for determining an action for changing the size of the CW, and may be determined as shown in
[수학식 3][Equation 3]
즉, 상기 Q테이블을 통해 결정된 액션이 BE-1인 경우, 제1 STA는 경쟁 윈도우의 크기를 줄이고, BE인 경우, 제1 STA는 경쟁 윈도우의 크기를 유지하고, BE+1인 경우, 제1 STA는 경쟁 윈도우의 크기를 늘릴 수 있다.That is, when the action determined through the Q table is BE-1, the first STA reduces the size of the contention window, and in the case of BE, the first STA maintains the size of the contention window, and when BE+1, the
한편, 제1 STA는, Q-Learning 모델을 통한 경쟁 윈도우가 변경됨에 따라, 상기 표 1에 도시된 Q테이블을 업데이트 할 수 있다. 업데이트의 구체적인 예시는 후술한다.Meanwhile, the first STA may update the Q table shown in Table 1 as the contention window through the Q-Learning model is changed. A specific example of the update will be described later.
도 10은 본 발명의 일 실시예에 따른 액션 선택 방법을 설명하기 위한 흐름도이다.10 is a flowchart illustrating an action selection method according to an embodiment of the present invention.
단계 S310에서, 각각의 업데이트 시 0.9의 확률로 업데이트된 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 가장 큰 값에 대응되는 열을 액션으로 선택할 수 있다.In step S310, the column corresponding to the largest value among the values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table updated with a probability of 0.9 at each update may be selected as an action. have.
단계 S320에서, 0.1의 확률로 업데이트된 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 임의의 값에 대응되는 열을 액션으로 선택할 수 있다.In step S320, a column corresponding to a random value among values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table updated with a probability of 0.1 may be selected as an action.
즉, 제1 STA는, 0.9의 확률로, Q-Learning 모델을 통하여 업데이트된 Q 테이블을 바탕으로 경쟁 윈도우를 변경하되, 0.1의 확률로 업데이트된 Q테이블과 별개로 경쟁 윈도우를 변경할 수 있다.That is, the first STA may change the contention window based on the Q table updated through the Q-Learning model with a probability of 0.9, but may change the contention window separately from the updated Q table with a probability of 0.1.
상술한 방법을 통해, 경쟁 윈도우 변경에 랜덤성을 부여함으로써, 유동적인 경쟁 윈도우 변경의 효과가 존재한다.Through the above-described method, by giving randomness to the contention window change, there is an effect of flexible contention window change.
도 11은 본 발명의 또 다른 실시예에 따른 액션 선택 방법을 설명하기 위한 흐름도이다.11 is a flowchart illustrating an action selection method according to another embodiment of the present invention.
구체적으로, 업데이트된 Q 테이블에서 경쟁 윈도우에 대응되는 행의 값이 동일한 경우가 발생할 수 있다. 이러한 경우, 경쟁 윈도우의 크기를 줄이는 방향성을 가지도록 Q-learning 모델을 설계함으로써, 경쟁 윈도우의 크기가 확장되는 것을 방지할 수 있다.Specifically, there may be a case where the values of the rows corresponding to the contention windows in the updated Q table are the same. In this case, by designing the Q-learning model to have a direction of reducing the size of the contention window, it is possible to prevent the size of the contention window from being expanded.
구체적으로, 단계 S410에서, Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값이 모두 동일한 경우, BE-1열의 값에 대응되는 열을 액션으로 선택할 수 있다.Specifically, in step S410, when a value of column BE-1, a value of column BE, and a value of column BE+1 corresponding to the current state of the Q table are all the same, a column corresponding to the value of column BE-1 may be selected as an action. .
한편, 업데이트된 Q 테이블에서 경쟁 윈도우에 대응되는 행의 값 중 두개의 값이 동일한 경우가 발생할 수 있다. 이 경우, 나머지 하나의 값이 동일한 두개의 값보다 큰 경우, 나머지 하나의 값에 대응되는 열을 액션으로 선택할 수 하면 되지만, 나머지 하나의 값이 동일한 두개의 값보다 작은 경우, 어떤 액션을 선택할지 문제될 수 있다.Meanwhile, a case in which two values of the row values corresponding to the contention window in the updated Q table are the same may occur. In this case, if the other value is greater than the same two values, you can select the column corresponding to the other value as an action, but if the other value is less than the same two values, which action will be selected It can be a problem.
구체적으로, 단계 S420에서, Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE-1열의 값 및 BE열의 값이 동일하고, BE+1열의 값이 동일한 두개의 값보다 작은 경우, BE-1열의 값에 대응되는 열을 액션으로 선택할 수 있다.Specifically, in step S420, the values in column BE-1 and column BE among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table are the same, and the values in column BE+1 are the same. If less than the same two values, the column corresponding to the value of column BE-1 can be selected as an action.
단계 S430에서, Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE-1열의 값 및 BE+1열의 값이 동일하고, BE열의 값이 동일한 두개의 값보다 작은 경우, BE-1열의 값에 대응되는 열을 액션으로 선택할 수 있다.In step S430, among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE-1 and column BE+1 are the same, and the values in column BE are the same. If it is smaller than the value, the column corresponding to the value of column BE-1 can be selected as an action.
단계 S440에서, Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE열의 값 및 BE+1열의 값이 동일하고, BE-1열의 값이 동일한 두개의 값보다 작은 경우, BE열의 값에 대응되는 열을 액션으로 선택할 수 있다.In step S440, among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE and column BE+1 are the same, and the values in column BE-1 are the same. If it is smaller than the value, the column corresponding to the value of the BE column can be selected as an action.
즉, 단계 S420 내지 S440의 경우, 동일한 두개의 액션 중, 경쟁 윈도우의 크기가 작아지도록 액션을 선택할 수 있다.That is, in the case of steps S420 to S440, among the same two actions, an action may be selected such that the size of the contention window is reduced.
한편, 본 발명의 다양한 실시예에 따라, 단계 S450에서, Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값이 중 첫번째로 큰 값이 BE-1열의 값, 두번째로 큰 값이 BE+1열의 값이고, BE-1열의 값과 BE+1열의 값의 차이가 기 설정된 범위 이내인 경우, BE-1열의 값에 대응되는 열을 액션으로 선택할 수 있다.Meanwhile, according to various embodiments of the present invention, in step S450, the first value of the column BE-1, the value of column BE, and the value of column BE+1 corresponding to the current state of the Q table is the value of column BE-1. , When the second largest value is the value in column BE+1, and the difference between the value in column BE-1 and the value in column BE+1 is within a preset range, the column corresponding to the value in column BE-1 can be selected as an action.
즉, 액션에 대응되는 값이 상이한 경우라고 하더라도, 가장 큰 값을 가지는 액션과 두번째 큰 값(또는 세번째 큰 값)을 가지는 액션과의 차이가 미미한 경우, 제1 STA는 경쟁 윈도우의 크기가 작아지는 방향으로 액션을 설정할 수 있다.That is, even if the value corresponding to the action is different, if the difference between the action having the largest value and the action having the second largest value (or the third largest value) is insignificant, the first STA decreases the size of the contention window. You can set the action in the direction.
이하에서는 본 발명의 일 실시예에 따른 Q-Learning 모델의 동작에 대해 구체적으로 설명한다. 설명의 편의를 위해, 초기 상태인 st0가 3, 초기 액션인 at0가 BE, 가 0.6 이 0.9인 경우, 에 대한 경쟁 윈도우 변경 방법을 가정한다.Hereinafter, the operation of the Q-Learning model according to an embodiment of the present invention will be described in detail. For convenience of explanation, the initial state s t0 is 3, the initial action a t0 is BE, A 0.6 When is 0.9, a method of changing the contention window for is assumed.
(단계 1)(Step 1)
초기 상태의 Q테이블은 상술한 표 1과 같으며, 이 경우 현재 상태에 대응되는 값은 1/3이다(하기 표 2의 굵은 글씨에 대응되는 값)The Q table in the initial state is the same as in Table 1 above, and in this case, the value corresponding to the current state is 1/3 (the value corresponding to the bold text in Table 2 below).
이때, 제1 STA가 제2 STA로부터 ACK 메시지 수신에 실패하고, 0.9의 확률이 선택된 경우를 가정할 수 있다.즉, 현재 상태는 st0은 3, at0은 BE(현 상태 유지)이므로, st1은 경쟁 윈도우의 사이즈가 3(현 상태 유지)일 수 있다.In this case, it may be assumed that the first STA fails to receive the ACK message from the second STA, and a probability of 0.9 is selected. That is, since s t0 is 3 and a t0 is BE (maintaining the current state), s t1 may have a contention window size of 3 (maintaining the current state).
이 경우, Q-Learning 모델은 하기 수학식 4에 따라 동작할 수 있으며, Q테이블을 업데이트한다.In this case, the Q-Learning model can operate according to Equation 4 below, and updates the Q table.
[수학식 4][Equation 4]
이때, 제1 STA가 ACK 메시지 수신에 실패하였으므로, 이다.At this time, since the first STA has failed to receive the ACK message, to be.
또한, 는 경쟁 윈도우가 3이고 액션이 BE열인 경우이므로 1/3의 값을 가진다.In addition, Is a value of 1/3 because the contention window is 3 and the action is the BE column.
또한,는 st0 상태에서의 최대의 a값이므로, 경쟁 윈도우가 3이고 액션이 BE열인 경우에 대한 1/3의 값을 가진다.In addition, Is the maximum a value in the state of s t0 , so it has a value of 1/3 for the case where the contention window is 3 and the action is the BE column.
결론적으로, = [0.4(1/3)+0.6[-1+(0.9)*(1/3)] = -0.28667의 값을 가지게 된다. 이를 바탕으로 업데이트된 Q테이블은 하기 표 3과 같다.In conclusion, = [0.4(1/3)+0.6[-1+(0.9)*(1/3)] = -0.28667. The updated Q table based on this is shown in Table 3 below.
결론적으로, 경쟁 윈도우가 3인 행에 대한 가장 큰 값은 1/7(BE+1열)이므로, at1은 BE+1에 대응되는 액션(즉, CW 사이즈를 늘리는 액션)으로 선택될 수 있다.(단계 2)In conclusion, since the largest value for a row with a contention window of 3 is 1/7 (column BE+1), a t1 can be selected as an action corresponding to BE+1 (that is, an action to increase the CW size). .(Step 2)
업데이트 상태의 Q테이블은 하기 표 4와 같으며, 이 경우 현재 상태에 대응되는 값은 1/7이다(하기 표 4의 굵은 글씨에 대응되는 값). The Q table in the updated state is shown in Table 4 below, and in this case, the value corresponding to the current state is 1/7 (value corresponding to the bold text in Table 4 below).
이때, 제1 STA가 제2 STA로부터 ACK 메시지 수신에 실패하고, 0.9의 확률이 선택된 경우를 가정할 수 있다.즉, 현재 상태는 st1은 3, at1은 BE+1이므로, st2은 경쟁 윈도우의 사이즈가 7로 변경된다.In this case, it may be assumed that the first STA fails to receive the ACK message from the second STA and a probability of 0.9 is selected. That is, since s t1 is 3 and a t1 is BE+1, s t2 is The size of the competing window is changed to 7.
이 경우, Q-Learning 모델은 하기 수학식 5에 따라 동작할 수 있으며, 표 4의 Q테이블을 업데이트한다.In this case, the Q-Learning model can operate according to Equation 5 below, and the Q table of Table 4 is updated.
[수학식 5][Equation 5]
이때, 제1 STA가 ACK 메시지 수신에 실패하였으므로, 이다.At this time, since the first STA has failed to receive the ACK message, to be.
또한, 는 경쟁 윈도우가 3이고 액션이 BE+1열인 경우이므로 1/7의 값을 가진다.In addition, Has a value of 1/7 because the contention window is 3 and the action is in BE+1 column.
또한,는 st1 상태에서의 최대의 a값이므로, 경쟁 윈도우가 3이고 액션이 BE+1열인 경우에 대한 1/7의 값을 가진다.In addition, Since is the maximum value of a in the state of s t1 , it has a value of 1/7 for the case where the contention window is 3 and the action is BE+1 column.
결론적으로, = [0.4(1/7)+0.6[-1+(0.9)*(1/7)] = -0.46571의 값을 가지게 된다. 이를 바탕으로 업데이트된 Q테이블은 하기 표 5와 같다.In conclusion, = [0.4(1/7)+0.6[-1+(0.9)*(1/7)] = -0.46571. The updated Q table based on this is shown in Table 5 below.
결론적으로, 경쟁 윈도우가 3인 행에 대한 가장 큰 값은 -0.28667(BE열)이므로, at2은 BE에 대응되는 액션(즉, CW 사이즈를 유지하는 액션)으로 선택될 수 있다. 상기 과정을 통해 Q테이블은 업데이트 되며, 업데이트 되는 Q 테이블에 따라 경쟁 윈도우의 크기가 변경될 수 있다.In conclusion, since the largest value for a row with a contention window of 3 is -0.28667 (column BE), a t2 may be selected as an action corresponding to BE (ie, an action that maintains the CW size). Through the above process, the Q table is updated, and the size of the contention window may be changed according to the updated Q table.
한편, 상기(단계 2)에서, 0.1의 확률이 선택된 경우, at1은 임의의 액션이 선택될 수 있음은 물론이다. 다만, 본 발명의 일 실시예에 따라, 경쟁 윈도우가 3(최소 경쟁 윈도우)인 경우에는 임의의 액션은 BE 또는 BE+1 중 하나의 액션으로 결정되고, 경쟁 윈도우가 255(최대 경쟁 윈도우)인 경우에는 임의의 액션은 BE-1 또는 BE 중 하나의 액션으로 결정될 수 있음은 물론이다.On the other hand, in the above (step 2), when a probability of 0.1 is selected, a t1 is of course that an arbitrary action may be selected. However, according to an embodiment of the present invention, when the contention window is 3 (minimum contention window), an arbitrary action is determined as one of BE or BE+1, and the contention window is 255 (maximum contention window). In this case, of course, the arbitrary action may be determined as one of BE-1 or BE.
도 12는 본 발명의 일 실시예에 따른 장치의 구성도이다.12 is a block diagram of an apparatus according to an embodiment of the present invention.
프로세서(102)는 하나 이상의 코어(core, 미도시) 및 그래픽 처리부(미도시) 및/또는 다른 구성 요소와 신호를 송수신하는 연결 통로(예를 들어, 버스(bus) 등)를 포함할 수 있다.The
일 실시예에 따른 프로세서(102)는 메모리(104)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 도 1 내지 도 11과 관련하여 설명된 방법을 수행한다.The
예를 들어, 프로세서(102)는 메모리에 저장된 하나 이상의 인스트럭션을 실행함으로써 신규 학습용 데이터를 획득하고, 학습된 모델을 이용하여, 상기 획득된 신규 학습용 데이터에 대한 테스트를 수행하고, 상기 테스트 결과, 라벨링된 정보가 소정의 제1 기준값 이상의 정확도로 획득되는 제1 학습용 데이터를 추출하고, 상기 추출된 제1 학습용 데이터를 상기 신규 학습용 데이터로부터 삭제하고, 상기 추출된 학습용 데이터가 삭제된 상기 신규 학습용 데이터를 이용하여 상기 학습된 모델을 다시 학습시킬 수 있다. For example, the
한편, 프로세서(102)는 프로세서(102) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(102)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다. Meanwhile, the
메모리(104)에는 프로세서(102)의 처리 및 제어를 위한 프로그램들(하나 이상의 인스트럭션들)을 저장할 수 있다. 메모리(104)에 저장된 프로그램들은 기능에 따라 복수 개의 모듈들로 구분될 수 있다.The
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of a method or algorithm described in connection with an embodiment of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. Software modules include Random Access Memory (RAM), Read Only Memory (ROM), Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.Components of the present invention may be implemented as a program (or application) and stored in a medium in order to be combined with a computer as hardware to be executed. Components of the present invention may be implemented as software programming or software elements, and similarly, embodiments include various algorithms implemented with a combination of data structures, processes, routines or other programming elements, including C, C++ , Java, assembler, or the like may be implemented in a programming or scripting language. Functional aspects can be implemented with an algorithm running on one or more processors.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다. In the above, embodiments of the present invention have been described with reference to the accompanying drawings, but those of ordinary skill in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features. You can understand. Therefore, the embodiments described above are illustrative in all respects, and should be understood as non-limiting.
100 : 장치
102 : 프로세서
104 : 메모리100: device
102: processor
104: memory
Claims (10)
CCH구간에서 비콘 및 안전 메시지를 브로드캐스트를 통해 수신하는 제1 STA가, 제2 STA 로부터 ACK 메시지를 수신하였는지 여부를 판단하는 단계; 및
상기 제1 STA가, 상기 ACK 메시지 수신 여부를 바탕으로 경쟁 윈도우(Contention Window, CW)를 변경하는 단계; 를 포함하고,
상기 CCH 구간은, 상기 CCH에서의 유니캐스트 통신 수행을 위한 CSV 인터벌(CW Suitability Verification Interval)을 포함하고, 상기 CSV 인터벌은 Tcsv의 시간 간격이고,
상기 CSV 인터벌은, 하기 수학식을 바탕으로 결정되는 것을 특징으로 하는 통신 방법.
이때, TDIFS는 DCF Interframe Space의 시간, CWmax 는 최대 CW 값, Slottime은 IEEE 802.11p에서 정의하는 slot의 시간, E[TData]는 CSV 구간에서 사용되는 Data 를 전송하는 데 걸리는 시간의 기대값, TSIFS는, Short Interframe Space 시간, E[TACK]은 ACK를 수신받는 데 걸리는 시간의 기대값In the communication method using WAVE PHY, WAVE lower MAC and WAVE upper MAC defined in IEEE802.11p and IEEE1609.4,
Determining whether the first STA receiving the beacon and the safety message through broadcast in the CCH section has received an ACK message from the second STA; And
Changing, by the first STA, a contention window (CW) based on whether or not the ACK message is received; Including,
The CCH interval includes a CSV interval (CW Suitability Verification Interval) for performing unicast communication in the CCH, and the CSV interval is a time interval of Tcsv,
The CSV interval is determined based on the following equation.
At this time, T DIFS is the time of DCF Interframe Space, CW max is the maximum CW value, Slottime is the time of the slot defined by IEEE 802.11p, and E[T Data ] is the expectation of the time it takes to transmit the data used in the CSV section. Value, T SIFS is the short interframe space time, E[T ACK ] is the expected value of the time it takes to receive ACK
상기 제1 STA 및 상기 제2 STA는, 현재 경쟁 윈도우를 확인하기 위한 패킷을 송수신하는 것을 특징으로 하는 통신 방법.The method of claim 1,
The first STA and the second STA transmit and receive a packet for checking a current contention window.
상기 경쟁 윈도우를 변경하는 단계는,
상기 경쟁 윈도우가 최소 경쟁 윈도우인 경우, 상기 최소 경쟁 윈도우가 Q 테이블을 초기 Q 테이블로 설정하는 단계; 및
상기 경쟁 윈도우가, 하기 Q-Learning 모델을 바탕으로 업데이트 되는 단계; 를 더 포함하고,
이때, st는 t에서의 상태(CW의 크기), at는 t에서의 액션 가능성, 는 학습 속도, 는 디스카운트 팩터, 는 t에서의 리워드 값이고,
상기 Q 테이블은 경쟁 윈도우의 크기에 대한 제1행 내지 제7행 및 경쟁 윈도우의 크기 변경에 대한 액션을 결정하기 위한 BE 파라미터에 대한 제1열 내지 제3열을 포함하고, 상기 Q 테이블의 제1행은 경쟁윈도우의 크기가 3, 상기 Q 테이블의 제2행은 경쟁윈도우의 크기가 7, 상기 Q 테이블의 제3행은 경쟁윈도우의 크기가 15, 상기 Q 테이블의 제4행은 경쟁윈도우의 크기가 31, 상기 Q 테이블의 제5행은 경쟁윈도우의 크기가 63, 상기 Q 테이블의 제6행은 경쟁윈도우의 크기가 127, 상기 Q 테이블의 제7행은 경쟁윈도우의 크기가 255이고,
상기 Q테이블의 제1열은 BE 파라미터가 BE-1, 상기 Q테이블의 제2열은 BE 파라미터가 BE, 상기 Q테이블의 제3열은 BE 파라미터가 BE+1이고,
상기 초기 Q 테이블은,
제1행 제1열에 대응되는 값이 -100, 제1행 제2열에 대응되는 값이 1/3, 제1행 제3열에 대응되는 값이 1/7, 제2행 제1열에 대응되는 값이 1/3, 제2행 제2열에 대응되는 값이 1/7, 제2행 제3열에 대응되는 값이 1/15, 제3행 제1열에 대응되는 값이 1/7, 제3행 제2열에 대응되는 값이 1/15, 제3행 제3열에 대응되는 값이 1/31, 제4행 제1열에 대응되는 값이 1/15, 제4행 제2열에 대응되는 값이 1/31, 제4행 제3열에 대응되는 값이 1/63, 제5행 제1열에 대응되는 값이 1/31, 제5행 제2열에 대응되는 값이 1/63, 제5행 제3열에 대응되는 값이 1/127, 제6행 제1열에 대응되는 값이 1/63, 제6행 제2열에 대응되는 값이 1/127, 제6행 제3열에 대응되는 값이 1/255, 제7행 제1열에 대응되는 값이 1/127, 제7행 제2열에 대응되는 값이 1/255, 제7행 제3열에 대응되는 값이 -100인 것을 특징으로 하는 통신 방법.The method of claim 1,
The step of changing the contention window,
If the contention window is the minimum contention window, setting the Q table as an initial Q table by the minimum contention window; And
Updating the contention window based on the following Q-Learning model; Including more,
At this time, s t is the state at t (the size of CW), a t is the possibility of action at t, Is the learning rate, Is the discount factor, Is the reward value at t,
The Q table includes first to seventh rows for the size of the contention window and first to third columns for the BE parameter for determining an action for changing the size of the contention window. The first row is the size of the contention window 3, the second row of the Q table is the size of the contention window, the third row of the Q table is the size of the contention window is 15, and the fourth row of the Q table is a contention window. The size of is 31, the fifth row of the Q table has a size of a contention window 63, the sixth row of the Q table has a size of a contention window 127, and the seventh row of the Q table has a size of a contention window 255. ,
The first column of the Q table is a BE parameter BE-1, the second column of the Q table is a BE parameter BE, and the third column of the Q table is a BE parameter BE+1,
The initial Q table,
The value corresponding to the first row, the first column is -100, the value corresponding to the first row, the second column is 1/3, the value corresponding to the first row, the third column is 1/7, and the value corresponding to the first column of the second row This 1/3, the value corresponding to the second row, the second column is 1/7, the value corresponding to the second row, the third column is 1/15, the value corresponding to the third row, the first column is 1/7, and the third row The value corresponding to the second column is 1/15, the value corresponding to the third row and the third column is 1/31, the value corresponding to the fourth row, the first column is 1/15, and the value corresponding to the second column of the fourth row is 1 /31, the value corresponding to row 4, column 3 is 1/63, the value corresponding to row 5, column 1 is 1/31, the value corresponding to row 5, column 2 is 1/63, row 5 is 3 The value corresponding to the column is 1/127, the value corresponding to the first column of the 6th row is 1/63, the value corresponding to the second column of the 6th row is 1/127, the value corresponding to the third column of the 6th row is 1/255 And a value corresponding to the first column of the seventh row is 1/127, a value corresponding to the second column of the seventh row is 1/255, and a value corresponding to the third column of the seventh row is -100.
상기 업데이트 되는 단계는,
각각의 업데이트 시 0.9의 확률로 업데이트된 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 가장 큰 값에 대응되는 열을 액션으로 선택하는 단계; 및
0.1의 확률로 업데이트된 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 임의의 값에 대응되는 열을 액션으로 선택하는 단계;를 포함하는 통신 방법.The method of claim 4,
The updating step,
Selecting a column corresponding to the largest value among the values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table updated with a probability of 0.9 upon each update as an action; And
And selecting, as an action, a column corresponding to an arbitrary value among values of column BE-1, column BE, and values of column BE+1 corresponding to the current state of the Q table updated with a probability of 0.1.
상기 가장 큰 값을 액션으로 선택하는 단계는,
상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값이 모두 동일한 경우, BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계;
상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE-1열의 값 및 BE열의 값이 동일하고, BE+1열의 값이 상기 동일한 두개의 값보다 작은 경우, BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계;
상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE-1열의 값 및 BE+1열의 값이 동일하고, BE열의 값이 상기 동일한 두개의 값보다 작은 경우, BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계; 및
상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값 중 BE열의 값 및 BE+1열의 값이 동일하고, BE-1열의 값이 상기 동일한 두개의 값보다 작은 경우, BE열의 값에 대응되는 열을 액션으로 선택하는 단계;를 포함하는 통신 방법.The method of claim 5,
The step of selecting the largest value as an action,
Selecting a column corresponding to the value of column BE-1 as an action when the values of column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table are the same;
Among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE-1 and column BE are the same, and the values in column BE+1 are greater than the same two values. If small, selecting a column corresponding to the value of column BE-1 as an action;
Among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE-1 and column BE+1 are the same, and the values in column BE are greater than the same two values. If small, selecting a column corresponding to the value of column BE-1 as an action; And
Among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the values in column BE and column BE+1 are the same, and the values in column BE-1 are greater than the same two values. If small, selecting a column corresponding to the value of the BE column as an action.
상기 가장 큰 값을 액션으로 선택하는 단계는,
상기 Q테이블의 현재 상태에 대응되는 BE-1열의 값, BE열의 값 및 BE+1열의 값이 중 첫번째로 큰 값이 BE-1열의 값, 두번째로 큰 값이 BE+1열의 값이고, 상기 BE-1열의 값과 BE+1열의 값의 차이가 기 설정된 범위 이내인 경우, 상기 BE-1열의 값에 대응되는 열을 액션으로 선택하는 단계;를 포함하는 통신 방법.The method of claim 5,
The step of selecting the largest value as an action,
Among the values in column BE-1, column BE, and column BE+1 corresponding to the current state of the Q table, the first largest value is the value in column BE-1, the second largest value is the value in column BE+1, and When the difference between the value of the BE-1 column and the value of the BE+1 column is within a preset range, selecting a column corresponding to the value of the BE-1 column as an action.
상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
제1 항의 방법을 수행하는, 장치.A memory for storing one or more instructions; And
And a processor that executes the one or more instructions stored in the memory,
The processor executes the one or more instructions,
An apparatus for performing the method of claim 1.
A computer program combined with a computer as hardware and stored in a recording medium readable by a computer to perform the method of claim 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200026077A KR102183429B1 (en) | 2020-03-02 | 2020-03-02 | Communication method and system through machine learning based comtention window control |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200026077A KR102183429B1 (en) | 2020-03-02 | 2020-03-02 | Communication method and system through machine learning based comtention window control |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102183429B1 true KR102183429B1 (en) | 2020-11-26 |
Family
ID=73679217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200026077A KR102183429B1 (en) | 2020-03-02 | 2020-03-02 | Communication method and system through machine learning based comtention window control |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102183429B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102371694B1 (en) * | 2021-05-12 | 2022-03-04 | 국방과학연구소 | Learning based wireless communication method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120137679A (en) * | 2011-06-13 | 2012-12-24 | 전자부품연구원 | Method and system for vehicle communication based on adaptive collision avoidance |
KR20180040637A (en) * | 2015-09-14 | 2018-04-20 | 레노보 이노베이션스 리미티드 (홍콩) | Resizing the contention window in a wireless communication system |
KR101919442B1 (en) | 2017-11-27 | 2018-11-19 | 류정규 | Method for operating mac along with cch/sch coordination form of wave net |
KR20190027663A (en) * | 2017-09-07 | 2019-03-15 | 울산대학교 산학협력단 | Vehicle communication method and apparatus for wireless access in vehicular environments |
-
2020
- 2020-03-02 KR KR1020200026077A patent/KR102183429B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120137679A (en) * | 2011-06-13 | 2012-12-24 | 전자부품연구원 | Method and system for vehicle communication based on adaptive collision avoidance |
KR20180040637A (en) * | 2015-09-14 | 2018-04-20 | 레노보 이노베이션스 리미티드 (홍콩) | Resizing the contention window in a wireless communication system |
KR20190027663A (en) * | 2017-09-07 | 2019-03-15 | 울산대학교 산학협력단 | Vehicle communication method and apparatus for wireless access in vehicular environments |
KR101919442B1 (en) | 2017-11-27 | 2018-11-19 | 류정규 | Method for operating mac along with cch/sch coordination form of wave net |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102371694B1 (en) * | 2021-05-12 | 2022-03-04 | 국방과학연구소 | Learning based wireless communication method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3473044B1 (en) | Method and apparatus for selecting resources in v2x communications | |
US11638252B2 (en) | Fast wireless local area network communication method and apparatus using multiple transfer rate partitioning and cooperative transmission | |
KR101531382B1 (en) | Reducing beacon collision probability | |
WO2022057901A1 (en) | Channel access method in wireless local area network, and related apparatus | |
EP2274940B1 (en) | Fast feedback contention-based ranging procedure in wireless communications systems | |
CN105934984B (en) | Inter-group control of semi-persistent channel occupancy for device-to-device (D2D) wireless communications | |
EP3331299B1 (en) | Wireless communication method and device | |
US9510174B2 (en) | Method for emergency-message broadcasting using vehicular communication | |
WO2017050154A1 (en) | Transmission method and device for communication system of road vehicles | |
JP2017528939A (en) | Resource preemption method, site, and computer storage medium | |
US20230022691A1 (en) | Sidelink resource reselection method and apparatus | |
KR20120033420A (en) | Distributed medium access scheduling with implicit ordering | |
US20160295612A1 (en) | Information sending method and apparatus | |
CN107295567B (en) | Wireless resource conflict detection method based on frame structure | |
KR20230048390A (en) | Channel competition method and related device | |
KR102183429B1 (en) | Communication method and system through machine learning based comtention window control | |
US20240057168A1 (en) | Method for determining transmission reception point, network device, and storage medium | |
CN106488563B (en) | Resource selection method and device | |
US20210136817A1 (en) | Channel Access Method and Apparatus | |
KR101624053B1 (en) | Congestion Control Method and Device in Vehicle Network | |
Bui et al. | Free access distributed queue protocol for massive cellular-based M2M communications with bursty traffic | |
CN108934081B (en) | Wireless vehicle-mounted network channel access method | |
CN115665881A (en) | Wireless communication with collision avoidance | |
KR101560486B1 (en) | Method for managing TXOP(Transmission Opportunity) limit in Vehicular communication network and vehicular communication network system using thereof | |
CN111556465B (en) | Distributed Internet of vehicles MAC layer time slot access method and system based on TDMA technology |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |