KR102091799B1 - Method and apparatus for analyzing transaction related to electric vehicle charging - Google Patents

Method and apparatus for analyzing transaction related to electric vehicle charging Download PDF

Info

Publication number
KR102091799B1
KR102091799B1 KR1020180152341A KR20180152341A KR102091799B1 KR 102091799 B1 KR102091799 B1 KR 102091799B1 KR 1020180152341 A KR1020180152341 A KR 1020180152341A KR 20180152341 A KR20180152341 A KR 20180152341A KR 102091799 B1 KR102091799 B1 KR 102091799B1
Authority
KR
South Korea
Prior art keywords
length
transactions
lengths
sample lengths
charging
Prior art date
Application number
KR1020180152341A
Other languages
Korean (ko)
Inventor
이정훈
박경린
강민제
오재원
Original Assignee
제주대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 제주대학교 산학협력단 filed Critical 제주대학교 산학협력단
Priority to KR1020180152341A priority Critical patent/KR102091799B1/en
Application granted granted Critical
Publication of KR102091799B1 publication Critical patent/KR102091799B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L53/00Methods of charging batteries, specially adapted for electric vehicles; Charging stations or on-board charging equipment therefor; Exchange of energy storage elements in electric vehicles
    • B60L53/60Monitoring or controlling charging stations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06Q50/30
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/40Business processes related to the transportation industry
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2200/00Type of vehicle
    • B60Y2200/90Vehicles comprising electric prime movers
    • B60Y2200/91Electric vehicles
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/70Energy storage systems for electromobility, e.g. batteries
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/7072Electromobility specific charging systems or methods for batteries, ultracapacitors, supercapacitors or double-layer capacitors
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T90/00Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02T90/10Technologies relating to charging of electric vehicles
    • Y02T90/12Electric charging stations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Operations Research (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)

Abstract

Disclosed by the present invention are a method and a device for analyzing transactions regarding the charging of an electric vehicle. The method includes steps of: acquiring transaction data including transactions including a charging start time and a charging completion time, respectively; setting sample lengths of a search section covering the charging start time and charge completion time of at least one of the transactions included in the transaction data; calculating inclusion ratios of the sample lengths based on each of the maximum number of transactions capable of being covered by each search section of the sample lengths, the number of the total transactions according to transition data, and sample lengths; selecting reference lengths among the sample lengths based on a change pattern according to sample lengths of inclusion ratios with respect to the sample lengths; and determining the optimum lengths of search sections corresponding to a maximum inclusion rate based on inclusion ratios of reference lengths. The present invention is able to solve problems caused by the constraints of battery capacity.

Description

전기 자동차의 충전에 관한 트랜잭션을 분석하는 방법 및 장치{METHOD AND APPARATUS FOR ANALYZING TRANSACTION RELATED TO ELECTRIC VEHICLE CHARGING}METHOD AND DEVICE TO ANALYSIS TRANSACTIONS REGARDING THE CHARGING OF ELECTRIC VEHICLES

아래 실시예들은 전기 자동차의 충전에 관한 트랜잭션을 분석하는 방법 및 장치에 관한 것이다.The embodiments below relate to a method and apparatus for analyzing a transaction related to charging of an electric vehicle.

전기 자동차는, 친환경적이며 화석연료에 의존하지 않는 것과 같은 다양한 장점을 이유로, 가솔린 차량을 대체할 것이라고 기대된다. 전기 자동차는 전력을 저장하고 주행에 필요한 에너지를 제공하는 배터리를 포함한다. 전기 자동차는 배터리 용량에 따른 제약을 가질 수 있다. 배터리 기술의 성장에 불구하고, 배터리의 추가적인 충전 없이 전기 자동차가 주행할 수 있는 거리에는 한계가 존재하며, 배터리의 충전을 위해서는 상당한 시간이 소요될 수 있다.Electric vehicles are expected to replace gasoline vehicles for a variety of advantages, such as being environmentally friendly and not dependent on fossil fuels. Electric vehicles include batteries that store power and provide the energy needed for driving. Electric vehicles may have restrictions according to battery capacity. Despite the growth of battery technology, there is a limit to the distance an electric vehicle can travel without additional charging of the battery, and it may take considerable time to charge the battery.

일 실시예에 따르면, 전기 자동차의 충전에 관한 트랜잭션을 분석하는 방법은 전기 자동차의 충전에 관한 충전 시작 시간 및 충전 완료 시간을 각각 포함하는 트랜잭션들을 포함하는 트랜잭션 데이터를 획득하는 단계; 상기 트랜잭션 데이터에 포함된 상기 트랜잭션들 중 적어도 하나의 트랜잭션의 충전 시작 시간 및 충전 완료 시간을 커버하는 탐색 구간의 샘플 길이들을 설정하는 단계; 상기 샘플 길이들 각각의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수, 상기 트랜잭션 데이터에 따른 전체 트랜잭션의 수, 및 상기 샘플 길이들 각각에 기초하여, 상기 샘플 길이들에 관한 포함 비율들을 계산하는 단계; 상기 샘플 길이들에 관한 상기 포함 비율들의 상기 샘플 길이들에 따른 변화 패턴에 기초하여 상기 샘플 길이들 중에 참조 길이들을 선정하는 단계; 및 상기 참조 길이들에 관한 포함 비율들에 기초하여, 최대 포함 비율에 대응하는 상기 탐색 구간의 최적 길이를 결정하는 단계를 포함한다.According to an embodiment, a method of analyzing a transaction related to charging of an electric vehicle may include: obtaining transaction data including transactions each including a charging start time and a charging completion time related to charging of the electric vehicle; Setting sample lengths of a search period covering a charge start time and a charge completion time of at least one of the transactions included in the transaction data; Calculating inclusion ratios for the sample lengths based on the maximum number of transactions that can be covered by the search interval of each of the sample lengths, the total number of transactions according to the transaction data, and each of the sample lengths; Selecting reference lengths from among the sample lengths based on a change pattern according to the sample lengths of the inclusion ratios with respect to the sample lengths; And determining an optimal length of the search interval corresponding to the maximum inclusion ratio based on the inclusion ratios with respect to the reference lengths.

참조 길이들을 선정하는 단계는 상기 샘플 길이들 중에, 상기 샘플 길이들의 증가에 따라 상기 샘플 길이들에 관한 상기 포함 비율들이 증가하는 적어도 일부의 샘플 길이를 상기 참조 길이들로 선정하는 단계를 포함할 수 있다. 상기 최적 길이를 결정하는 단계는 상기 참조 길이들에 기초한 이진 탐색을 이용하여 상기 최적 길이를 결정하는 단계를 포함할 수 있다. 상기 참조 길이들은 제1 길이, 상기 제1 길이보다 큰 값을 갖는 제2 길이 및 상기 제2 길이보다 큰 값을 갖는 제3 길이를 포함할 수 있고, 상기 최적 길이를 결정하는 단계는 상기 제1 길이 및 상기 제2 길이 간의 구간에서 이진 탐색을 이용하여 상기 최적 길이를 결정하는 단계를 포함할 수 있다.The step of selecting reference lengths may include selecting, among the sample lengths, at least a portion of the sample lengths in which the inclusion ratios related to the sample lengths increase as the sample lengths increase as the reference lengths. have. Determining the optimal length may include determining the optimal length using binary search based on the reference lengths. The reference lengths may include a first length, a second length having a value greater than the first length, and a third length having a value greater than the second length, and determining the optimal length includes: And determining the optimal length using a binary search in a section between a length and the second length.

상기 최적 길이를 결정하는 단계는 상기 제1 길이 및 상기 제2 길이 사이의 중간 길이에 관해 포함 비율을 계산하는 단계를 포함할 수 있고, 상기 중간 길이에 관한 포함 비율이 상기 제1 길이에 관한 포함 비율보다 큰 경우, 상기 중간 길이 및 상기 제2 길이 간의 구간에서 상기 최적 길이를 결정하는 단계를 포함할 수 있고, 상기 중간 길이에 관한 포함 비율이 상기 제1 길이에 관한 포함 비율보다 작은 경우, 상기 제1 길이 및 상기 중간 길이 간의 구간에서 상기 최적 길이를 결정하는 단계를 포함할 수 있다. 상기 중간 길이는 상기 제1 길이 및 상기 제2 길이의 평균에 대응할 수 있다.Determining the optimal length may include calculating an inclusion ratio with respect to an intermediate length between the first length and the second length, wherein an inclusion ratio with respect to the intermediate length is included with respect to the first length If it is greater than the ratio, may include determining the optimal length in the section between the intermediate length and the second length, and if the inclusion ratio for the intermediate length is less than the inclusion ratio for the first length, the And determining the optimal length in a section between the first length and the intermediate length. The intermediate length may correspond to an average of the first length and the second length.

상기 샘플 길이들은 제1 길이를 포함할 수 있고, 상기 샘플 길이들에 관한 포함 비율들을 계산하는 단계는 상기 제1 길이에 대응하는 탐색 구간을 이동시키면서 상기 제1 길이의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수를 결정하는 단계를 포함할 수 있다.The sample lengths may include a first length, and calculating the inclusion ratios related to the sample lengths may include a maximum transaction that can be covered by the search duration of the first length while moving the search duration corresponding to the first length. It may include the step of determining the number of.

상기 샘플 길이들은 제1 길이를 포함할 수 있고, 상기 샘플 길이들에 관한 포함 비율들을 계산하는 단계는 충전 완료 시간을 기준으로 우선순위가 부여되는 제1 데이터 세트에 속한 트랜잭션들을 스캔하면서 충전 시작 시간을 기준으로 우선순위가 부여되는 제2 데이터 세트에 저장하는 단계; 스캔 대상 트랜잭션의 충전 완료 시간들에서 상기 제1 길이를 뺀 차이 값 및 상기 제2 데이터 세트에 저장된 트랜잭션 각각의 충전 시작 시간을 비교하여, 상기 제2 데이터 세트를 유지하거나, 혹은 상기 제2 데이터 세트에서 상기 차이 값보다 작은 충전 시작 시간을 포함하는 적어도 하나의 트랜잭션을 제거하는 단계; 및 상기 제2 데이터 세트에 저장된 트랜잭션들의 수에 기초하여 상기 제1 길이의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수를 결정하는 단계를 포함할 수 있다.The sample lengths may include a first length, and the step of calculating the inclusion ratios for the sample lengths is a charge start time while scanning transactions belonging to a first data set given priority based on a charge completion time. Storing in a second data set that is given priority based on; The second data set is maintained or the second data set is compared by comparing a difference value obtained by subtracting the first length from the charging completion times of a scan target transaction and a charging start time of each transaction stored in the second data set. Removing at least one transaction including a charging start time smaller than the difference value from the; And determining the maximum number of transactions that can be covered by the first length search period based on the number of transactions stored in the second data set.

일 실시예에 따르면, 전기 자동차의 충전에 관한 트랜잭션을 분석하는 장치는 프로세서; 및 상기 프로세서에서 실행되는 명령어들을 저장하는 메모리를 포함하고, 상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는 전기 자동차의 충전에 관한 충전 시작 시간 및 충전 완료 시간을 각각 포함하는 트랜잭션들을 포함하는 트랜잭션 데이터를 획득하고, 상기 트랜잭션 데이터에 포함된 상기 트랜잭션들 중 적어도 하나의 트랜잭션의 충전 시작 시간 및 충전 완료 시간을 커버하는 탐색 구간의 샘플 길이들을 설정하고, 상기 샘플 길이들 각각의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수, 상기 트랜잭션 데이터에 따른 전체 트랜잭션의 수, 및 상기 샘플 길이들 각각에 기초하여, 상기 샘플 길이들에 관한 포함 비율들을 계산하고, 상기 샘플 길이들에 관한 상기 포함 비율들의 상기 샘플 길이들에 따른 변화 패턴에 기초하여 상기 샘플 길이들 중에 참조 길이들을 선정하고, 상기 참조 길이들에 관한 포함 비율들에 기초하여, 최대 포함 비율에 대응하는 상기 탐색 구간의 최적 길이를 결정한다.According to an embodiment, an apparatus for analyzing a transaction related to charging of an electric vehicle includes a processor; And a memory for storing instructions executed in the processor, and when the instructions are executed in the processor, the processor includes transaction data including transactions including a charging start time and a charging completion time for charging the electric vehicle, respectively. To obtain, set the sample lengths of the search interval covering the charge start time and the charge completion time of at least one of the transactions included in the transaction data, and the maximum coverable by each search interval of the sample lengths Based on the number of transactions, the total number of transactions according to the transaction data, and each of the sample lengths, calculate inclusion ratios regarding the sample lengths, and the sample lengths of the inclusion ratios relative to the sample lengths Based on the change pattern according to Reference lengths are selected from among sample lengths, and based on the inclusion ratios for the reference lengths, an optimal length of the search interval corresponding to the maximum inclusion ratio is determined.

도 1은 일 실시예에 따른 동시 충전 수의 변화 추이를 나타낸 도면.
도 2는 일 실시예에 따른 일정한 탐색 구간들에 의해 커버되는 트랜잭션들을 나타낸 도면.
도 3은 일 실시예에 따른 최대 트랜잭션 수를 구하기 위한 구성을 나타낸 도면.
도 4는 일 실시예에 따른 탐색 구간의 위치에 따른 최대 트랜잭션 수를 나타낸 도면.
도 5 내지 도 7은 일 실시예에 따른 최대 트랜잭션 수를 구하는 프로세스를 나타낸 도면.
도 8은 일 실시예에 따른 탐색 구간의 길이 및 최대 트랜잭션 수 간의 관계를 나타낸 도면.
도 9는 일 실시예에 따른 트랜잭션들을 나타낸 도면.
도 10은 일 실시예에 따른 탐색 구간의 길이에 따른 최대 트랜잭션 수를 나타낸 그래프.
도 11은 일 실시예에 따른 탐색 구간의 길이에 따른 탐색 구간의 길이 및 최대 트랜잭션 수 간의 비율을 나타낸 그래프.
도 12는 일 실시예에 따른 트랜잭션 분석 방법을 나타낸 동작 흐름도
도 13은 일 실시예에 따른 트랜잭션을 분석하는 장치를 나타낸 도면.
1 is a view showing a change in the number of simultaneous charges according to an embodiment.
2 is a diagram illustrating transactions covered by certain search intervals according to an embodiment.
3 is a diagram illustrating a configuration for obtaining the maximum number of transactions according to an embodiment.
4 is a diagram showing the maximum number of transactions according to a location of a search section according to an embodiment.
5 to 7 are views showing a process for obtaining the maximum number of transactions according to an embodiment.
8 is a diagram illustrating a relationship between a length of a search section and the maximum number of transactions according to an embodiment.
9 is a diagram illustrating transactions according to an embodiment.
10 is a graph showing the maximum number of transactions according to the length of a search section according to an embodiment.
11 is a graph showing a ratio between a length of a search section and a maximum number of transactions according to a length of a search section according to an embodiment.
12 is an operation flowchart showing a transaction analysis method according to an embodiment
13 is a diagram illustrating an apparatus for analyzing a transaction according to an embodiment.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions of the embodiments according to the concept of the present invention disclosed in this specification are exemplified only for the purpose of explaining the embodiments according to the concept of the present invention, and the embodiments according to the concept of the present invention These can be implemented in various forms and are not limited to the embodiments described herein.

본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Embodiments according to the concept of the present invention can be applied to various changes and can have various forms, so that the embodiments will be illustrated in the drawings and described in detail herein. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosure forms, and includes modifications, equivalents, or substitutes included in the spirit and scope of the present invention.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but the components should not be limited by the terms. The above terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of rights according to the concept of the present invention, the first component may be referred to as the second component, Similarly, the second component may also be referred to as the first component.

어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어” 있다거나 “직접 접속되어” 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 “~사이에”와 “바로~사이에” 또는 “~에 직접 이웃하는” 등도 마찬가지로 해석되어야 한다.When an element is said to be “connected” or “connected” to another component, it is understood that other components may be directly connected to or connected to other components, but other components may exist in the middle. It should be. On the other hand, when a component is said to be “directly connected” or “directly connected” to another component, it should be understood that no other component exists in the middle. Expressions that describe the relationship between the elements, for example, “between” and “immediately between” or “directly neighboring to” should also be interpreted.

본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, “포함하다” 또는 “가지다” 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is only used to describe specific embodiments and is not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, the terms “include” or “have” are intended to designate the presence of a feature, number, step, action, component, part, or combination thereof as described, one or more other features or numbers, It should be understood that the existence or addition possibilities of steps, actions, components, parts or combinations thereof are not excluded in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined herein. Does not.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. The same reference numerals in each drawing denote the same members.

도 1은 일 실시예에 따른 동시 충전 수의 변화 추이를 나타낸 도면이다.1 is a view showing a change trend of the number of simultaneous charges according to an embodiment.

전기 자동차 충전기의 운영 데이터는 각 충전기 별로 한 트랜잭션마다 충전 시작 시간 및 충전 완료 시간을 포함할 수 있다. 전기 자동차의 충전에 관한 충전 시작 시간 및 충전 종료 시간을 각각 포함하는 데이터는 트랜잭션으로 지칭될 수 있고, 이러한 트랜잭션들을 포함하는 운영 데이터는 트랜잭션 데이터로 지칭될 수 있다.The operation data of the electric vehicle charger may include charging start time and charging completion time for each transaction for each charger. Data including charging start time and charging end time for charging an electric vehicle, respectively, may be referred to as transactions, and operational data including such transactions may be referred to as transaction data.

운영 데이터는 꾸준히 축적되고, 그 데이터양은 지속적으로 늘어나고 있으며, 이들에 대한 분석에는 데이터양에 비례하여 많은 시간이 소요될 것으로 예상된다. 따라서 분석 조사할 대상에 최적화된 지능형 알고리즘의 도입과 적용이 필요하다. 전기 자동차의 충전에 관한 트랜잭션을 분석하는 장치(이하, 분석 장치로 지칭될 수 있음)는 실시예에 따른 최적화 알고리즘을 이용하여 트랜잭션 세트에 포함된 트랜잭션들을 분석할 수 있다.Operational data is steadily accumulating, and the amount of data is continuously increasing, and analysis of these data is expected to take a lot of time in proportion to the amount of data. Therefore, it is necessary to introduce and apply an intelligent algorithm optimized for the subject to be analyzed. An apparatus for analyzing a transaction related to charging of an electric vehicle (hereinafter, referred to as an analysis apparatus) may analyze transactions included in a transaction set using an optimization algorithm according to an embodiment.

제주도에는 약 250여기의 급속 충전기들이 모니터링되고 있으며 8개월정도 모니터링한 결과 약 180,000개의 충전 트랜잭션이 감지되었다. 이들을 이용하여 가장 많은 충전이 동시에 진행된 경우를 측정하고자 한다면 각 트랜잭션의 시작 시간과 종료 시간을 시간에 따라 정렬한 후 하나씩 스캔하면서 시작 이벤트를 +1로 카운트하고, 종료 이벤트를 -1로 카운트하며 카운트가 가장 큰 경우를 찾아내면 된다. 이 결과는 도 1에 도시되어 있다. 도 1은 전체 시간에 관한 것은 아니고, 일부 시간 구간 동안의 동시 충전 수의 변화를 나타낸 것이다.About 250 rapid chargers are being monitored in Jeju Island. After monitoring for 8 months, about 180,000 charging transactions were detected. If you want to measure the case where the most charges are performed simultaneously using these, sort the start time and end time of each transaction according to the time, scan one by one, count the start event as +1, count the end event as -1, and count Find the largest case. The results are shown in FIG. 1. 1 is not related to the entire time, but shows the change in the number of simultaneous charges during a partial time period.

도 2는 일 실시예에 따른 일정한 탐색 구간들에 의해 커버되는 트랜잭션들을 나타낸 도면이다.2 is a diagram illustrating transactions covered by certain search intervals according to an embodiment.

주어진 길이의 시간 구간 내에 처리된 트랜잭션의 수를 분석하는 것은 단순히 충전기의 사용 여부를 분석하는 것보다 충전기의 서비스율을 측정하는데 유용하며, 이를 통해 가장 많은 전기 자동차 충전을 처리한 시간 구간을 알아낼 수 있다. 아래에서 이런 시간 구간은 탐색 구간으로 지칭될 수 있다. 탐색 구간은 적어도 하나의 트랙잭션의 충전 시작 시간 및 충전 완료 시간을 커버할 수 있다. 즉, 탐색 구간의 시작 시점은 충전 시작 시간보다 빠를 수 있고, 탐색 구간의 종료 시점은 충전 완료 시간보다 늦을 수 있다.Analyzing the number of transactions processed within a given length of time is more useful in measuring the service rate of the charger than simply analyzing whether the charger is used or not. have. In the following, this time period may be referred to as a search period. The search period may cover charging start time and charging completion time of at least one transaction. That is, the start time of the search period may be earlier than the charging start time, and the end time of the search period may be later than the charging completion time.

도 2는 탐색 구간의 예시를 도시하고 있으며, 일정 길이의 탐색 구간을 통해 가장 많은 전기 자동차를 서비스한 구간을 파악하여 그 구간의 수요를 추산하고 광고 등 관련된 부가 서비스를 설계할 수 있다. 도 2를 참조하면, 주어진 길이 L을 갖는 두 개의 가상적인 시구간(즉, 탐색 구간) A와 B가 도시되어 있다.FIG. 2 shows an example of a search section, and it is possible to identify a section that has serviced the most electric vehicles through a search section of a predetermined length, estimate demand for the section, and design additional services related to advertisements. Referring to FIG. 2, two hypothetical time periods (ie, search periods) A and B having a given length L are shown.

탐색 구간 A 동안 4 개의 전기 자동차가 서비스 이용을 완료했으며, 탐색 구간 B 동안에는 서비스 이용을 완료한 전기 자동차가 한 대도 존재하지 않는다. 도 2는 전기 자동차 충전기들(T1, T2, T3, T4)의 서비스 흐름을 보이고 있으며 충전기(T1)는 하나의 트랜잭션을 수행하였고, 충전기(T4)는 세 개의 트랜잭션을 수행하였다. 각 충전기의 충전 시간은 충전기 타입에 따른 전력량, 충전하는 전기 자동차의 배터리 잔량 등에 따라 가변적일 수 있다. 가장 많은 서비스를 제공한 크기(혹은, 길이) L의 구간을 계산하고 그 구간을 알아내는데 있어서는 다양한 풀이 방식이 이용될 수 있다.Four electric vehicles have completed use of the service during the search period A, and no electric vehicles have completed use of the service during the search period B. 2 shows the service flow of the electric vehicle chargers T1, T2, T3, and T4, and the charger T1 has performed one transaction, and the charger T4 has performed three transactions. The charging time of each charger may vary depending on the amount of power depending on the type of charger, the remaining battery power of the electric vehicle to be charged, and the like. Various solution methods can be used to calculate the section of size (or length) L that provides the most services and to find the section.

도 3은 일 실시예에 따른 최대 트랜잭션 수를 구하기 위한 구성을 나타낸 도면이다.3 is a diagram illustrating a configuration for obtaining the maximum number of transactions according to an embodiment.

탐색 구간의 길이가 고정된 경우, 분석 장치는 탐색 구간을 이동시키면서 해당 탐색 구간으로 커버 가능한 최대 트랜잭션의 수를 결정할 수 있다. 예를 들어, 분석 장치는 탐색 구간을 이동시키는 중에 탐색 구간의 각 위치에 대응하여 탐색 구간에 의해 커버되는 트랜잭션의 수를 결정할 수 있고, 가장 많은 트랜잭션을 커버하는 탐색 구간의 위치에 대응하여 최대 트랜잭션의 수를 결정할 수 있다. 탐색 구간의 길이가 가변적인 경우 각 길이에 관해 이러한 과정이 반복적으로 수행될 수 있다.When the length of the search section is fixed, the analysis apparatus may determine the maximum number of transactions that can be covered by the search section while moving the search section. For example, while moving the search section, the analysis device may determine the number of transactions covered by the search section corresponding to each position of the search section, and the maximum transaction corresponding to the position of the search section covering the most transactions You can decide the number of. When the length of the search section is variable, this process may be repeatedly performed for each length.

분석 장치는 주어진 데이터 세트에 기초하여 최대 트랜잭션의 수를 구할 수 있다. 예를 들어, 데이터 세트는 전체 운영 데이터에 대응할 수도 있고, 전체 운영 데이터 중 일부에 대응할 수도 있다. 도 3을 참조하면, 트랜잭션들(315)을 포함하는 제1 데이터 세트(310) 및 트랜잭션들(325)을 포함하는 제2 데이터 세트(320)가 도시되어 있다.The analysis device can obtain the maximum number of transactions based on a given data set. For example, the data set may correspond to the entire operational data, or may correspond to a portion of the overall operational data. Referring to FIG. 3, a first data set 310 including transactions 315 and a second data set 320 including transactions 325 are shown.

분석 장치는 제1 데이터 세트(310)에 속한 트랜잭션들(315)을 하나씩 스캔하며 트랜잭션들(315)을 제2 데이터 세트(320)에 저장할 수 있다. 트랜잭션들(325)은 트랜잭션들(315)이 제2 데이터 세트(320)에 저장된 상태를 나타내며, 트랜잭션들(315)의 일부일 수 있다.The analysis device scans the transactions 315 belonging to the first data set 310 one by one and stores the transactions 315 in the second data set 320. Transactions 325 represent the state in which transactions 315 are stored in second data set 320 and may be part of transactions 315.

분석 장치는 트랜잭션들(315)의 충전 완료 시간에 따라 트랜잭션들(315)을 정렬하고, 트랜잭션들(315)을 하나씩 스캔할 수 있다. 이 과정은 O(n log n)의 복잡도로 수행될 수 있다. 또한, 이러한 정렬 과정을 통해 제1 데이터 세트(310) 내 트랜잭션들(315)에는 충전 완료 시간을 기준으로 우선순위가 부여될 수 있다. 분석 장치는 트랜잭션을 스캔할 때마다 카운트를 1씩 증가시키고 해당 트랜잭션을 제2 데이터 세트(320)에 저장할 수 있다. 예를 들어, 제2 데이터 세트(320)는 우선순위 큐에 해당할 수 있다.The analysis device may sort the transactions 315 according to the charging completion time of the transactions 315 and scan the transactions 315 one by one. This process can be performed with O (n log n) complexity. In addition, through the sorting process, priorities may be given to the transactions 315 in the first data set 310 based on the charging completion time. The analysis device may increment the count by 1 each time a transaction is scanned and store the transaction in the second data set 320. For example, the second data set 320 may correspond to a priority queue.

분석 장치는 충전 시작 시간에 따라 트랜잭션들(325)을 정렬할 수 있다. 이러한 정렬 과정을 통해 제2 데이터 세트(320) 내 트랜잭션들(325)에는 충전 시작 시간을 기준으로 우선순위가 부여될 수 있다. 따라서, 트랜잭션들(325) 중 적어도 일부가 제2 데이터 세트(320)에서 인출(혹은, 제거)되는 경우, 트랜잭션들(325)은 충전 시작 시간이 빠른 순서로 인출(혹은, 제거)될 수 있다.The analysis device can sort the transactions 325 according to the charging start time. Through this sorting process, priorities may be given to transactions 325 in the second data set 320 based on a charging start time. Accordingly, when at least some of the transactions 325 are fetched (or removed) from the second data set 320, the transactions 325 may be fetched (or removed) in the order in which charging start time is fast. .

분석 장치는 트랜잭션들(315)을 하나씩 스캔하면서 제2 데이터 세트(320)에 저장된 트랜잭션들(325) 중 충전 시작 시간이 현재 트랜잭션(즉, 스캔 중인 트랜잭션)의 충전 종료 시간보다 L 이전인 것들을 모두 제거할 수 있다. 예를 들어, 분석 장치는 스캔 대상 트랜잭션의 충전 완료 시간들에서 L 값을 뺀 차이 값 및 제2 데이터 세트(320)에 저장된 트랜잭션들(325) 각각의 충전 시작 시간을 비교하여, 제2 데이터 세트(320)를 유지하거나, 제2 데이터 세트(320)에서 차이 값보다 작은 충전 시작 시간을 포함하는 적어도 하나의 트랜잭션을 제거할 수 있다. 분석 장치는 제2 데이터 세트(320)에 있는 트랜잭션들(325)의 수를 추적하여 그 수가 가장 많을 때를 최대 서비스 구간으로 결정할 수 있다. 최대 서비스 구간에 제2 데이터 세트(320)에 저장된 트랜잭션들(325)의 수가 최대 트랜잭션 수에 해당할 수 있다.The analysis device scans the transactions 315 one by one, and among all the transactions 325 stored in the second data set 320, the charging start time is L before the charging end time of the current transaction (ie, the transaction being scanned). Can be removed. For example, the analysis device compares a difference value obtained by subtracting the L value from the charging completion times of the scan target transaction, and the charging start time of each of the transactions 325 stored in the second data set 320, thereby comparing the second data set. It is possible to maintain the 320 or remove at least one transaction including the charging start time less than the difference value from the second data set 320. The analysis device may track the number of transactions 325 in the second data set 320 and determine when the number is the largest as the maximum service interval. The number of transactions 325 stored in the second data set 320 in the maximum service interval may correspond to the maximum number of transactions.

도 4는 일 실시예에 따른 탐색 구간의 위치에 따른 최대 트랜잭션 수를 나타낸 도면이다. 도 4를 참조하면, 충전기들(T1 내지 T4)의 충전에 관한 트랜잭션들이 도시되어 있다. 최대 트랜잭션 수를 검출하기 위해 고정된 크기의 탐색 구간이 이용될 수 있다. 탐색 구간들(L1 내지 L4)는 고정된 크기의 탐색 구간이 시간 축을 따라 이동하는 것으로 이해될 수 있다. 탐색 구간(L2) 및 탐색 구간(L4)이 2개의 완료된 트랜잭션들을 포함하며 이 값이 최대가 된다. 결국 특정 L 구간내에 포함된 최대 트랜잭션 수를 알아내기 위해 전체 n개의 트랜잭션이 있다고 할 때 O(n log n)의 시간 복잡도의 연산이 수반될 수 있다.4 is a diagram illustrating the maximum number of transactions according to a location of a search section according to an embodiment. 4, transactions related to charging of the chargers T1 to T4 are illustrated. A fixed size search period may be used to detect the maximum number of transactions. The search periods L1 to L4 may be understood as a fixed size search period moving along a time axis. The search period L2 and the search period L4 include two completed transactions, and this value is maximized. As a result, when there are n transactions in total in order to find out the maximum number of transactions included in a specific L period, operation of time complexity of O (n log n) may be involved.

도 5 내지 도 7은 일 실시예에 따른 최대 트랜잭션 수를 구하는 프로세스를 나타낸 도면이다.5 to 7 are diagrams illustrating a process for obtaining the maximum number of transactions according to an embodiment.

도 5 내지 도 7을 참조하면, 제1 데이터 세트(510, 610, 710) 및 제2 데이터 세트(520, 620, 720)가 도시되어 있다.5 to 7, first data sets 510, 610, and 710 and second data sets 520, 620, and 720 are shown.

제1 데이터 세트(510, 610, 710) 및 제2 데이터 세트(520, 620, 720)는 각각 도 3의 제1 데이터 세트(310) 및 제2 데이터 세트(320)에 대응할 수 있다. 제1 데이터 세트(510, 610, 710)는 하나의 예시로서 8개의 트랜잭션들을 포함하는 것으로 도시되었고, 'idx'는 트랜잭션을 구분하기 위한 인덱스를 나타내고, 'start'는 충전 시작 시간을 나타내고, 'end'는 충전 종료 시간을 나타낸다. 제1 데이터 세트(510, 610, 710)는 충전 종료 시간을 기준으로 정렬될 수 있고, 제2 데이터 세트(520, 620, 720)는 충전 시작 시간을 기준으로 정렬될 수 있다. 분석 장치는 제1 데이터 세트(510, 610, 710) 및 제2 데이터 세트(520, 620, 720)에 정렬된 순서로 우선순위를 부여하여 트랜잭션들을 처리할 수 있다. 탐색 구간의 길이는 '30'인 것으로 가정된다.The first data sets 510, 610, and 710 and the second data sets 520, 620, and 720 may correspond to the first data set 310 and the second data set 320 of FIG. 3, respectively. The first data sets 510, 610, and 710 are illustrated as including eight transactions as one example, 'idx' indicates an index for classifying transactions, 'start' indicates a charging start time, and ' end 'represents the charging end time. The first data sets 510, 610, and 710 may be sorted based on the charging end time, and the second data sets 520, 620, and 720 may be sorted based on the charging start time. The analysis device may process transactions by giving priority to the first data set 510, 610, 710 and the second data set 520, 620, 720 in sorted order. It is assumed that the length of the search section is '30'.

분석 장치는 제1 데이터 세트(510, 610, 710)에서 트랜잭션들(0 내지 7)을 스캔하면서 이들을 제2 데이터 세트(520, 620, 720)에 저장할 수 있고, 제2 데이터 세트(520, 620, 720)에 저장된 트랜잭션들 중 충전 시작 시간이 현재 트랜잭션(즉, 스캔 중인 트랜잭션)의 충전 종료 시간보다 탐색 구간의 길이 이전인 것들을 모두 제거할 수 있다. 도 5 내지 도 7은 이 중에 트랜잭션들(3 내지 5)에 관한 프로세스를 나타낸다.The analysis device can scan the transactions (0 to 7) in the first data set (510, 610, 710) and store them in the second data set (520, 620, 720), the second data set (520, 620) , 720, all of the transactions having a charging start time before the charging end time of the current transaction (ie, the transaction being scanned) may be removed. 5 to 7 show a process related to transactions 3 to 5 among them.

도 5를 참조하면, 분석 장치는 제1 데이터 세트(510)에서 트랜잭션(3)을 스캔하고 트랜잭션(3)을 제2 데이터 세트(520)에 저장할 수 있다. 제2 데이터 세트(520)에는 트랜잭션들(0 내지 3)이 저장되어 있다. 이 중 트랜잭션들(0, 1)은 제1 데이터 세트(510)에서 트랜잭션들(0, 1)을 처리하는 과정에서 저장된 것이다. 트랜잭션(3)의 충전 시작 시간 '25'는 현재 스캔 중인 트랜잭션(3)의 충전 종료 시간 '35'에서 탐색 구간의 길이 '30'를 뺀 값 '5'보다 크다. 따라서, 분석 장치는 제2 데이터 세트(520)를 유지할 수 있다. 현 상태에서 제2 데이터 세트(520)에 저장된 트랜잭션의 수 및 최대 트랜잭션의 수는 모두 '4'이다.Referring to FIG. 5, the analysis device may scan the transaction 3 in the first data set 510 and store the transaction 3 in the second data set 520. Transactions 0 to 3 are stored in the second data set 520. Among them, the transactions 0 and 1 are stored in the process of processing the transactions 0 and 1 in the first data set 510. The charge start time '25' of the transaction 3 is greater than the value '5' minus the length '30' of the search period from the charge end time '35' of the transaction 3 currently being scanned. Accordingly, the analysis device can maintain the second data set 520. In the current state, the number of transactions stored in the second data set 520 and the maximum number of transactions are both '4'.

도 6을 참조하면, 분석 장치는 제1 데이터 세트(610)에서 트랜잭션(4)을 스캔하고 트랜잭션(4)을 제2 데이터 세트(620)에 저장할 수 있다. 제2 데이터 세트(620)에는 트랜잭션들(0 내지 4)이 저장된 상태이다. 트랜잭션(4)의 충전 시작 시간 '5'는 현재 스캔 중인 트랜잭션(4)의 충전 종료 시간 '40'에서 탐색 구간의 길이 '30'를 뺀 값 '10'보다 작다. 분석 장치는 제2 데이터 세트(620)에서 트랜잭션(4)을 제거할 수 있다. 현 상태에서 제2 데이터 세트(620)에는 트랜잭션들(0 내지 3)이 저장된 상태이며, 제2 데이터 세트(620)에 저장된 트랜잭션의 수 및 최대 트랜잭션의 수는 모두 '4'이다.Referring to FIG. 6, the analysis device may scan the transaction 4 in the first data set 610 and store the transaction 4 in the second data set 620. Transactions 0 to 4 are stored in the second data set 620. The charging start time '5' of the transaction 4 is smaller than the value '10' minus the length '30' of the search section from the charging end time '40' of the transaction 4 currently being scanned. The analysis device can remove the transaction 4 from the second data set 620. In the current state, transactions 0 to 3 are stored in the second data set 620, and the number of transactions and the maximum number of transactions stored in the second data set 620 are both '4'.

도 7을 참조하면, 분석 장치는 제1 데이터 세트(710)에서 트랜잭션(5)을 스캔하고 트랜잭션(5)을 제2 데이터 세트(720)에 저장할 수 있다. 제2 데이터 세트(720)에는 트랜잭션들(0 내지 3, 및 5)이 저장된 상태이다. 제2 데이터 세트(720)에서 트랜잭션들(0, 1)의 충전 시작 시간 '10'은 현재 스캔 중인 트랜잭션(5)의 충전 종료 시간 '50'에서 탐색 구간의 길이 '30'를 뺀 값 '20'보다 작다. 분석 장치는 제2 데이터 세트(720)에서 트랜잭션들(0, 1)을 제거할 수 있다. 현 상태에서 제2 데이터 세트(720)에 저장된 트랜잭션의 수는 '3'이고, 최대 트랜잭션의 수는 '4'이다. 이와 같은 과정이 나머지 트랜잭션들(6, 7)에 관해 수행되면, 최대 트랜잭션의 수는 '4'로 결정된다.Referring to FIG. 7, the analysis device may scan the transaction 5 in the first data set 710 and store the transaction 5 in the second data set 720. Transactions 0 to 3 and 5 are stored in the second data set 720. In the second data set 720, the charging start time '10' of the transactions (0, 1) is a value '20 minus the length of the search section '30' from the charging end time '50' of the transaction (5) being scanned. Less than The analysis device may remove the transactions (0, 1) from the second data set 720. In the current state, the number of transactions stored in the second data set 720 is '3', and the maximum number of transactions is '4'. If this process is performed for the remaining transactions 6 and 7, the maximum number of transactions is determined as '4'.

도 8은 일 실시예에 따른 탐색 구간의 길이 및 최대 트랜잭션 수 간의 관계를 나타낸 도면이다.8 is a diagram illustrating a relationship between a length of a search section and a maximum number of transactions according to an embodiment.

특정 탐색 구간을 이용하는 경우 도 1과 같은 형태의 시간에 따르는 처리 트랜잭션 수 추이를 보인다. 시간 축에 따라 가장 급격한 처리량의 변화를 갖고 이 변화가 유지되는 구간을 찾는다면, 이 시간대의 변화를 예측하여 전력을 예비하여 둘 수 있다. 단순히 동시 충전수에 의한 최대 수요량 예측은 전력의 실시간 발전량을 계산하는데 사용될 수 있는 반면, 이 최대 처리량과 최대 처리량 구간의 파악은 전력의 버퍼, 즉 배터리의 용량을 결정하는데 중요한 역할을 할 수 있다.When a specific search interval is used, the number of processing transactions according to the time as shown in FIG. 1 is shown. If you find the section with the fastest change in throughput along the time axis and the change is maintained, you can predict the change in this time zone to reserve power. Prediction of the maximum demand simply by the number of simultaneous charges can be used to calculate the real-time power generation of the power, while the identification of the maximum throughput and the maximum throughput section can play an important role in determining the buffer of the power, that is, the capacity of the battery.

이 구간의 파악을 위해서는 최대 처리량이 다른 구간에 비해 높게 유지되는 구간, 즉 탐색 구간의 길이를 구하여야 한다. 길이 L의 크기가 클수록 L에 포함된 최대 처리량은 더욱 커지게 되며, L이 0이라면 L에 포함된 트랜잭션의 수는 0이 된다. 만약 L의 크기를 찾아낸다면 상술된 최대 트랜잭션 수를 구하는 프로세스에 따라 L내에 포함된 트랜잭션의 수를 파악하여 그 수가 최대가 될 때의 L의 시작 지점과 완료 지점을 탐지할 수 있다.In order to grasp this section, it is necessary to obtain the length of the section in which the maximum throughput is maintained higher than the other sections, that is, the search section. The larger the length L, the larger the maximum throughput included in L, and if L is 0, the number of transactions included in L is 0. If the size of L is found, it is possible to detect the number of transactions included in L according to the process for obtaining the maximum number of transactions described above, and to detect the start and end points of L when the number becomes the maximum.

실시예들에서 찾고자 하는 L의 크기는 도 8에서 볼 수 있듯이 가장 급격하게 많은 처리량을 갖는 시간 구간에 해당한다. 도 8에서 L1과 L2 모두 4개의 트랜잭션을 포함하고 있으나 L1이 L2보다 더욱 짧다. 따라서 L1이 다른 구간보다 높은 처리량을 갖는 구간이라고 판단할 수 있다.As shown in FIG. 8, the size of L to be searched in the embodiments corresponds to a time period having the most rapid throughput. In FIG. 8, both L1 and L2 include four transactions, but L1 is shorter than L2. Therefore, it can be determined that L1 is a section having a higher throughput than other sections.

도 9는 일 실시예에 따른 트랜잭션들을 나타낸 도면이고, 도 10은 일 실시예에 따른 탐색 구간의 길이에 따른 최대 트랜잭션 수를 나타낸 그래프이고, 도 11은 일 실시예에 따른 탐색 구간의 길이에 따른 탐색 구간의 길이 및 최대 트랜잭션 수 간의 비율을 나타낸 그래프이다.9 is a diagram illustrating transactions according to an embodiment, FIG. 10 is a graph showing the maximum number of transactions according to the length of a search section according to an embodiment, and FIG. 11 is according to a length of a search section according to an embodiment This graph shows the ratio between the length of the search section and the maximum number of transactions.

도 9의 예시에서 구하고자 하는 문제를 파악할 수 있다. 만약 전체 탐색 구간이 12라고 할 때 L을 12로 둔다면 전체 7개의 모든 트랜잭션이 L에 포함된다. 반면 L이 아주 작다면 하나의 트랜잭션도 L에 포함되지 못한다.In the example of FIG. 9, the problem to be sought can be grasped. If L is 12 when the entire search period is 12, all 7 transactions are included in L. On the other hand, if L is very small, no transaction is included in L.

적정한 크기의 L을 찾기 위해서는 가능한 L 값에 대해 상술된 최대 트랜잭션 수를 구하는 프로세스에 따라 구간 내 트랜잭션의 수를 계산하고 이를 기반으로 피크를 포함하는 L값을 결정하여야 한다. 도 10은 도 9의 예시에 주어진 트랜잭션 집합에 대해 각 L 별로 포함하는 트랜잭션 수를 보이고 있다. 도 10에서 커버리지가 급격히 변하는 구간은 L이 '1'과 '4'로 볼 수 있다.In order to find an appropriate size L, the number of transactions in a section must be calculated according to a process for obtaining the maximum number of transactions for the possible L values, and based on this, an L value including a peak must be determined. FIG. 10 shows the number of transactions included for each L for the transaction set given in the example of FIG. 9. In FIG. 10, the period where the coverage changes rapidly can be seen as L being '1' and '4'.

급격하게 변하는 기준을 찾기 위해서는 일단 각 L에 있어서 구간의 길이와 포함된 트랜잭션의 비율을 고려할 수 있다. 도 11에 도시된 바와 같이 '1'과 '4'의 구간에서 이 비율인 '2'와 '1.25'가 되어 다른 L 값보다 크다는 것을 알 수 있다. 물론 구간의 길이가 작을수록 포함된 트랜잭션의 수와의 비율이 커지는 경향은 있다.In order to find the rapidly changing criteria, it is possible to consider the length of the interval and the ratio of transactions involved in each L. As shown in FIG. 11, it can be seen that the ratios of '2' and '1.25' in the section of '1' and '4' are greater than other L values. Of course, the smaller the length of the section, the higher the ratio with the number of transactions involved.

궁극적으로 해결하고자 하는 문제는 이 L의 크기를 결정하는 것인데 트랜잭션의 수가 많고 L의 크기가 커진다면 모든 가능한 L에 대해 L에 포함된 트랜잭션의 수를 모두 계산해보는 것은 막대한 시간이 소요되므로 이 계산량을 줄이는 것이 중요하다.Ultimately, the problem to be solved is to determine the size of this L. If the number of transactions is large and the size of L increases, calculating the total number of transactions contained in L for all possible L takes a lot of time. It is important to reduce.

먼저 전체 트랜잭션의 수 및 전체 탐색 구간의 길이 Lm이 주어져 있다고 가정한다. Lm은 찾고자 하는 L이 가질 수 있는 최대 값이다. 찾고자 하는 L은 최적 길이로 지칭될 수 있다.First, it is assumed that the total number of transactions and the length Lm of the entire search interval are given. Lm is the maximum value that L that you are looking for can have. The L to be searched can be referred to as the optimal length.

특정 L 값에 대해 포함 비율을 계산하는데 있어서 각 L 크기별로 공평한 비율로 계산하기 위해 단순한 개수가 아닌 전체 트랜잭션 대 포함 트랜잭션의 비율로 계산될 수 있다. 예를 들어, 포함 비율은 아래 수학식 1에 따라 계산될 수 있다.In calculating the inclusion ratio for a specific L value, it may be calculated as the ratio of the total transaction to the inclusive transaction rather than a simple number in order to calculate the fair ratio for each L size. For example, the inclusion ratio may be calculated according to Equation 1 below.

Figure 112018120179520-pat00001
Figure 112018120179520-pat00001

수학식 1에서, 'F(L)'은 포함 비율을 나타내고, 'TL'은 길이 L의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수를 나타내고, 'TA'는 트랜잭션 데이터에 따른 전체 트랜잭션의 수를 나타내고, 'L'은 L 값, 즉 탐색 구간의 길이를 나타낸다. 예를 들어 전체 트랜잭션의 수가 200이고, 탐색 구간의 길이가 2이고, 해당 탐색 구간으로 커버 가능한 최대 트랜잭션의 수가 20이라면, 포함 비율은 (20/200) / 2 = 0.05로 계산될 수 있다. 특정 L 에 대해 포함 비율을 계산하기 위해서는 O(n log n)의 수행시간이 필요하다. 포함 비율에 관한 계산을 줄이기 위해서 먼저 주어진 최소값 L1에 따른 포함 비율부터 계산될 수 있다.In Equation 1, 'F (L)' denotes an inclusion ratio, 'T L ' denotes the maximum number of transactions that can be covered by a search interval of length L, and 'T A ' denotes the total number of transactions according to transaction data. And 'L' represents the L value, that is, the length of the search section. For example, if the total number of transactions is 200, the length of the search section is 2, and the maximum number of transactions that can be covered by the search section is 20, the inclusion ratio may be calculated as (20/200) / 2 = 0.05. In order to calculate the inclusion ratio for a particular L, the execution time of O (n log n) is required. In order to reduce the calculation regarding the inclusion ratio, the inclusion ratio according to the minimum value L1 given first may be calculated.

도 12는 일 실시예에 따른 트랜잭션 분석 방법을 나타낸 동작 흐름도이다. 트랜잭션 분석을 통해 탐색 구간의 최적 길이가 결정될 수 있다.12 is an operation flowchart illustrating a transaction analysis method according to an embodiment. The optimal length of the search section may be determined through transaction analysis.

도 12를 참조하면, 단계(1210)에서 분석 장치는 탐색 구간의 샘플 길이(이하, LS로 지칭될 수 있음)들을 설정하고, 샘플 길이들에 관한 포함 비율들(이하, RS로 지칭될 수 있음)을 계산한다. 예를 들어, LS 값들은 2, 4, 6, 8, 16, ... 등이 될 수 있다. RS 값은 앞서 언급된 수학식 1에 기초하여 계산될 수 있다. 예를 들어, RS 값들은 샘플 길이들 각각의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수, 트랜잭션 데이터에 따른 전체 트랜잭션의 수, 및 샘플 길이들 각각에 기초하여 계산될 수 있다.Referring to FIG. 12, in step 1210, the analysis device sets the sample length (hereinafter, referred to as L S ) of the search interval, and includes ratios related to the sample lengths (hereinafter, referred to as R S ) Can be calculated). For example, L S values may be 2, 4, 6, 8, 16, ..., etc. R S value may be calculated based on Equation 1 mentioned above. For example, R S values may be calculated based on the maximum number of transactions that can be covered by a search interval of each of the sample lengths, the total number of transactions according to transaction data, and each of the sample lengths.

단계(1220)에서 분석 장치는 LS 값들에 따른 RS 값들의 변화 패턴에 기초하여 LS 값들 중에 참조 길이들(이하, LR로 지칭될 수 있음)을 선정한다. 여기서, 변화 패턴은 LS 값들의 증가에 따라 RS 값들이 증가하는 단조 증가 패턴, LS 값들의 증가에 따라 RS 값들이 감소하는 단조 감소 패턴, 및 LS 값들의 증가에 따라 RS 값들이 증가하다 감소하는 굴절 패턴 등을 포함할 수 있다. 예를 들어, 분석 장치는 LS 값들 중에, LS 값들의 증가에 따라 RS 값들이 증가하는 적어도 일부의 LS 값을 LR 값들로 선정할 수 있다. 분석 장치는 F(LS) > F(2*LS) > F(4*LS)인 LS 값들을 LR로 선정할 수 있다. 이와 같은 변화 패턴은 L 값에 따라 포함 비율이 변화하다가 더 이상 L 값의 증가가 포함 비율에 큰 영향을 주지 않는 구간에 대응할 수 있다.In step 1220, analysis device is selected to refer to the length (which may be referred to below, L R) in the L values S based on the change pattern of the R S L S values according to the values. Here, the change pattern is R S value in accordance with an increase of R monotone increasing the S values increased pattern monotone decreasing that R S values decreased with the increase of the L S value pattern, and L S value in accordance with an increase of the L S value They may include an increasing and decreasing refractive pattern. For example, among the L S values, the analysis apparatus may select at least a part of the L S value in which the R S values increase as the L S values increase, as L R values. Analysis device can select a value of S L F (L S)> F ( 2 * L S)> F (4 * L S) to R L. Such a change pattern may correspond to an interval in which the inclusion ratio changes according to the L value, but the increase in the L value no longer significantly affects the inclusion ratio.

단계(1230)에서 분석 장치는 참조 길이들에 관한 포함 비율들(이하, RR로 지칭될 수 있음)에 기초하여, 최대 포함 비율(RM)에 대응하는 탐색 구간의 최적 길이(이하, LO로 지칭될 수 있음)를 결정한다. 분석 장치는 LR 값들에 기초한 이진 탐색을 이용하여 LO 값을 결정할 수 있다. 예를 들어, 분석 장치는 LR과 2*LR 사이에서 이진 탐색으로 포함 비율이 커지는 L을 찾음으로써 LO 값을 결정할 수 있다.In step 1230, the analysis device determines the optimal length of the search section corresponding to the maximum inclusion ratio R M (hereinafter, L) based on the inclusion ratios for the reference lengths (hereinafter, may be referred to as R R ). O may be referred to). The analysis device may determine the L O value using a binary search based on the L R values. For example, the analysis apparatus may determine the value of L O by finding L having an increased inclusion ratio by binary search between L R and 2 * L R.

분석 장치는 하한 값 L(L) = LR, 상한 값 H(L) = 2*LR로 설정하고, 상한 값 및 하한 값 사이에 중간 값(혹은, 중간 길이) L'을 설정하고, L'에 관한 포함 비율을 계산할 수 있다. L'에 관한 포함 비율이 LR에 관한 포함 비율보다 큰 경우, 분석 장치는 L' 및 2*LR 간의 구간에서 LO 값을 결정할 수 있다. L'에 관한 포함 비율이 LR에 관한 포함 비율보다 작은 경우, 분석 장치는 LR 및 L' 간의 구간에서 LO 값을 결정할 수 있다. 예를 들어, 중간 길이는 상한 값 및 하한 값의 평균에 대응할 수 있다. 즉, L'= (L(L)+H(L))/2로 설정될 수 있다. L'< L이라면 분석 장치는 L을 LO로 결정할 수 있다.The analysis device sets the lower limit value L (L) = L R , the upper limit value H (L) = 2 * L R, and sets the intermediate value (or intermediate length) L 'between the upper limit value and the lower limit value, L You can calculate the inclusion rate for '. When the inclusion ratio for L 'is greater than the inclusion ratio for L R , the analysis device may determine the L O value in the interval between L' and 2 * L R. When the inclusion ratio for L 'is smaller than the inclusion ratio for L R , the analysis device may determine the L O value in the interval between L R and L'. For example, the median length can correspond to the average of the upper and lower limits. That is, L '= (L (L) + H (L)) / 2 can be set. If L '<L, the analyzer can determine L as L O.

최초 값인 L=1인 경우를 수용한다면 L=1이 답이 될 수도 있으며, 이후 과정에서 구한 L과 비교에 의해 더 포함 비율이 높은 값이 선택될 수도 있다. L은 충분히 작은 값에서 출발하는 것으로 가정될 수 있다,If the initial value of L = 1 is accepted, L = 1 may be the answer, and a value with a higher inclusion ratio may be selected by comparison with L obtained in a subsequent process. L can be assumed to start at a sufficiently small value,

이하, 최적 길이를 결정하는 하나의 예시를 설명한다.Hereinafter, one example of determining the optimal length will be described.

분석 장치는 LS 값들을 2, 4, 8, 16, ... 으로 설정하고, F(2), F(4), F(8), F(16), ... 을 구할 수 있다. 표 1은 해당 LS 값들에 대응하는 데이터를 나타낸다. 다른 예시로서, LS 값들은 1을 포함하도록 설정될 수도 있다.The analysis device may set L S values to 2, 4, 8, 16, ..., and obtain F (2), F (4), F (8), F (16), .... Table 1 shows data corresponding to the corresponding L S values. As another example, L S values may be set to include 1.

LL ...... 22 44 66 88 1616 ...... F(L)F (L) ...... 0.010.01 0.0130.013 0.0140.014 0.010.01 0.0080.008 ......

표 1을 참조하면, F(4) < F(8) < F(16)이므로, LR 값들은 4, 8, 16이 되고, L(L)=4, H(L) = 8이 된다. 이에 따라, L'=6이 되고 F(4) < F(6) 이므로, 다음 스텝에서 L(L)=6, H(L) = 8이 되고 L'=7이 된다.Referring to Table 1, since F (4) <F (8) <F (16), L R values are 4, 8, and 16, and L (L) = 4, H (L) = 8. Accordingly, L '= 6 and F (4) <F (6), so that in the next step, L (L) = 6, H (L) = 8, and L' = 7.

LL ...... 22 44 66 77 88 1616 ...... F(L)F (L) ...... 0.010.01 0.0130.013 0.0140.014 0.0120.012 0.010.01 0.0080.008 ......

여기서, F(6) > F(7)이 되어 6이 최대 포함 비율에 대응하는 LO로 선택된다. 만약 F(7)이 더 컸다면 L(L)=7, H(L) = 8 이 되고 L'이 7 이 되어 한계점과 같아지므로 종료한다.도 13은 일 실시예에 따른 트랜잭션을 분석하는 장치를 나타낸 도면이다.Here, F (6)> F (7), and 6 is selected as L O corresponding to the maximum inclusion ratio. If F (7) is larger, L (L) = 7, H (L) = 8, and L 'becomes 7, which is the same as the threshold, and ends. FIG. 13 is a device for analyzing a transaction according to an embodiment It is a figure showing.

도 13을 참조하면, 장치(1300)는 프로세서(1310) 및 메모리(1320)를 포함한다. 메모리(1320)는 프로세서(1310)에 연결되고, 프로세서(1310)에 의해 실행가능한 명령어들, 프로세서(1310)가 연산할 데이터 또는 프로세서(1310)에 의해 처리된 데이터를 저장할 수 있다. 메모리(1320)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체(예컨대, 하나 이상의 디스크 저장 장치, 플래쉬 메모리 장치, 또는 기타 비휘발성 솔리드 스테이트 메모리 장치)를 포함할 수 있다.Referring to FIG. 13, the device 1300 includes a processor 1310 and a memory 1320. The memory 1320 may be connected to the processor 1310 and store instructions executable by the processor 1310, data to be processed by the processor 1310, or data processed by the processor 1310. The memory 1320 includes non-transitory computer-readable media, such as high-speed random access memory and / or non-volatile computer-readable storage media (eg, one or more disk storage devices, flash memory devices, or other non-volatile solid state memory devices). It can contain.

프로세서(1310)는 도 1 내지 도 12를 참조하여 설명된 하나 이상의 동작을 실행하기 위한 명령어들을 실행할 수 있다. 예를 들어, 프로세서(1310)는 전기 자동차의 충전에 관한 충전 시작 시간 및 충전 완료 시간을 각각 포함하는 트랜잭션들을 포함하는 트랜잭션 데이터를 획득하고, 트랜잭션 데이터에 포함된 트랜잭션들 중 적어도 하나의 트랜잭션의 충전 시작 시간 및 충전 완료 시간을 커버하는 탐색 구간의 샘플 길이들을 설정하고, 샘플 길이들 각각의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수, 트랜잭션 데이터에 따른 전체 트랜잭션의 수, 및 샘플 길이들 각각에 기초하여, 샘플 길이들에 관한 포함 비율들을 계산하고, 샘플 길이들에 관한 포함 비율들의 샘플 길이들에 따른 변화 패턴에 기초하여 샘플 길이들 중에 참조 길이들을 선정하고, 참조 길이들에 관한 포함 비율들에 기초하여, 최대 포함 비율에 대응하는 탐색 구간의 최적 길이를 결정할 수 있다.The processor 1310 may execute instructions for performing one or more operations described with reference to FIGS. 1 to 12. For example, the processor 1310 acquires transaction data including transactions each including a charging start time and a charging completion time for charging of the electric vehicle, and charging of at least one of the transactions included in the transaction data Set the sample lengths of the search period covering the start time and the charge completion time, and based on each of the sample lengths, the maximum number of transactions that can be covered by the search period, the total number of transactions according to the transaction data, and each of the sample lengths. , Calculates inclusion ratios for sample lengths, selects reference lengths among sample lengths based on a change pattern according to sample lengths of inclusion ratios for sample lengths, and based on inclusion ratios for reference lengths Thus, an optimal length of the search section corresponding to the maximum inclusion ratio can be determined.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(Field Programmable Gate Array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented with hardware components, software components, and / or combinations of hardware components and software components. For example, the devices and components described in the embodiments include, for example, a processor, a controller, an Arithmetic Logic Unit (ALU), a digital signal processor (micro signal processor), a microcomputer, and a Field Programmable Gate Array (FPGA). , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose computers or special purpose computers. The processing device may run an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of understanding, a processing device may be described as one being used, but a person having ordinary skill in the art, the processing device may include a plurality of processing elements and / or a plurality of types of processing elements. It can be seen that may include. For example, the processing device may include a plurality of processors or a processor and a controller. In addition, other processing configurations, such as parallel processors, are possible.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instruction, or a combination of one or more of these, and configure the processing device to operate as desired, or process independently or collectively You can command the device. Software and / or data may be interpreted by a processing device, or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodied in the transmitted signal wave. The software may be distributed on networked computer systems, and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, or the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiments or may be known and usable by those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs, DVDs, and magnetic media such as floptical disks. -Hardware devices specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine language codes produced by a compiler. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by a limited embodiment and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques are performed in a different order than the described method, and / or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form from the described method, or other components Alternatively, even if replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (10)

전기 자동차의 충전에 관한 트랜잭션을 분석하는 방법에 있어서,
전기 자동차의 충전에 관한 충전 시작 시간 및 충전 완료 시간을 각각 포함하는 트랜잭션들을 포함하는 트랜잭션 데이터를 획득하는 단계;
상기 트랜잭션 데이터에 포함된 상기 트랜잭션들 중 적어도 하나의 트랜잭션의 충전 시작 시간 및 충전 완료 시간을 커버하는 탐색 구간의 샘플 길이들을 설정하는 단계;
상기 샘플 길이들 각각의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수, 상기 트랜잭션 데이터에 따른 전체 트랜잭션의 수, 및 상기 샘플 길이들 각각에 기초하여, 상기 샘플 길이들에 관한 포함 비율들을 계산하는 단계;
상기 샘플 길이들에 관한 상기 포함 비율들의 상기 샘플 길이들에 따른 변화 패턴에 기초하여 상기 샘플 길이들 중에 참조 길이들을 선정하는 단계; 및
상기 참조 길이들에 관한 포함 비율들에 기초하여, 최대 포함 비율에 대응하는 상기 탐색 구간의 최적 길이를 결정하는 단계
를 포함하는 방법.
In the method of analyzing the transaction related to the charging of the electric vehicle,
Acquiring transaction data including transactions each including a charging start time and a charging completion time for charging the electric vehicle;
Setting sample lengths of a search period covering a charge start time and a charge completion time of at least one of the transactions included in the transaction data;
Calculating inclusion ratios for the sample lengths based on the maximum number of transactions that can be covered by the search interval of each of the sample lengths, the total number of transactions according to the transaction data, and each of the sample lengths;
Selecting reference lengths from among the sample lengths based on a change pattern according to the sample lengths of the inclusion ratios with respect to the sample lengths; And
Determining an optimal length of the search interval corresponding to the maximum inclusion ratio based on the inclusion ratios with respect to the reference lengths
How to include.
제1항에 있어서,
참조 길이들을 선정하는 단계는
상기 샘플 길이들 중에, 상기 샘플 길이들의 증가에 따라 상기 샘플 길이들에 관한 상기 포함 비율들이 증가하는 적어도 일부의 샘플 길이를 상기 참조 길이들로 선정하는 단계를 포함하는, 방법.
According to claim 1,
The step of selecting the reference lengths
And selecting, among the sample lengths, as the reference lengths, at least a portion of the sample lengths in which the inclusion ratios with respect to the sample lengths increase as the sample lengths increase.
제1항에 있어서,
상기 최적 길이를 결정하는 단계는
상기 참조 길이들에 기초한 이진 탐색을 이용하여 상기 최적 길이를 결정하는 단계를 포함하는, 방법.
According to claim 1,
Determining the optimal length is
And determining the optimal length using binary search based on the reference lengths.
제1항에 있어서,
상기 참조 길이들은 제1 길이, 상기 제1 길이보다 큰 값을 갖는 제2 길이 및 상기 제2 길이보다 큰 값을 갖는 제3 길이를 포함하고,
상기 최적 길이를 결정하는 단계는 상기 제1 길이 및 상기 제2 길이 간의 구간에서 이진 탐색을 이용하여 상기 최적 길이를 결정하는 단계를 포함하는, 방법.
According to claim 1,
The reference lengths include a first length, a second length having a value greater than the first length, and a third length having a value greater than the second length,
Determining the optimal length includes determining the optimal length using a binary search in a section between the first length and the second length.
제4항에 있어서,
상기 최적 길이를 결정하는 단계는
상기 제1 길이 및 상기 제2 길이 사이의 중간 길이에 관해 포함 비율을 계산하는 단계;
상기 중간 길이에 관한 포함 비율이 상기 제1 길이에 관한 포함 비율보다 큰 경우, 상기 중간 길이 및 상기 제2 길이 간의 구간에서 상기 최적 길이를 결정하는 단계; 및
상기 중간 길이에 관한 포함 비율이 상기 제1 길이에 관한 포함 비율보다 작은 경우, 상기 제1 길이 및 상기 중간 길이 간의 구간에서 상기 최적 길이를 결정하는 단계
를 포함하는, 방법.
According to claim 4,
Determining the optimal length is
Calculating an inclusion ratio with respect to an intermediate length between the first length and the second length;
Determining an optimal length in a section between the intermediate length and the second length when the inclusion ratio with respect to the intermediate length is greater than the inclusion ratio with respect to the first length; And
Determining an optimal length in a section between the first length and the intermediate length when the inclusion ratio with respect to the intermediate length is smaller than the inclusion ratio with respect to the first length
How to include.
제5항에 있어서,
상기 중간 길이는 상기 제1 길이 및 상기 제2 길이의 평균에 대응하는, 방법.
The method of claim 5,
Wherein the intermediate length corresponds to the average of the first length and the second length.
제1항에 있어서,
상기 샘플 길이들은 제1 길이를 포함하고,
상기 샘플 길이들에 관한 포함 비율들을 계산하는 단계는
상기 제1 길이에 대응하는 탐색 구간을 이동시키면서 상기 제1 길이의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수를 결정하는 단계를 포함하는, 방법.
According to claim 1,
The sample lengths include a first length,
Calculating the inclusion ratios for the sample lengths is
And determining a maximum number of transactions that can be covered by the first length of the search period while moving the search period corresponding to the first length.
제1항에 있어서,
상기 샘플 길이들은 제1 길이를 포함하고,
상기 샘플 길이들에 관한 포함 비율들을 계산하는 단계는
충전 완료 시간을 기준으로 우선순위가 부여되는 제1 데이터 세트에 속한 트랜잭션들을 스캔하면서 충전 시작 시간을 기준으로 우선순위가 부여되는 제2 데이터 세트에 저장하는 단계;
스캔 대상 트랜잭션의 충전 완료 시간들에서 상기 제1 길이를 뺀 차이 값 및 상기 제2 데이터 세트에 저장된 트랜잭션 각각의 충전 시작 시간을 비교하여, 상기 제2 데이터 세트를 유지하거나, 혹은 상기 제2 데이터 세트에서 상기 차이 값보다 작은 충전 시작 시간을 포함하는 적어도 하나의 트랜잭션을 제거하는 단계; 및
상기 제2 데이터 세트에 저장된 트랜잭션들의 수에 기초하여 상기 제1 길이의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수를 결정하는 단계
를 포함하는, 방법.
According to claim 1,
The sample lengths include a first length,
Calculating the inclusion ratios for the sample lengths is
Scanning the transactions belonging to the first data set given priority based on the charging completion time and storing in the second data set given priority based on the charging start time;
Maintain the second data set, or compare the difference value obtained by subtracting the first length from the charge completion times of the scan target transaction and the start time of each transaction stored in the second data set, or maintain the second data set, or Removing at least one transaction including a charging start time smaller than the difference value from the; And
Determining a maximum number of transactions that can be covered by a search interval of the first length based on the number of transactions stored in the second data set
How to include.
제1항 내지 제8항 중 어느 한 항의 방법을 수행하기 위한 명령어들을 포함하는 하나 이상의 프로그램을 저장한 컴퓨터 판독 가능 저장매체.A computer-readable storage medium storing one or more programs comprising instructions for performing the method of claim 1. 전기 자동차의 충전에 관한 트랜잭션을 분석하는 장치에 있어서,
프로세서; 및
상기 프로세서에서 실행되는 명령어들을 저장하는 메모리
를 포함하고,
상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는
전기 자동차의 충전에 관한 충전 시작 시간 및 충전 완료 시간을 각각 포함하는 트랜잭션들을 포함하는 트랜잭션 데이터를 획득하고,
상기 트랜잭션 데이터에 포함된 상기 트랜잭션들 중 적어도 하나의 트랜잭션의 충전 시작 시간 및 충전 완료 시간을 커버하는 탐색 구간의 샘플 길이들을 설정하고,
상기 샘플 길이들 각각의 탐색 구간으로 커버 가능한 최대 트랜잭션의 수, 상기 트랜잭션 데이터에 따른 전체 트랜잭션의 수, 및 상기 샘플 길이들 각각에 기초하여, 상기 샘플 길이들에 관한 포함 비율들을 계산하고,
상기 샘플 길이들에 관한 상기 포함 비율들의 상기 샘플 길이들에 따른 변화 패턴에 기초하여 상기 샘플 길이들 중에 참조 길이들을 선정하고,
상기 참조 길이들에 관한 포함 비율들에 기초하여, 최대 포함 비율에 대응하는 상기 탐색 구간의 최적 길이를 결정하는,
를 포함하는 장치.
In the device for analyzing the transaction related to the charging of the electric vehicle,
Processor; And
Memory for storing instructions executed in the processor
Including,
When the instructions are executed on the processor, the processor
Acquire transaction data including transactions each including a charging start time and a charging completion time for charging the electric vehicle,
Set sample lengths of a search period covering a charge start time and a charge completion time of at least one of the transactions included in the transaction data,
Calculate inclusion ratios for the sample lengths based on the maximum number of transactions that can be covered by the search interval of each of the sample lengths, the total number of transactions according to the transaction data, and each of the sample lengths,
Reference lengths are selected from among the sample lengths based on a change pattern according to the sample lengths of the inclusion ratios with respect to the sample lengths,
Determining an optimal length of the search interval corresponding to the maximum inclusion ratio based on the inclusion ratios with respect to the reference lengths,
Device comprising a.
KR1020180152341A 2018-11-30 2018-11-30 Method and apparatus for analyzing transaction related to electric vehicle charging KR102091799B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180152341A KR102091799B1 (en) 2018-11-30 2018-11-30 Method and apparatus for analyzing transaction related to electric vehicle charging

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180152341A KR102091799B1 (en) 2018-11-30 2018-11-30 Method and apparatus for analyzing transaction related to electric vehicle charging

Publications (1)

Publication Number Publication Date
KR102091799B1 true KR102091799B1 (en) 2020-03-20

Family

ID=69958155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180152341A KR102091799B1 (en) 2018-11-30 2018-11-30 Method and apparatus for analyzing transaction related to electric vehicle charging

Country Status (1)

Country Link
KR (1) KR102091799B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266075B2 (en) * 2008-06-16 2012-09-11 International Business Machines Corporation Electric vehicle charging transaction interface for managing electric vehicle charging transactions
JP2013520943A (en) * 2010-02-18 2013-06-06 ユニバーシティ オブ デラウェア Electric vehicle equipment for grid integrated car
US20140312839A1 (en) * 2013-04-19 2014-10-23 Honda Motor Co., Ltd. System and method for electric vehicle charging analysis and feedback
KR101920058B1 (en) * 2017-08-31 2018-11-19 서강대학교 산학협력단 System and method for electric power quantity monitoring

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266075B2 (en) * 2008-06-16 2012-09-11 International Business Machines Corporation Electric vehicle charging transaction interface for managing electric vehicle charging transactions
JP2013520943A (en) * 2010-02-18 2013-06-06 ユニバーシティ オブ デラウェア Electric vehicle equipment for grid integrated car
US20140312839A1 (en) * 2013-04-19 2014-10-23 Honda Motor Co., Ltd. System and method for electric vehicle charging analysis and feedback
KR101920058B1 (en) * 2017-08-31 2018-11-19 서강대학교 산학협력단 System and method for electric power quantity monitoring

Similar Documents

Publication Publication Date Title
Sun et al. Classification of electric vehicle charging time series with selective clustering
CN103645961B (en) The method for detecting abnormality of computation-intensive parallel task and system
US10606867B2 (en) Data mining method and apparatus
US11562294B2 (en) Apparatus and method for analyzing time-series data based on machine learning
KR20210002355A (en) Image processing method, candidate evaluation method, and related devices
EP3745317A1 (en) Apparatus and method for analyzing time series data based on machine learning
KR102091799B1 (en) Method and apparatus for analyzing transaction related to electric vehicle charging
CN117370065B (en) Abnormal task determining method, electronic equipment and storage medium
KR102325629B1 (en) Anomaly detecting method and anomaly detecting apparatus
CN111291886B (en) Fusion training method and device of neural network model
CN110377525B (en) Parallel program performance prediction system based on runtime characteristics and machine learning
CN107544008B (en) Vehicle-mounted IGBT state monitoring method and device
CN115587545B (en) Parameter optimization method, device and equipment for photoresist and storage medium
US20210089414A1 (en) Apparatus for migrating data and method of operating same
CN113643529B (en) Parking lot lane congestion prediction method and system based on big data analysis
CN115169058A (en) Transformer insulation structure analysis method and device
CN102117380B (en) System and method for simplification of matrix based Boosting algorithm
JP6748372B2 (en) Data processing device, data processing method, and data processing program
CN110275496A (en) A kind of method and apparatus of more time series timestamp alignment
CN110781062B (en) Sampling method for accelerating extraction of trace information of software
CN113961852B (en) Webpage communication system optimization method and system based on big data
CN117054893B (en) Training method of battery capacity prediction model, battery capacity prediction method and device
CN117809849B (en) Analysis method and system for walking postures of old people with cognitive dysfunction
KR102205102B1 (en) Prediction of number of bitcoin network transactions based on machine learning
Anastacio et al. Challenges of acquiring compositional inductive biases via meta-learning

Legal Events

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