KR20210074027A - Server and method for providing service to recommend movie theater - Google Patents
Server and method for providing service to recommend movie theater Download PDFInfo
- Publication number
- KR20210074027A KR20210074027A KR1020190164941A KR20190164941A KR20210074027A KR 20210074027 A KR20210074027 A KR 20210074027A KR 1020190164941 A KR1020190164941 A KR 1020190164941A KR 20190164941 A KR20190164941 A KR 20190164941A KR 20210074027 A KR20210074027 A KR 20210074027A
- Authority
- KR
- South Korea
- Prior art keywords
- theater
- candidate
- interest
- user
- seat
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 70
- 238000011156 evaluation Methods 0.000 claims abstract description 83
- 230000001939 inductive effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000013067 intermediate product Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0282—Rating or review of business operators or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Economics (AREA)
- Tourism & Hospitality (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
본 개시는 상영관 추천 서비스를 제공하는 서버 및 방법에 관한 것이다. 보다 상세하게는, 본 개시는 상영관들의 좌석 특성 및 서비스 유저의 좌석 선호도에 기초하여 추천 상영관 리스트를 제공하는 서버 및 방법에 관한 것이다.The present disclosure relates to a server and method for providing a theater recommendation service. More particularly, the present disclosure relates to a server and method for providing a recommended theater list based on seat characteristics of theaters and seat preference of a service user.
유저의 영화 예매에 편의를 제공하는 다양한 서비스들이 제공되고 있다. 다양한 서비스들은 모바일 또는 웹 애플리케이션 등의 형태로 유저의 단말기를 통해 제공될 수 있다. 예를 들면, 아래의 특허문헌 1에 개시된 바와 같이, 상영관 예매와 관련된 정보들에 기초하여 상영관을 추천하는 서비스가 제공될 수 있다.A variety of services are provided to provide convenience for users to purchase movie tickets. Various services may be provided through a user's terminal in the form of a mobile or web application. For example, as disclosed in
다만, 기존의 상영관을 추천하는 서비스들의 경우, 각 상영관의 좌석들에 대한 정량적인 데이터 및 유저의 좌석 선호도에 대한 정량적인 데이터에 기반하는 것이 아니므로, 객관성 있는 상영관 추천이 제공되기 어렵고, 그에 따라 상영관 추천의 성능이 저하되는 문제가 생길 수 있다.However, in the case of existing theater recommendation services, it is difficult to provide an objective theater recommendation because it is not based on quantitative data on seats in each theater and quantitative data on user’s seat preference. There may be a problem in that the performance of the theater recommendation is deteriorated.
따라서, 기존의 서비스들의 문제점으로서 상영관 추천이 정량적인 데이터에 기반하지 않는다는 점을 개선하여 상영관 추천의 성능을 향상시키기 위한 기술이 요구될 수 있다.Therefore, as a problem of existing services, a technique for improving theater recommendation performance by improving the fact that theater recommendation is not based on quantitative data may be required.
본 개시로부터 해결하고자 하는 기술적 과제는 기존의 상영관 추천 서비스들의 문제점으로서 상영관 추천의 성능이 저하되는 문제점을 해결하기 위해 정량적인 데이터에 기초하여 상영관을 추천하는 알고리즘을 제공하는 것이다.A technical problem to be solved by the present disclosure is to provide an algorithm for recommending a theater based on quantitative data in order to solve a problem in which performance of theater recommendation is deteriorated as a problem of existing theater recommendation services.
전술한 기술적 과제를 해결하기 위한 수단으로서, 본 개시의 일 측면에 따른 상영관 추천 서비스를 제공하는 서버는, 명령어들을 저장하는 메모리; 및 상기 명령어들을 실행함으로써 상기 상영관 추천 서비스를 제공하는 프로세서를 포함하고, 상기 프로세서는, 유저의 단말기로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 생성하고, 상기 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 상기 유저의 유저 선호도 데이터에 기초하여 상기 후보 상영관들 각각에 대한 평가 점수를 계산하고, 상기 관심 상영관 위치, 상기 관심 상영관 시작 시간 및 상기 유저의 관람 내역에 기초하여 상기 평가 점수를 조정함으로써 상기 후보 상영관들 각각에 대한 조정 점수를 계산하고, 상기 후보 상영관들 각각에 대한 조정 점수를 기준으로 상기 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하여 상기 유저의 단말기에 제공한다.As a means for solving the above technical problem, a server providing a theater recommendation service according to an aspect of the present disclosure includes: a memory for storing instructions; and a processor that provides the theater recommendation service by executing the instructions, wherein the processor generates a candidate theater list based on a movie of interest, a theater location of interest, and a start time of the theater of interest transmitted from the user's terminal. and calculates an evaluation score for each of the candidate theaters based on the seat data of each of the candidate theaters included in the candidate theater list and the user preference data of the user, the location of the theater of interest, the start time of the theater of interest, and An adjustment score for each of the candidate theaters is calculated by adjusting the evaluation score based on the viewing history of the user, and a recommended theater list is selected as at least some of the candidate theaters based on the adjustment score for each of the candidate theaters. generated and provided to the user's terminal.
본 개시의 다른 측면에 따른 명령어들을 실행함으로써 상영관 추천 서비스를 제공하는 방법은, 유저의 단말기로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 생성하는 단계; 상기 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 상기 유저의 유저 선호도 데이터에 기초하여 상기 후보 상영관들 각각에 대한 평가 점수를 계산하는 단계; 상기 관심 상영관 위치, 상기 관심 상영관 시작 시간 및 상기 유저의 관람 내역에 기초하여 상기 평가 점수를 조정함으로써 상기 후보 상영관들 각각에 대한 조정 점수를 계산하는 단계; 및 상기 후보 상영관들 각각에 대한 조정 점수를 기준으로 상기 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하여 상기 유저의 단말기에 제공하는 단계를 포함한다.A method of providing a theater recommendation service by executing instructions according to another aspect of the present disclosure includes: generating a candidate theater list based on a movie of interest of a theater of interest, a location of the theater of interest, and a start time of the theater of interest transmitted from a user's terminal ; calculating an evaluation score for each of the candidate theaters based on seat data of each of the candidate theaters included in the candidate theater list and user preference data of the user; calculating an adjustment score for each of the candidate theaters by adjusting the evaluation score based on the location of the theater of interest, the start time of the theater of interest, and the viewing history of the user; and generating a list of recommended theaters from at least some of the candidate theaters based on the adjusted score for each of the candidate theaters, and providing the list to the user's terminal.
본 개시의 또 다른 측면에 따른 명령어들을 실행함으로써 상영관 추천 서비스를 제공하는 방법은, 서버에서, 유저의 단말기로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 작성하기 위한 데이터를 생성하는 단계; 상기 서버에서, 상기 데이터를 상기 유저의 단말기에 제공하는 단계; 상기 유저의 단말기에서, 상기 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 상기 유저의 유저 선호도 데이터에 기초하여 상기 후보 상영관들 각각에 대한 평가 점수를 계산하는 단계; 상기 유저의 단말기에서, 상기 관심 상영관 위치, 상기 관심 상영관 시작 시간 및 상기 유저의 관람 내역에 기초하여 상기 평가 점수를 조정함으로써 상기 후보 상영관들 각각에 대한 조정 점수를 계산하는 단계; 및 상기 유저의 단말기에서, 상기 후보 상영관들 각각에 대한 조정 점수를 기준으로 상기 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하는 단계를 포함한다.A method of providing a theater recommendation service by executing instructions according to another aspect of the present disclosure includes, in a server, a list of candidate theaters based on a movie of interest of a theater of interest, a location of the theater of interest, and a start time of the theater of interest transmitted from a terminal of a user. generating data for writing; providing, in the server, the data to the terminal of the user; calculating, at the user's terminal, an evaluation score for each of the candidate theaters based on seat data of each of the candidate theaters included in the candidate theater list and user preference data of the user; calculating, in the user's terminal, an adjustment score for each of the candidate theaters by adjusting the evaluation score based on the location of the theater of interest, the start time of the theater of interest, and the viewing history of the user; and generating, in the user's terminal, a list of recommended theaters from at least some of the candidate theaters based on the adjustment score for each of the candidate theaters.
본 개시에 따른 서버 및 방법에 의하면, 좌석 데이터 및 유저 선호도 데이터에 기초하여 후보 상영관들 각각에 대한 평가 점수가 계산될 수 있고, 평가 점수를 조정함으로써 후보 상영관들 각각에 대한 조정 점수가 계산될 수 있으며, 조정 점수를 기준으로 추천 상영관 리스트가 생성될 수 있으므로, 상영관 추천의 적합도를 수치적으로 나타내는 평가 점수 및 조정 점수가 정량적인 데이터에 근거하여 계산될 수 있고, 그에 따라 상영관 추천의 성능이 개선될 수 있다.According to the server and method according to the present disclosure, an evaluation score for each of the candidate theaters may be calculated based on the seat data and the user preference data, and an adjustment score for each of the candidate theaters may be calculated by adjusting the evaluation score. In addition, since the recommended theater list can be generated based on the adjustment score, the evaluation score and the adjustment score numerically indicating the suitability of the theater recommendation can be calculated based on quantitative data, and accordingly, the performance of the theater recommendation is improved can be
도 1은 일부 실시예에 따른 상영관 추천 서비스를 제공하는 시스템을 설명하기 위한 도면이다.
도 2는 일부 실시예에 따른 상영관 추천 서비스를 제공하는 서버를 구성하는 요소들을 나타내는 블록도이다.
도 3은 일부 실시예에 따른 상영관 추천 서비스를 제공하는 방법을 구성하는 단계들을 나타내는 흐름도이다.
도 4는 일부 실시예에 따른 상영관 추천 서비스를 제공하는 방법이 수행되는 과정을 설명하기 위한 도면이다.
도 5는 일부 실시예에 따른 평가 점수를 계산하는 단계를 구체화하는 단계들을 나타내는 흐름도이다.
도 6은 일부 실시예에 따른 평가 점수를 계산하는 단계를 구체화하는 단계들이 수행되는 과정을 설명하기 위한 도면이다.
도 7은 일부 실시예에 따른 평가 점수를 계산하는 단계를 보다 구체화하는 단계들을 나타내는 흐름도이다.
도 8은 일부 실시예에 따른 위치 비교 점수를 계산하는 과정을 보다 구체적으로 설명하기 위한 도면이다.
도 9는 일부 실시예에 따른 가중치 적용 점수를 계산하는 과정을 보다 구체적으로 설명하기 위한 도면이다.
도 10은 일부 실시예에 따른 가중치를 위치 비교 점수에 적용하여 가중치 적용 점수를 계산하는 세부 단계들을 나타내는 흐름도이다.
도 11은 일부 실시예에 따른 조정 점수를 계산하는 단계를 보다 구체화하는 단계들을 나타내는 흐름도이다.
도 12는 일부 실시예에 따른 조정 점수를 계산하는 과정을 설명하기 위한 도면이다.
도 13은 일부 실시예에 따른 상영관 추천 서비스가 제공되는 화면들을 나타내는 도면이다.
도 14는 일부 실시예에 따른 상영관 추천 서비스를 제공하는 시스템의 다른 구현 방식을 설명하기 위한 도면이다.1 is a diagram for describing a system for providing a theater recommendation service according to some embodiments.
2 is a block diagram illustrating elements constituting a server providing a theater recommendation service according to some embodiments.
3 is a flowchart illustrating steps of configuring a method of providing a theater recommendation service according to some embodiments.
4 is a diagram for describing a process in which a method of providing a theater recommendation service is performed according to some embodiments.
5 is a flowchart illustrating steps specifying the step of calculating an evaluation score according to some embodiments.
6 is a diagram for explaining a process in which steps for specifying a step of calculating an evaluation score according to some embodiments are performed.
7 is a flowchart illustrating steps of more concretely calculating an evaluation score according to some embodiments.
8 is a diagram for describing in more detail a process of calculating a location comparison score according to some embodiments.
9 is a diagram for describing in more detail a process of calculating a weight application score according to some embodiments.
10 is a flowchart illustrating detailed steps of calculating a weighted score by applying a weight to a location comparison score, according to some embodiments.
11 is a flowchart illustrating steps that further refine the step of calculating an adjustment score in accordance with some embodiments.
12 is a diagram for describing a process of calculating an adjustment score according to some exemplary embodiments.
13 is a diagram illustrating screens on which a theater recommendation service is provided, according to some embodiments.
14 is a diagram for explaining another implementation method of a system for providing a theater recommendation service according to some embodiments.
이하에서는 도면을 참조하여 본 개시의 실시예들이 상세하게 설명될 것이다. 이하에서의 설명은 실시예들을 구체화하기 위한 것일 뿐, 본 개시에 따른 권리범위를 제한하거나 한정하기 위한 것은 아니다. 본 개시에 관한 기술 분야에서 통상의 지식을 가진 자가 발명의 상세한 설명 및 실시예들로부터 용이하게 유추할 수 있는 것은 본 개시에 따른 권리범위에 속하는 것으로 해석되어야 한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. The description below is only for specifying the embodiments, and is not intended to limit or limit the scope of rights according to the present disclosure. What a person of ordinary skill in the art related to the present disclosure can easily infer from the detailed description and embodiments of the invention should be construed as belonging to the scope of the present disclosure.
본 개시에서 사용되는 용어는 본 개시에 관한 기술 분야에서 널리 사용되는 일반적인 용어로 기재되었으나, 본 개시에서 사용되는 용어의 의미는 해당 분야에 종사하는 기술자의 의도, 새로운 기술의 출현, 심사기준 또는 판례 등에 따라 달라질 수 있다. 일부 용어는 출원인에 의해 임의로 선정될 수 있고, 이 경우 임의로 선정되는 용어의 의미가 상세하게 설명될 것이다. 본 개시에서 사용되는 용어는 단지 사전적 의미만이 아닌, 명세서의 전반적인 맥락을 반영하는 의미로 해석되어야 한다.Although the terms used in the present disclosure have been described as general terms widely used in the technical field related to the present disclosure, the meaning of the terms used in the present disclosure is the intention of a technician in the field, the emergence of new technology, examination standards or precedents. It may vary depending on Some terms may be arbitrarily selected by the applicant, and in this case, the meaning of the arbitrarily selected terms will be described in detail. Terms used in the present disclosure should be interpreted as meanings reflecting the overall context of the specification, not just dictionary meanings.
본 개시에서 사용되는 '구성된다' 또는 '포함한다' 와 같은 용어는 명세서에 기재되는 구성 요소들 또는 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 일부 구성 요소들 또는 단계들은 포함되지 않는 경우, 및 추가적인 구성 요소들 또는 단계들이 더 포함되는 경우 또한 해당 용어로부터 의도되는 것으로 해석되어야 한다.A term such as 'consisting of' or 'comprising' as used in the present disclosure should not be construed as necessarily including all of the components or steps described in the specification, and if some components or steps are not included, And when additional components or steps are further included, it should also be construed as intended from the term.
본 개시에서 사용되는 '제 1' 또는 '제 2' 와 같은 서수를 포함하는 용어는 다양한 구성 요소들 또는 단계들을 설명하기 위해 사용될 수 있으나, 해당 구성 요소들 또는 단계들은 서수에 의해 한정되지 않아야 한다. 서수를 포함하는 용어는 하나의 구성 요소 또는 단계를 다른 구성 요소들 또는 단계들로부터 구별하기 위한 용도로만 해석되어야 한다.As used in the present disclosure, terms including an ordinal number such as 'first' or 'second' may be used to describe various components or steps, but the components or steps should not be limited by the ordinal number. . Terms containing an ordinal number should only be construed for the purpose of distinguishing one element or step from other elements or steps.
이하에서는 도면을 참조하여 본 개시의 실시예들이 상세하게 설명될 것이다. 본 개시에 관한 기술 분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 대해서는 자세한 설명이 생략된다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. Detailed descriptions of matters widely known to those of ordinary skill in the art related to the present disclosure will be omitted.
도 1은 일부 실시예에 따른 상영관 추천 서비스를 제공하는 시스템을 설명하기 위한 도면이다.1 is a diagram for describing a system for providing a theater recommendation service according to some embodiments.
도 1을 참조하면, 상영관 추천 서비스를 제공하는 시스템(10)은 유저의 단말기(100) 및 서버(200)를 포함할 수 있다. 유저의 단말기(100) 및 서버(200)는 상호간에 데이터를 주고받을 수 있고, 유저의 단말기(100)로부터 전송되는 데이터에 기초하여 서버(200)는 유저의 단말기(100)에 상영관 추천 서비스를 제공할 수 있다.Referring to FIG. 1 , a
서버(200)에 의해 제공되는 상영관 추천 서비스는 모바일 애플리케이션 또는 웹 애플리케이션 등과 같은 형태로 제공될 수 있다. 애플리케이션의 형태로 제공되는 상영관 추천 서비스는 유저의 단말기(100)에 의해 실행될 수 있다. 이를 위해, 서버(200)는 데이터 통신망을 통해 유저의 단말기(100)와 무선으로 연결될 수 있다.The theater recommendation service provided by the
유저의 단말기(100)는 모바일 컴퓨팅 디바이스일 수 있다. 예를 들면, 유저의 단말기(100)는 스마트폰, 태블릿 피씨, 스마트 워치 및 기타 웨어러블 디바이스 등에 해당할 수 있다. 유저는 유저의 단말기(100)를 통해 서버(200)로부터 상영관 추천 서비스를 제공받을 수 있다.The user's
유저의 단말기(100)는 서버(200)에 관심 상영관을 전송할 수 있고, 그에 대해 서버(200)는 일련의 처리 과정을 거쳐 유저의 단말기(100)에 추천 상영관 리스트를 제공할 수 있다. 유저는 서버(200)로부터 제공되는 추천 상영관 리스트를 참고하여, 기존에 예매하려고 했던 관심 상영관 외에 다른 상영관을 예매할 수 있다.The user's
한편, 본 개시에서 상영관은 특정 영화가 특정 시간대에서 상영되는 영화관을 의미할 수 있다. 예를 들면, 상영관은 M 영화관 C 지점의 N 관에서 15:00 에 시작하는 영화 X 를 의미할 수 있다. 또한, 유저의 단말기(100)로부터 전송되는 관심 상영관은 유저가 예매하고자 하는 시간대 및 장소의 영화를 의미할 수 있고, 서버(200)에 의해 제공되는 추천 상영관 리스트에는 다른 시간대 및 다른 장소의 영화들이 포함될 수 있다.Meanwhile, in the present disclosure, a theater may mean a movie theater in which a specific movie is screened at a specific time. For example, the theater may mean the movie X starting at 15:00 in the N theater at the M movie theater C point. In addition, the theater of interest transmitted from the user's
한편, 시스템(10)에서 추천 상영관 리스트는 서버(200)에 의해 생성되어 유저의 단말기(100)에 제공되는 것으로 설명되었으나, 이에 제한되는 것은 아니다. 예를 들면, 서버(200)는 추천 상영관 리스트를 생성하기 위해 요구되는 데이터만을 유저의 단말기(100)에 제공할 수 있고, 이를 활용하여 유저의 단말기(100)가 추천 상영관 리스트를 직접 생성하는 형태로도 시스템(10)이 구현될 수 있다. 이에 대한 구체적인 내용은 도 14를 통해 후술될 수 있다.Meanwhile, although it has been described that the list of recommended theaters in the
도 2는 일부 실시예에 따른 상영관 추천 서비스를 제공하는 서버를 구성하는 요소들을 나타내는 블록도이다.2 is a block diagram illustrating elements constituting a server providing a theater recommendation service according to some embodiments.
도 2를 참조하면, 상영관 추천 서비스를 제공하는 서버(200)는 메모리(210) 및 프로세서(220)를 포함할 수 있다. 다만 이에 제한되는 것은 아니고, 도 2에 도시되는 요소들 외에 다른 범용적인 구성 요소들이 서버(200)에 더 포함될 수 있다. 예를 들면, 서버(200)는 유저의 단말기(100)와 통신하기 위한 데이터 통신 수단을 더 포함할 수 있다.Referring to FIG. 2 , the
서버(200)는 상영관 추천 서비스를 제공하도록 구성되는 컴퓨팅 디바이스에 해당할 수 있다. 서버(200)는 각종 데이터 및 명령어들을 저장하기 위한 수단으로서 메모리(210)를 포함할 수 있고, 명령어들을 실행함으로써 각종 데이터에 대한 처리를 수행하기 위한 수단으로서 프로세서(220)를 포함할 수 있다.The
메모리(210)는 상영관 추천 서비스에 관련되는 각종 명령어들을 저장할 수 있다. 예를 들면, 메모리(210)는 컴퓨터 프로그램 또는 모바일 애플리케이션과 같은 소프트웨어를 구성하는 명령어들로서, 상영관 추천 서비스를 구현하기 위한 명령어들을 저장할 수 있다. 또한, 메모리(210)는 명령어들의 실행에 필요한 각종 데이터를 저장할 수 있다.The
메모리(210)는 ROM(read only memory), PROM(programmable ROM), EPROM(electrically programmable ROM), EEPROM(electrically erasable and programmable ROM), 플래시 메모리(flash memory), PRAM(phase-change RAM), MRAM(magnetic RAM), RRAM(resistive RAM), FRAM(ferroelectric RAM) 등과 같은 비휘발성 메모리로 구현될 수 있고, 또는 DRAM(dynamic RAM), SRAM(static RAM), SDRAM(synchronous DRAM), PRAM(phase-change RAM), RRAM(resistive RAM), FeRAM(ferroelectric RAM) 등의 휘발성 메모리로 구현될 수 있다. 또한, 메모리(110)는 HDD(hard disk drive), SSD(solid state drive), SD(secure digital), Micro-SD(micro secure digital) 등으로 구현될 수도 있다.The
프로세서(220)는 메모리(210)에 저장되는 명령어들을 실행함으로써 상영관 추천 서비스를 제공할 수 있다. 프로세서(220)는 상영관 추천 서비스를 구현하기 위한 일련의 처리 과정들을 수행할 수 있다. 또한, 프로세서(220)는 서버(200)를 제어하기 위한 전반적인 기능을 수행할 수 있고, 서버(200) 내부의 각종 연산을 처리할 수 있다.The
프로세서(220)는 다수의 논리 게이트들의 어레이 또는 범용적인 마이크로 프로세서로 구현될 수 있다. 프로세서(220)는 단일의 프로세서 또는 복수의 프로세서들로 구성될 수 있다. 프로세서(220)는 명령어들을 저장하는 메모리(210) 와 별개의 구성이 아닌, 메모리(210)와 함께 일체로 구성될 수도 있다. 예를 들면, 프로세서(220)는 서버(200) 내에 구비되는 CPU(central processing unit), GPU(graphics processing unit) 및 AP(application processor) 중 적어도 하나의 형태로 구현될 수 있다.The
한편, 서버(200)는 메모리(210) 및 프로세서(220)와 같은 구성 요소들을 구비하는 하드웨어로 구현될 수 있음이 예시되었으나, 이와 달리 서버(200)는 직접적인 하드웨어 구성 없이 클라우드 서버(cloud server) 등과 같은 가상 서버로 구현될 수도 있다. 다만 이와 같은 경우에도, 가상 서버에는 메모리(210)와 같은 저장 수단 및 프로세서(220)와 같은 처리 수단이 구비된다는 점은 동일할 수 있다.On the other hand, it has been exemplified that the
서버(200)는 프로세서(220)를 통해 상영관 추천 서비스를 제공하는 방법을 실행할 수 있다. 프로세서(220)는 상영관 추천 서비스를 제공하는 방법을 구성하는 단계들 각각을 실행할 수 있다.The
도 3은 일부 실시예에 따른 상영관 추천 서비스를 제공하는 방법을 구성하는 단계들을 나타내는 흐름도이다.3 is a flowchart illustrating steps of configuring a method of providing a theater recommendation service according to some embodiments.
도 3을 참조하면, 상영관 추천 서비스를 제공하는 방법은 단계 310 내지 단계 340을 포함할 수 있다. 다만 이에 제한되는 것은 아니고, 상영관 추천 서비스를 제공하는 방법에는 도 3에 도시되는 단계들 외에 다른 범용적인 단계들이 더 포함될 수 있다.Referring to FIG. 3 , the method of providing a theater recommendation service may include
도 3의 상영관 추천 서비스를 제공하는 방법은 도 2의 서버(200)에서 시계열적으로 처리되는 단계들로 구성될 수 있다. 따라서, 이하에서 상영관 추천 서비스를 제공하는 방법에 대해 기술되는 내용은 도 2의 서버(200)에 대해서도 동일하게 적용될 수 있다.The method of providing the theater recommendation service of FIG. 3 may include steps that are time-series processed by the
단계 310에서, 서버(200)는 유저의 단말기(100)로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 생성할 수 있다.In
유저는 유저의 단말기(100)를 통해 관심 상영관으로서 어떤 영화를 어떤 곳에서 어떤 시간대에 관람할지에 관한 데이터를 서버(200)에 전송할 수 있다. 서버(200)는 관심 상영관에 대한 대안들에 해당하는 추천 상영관 리스트를 유저의 단말기(100)에 제공하기 위하여, 먼저 후보 상영관 리스트를 생성할 수 있다. 후보 상영관 리스트는 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 생성될 수 있다.The user may transmit data regarding which movie to watch as an interest theater, where, at which time period, to the
서버(200)는 관심 상영관의 영화와 동일한 영화가 상영되고, 관심 상영관 위치까지의 거리가 기준 거리 이하이고, 관심 상영관 시작 시간으로부터 기준 시간 이내에 동일한 영화가 시작되는 적어도 하나의 상영관을 선별함으로써, 후보 상영관 리스트를 생성할 수 있다.The
예를 들면, 서버(200)는 데이터 통신망을 통해 접근 가능한 상영관 데이터베이스의 상영관들 중에서, 관심 상영관 시작 시간으로부터 30분 이내에 동일한 영화가 상영되고, 관심 상영관 위치로부터 5 km 이내에 위치하는 상영관들을 선별하여, 유저에게 제공하기 위한 추천 상영관 리스트의 후보에 해당하는 후보 상영관 리스트를 생성할 수 있다. 한편, 상영관 데이터베이스는 인터넷 등을 통해 제공되는 영화관 운영사의 상영 시간표를 의미할 수 있다.For example, the
단계 320에서, 서버(200)는 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 유저의 유저 선호도 데이터에 기초하여 후보 상영관들 각각에 대한 평가 점수를 계산할 수 있다. 예를 들면, 후보 상영관 리스트에 10개의 후보 상영관들이 포함되는 경우, 서버(200)는 10개의 평가 점수들을 계산할 수 있다. 좌석 데이터는 후보 상영관의 좌석들 각각이 갖는 특성을 나타내는 데이터일 수 있다. 좌석 데이터는 상영관 데이터베이스로부터 제공되거나, 서버(200)에서 자체적으로 생성되어 데이터베이스화될 수 있다.In
한편, 유저 선호도 데이터는 유저가 어떤 좌석을 선호하는지를 수치적으로 나타내는 데이터로서, 서버(200)는 유저가 선호하는 좌석을 선택할 것을 요구하는 질문지 내지 설문조사를 유저의 단말기(100)에 제공할 수 있고, 서버(200)는 유저의 단말기(100)로부터 전송되는 질문지 내지 설문조사의 결과에 기초하여 수치적으로 표현되는 유저 선호도 데이터를 확보할 수 있다.On the other hand, the user preference data is data numerically indicating which seat the user prefers, and the
후보 상영관들에 대한 평가 점수들은, 유저의 단말기(100)에 제공되는 추천 상영관 리스트를 생성하기 위한 중간 생성물에 해당할 수 있다. 평가 점수의 계산에 대해서는 후술할 도 4 내지 도 10을 통해 보다 상세히 설명될 수 있다.The evaluation scores for the candidate theaters may correspond to an intermediate product for generating a list of recommended theaters provided to the user's
단계 330에서, 서버(200)는 관심 상영관 위치, 관심 상영관 시작 시간 및 유저의 관람 내역에 기초하여 평가 점수를 조정함으로써 후보 상영관들 각각에 대한 조정 점수를 계산할 수 있다.In
평가 점수는 후보 상영관에 있어서, 좌석 데이터 및 유저 선호도 데이터만을 반영하여 계산되는 것이므로, 평가 점수에는 후보 상영관의 위치 또는 유저의 관람 내역 등과 같은 외부적인 요인이 반영되지 않을 수 있다. 따라서, 서버(200)는 이와 같은 특성들을 평가 점수에 반영하여 조정 점수를 계산할 수 있다. 한편, 유저의 관람 내역은 서버(200)의 상영관 추천 서비스에 대한 이용 기록 등으로부터 확보될 수 있다.Since the evaluation score is calculated by reflecting only seat data and user preference data in the candidate theater, external factors such as the location of the candidate theater or the viewing history of the user may not be reflected in the evaluation score. Accordingly, the
단계 340에서, 서버(200)는 후보 상영관들 각각에 대한 조정 점수를 기준으로 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하여 유저의 단말기(100)에 제공할 수 있다. 서버(200)는 조정 점수를 기준으로 후보 상영관들을 내림차순으로 정렬할 수 있고, 정렬 결과 후보 상영관들 중 상위의 몇 개만을 추천 상영관 리스트로서 유저의 단말기(100)에 제공할 수 있다.In
유저의 단말기(100)에 제공되는 추천 상영관 리스트는 종래의 상영관 추천 서비스들 대비 객관적인 기준을 통해 제공될 수 있으므로, 상영관 추천의 정확도가 향상될 수 있다. 즉, 평가 점수는 좌석 데이터 및 유저 선호도 데이터에 기초하여 계산될 수 있으므로, 평가 점수는 객관적인 기준에 근거하여 계산될 수 있다. 또한, 추천 상영관 리스트를 선별하기 위한 기준은 평가 점수에 조정이 적용된 조정 점수이므로, 수치적이고 정량적인 점수가 기준이 되어, 유저에게 보다 적합한 상영관이 추천될 수 있다.Since the recommended theater list provided to the user's terminal 100 can be provided through an objective standard compared to conventional theater recommendation services, the accuracy of the theater recommendation can be improved. That is, since the evaluation score may be calculated based on the seat data and the user preference data, the evaluation score may be calculated based on an objective criterion. In addition, since the criterion for selecting the recommended theater list is the adjustment score to which the adjustment is applied to the evaluation score, the numerical and quantitative score serves as the criterion, and a theater more suitable for the user may be recommended.
도 4는 일부 실시예에 따른 상영관 추천 서비스를 제공하는 방법이 수행되는 과정을 설명하기 위한 도면이다.4 is a diagram for describing a process in which a method of providing a theater recommendation service is performed according to some embodiments.
도 4를 참조하면, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 생성되는 후보 상영관 리스트를 나타내는 표(410), 후보 상영관들 각각에 대한 평가 점수를 나타내는 표(420) 및 후보 상영관들 각각에 대한 조정 점수를 나타내는 표(430)가 도시되어 있다.Referring to FIG. 4 , a table 410 indicating a list of candidate theaters generated based on a location of a theater of interest and a starting time of a theater of interest, a table 420 indicating an evaluation score for each of the candidate theaters, and a table for each of the candidate theaters A table 430 representing the coordination score is shown.
표(410)의 예시를 참조하면, 유저의 단말기(100)로부터 전송되는 관심 상영관과 기준 거리로서 5 km 이내에 위치하고, 관심 상영관의 영화 시작 시간으로부터 기준 시간으로서 30분 이내에 영화가 시작하고, 관심 상영관의 영화와 동일한 영화가 상영되는 3개의 후보 상영관들이 생성될 수 있다.Referring to the example of the table 410, the movie is located within 5 km as the reference distance from the theater of interest transmitted from the user's
표(420)의 예시를 참조하면, 3개의 후보 상영관들 각각에 대하여, 좌석 데이터 및 유저 선호도 데이터에 기초하는 평가 점수가 계산될 수 있고, 평가 점수를 기준으로 3개의 후보 상영관들이 내림차순으로 정렬될 수 있다.Referring to the example of the table 420 , for each of the three candidate theaters, an evaluation score based on seat data and user preference data may be calculated, and the three candidate theaters will be sorted in descending order based on the evaluation score. can
표(430)의 예시를 참조하면, 3개의 후보 상영관들 각각의 평가 점수에 조정이 적용되어, 3개의 후보 상영관들 각각에 대한 조정 점수가 계산될 수 있고, 조정 점수를 기준으로 3개의 후보 상영관들이 내림차순으로 정렬될 수 있다.Referring to the example of the table 430 , the adjustment is applied to the evaluation score of each of the three candidate theaters, the adjustment score for each of the three candidate theaters may be calculated, and the three candidate theaters based on the adjustment score may be sorted in descending order.
한편, 표(410) 내지 표(430)에서는 후보 상영관들의 개수가 3개인 것으로 예시되었으나, 이에 제한되는 것은 아니고, 서버(200)에 의해 생성되는 후보 상영관들의 개수는 다른 개수일 수 있다.Meanwhile, in the tables 410 to 430 , the number of candidate theaters is illustrated as three, but the number of candidate theaters is not limited thereto, and the number of candidate theaters generated by the
이후, 서버(200)는 표(430)의 정렬된 3개의 후보 상영관들 중에서 적절한 기준으로 일부를 선별하여, 예를 들면 상위 2개의 후보 상영관들을 선별하여, 이를 추천 상영관 리스트로 생성할 수 있고, 추천 상영관 리스트를 유저의 단말기(100)에 제공할 수 있다.Thereafter, the
도 5는 일부 실시예에 따른 평가 점수를 계산하는 단계를 구체화하는 단계들을 나타내는 흐름도이다.5 is a flowchart illustrating steps specifying the step of calculating an evaluation score according to some embodiments.
도 5를 참조하면, 도 3의 단계 320으로서, 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 유저의 유저 선호도 데이터에 기초하여 후보 상영관들 각각에 대한 평가 점수를 계산하는 단계는, 단계 321 및 단계 322를 포함할 수 있다. 즉, 도 3의 단계 320는 단계 321 및 단계 322와 같이 구체화될 수 있다.Referring to FIG. 5 , in
한편, 단계 321 및 단계 322가 수행되기 위한 전제로서, 후보 상영관들 각각의 좌석 데이터 및 유저의 유저 선호도 데이터가 보다 구체적으로 제시될 수 있다. 즉, 좌석 데이터는, 후보 상영관들 각각의 좌석들에 관한 데이터로서, 가로 방향 위치, 세로 방향 위치, 좌석 가로 길이, 좌석 세로 길이, 통로측 좌석 여부, 예매 가능 여부 및 예매 가격을 포함할 수 있고, 유저 선호도 데이터는, 가로 방향의 선호 위치, 세로 방향의 선호 위치, 통로측 좌석에 대한 제1 선호도, 옆 좌석이 비어 있는 좌석에 대한 제2 선호도 및 좌석 가격에 대한 제3 선호도를 포함할 수 있다.Meanwhile, as a premise for performing
단계 321에서, 서버(200)는 후보 상영관들 각각에 포함되는 좌석들 각각에 대하여, 가로 방향 위치 및 가로 방향의 선호 위치의 비교 결과 및 세로 방향 위치 및 세로 방향의 선호 위치의 비교 결과에 기초하여 위치 비교 점수를 계산할 수 있다.In
즉, 각 좌석의 가로 방향 위치가 유저의 가로 방향의 선호 위치와 유사할수록, 또한 각 좌석의 세로 방향 위치가 유저의 세로 방향의 선호 위치와 유사할수록 높은 위치 비교 점수가 도출될 수 있다. 이와 같이, 위치 비교 점수는 가로 및 세로 방향에 관하여, 유저가 선호하는 좌석에 얼마나 가까운지를 나타내는 수치일 수 있다. 위치 비교 점수가 계산되는 보다 구체적인 과정은 후술할 도 8에서 보다 상세하게 설명될 수 있다.That is, as the horizontal position of each seat is similar to the user's preferred position in the horizontal direction, and the vertical position of each seat is similar to the user's preferred position in the vertical direction, a higher position comparison score may be derived. As such, the location comparison score may be a numerical value indicating how close the user is to the preferred seat in the horizontal and vertical directions. A more detailed process for calculating the location comparison score may be described in more detail with reference to FIG. 8, which will be described later.
단계 322에서, 서버(200)는 좌석들의 위치 비교 점수들 중 가장 큰 값을 평가 점수로 설정할 수 있다. 즉, 각 후보 상영관은 복수의 좌석들을 포함할 수 있고, 복수의 좌석들은 서로 상이한 위치 비교 점수들을 가질 수 있는 것이지만, 유저는 자신의 선호도에 가장 부합하는 하나의 좌석만이 있더라도 해당 후보 상영관을 예매할 것이므로, 특정 후보 상영관의 좌석들의 위치 비교 점수들 중 가장 큰 값이 해당 후보 상영관의 평가 점수로서 설정될 수 있다.In
도 6은 일부 실시예에 따른 평가 점수를 계산하는 단계를 구체화하는 단계들이 수행되는 과정을 설명하기 위한 도면이다.6 is a diagram for explaining a process in which steps for specifying a step of calculating an evaluation score according to some embodiments are performed.
도 6을 참조하면, 특정 후보 상영관의 좌석들(A1 내지 C1) 각각에 대한 위치 비교 점수를 나타내는 표(610), 좌석들(A1 내지 C1)의 위치 비교 점수들 중 가장 큰 값이 평가 점수로 설정될 수 있음을 나타내는 표(620) 및 둘 이상의 연속하는 좌석들을 예매하는 경우의 평가 점수를 나타내는 표(630)가 도시되어 있다.Referring to FIG. 6 , a table 610 indicating a position comparison score for each of the seats A1 to C1 of a specific candidate theater, the largest value among the position comparison scores of the seats A1 to C1 is the evaluation score. A table 620 indicating that it can be set and a table 630 indicating an evaluation score in the case of reserving two or more consecutive seats are shown.
표(610)의 예시를 참조하면, 특정 후보 상영관의 좌석들(A1 내지 C1) 각각에 대한 위치 비교 점수가 계산될 수 있다. 위치 비교 점수는 각 좌석의 가로 방향 위치 및 유저의 가로 방향의 선호 위치의 비교 결과, 및 각 좌석의 세로 방향 위치 및 유저의 세로 방향의 선호 위치의 비교 결과에 기초하여 계산될 수 있다.Referring to the example of the table 610, a position comparison score for each of the seats A1 to C1 of a specific candidate theater may be calculated. The position comparison score may be calculated based on a comparison result of the horizontal position of each seat and the user's preferred position in the horizontal direction, and a comparison result of the longitudinal position of each seat and the user's preferred position in the vertical direction.
표(620)의 예시를 참조하면, 좌석들(A1 내지 C1)의 위치 비교 점수들 중 가장 큰 값에 해당하는 좌석(A1)의 위치 비교 점수가 특정 후보 상영관에 대한 평가 점수로 설정될 수 있다. 그 과정에서, 위치 비교 점수들을 기준으로 내림차순 정렬이 수행될 수 있고, 예매가 불가능한 좌석(B1)은 정렬 시에 제외될 수 있다.Referring to the example of the table 620, the position comparison score of the seat A1 corresponding to the largest value among the position comparison scores of the seats A1 to C1 may be set as the evaluation score for a specific candidate theater. . In the process, descending sorting may be performed based on the location comparison scores, and seats B1 that cannot be reserved may be excluded during sorting.
표(630)의 예시를 참조하면, 둘 이상의 연속하는 좌석들을 예매하는 경우가 예시될 수 있다. 하나의 좌석만을 예매하는 경우와는 달리, 둘 이상의 연속하는 좌석들을 예매하는 경우에는, 특정 후보 상영관의 전체 좌석들을 고려하는 것이 아니고, 둘 이상의 연속하는 좌석들에 대해서만 위치 비교 점수를 계산할 수 있다. 예시된 바와 같이, 두 개의 연속하는 좌석들을 예매하는 경우, 특정 후보 상영관의 좌석들 중 연속하는 좌석들(A1-A2, 또는 B1-B2)만이 고려될 수 있고, 결과적으로 좌석들(A1-A2)의 위치 비교 점수들에 대한 평균이 특정 후보 상영관에 대한 평가 점수로 설정될 수 있다.Referring to the example of the table 630, a case in which two or more consecutive seats are reserved may be exemplified. Unlike the case of reserving only one seat, when reserving two or more consecutive seats, the position comparison score may be calculated only for two or more consecutive seats without considering all seats of a specific candidate theater. As illustrated, in the case of reserving two consecutive seats, only consecutive seats (A1-A2, or B1-B2) among seats of a specific candidate theater can be considered, and as a result, seats A1-A2 ) may be set as an evaluation score for a specific candidate theater.
즉, 둘 이상의 연속하는 좌석들을 예매하는 경우에는, 서버(200)는 예매 가능 여부에 기초하여 좌석들 중 둘 이상의 연속하는 좌석들의 세트들을 선별할 수 있고, 세트들 각각에 대하여, 둘 이상의 연속하는 좌석들의 위치 비교 점수들에 대한 평균을 계산할 수 있고, 세트들의 평균들 중 가장 큰 값을 평가 점수로 설정할 수 있다.That is, in the case of reserving two or more consecutive seats, the
도 7은 일부 실시예에 따른 평가 점수를 계산하는 단계를 보다 구체화하는 단계들을 나타내는 흐름도이다.7 is a flowchart illustrating steps of more concretely calculating an evaluation score according to some embodiments.
도 7을 참조하면, 도 3의 단계 320으로서, 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 유저의 유저 선호도 데이터에 기초하여 후보 상영관들 각각에 대한 평가 점수를 계산하는 단계를 구성하는 단계 321 및 단계 322a 내지 단계 322c가 도시되어 있다. 한편, 단계 322a 내지 단계 322c는 도 5의 단계 322를 구체화하는 것으로 해석될 수도 있다. 단계 322a 내지 단계 322c는 위치 비교 점수에 가중치를 적용하는 과정을 나타낼 수 있다.Referring to FIG. 7 , in
단계 322a에서, 서버(200)는 좌석들 각각에 대하여, 통로측 좌석 여부 및 제1 선호도에 기초하는 제1 가중치, 예매 가능 여부로부터 도출되는 옆 좌석이 비어 있는지 여부 및 제2 선호도에 기초하는 제2 가중치 및 예매 가격 및 제3 선호도에 기초하는 제3 가중치를 계산할 수 있다.In
제1 가중치는 유저의 통로측 좌석에 대한 선호도를 반영할 수 있고, 제2 가중치는 유저의 옆 좌석이 비어 있는 좌석에 대한 선호도를 반영할 수 있고, 제3 가중치는 유저의 좌석 가격에 대한 선호도를 반영할 수 있다.The first weight may reflect the user's preference for the aisle-side seat, the second weight may reflect the user's preference for the seat next to the empty seat, and the third weight may reflect the user's preference for the seat price. can reflect
단계 322b에서, 서버(200)는 좌석들 각각에 대하여, 제1 가중치, 제2 가중치 및 제3 가중치를 위치 비교 점수에 적용하여 가중치 적용 점수를 계산할 수 있다. 위치 비교 점수에 제1 가중치, 제2 가중치 및 제3 가중치가 적용되는 경우, 유저의 통로측 좌석에 대한 선호도, 옆 좌석이 비어 있는 좌석에 대한 선호도 및 좌석 가격에 대한 선호도가 가중치 적용 점수에 반영될 수 있다.In
단계 322c에서, 서버(200)는 좌석들의 가중치 적용 점수들 중 가장 큰 값을 평가 점수로 설정할 수 있다.In
도 8은 일부 실시예에 따른 위치 비교 점수를 계산하는 과정을 보다 구체적으로 설명하기 위한 도면이다.8 is a diagram for describing in more detail a process of calculating a location comparison score according to some embodiments.
도 8을 참조하면, 유저 선호도 데이터에 포함되는 지표들을 나타내는 표(810), 각 좌석의 위치 비교 점수가 계산되는 구체적인 과정을 나타내는 그래프(820) 및 각 좌석의 위치 비교 점수가 계산되는 구체적인 과정을 나타내는 수식(830)이 도시되어 있다.Referring to FIG. 8 , a table 810 indicating indicators included in the user preference data, a
표(810)를 참조하면, 유저 선호도 데이터는 UserP, UserS, UserC, UserX 및 UserY와 같이 0과 1 사이의 값을 갖는 수치들을 포함할 수 있다. UserP는 유저의 통로측 좌석에 대한 선호도를 나타내는 수치로서, 1에 가까울수록 통로측 좌석을 선호하는 것을 의미할 수 있고, UserS는 유저의 옆 좌석이 비어 있는 좌석에 대한 선호도를 나타내는 수치로서, 1에 가까울수록 옆 좌석이 비어 있는 좌석을 선호하는 것을 의미할 수 있고, UserC는 유저의 좌석 가격에 대한 선호도를 나타내는 수치로서, 1에 가까울수록 저가 좌석을 선호하는 것을 의미할 수 있다. UserX 및 UserY는 유저가 가로 및 세로 방향에 있어서 어떤 위치를 선호하는지를 수치적으로 나타낼 수 있다.Referring to the table 810 , the user preference data may include numerical values having a value between 0 and 1, such as UserP, UserS, UserC, UserX, and UserY. UserP is a number indicating the user's preference for an aisle seat, and as it is closer to 1, it may mean that the user prefers an aisle seat, and UserS is a number indicating the user's preference for an empty seat next to the user. The closer to , it may mean that the seat next to the empty seat is preferred, and UserC is a number indicating the user's preference for the seat price, and the closer to 1, it may mean that the lower-priced seat is preferred. UserX and UserY may numerically represent which position the user prefers in horizontal and vertical directions.
그래프(820) 및 수식(830)을 참조하면, 각 좌석의 가로 방향의 위치(Cx) 및 유저의 가로 방향의 선호 위치(UserX)의 비교 결과 및 각 좌석의 세로 방향의 위치(Cy) 및 유저의 세로 방향의 선호 위치(UserY)의 비교 결과에 기초하여 위치 비교 점수가 계산되는 과정이 예시되어 있다.Referring to the
그래프(820)의 계산식을 참조하면, 가로 방향의 위치(Cx) 및 세로 방향의 위치(Cy)는 상영관 전체에서 각 좌석의 상대적인 위치를 수치적으로 나타낼 수 있다. 또한, 수식(830)을 참조하면, 가로 방향의 위치(Cx) 및 유저의 가로 방향의 선호 위치(UserX)를 수치적으로 비교하고, 또한 세로 방향의 위치(Cy) 및 유저의 세로 방향의 선호 위치(UserY)를 수치적으로 비교하여, 각 좌석의 위치 비교 점수(score)가 계산될 수 있다.Referring to the calculation formula of the
도 9는 일부 실시예에 따른 가중치 적용 점수를 계산하는 과정을 보다 구체적으로 설명하기 위한 도면이다.9 is a diagram for describing in more detail a process of calculating a weight application score according to some embodiments.
도 9를 참조하면, 통로측 좌석에 관한 선호도를 반영하는 제1 가중치를 설명하기 위한 열(910), 옆 좌석이 비어 있는 좌석에 관한 선호도를 반영하는 제2 가중치를 설명하기 위한 열(920) 및 좌석 가격에 관한 선호도를 반영하는 제3 가중치를 설명하기 위한 열(930)이 도시되어 있다. 즉, 각 좌석의 위치 비교 점수에 제1 가중치, 제2 가중치 및 제3 가중치가 반영되어 가중치 적용 점수가 계산될 수 있다.Referring to FIG. 9 , a
열(910)을 참조하면, 후보 상영관의 좌석들 각각에 대하여, 해당 좌석이 통로측 좌석인 경우 해당 좌석의 위치 비교 점수(score)에 (1 + UserP)가 곱해질 수 있다. 다만, 위치 비교 점수(score)가 음수인 경우, 선호도가 반영되면 음수의 절대값이 줄어드는 것이 바람직하므로, 위치 비교 점수(score)에 (1 - UserP)가 곱해질 수 있다.Referring to a
열(920)을 참조하면, 후보 상영관의 좌석들 각각에 대하여, 해당 좌석이 옆 좌석이 비어 있는 좌석인 경우 해당 좌석의 위치 비교 점수(score)에 추가적인 인수가 곱해질 수 있다. 한편, 열(920)의 경우 양쪽이 모두 비어 있는 경우 아무 조치도 취하지 않고, 한쪽만이 비어 있지 않은 경우 부호에 따라 (1 + UserS) 또는 (1 - UserS)가 곱해져 위치 비교 점수(score)가 감소되고, 양쪽이 모두 비어 있지 않은 경우 (1 + UserS)2 또는 (1 - UserS)2가 곱해져 위치 비교 점수(score)가 더욱 크게 감소될 수 있다. 즉, 열(920)의 경우 옆 좌석이 비어 있지 않은 경우 감점이 적용될 수 있다.Referring to
열(930)을 참조하면, 후보 상영관의 좌석들 각각에 대하여, 해당 좌석의 예매 가격에 따라 해당 좌석의 위치 비교 점수(score)에 {1 - (예매가격/평균가격 - 1) x UserC}가 곱해질 수 있다. 따라서, 예매가격이 평균가격보다 높은 경우 위치 비교 점수(score)가 감소할 수 있고, 예매가격이 평균가격보다 낮은 경우 위치 비교 점수(score)가 증가할 수 있다.Referring to
도 10은 일부 실시예에 따른 가중치를 위치 비교 점수에 적용하여 가중치 적용 점수를 계산하는 세부 단계들을 나타내는 흐름도이다.10 is a flowchart illustrating detailed steps of calculating a weighted score by applying a weight to a location comparison score, according to some embodiments.
도 10을 참조하면, 가로 방향의 위치(Cx), 세로 방향의 위치(Cy) 및 유저 선호도 데이터(UserX, UserY, UserP, UserS, UserC)에 기초하여 후보 상영관들 각각에 대한 평가 점수를 계산하는 세부 단계들이 도시되어 있다. 단계 1010 내지 단계 1060은 도 3의 단계 320을 구체화하는 것일 수 있다. 즉, 단계 1010 내지 단계 1060을 통해 계산되는 평가 점수에 기초하여 단계 330이 수행될 수 있다.Referring to FIG. 10, based on the horizontal position (Cx), the vertical position (Cy), and user preference data (UserX, UserY, UserP, UserS, UserC), the evaluation score for each of the candidate theaters is calculated. Detailed steps are shown.
단계 1010에서, 서버(200)는 좌석 데이터에 기초하여 각 좌석의 가로 방향 위치(Cx) 및 세로 방향 위치(Cy)를 계산할 수 있다.In
단계 1020에서, 서버(200)는 가로 방향 위치(Cx) 및 가로 방향의 선호 위치(UserX)의 비교 결과, 및 세로 방향 위치(Cy) 및 세로 방향의 선호 위치(UserY)의 비교 결과에 기초하여 위치 비교 점수(score)를 도출할 수 있다.In
단계 1030 내지 단계 1033에서, 서버(200)는 각 좌석이 옆 좌석이 비어 있는 좌석인지 여부에 기초하여 위치 비교 점수(score)에 제2 가중치를 적용할 수 있다.In
단계 1040 내지 단계 1041에서, 서버(200)는 각 좌석이 통로측 좌석인지 여부에 기초하여 위치 비교 점수(score)에 제1 가중치를 적용할 수 있다.In
단계 1050 내지 1051에서, 서버(200)는 각 좌석의 좌석 가격에 기초하여 위치 비교 점수(score)에 제3 가중치를 적용할 수 있다.In
단계 1060에서, 서버(200)는 후보 상영관의 좌석들 전체에 대하여 가중치 적용 점수가 도출되었는지 여부를 판단하여, 전체의 가중치 적용 점수가 도출될 때까지 단계 1010 내지 단계 1050을 반복할 수 있다.In
도 11은 일부 실시예에 따른 조정 점수를 계산하는 단계를 보다 구체화하는 단계들을 나타내는 흐름도이다.11 is a flowchart illustrating steps that further refine the step of calculating an adjustment score in accordance with some embodiments.
도 11을 참조하면, 도 3의 단계 330으로서, 관심 상영관 위치, 관심 상영관 시작 시간 및 유저의 관람 내역에 기초하여 평가 점수를 조정함으로써 후보 상영관들 각각에 대한 조정 점수를 계산하는 단계는 단계 1110 내지 단계 1130을 포함할 수 있다. 즉, 도 3의 단계 330는 단계 1110 내지 단계 1130과 같이 구체화될 수 있다.Referring to FIG. 11 , in
단계 1110에서, 서버(200)는 후보 상영관들 각각의 후보 상영관 위치 및 관심 상영관 위치의 차이에 비례하여 평가 점수에 감점을 적용할 수 있다.In
단계 1120에서, 서버(200)는 후보 상영관들 각각의 후보 상영관 시작 시간 및 관심 상영관 시작 시간의 차이에 비례하여 평가 점수에 감점을 적용할 수 있다.In
단계 1130에서, 서버(200)는 관람 내역으로부터 도출되는 후보 상영관들 각각에 대한 유저의 관람 빈도에 비례하여 평가 점수에 상점을 적용할 수 있다.In
서버(200)는 평가 점수에 감점 및 상점을 적용함으로써, 후보 상영관의 각 좌석에 대한 좌석 데이터 및 유저의 유저 선호도 데이터 외에도, 후보 상영관의 위치, 영화 시작 시간 및 유저의 관람 내역과 같은 외부적인 요인을 평가 점수에 반영할 수 있다. 단계 1110 내지 단계 1130의 수행 과정은 다음의 도 12를 통해 보다 상세하게 설명될 수 있다.The
도 12는 일부 실시예에 따른 조정 점수를 계산하는 과정을 설명하기 위한 도면이다.12 is a diagram for describing a process of calculating an adjustment score according to some exemplary embodiments.
도 12를 참조하면, 평가 점수를 조정함으로써 후보 상영관들 각각에 대한 조정 점수를 계산하기 위하여, 시간 관련 감점, 위치 관련 감점 및 관람 빈도 관련 상점이 적용되는 과정을 설명하기 위한 표(1200)가 도시되어 있다.Referring to FIG. 12 , a table 1200 is shown for explaining a process in which time-related deductions, location-related deductions, and viewing frequency related shops are applied in order to calculate an adjustment score for each of the candidate theaters by adjusting the evaluation score. has been
표(1200)의 시간 관련 감점에 관하여, 예매하고자 하는 상영관(관심 상영관) 및 추천된 상영관(후보 상영관)의 영화 시작 시간의 차이가 클수록 평가 점수에 더 큰 감점이 적용될 수 있다. 예를 들면, 영화 시작 시간에 30분의 차이가 있는 경우 평가 점수에 50점의 감점이 적용될 수 있다.Regarding the time-related deductions in the table 1200 , the greater the difference between the movie start times of the theater (interested theater) and the recommended theater (candidate theater) to reserve, the greater the deduction may be applied to the evaluation score. For example, if there is a 30-minute difference in the movie start time, a 50 point deduction may be applied to the evaluation score.
표(1200)의 위치 관련 감점에 관하여, 예매하고자 하는 상영관(관심 상영관) 및 추천된 상영관(후보 상영관)의 위치 차이가 클수록 평가 점수에 더 큰 감점이 적용될 수 있다. 예를 들면, 상영관 위치에 5 km의 차이가 있는 경우 평가 점수에 50점의 감점이 적용될 수 있다.With respect to the location-related deductions in the table 1200 , the greater the difference between the locations of the theater (interesting theater) and the recommended theater (candidate theater) for reservation, the greater the deduction may be applied to the evaluation score. For example, if there is a 5 km difference in the location of the theater, a 50 point deduction may be applied to the evaluation score.
표(1200)의 관람 빈도 관련 상점에 관하여, 유저가 특정 후보 상영관에 방문하는 방문 빈도가 높을수록 평가 점수에 더 큰 상점이 적용될 수 있다. 예를 들면, 유저가 특정 후보 상영관에 최근 1년간 4회 방문했다면, 해당 후보 상영관의 평가 점수에 50점의 상점이 적용될 수 있다.With respect to the shops related to the viewing frequency of the table 1200 , the higher the visit frequency that the user visits to a specific candidate theater is, the larger the shops may be applied to the evaluation score. For example, if a user visits a
도 13은 일부 실시예에 따른 상영관 추천 서비스가 제공되는 화면들을 나타내는 도면이다.13 is a diagram illustrating screens on which a theater recommendation service is provided, according to some embodiments.
도 13을 참조하면, 유저가 유저의 단말기(100)를 통해 관심 상영관을 선택하는 경우의 화면(1310) 및 유저가 관심 상영관을 선택한 경우 서버(200)에 의해 추천 상영관 리스트(1322)가 제공되는 화면(1320)이 도시되어 있다.Referring to FIG. 13 , a
유저가 화면(1310)에서 관심 상영관을 선택하였으나, 관심 좌석을 아직 선택하지 않은 경우, 화면(1320)의 추천 좌석(1321)에서와 같이, 서버(200)는 좌석 데이터 및 유저 선호도 데이터에 기초하여 관심 상영관의 좌석을 추천할 수 있다.When the user selects a theater of interest on the
유저가 화면(1310)에서 관심 상영관을 선택하였으며, 특정 좌석을 관심 좌석으로 선택한 경우, 서버(200)는 관심 상영관의 특정 좌석 외에 다른 좌석들을 추천할 수 있다. 이와 같은 추천 시에는 좌석 데이터 및 유저 선호도 데이터가 고려될 수 있다.When the user selects a theater of interest on the
즉, 서버(200)는 유저의 단말기(100)로부터 전송되는 관심 상영관의 관심 좌석에 대하여, 관심 상영관의 좌석 데이터 및 유저 선호도 데이터에 기초하여 관심 좌석 외에 관심 상영관의 다른 좌석들에 대한 추천 데이터를 유저의 단말기(100)에 제공할 수 있다. 서버(200)에 의해 추천되는 다른 좌석들은 통로 좌석, 옆 좌석이 비어 있는 좌석 및 좌석 가격 등의 관점에서, 유저가 선택한 관심 좌석과 유사성을 가질 수 있다.That is, the
한편, 서버(200)는 유저의 관람 내역에 기초하여 유저의 단말기(100)에 영화 예매를 유도하는 푸시 알림을 제공할 수 있다. 유저가 푸시 알림에 반응하여 영화 예매를 시도하는 경우, 서버(200)는 유저의 단말기(100)에 화면(1320)과 같은 정보를 제공할 수 있다.Meanwhile, the
도 14는 일부 실시예에 따른 상영관 추천 서비스를 제공하는 시스템의 다른 구현 방식을 설명하기 위한 도면이다.14 is a diagram for explaining another implementation method of a system for providing a theater recommendation service according to some embodiments.
도 14를 참조하면, 도 1의 시스템(10)과는 상이한 시스템(20)으로서, 상영관 추천 서비스를 제공하는 시스템(20)이 도시되어 있다. 시스템(20)이 유저의 단말기(100) 및 서버(200)로 구성될 수 있음은 시스템(10)의 경우와 동일할 수 있다.Referring to FIG. 14 , as a
상영관 추천 서비스를 제공하는 방법을 구성하는 각 단계를 수행하는 주체가 시스템(10) 및 시스템(20)에서 일부 상이할 수 있으나, 각 단계를 수행하는 주체를 제외하고는, 시스템(20)에서 수행되는 상영관 추천 서비스를 제공하는 방법은, 시스템(10)에서 수행되는 상영관 추천 서비스를 제공하는 방법과 동일할 수 있다. 따라서, 시스템(10)에 관하여 도 1 내지 도 13을 통해 기술되는 내용은 도 14의 시스템(20)에 대해서도 동일하게 적용될 수 있다.Although the subject performing each step constituting the method of providing the theater recommendation service may be partially different from the
시스템(20)에서, 서버(200)는, 유저의 단말기(100)로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 작성하기 위한 데이터를 생성할 수 있다.In the
시스템(20)에서, 서버(200)는, 데이터를 유저의 단말기(100)에 제공할 수 있다.In the
시스템(20)에서, 유저의 단말기(100)는, 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 유저의 유저 선호도 데이터에 기초하여 후보 상영관들 각각에 대한 평가 점수를 계산할 수 있다.In the
시스템(20)에서, 유저의 단말기(100)는, 관심 상영관 위치, 관심 상영관 시작 시간 및 유저의 관람 내역에 기초하여 평가 점수를 조정함으로써 후보 상영관들 각각에 대한 조정 점수를 계산할 수 있다.In the
시스템(20)에서, 유저의 단말기(100)는, 후보 상영관들 각각에 대한 조정 점수를 기준으로 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성할 수 있다.In the
한편, 도 3 내지 도 14를 통해 전술한 상영관 추천 서비스를 제공하는 방법은 그 방법을 실행하는 명령어들을 포함하는 적어도 하나의 프로그램 또는 소프트웨어가 기록되는 컴퓨터로 판독 가능한 기록 매체에 기록될 수 있다.Meanwhile, the method of providing the theater recommendation service described above with reference to FIGS. 3 to 14 may be recorded in a computer-readable recording medium in which at least one program or software including instructions for executing the method is recorded.
컴퓨터로 판독 가능한 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령어의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드가 포함될 수 있다.Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and floppy disks. Magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like may be included. Examples of program instructions may include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
이상에서 본 개시의 실시예들이 상세하게 설명되었으나 본 개시에 따른 권리범위가 이에 한정되는 것은 아니고, 다음의 청구범위에 기재되어 있는 본 개시의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 개시에 따른 권리범위에 포함되는 것으로 해석되어야 한다.Although the embodiments of the present disclosure have been described in detail above, the scope of rights according to the present disclosure is not limited thereto, and various modifications and improvements by those skilled in the art using the basic concept of the present disclosure described in the following claims are also disclosed. It should be interpreted as being included in the scope of rights according to the
Claims (21)
명령어들을 저장하는 메모리; 및
상기 명령어들을 실행함으로써 상기 상영관 추천 서비스를 제공하는 프로세서를 포함하고,
상기 프로세서는,
유저의 단말기로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 생성하고,
상기 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 상기 유저의 유저 선호도 데이터에 기초하여 상기 후보 상영관들 각각에 대한 평가 점수를 계산하고,
상기 관심 상영관 위치, 상기 관심 상영관 시작 시간 및 상기 유저의 관람 내역에 기초하여 상기 평가 점수를 조정함으로써 상기 후보 상영관들 각각에 대한 조정 점수를 계산하고,
상기 후보 상영관들 각각에 대한 조정 점수를 기준으로 상기 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하여 상기 유저의 단말기에 제공하는, 서버.In the server providing a theater recommendation service,
a memory storing instructions; and
A processor for providing the theater recommendation service by executing the instructions;
The processor is
generating a list of candidate theaters based on the movie of interest, the location of the theater of interest, and the start time of the theater of interest transmitted from the user's terminal;
calculating an evaluation score for each of the candidate theaters based on the seat data of each of the candidate theaters included in the candidate theater list and user preference data of the user;
calculating an adjustment score for each of the candidate theaters by adjusting the evaluation score based on the location of the theater of interest, the start time of the theater of interest, and the viewing history of the user;
A server for generating a list of recommended theaters from at least some of the candidate theaters based on an adjustment score for each of the candidate theaters and providing the list to the user's terminal.
상기 좌석 데이터는,
상기 후보 상영관들 각각의 좌석들에 관한 데이터로서, 가로 방향 위치, 세로 방향 위치, 좌석 가로 길이, 좌석 세로 길이, 통로측 좌석 여부, 예매 가능 여부 및 예매 가격을 포함하고,
상기 유저 선호도 데이터는,
가로 방향의 선호 위치, 세로 방향의 선호 위치, 통로측 좌석에 대한 제1 선호도, 옆 좌석이 비어 있는 좌석에 대한 제2 선호도 및 좌석 가격에 대한 제3 선호도를 포함하는, 서버.The method of claim 1,
The seat data is
As data about the seats of each of the candidate theaters, it includes a horizontal position, a vertical position, a seat width, a seat length, whether an aisle seat, whether a reservation is possible, and a reservation price,
The user preference data is
a server comprising a preferred position in a lateral direction, a preferred position in a longitudinal direction, a first preference for an aisle seat, a second preference for a seat with an empty side seat, and a third preference for a seat price.
상기 프로세서는,
상기 후보 상영관들 각각에 포함되는 좌석들 각각에 대하여, 상기 가로 방향 위치 및 상기 가로 방향의 선호 위치의 비교 결과 및 상기 세로 방향 위치 및 상기 세로 방향의 선호 위치의 비교 결과에 기초하여 위치 비교 점수를 계산하고,
상기 좌석들의 위치 비교 점수들 중 가장 큰 값을 상기 평가 점수로 설정함으로써, 상기 평가 점수를 계산하는, 서버.3. The method of claim 2,
The processor is
For each of the seats included in each of the candidate theaters, a position comparison score is calculated based on a comparison result of the horizontal position and the preferred position in the horizontal direction and a comparison result of the vertical position and the preferred position in the vertical direction. calculate,
By setting the largest value among the position comparison scores of the seats as the evaluation score, the server calculates the evaluation score.
상기 프로세서는,
상기 좌석들 각각에 대하여, 상기 통로측 좌석 여부 및 상기 제1 선호도에 기초하는 제1 가중치, 상기 예매 가능 여부로부터 도출되는 옆 좌석이 비어 있는지 여부 및 상기 제2 선호도에 기초하는 제2 가중치 및 상기 예매 가격 및 상기 제3 선호도에 기초하는 제3 가중치를 계산하고,
상기 좌석들 각각에 대하여, 상기 제1 가중치, 상기 제2 가중치 및 상기 제3 가중치를 상기 위치 비교 점수에 적용하여 가중치 적용 점수를 계산하고,
상기 좌석들의 가중치 적용 점수들 중 가장 큰 값을 상기 평가 점수로 설정함으로써, 상기 평가 점수를 계산하는, 서버.4. The method of claim 3,
The processor is
For each of the seats, a first weight based on whether the seat on the aisle side and the first preference, whether the seat next to the seat is empty and the second preference derived from the availability of the reservation, and the second weight; calculating a third weight based on the advance price and the third preference;
For each of the seats, the weight application score is calculated by applying the first weight, the second weight, and the third weight to the location comparison score,
By setting the largest value among the weighted scores of the seats as the evaluation score, the server calculates the evaluation score.
상기 프로세서는,
상기 예매 가능 여부에 기초하여 상기 좌석들 중 둘 이상의 연속하는 좌석들의 세트들을 선별하고,
상기 세트들 각각에 대하여, 상기 둘 이상의 연속하는 좌석들의 위치 비교 점수들에 대한 평균을 계산하고,
상기 세트들의 평균들 중 가장 큰 값을 상기 평가 점수로 설정함으로써, 상기 평가 점수를 계산하는, 서버.4. The method of claim 3,
The processor is
selecting sets of two or more consecutive seats among the seats based on the availability of the reservation;
for each of the sets, calculating an average of the position comparison scores of the two or more consecutive seats;
calculating the evaluation score by setting the largest value of the averages of the sets as the evaluation score.
상기 프로세서는,
상기 후보 상영관들 각각의 후보 상영관 위치 및 상기 관심 상영관 위치의 차이에 비례하여 상기 평가 점수에 감점을 적용하고,
상기 후보 상영관들 각각의 후보 상영관 시작 시간 및 상기 관심 상영관 시작 시간의 차이에 비례하여 상기 평가 점수에 감점을 적용하고,
상기 관람 내역으로부터 도출되는 상기 후보 상영관들 각각에 대한 상기 유저의 관람 빈도에 비례하여 상기 평가 점수에 상점을 적용함으로써, 상기 조정 점수를 계산하는, 서버.The method of claim 1,
The processor is
applying a deduction to the evaluation score in proportion to a difference between a position of a candidate theater of each of the candidate theaters and a position of the theater of interest;
applying a deduction to the evaluation score in proportion to the difference between the candidate theater start time and the interested theater start time of each of the candidate theaters;
and calculating the adjustment score by applying a store to the evaluation score in proportion to the viewing frequency of the user for each of the candidate theaters derived from the viewing history.
상기 프로세서는,
상기 관심 상영관의 영화와 동일한 영화가 상영되고, 상기 관심 상영관 위치까지의 거리가 기준 거리 이하이고, 상기 관심 상영관 시작 시간으로부터 기준 시간 이내에 상기 동일한 영화가 시작되는 적어도 하나의 상영관을 선별함으로써, 상기 후보 상영관 리스트를 생성하는, 서버.The method of claim 1,
The processor is
By selecting at least one theater in which the same movie as the movie of the theater of interest is shown, the distance to the location of the theater of interest is less than or equal to a reference distance, and the same movie starts within a reference time from the start time of the theater of interest, the candidate A server that generates a list of theaters.
상기 프로세서는,
상기 좌석 데이터 및 상기 유저 선호도 데이터에 기초하여 상기 관심 상영관의 좌석을 추천하는, 서버.The method of claim 1,
The processor is
The server recommends a seat of the theater of interest based on the seat data and the user preference data.
상기 프로세서는,
상기 유저의 단말기로부터 전송되는 상기 관심 상영관의 관심 좌석에 대하여, 상기 관심 상영관의 좌석 데이터 및 상기 유저 선호도 데이터에 기초하여 상기 관심 좌석 외에 상기 관심 상영관의 다른 좌석들에 대한 추천 데이터를 상기 유저의 단말기에 제공하는, 서버.The method of claim 1,
The processor is
With respect to the seat of interest of the theater of interest transmitted from the user's terminal, based on the seat data of the theater of interest and the user preference data, recommendation data for other seats of the theater of interest other than the seat of interest is provided to the user's terminal provided to, the server.
상기 프로세서는,
상기 관람 내역에 기초하여 상기 유저의 단말기에 영화 예매를 유도하는 푸시 알림을 제공하는, 서버.The method of claim 1,
The processor is
A server that provides a push notification for inducing a movie reservation to the user's terminal based on the viewing details.
유저의 단말기로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 생성하는 단계;
상기 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 상기 유저의 유저 선호도 데이터에 기초하여 상기 후보 상영관들 각각에 대한 평가 점수를 계산하는 단계;
상기 관심 상영관 위치, 상기 관심 상영관 시작 시간 및 상기 유저의 관람 내역에 기초하여 상기 평가 점수를 조정함으로써 상기 후보 상영관들 각각에 대한 조정 점수를 계산하는 단계; 및
상기 후보 상영관들 각각에 대한 조정 점수를 기준으로 상기 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하여 상기 유저의 단말기에 제공하는 단계를 포함하는, 방법.A method of providing a theater recommendation service by executing instructions, the method comprising:
generating a candidate theater list based on a movie of interest, a location of the theater of interest, and a start time of the theater of interest transmitted from the user's terminal;
calculating an evaluation score for each of the candidate theaters based on seat data of each of the candidate theaters included in the candidate theater list and user preference data of the user;
calculating an adjustment score for each of the candidate theaters by adjusting the evaluation score based on the location of the theater of interest, the start time of the theater of interest, and the viewing history of the user; and
and generating a list of recommended theaters from at least some of the candidate theaters based on the adjustment score for each of the candidate theaters, and providing the list to the user's terminal.
상기 좌석 데이터는,
상기 후보 상영관들 각각의 좌석들에 관한 데이터로서, 가로 방향 위치, 세로 방향 위치, 좌석 가로 길이, 좌석 세로 길이, 통로측 좌석 여부, 예매 가능 여부 및 예매 가격을 포함하고,
상기 유저 선호도 데이터는,
가로 방향의 선호 위치, 세로 방향의 선호 위치, 통로측 좌석에 대한 제1 선호도, 옆 좌석이 비어 있는 좌석에 대한 제2 선호도 및 좌석 가격에 대한 제3 선호도를 포함하는, 방법.12. The method of claim 11,
The seat data is
As data about the seats of each of the candidate theaters, it includes a horizontal position, a vertical position, a seat width, a seat length, whether an aisle seat, whether a reservation is possible, and a reservation price,
The user preference data is
A method comprising: a preferred position in a lateral direction; a preferred position in a longitudinal direction; a first preference for an aisle seat; a second preference for a seat with an empty side seat; and a third preference for a seat price.
상기 평가 점수를 계산하는 단계는,
상기 후보 상영관들 각각에 포함되는 좌석들 각각에 대하여, 상기 가로 방향 위치 및 상기 가로 방향의 선호 위치의 비교 결과 및 상기 세로 방향 위치 및 상기 세로 방향의 선호 위치의 비교 결과에 기초하여 위치 비교 점수를 계산하는 단계; 및
상기 좌석들의 위치 비교 점수들 중 가장 큰 값을 상기 평가 점수로 설정하는 단계를 포함하는, 방법.13. The method of claim 12,
The step of calculating the evaluation score,
For each of the seats included in each of the candidate theaters, a position comparison score is calculated based on a comparison result of the horizontal position and the preferred position in the horizontal direction and a comparison result of the vertical position and the preferred position in the vertical direction. calculating; and
and setting the largest value among the position comparison scores of the seats as the evaluation score.
상기 평가 점수를 계산하는 단계는,
상기 좌석들 각각에 대하여, 상기 통로측 좌석 여부 및 상기 제1 선호도에 기초하는 제1 가중치, 상기 예매 가능 여부로부터 도출되는 옆 좌석이 비어 있는지 여부 및 상기 제2 선호도에 기초하는 제2 가중치 및 상기 예매 가격 및 상기 제3 선호도에 기초하는 제3 가중치를 계산하는 단계;
상기 좌석들 각각에 대하여, 상기 제1 가중치, 상기 제2 가중치 및 상기 제3 가중치를 상기 위치 비교 점수에 적용하여 가중치 적용 점수를 계산하는 단계; 및
상기 좌석들의 가중치 적용 점수들 중 가장 큰 값을 상기 평가 점수로 설정하는 단계를 포함하는, 방법.14. The method of claim 13,
The step of calculating the evaluation score,
For each of the seats, a first weight based on whether the seat on the aisle side and the first preference, whether the seat next to the seat is empty and the second preference derived from the availability of the reservation, and the second weight; calculating a third weight based on the advance price and the third preference;
calculating a weighted score by applying the first weight, the second weight, and the third weight to the location comparison score for each of the seats; and
and setting a largest value among weighted scores of the seats as the evaluation score.
상기 평가 점수를 계산하는 단계는,
상기 예매 가능 여부에 기초하여 상기 좌석들 중 둘 이상의 연속하는 좌석들의 세트들을 선별하는 단계;
상기 세트들 각각에 대하여, 상기 둘 이상의 연속하는 좌석들의 위치 비교 점수들에 대한 평균을 계산하는 단계; 및
상기 세트들의 평균들 중 가장 큰 값을 상기 평가 점수로 설정하는 단계를 포함하는, 방법.14. The method of claim 13,
The step of calculating the evaluation score,
selecting sets of two or more consecutive seats among the seats based on the availability of the reservation;
for each of the sets, calculating an average of the position comparison scores of the two or more consecutive seats; and
and setting the highest value of the means of the sets as the evaluation score.
상기 조정 점수를 계산하는 단계는,
상기 후보 상영관들 각각의 후보 상영관 위치 및 상기 관심 상영관 위치의 차이에 비례하여 상기 평가 점수에 감점을 적용하는 단계;
상기 후보 상영관들 각각의 후보 상영관 시작 시간 및 상기 관심 상영관 시작 시간의 차이에 비례하여 상기 평가 점수에 감점을 적용하는 단계; 및
상기 관람 내역으로부터 도출되는 상기 후보 상영관들 각각에 대한 상기 유저의 관람 빈도에 비례하여 상기 평가 점수에 상점을 적용하는 단계를 포함하는, 방법.12. The method of claim 11,
Calculating the adjustment score comprises:
applying a deduction to the evaluation score in proportion to a difference between a position of a candidate theater of each of the candidate theaters and a position of the theater of interest;
applying a deduction to the evaluation score in proportion to a difference between the candidate theater start time and the interested theater start time of each of the candidate theaters; and
and applying a store to the evaluation score in proportion to the viewing frequency of the user for each of the candidate theaters derived from the viewing details.
상기 후보 상영관 리스트를 생성하는 단계는,
상기 관심 상영관의 영화와 동일한 영화가 상영되고, 상기 관심 상영관 위치까지의 거리가 기준 거리 이하이고, 상기 관심 상영관 시작 시간으로부터 기준 시간 이내에 상기 동일한 영화가 시작되는 적어도 하나의 상영관을 선별하는 단계를 포함하는, 방법.12. The method of claim 11,
The generating of the candidate theater list includes:
Selecting at least one theater where the same movie as the movie of the theater of interest is screened, the distance to the location of the theater of interest is less than or equal to a reference distance, and the same movie starts within a reference time from the start time of the theater of interest; How to.
상기 좌석 데이터 및 상기 유저 선호도 데이터에 기초하여 상기 관심 상영관의 좌석을 추천하는 단계를 더 포함하는, 방법.12. The method of claim 11,
and recommending a seat in the theater of interest based on the seat data and the user preference data.
상기 유저의 단말기로부터 전송되는 상기 관심 상영관의 관심 좌석에 대하여, 상기 관심 상영관의 좌석 데이터 및 상기 유저 선호도 데이터에 기초하여 상기 관심 좌석 외에 상기 관심 상영관의 다른 좌석들에 대한 추천 데이터를 상기 유저의 단말기에 제공하는 단계를 더 포함하는, 방법.12. The method of claim 11,
With respect to the seat of interest of the theater of interest transmitted from the user's terminal, based on the seat data of the theater of interest and the user preference data, recommendation data for other seats of the theater of interest other than the seat of interest is provided to the user's terminal The method further comprising the step of providing to.
상기 관람 내역에 기초하여 상기 유저의 단말기에 영화 예매를 유도하는 푸시 알림을 제공하는 단계를 더 포함하는, 방법.12. The method of claim 11,
The method further comprising the step of providing a push notification for inducing a movie reservation to the user's terminal based on the viewing details.
서버에서, 유저의 단말기로부터 전송되는 관심 상영관의 관심 영화, 관심 상영관 위치 및 관심 상영관 시작 시간에 기초하여 후보 상영관 리스트를 작성하기 위한 데이터를 생성하는 단계;
상기 서버에서, 상기 데이터를 상기 유저의 단말기에 제공하는 단계;
상기 유저의 단말기에서, 상기 후보 상영관 리스트에 포함되는 후보 상영관들 각각의 좌석 데이터 및 상기 유저의 유저 선호도 데이터에 기초하여 상기 후보 상영관들 각각에 대한 평가 점수를 계산하는 단계;
상기 유저의 단말기에서, 상기 관심 상영관 위치, 상기 관심 상영관 시작 시간 및 상기 유저의 관람 내역에 기초하여 상기 평가 점수를 조정함으로써 상기 후보 상영관들 각각에 대한 조정 점수를 계산하는 단계; 및
상기 유저의 단말기에서, 상기 후보 상영관들 각각에 대한 조정 점수를 기준으로 상기 후보 상영관들 중 적어도 일부로 추천 상영관 리스트를 생성하는 단계를 포함하는, 방법.A method of providing a theater recommendation service by executing instructions, the method comprising:
generating, in the server, data for creating a candidate theater list based on the movie of interest of the theater of interest, the location of the theater of interest, and the start time of the theater of interest transmitted from the user's terminal;
providing, in the server, the data to the terminal of the user;
calculating, at the user's terminal, an evaluation score for each of the candidate theaters based on seat data of each of the candidate theaters included in the candidate theater list and user preference data of the user;
calculating, in the user's terminal, an adjustment score for each of the candidate theaters by adjusting the evaluation score based on the location of the theater of interest, the start time of the theater of interest, and the viewing history of the user; and
generating, at the user's terminal, a list of recommended theaters from at least some of the candidate theaters based on the adjustment score for each of the candidate theaters.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190164941A KR102320312B1 (en) | 2019-12-11 | 2019-12-11 | Server and method for providing service to recommend movie theater |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190164941A KR102320312B1 (en) | 2019-12-11 | 2019-12-11 | Server and method for providing service to recommend movie theater |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210074027A true KR20210074027A (en) | 2021-06-21 |
KR102320312B1 KR102320312B1 (en) | 2021-11-02 |
Family
ID=76599957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190164941A KR102320312B1 (en) | 2019-12-11 | 2019-12-11 | Server and method for providing service to recommend movie theater |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102320312B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117557317A (en) * | 2023-12-14 | 2024-02-13 | 广州睿自游信息科技有限公司 | Scene recommendation method and system based on ticket buying record |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001357273A (en) * | 2000-06-12 | 2001-12-26 | Nec Corp | Method for presenting vacant seat retrieval condition and seat reservation system |
JP2018500682A (en) * | 2014-12-26 | 2018-01-11 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | Seat information providing method and device |
KR20190030194A (en) | 2018-12-31 | 2019-03-21 | 씨제이씨지브이 주식회사 | Method and server for providing movie and movie theater recommendation based on movie theater recommendations |
KR20190086082A (en) * | 2018-01-12 | 2019-07-22 | 네이버 주식회사 | Method and system for improving user experience in movie search |
KR20190091128A (en) | 2018-01-26 | 2019-08-05 | 씨제이씨지브이 주식회사 | Server and system of providing content reservation service |
-
2019
- 2019-12-11 KR KR1020190164941A patent/KR102320312B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001357273A (en) * | 2000-06-12 | 2001-12-26 | Nec Corp | Method for presenting vacant seat retrieval condition and seat reservation system |
JP2018500682A (en) * | 2014-12-26 | 2018-01-11 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | Seat information providing method and device |
KR20190086082A (en) * | 2018-01-12 | 2019-07-22 | 네이버 주식회사 | Method and system for improving user experience in movie search |
KR20190091128A (en) | 2018-01-26 | 2019-08-05 | 씨제이씨지브이 주식회사 | Server and system of providing content reservation service |
KR20190030194A (en) | 2018-12-31 | 2019-03-21 | 씨제이씨지브이 주식회사 | Method and server for providing movie and movie theater recommendation based on movie theater recommendations |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117557317A (en) * | 2023-12-14 | 2024-02-13 | 广州睿自游信息科技有限公司 | Scene recommendation method and system based on ticket buying record |
CN117557317B (en) * | 2023-12-14 | 2024-04-16 | 广州睿自游信息科技有限公司 | Scene recommendation method and system based on ticket buying record |
Also Published As
Publication number | Publication date |
---|---|
KR102320312B1 (en) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9811851B2 (en) | Automatic product groupings for merchandising | |
Martínez‐de‐Albéniz et al. | Competing for shelf space | |
Mahajan et al. | A conjoint model for measuring self-and cross-price/demand relationships | |
US20180232743A1 (en) | Online collectable commerce platform using online exhibition room and method for operating the same | |
KR20090127351A (en) | Automatically prescribing total budget for marketing and sales resources and allocation across spending categories | |
US11132710B2 (en) | System and method for personalized network content generation and redirection according to repeat behavior | |
US20170213288A1 (en) | Systems and methods for personalized investment allocation | |
KR102097045B1 (en) | Method and apparatus to recommend products reflecting characteristics of users | |
US8538967B1 (en) | Optimizing recategorization of financial transactions using collaborative filtering | |
CN114651268A (en) | System and method for managing incentives activities and automatically approving incentives requests | |
KR102320312B1 (en) | Server and method for providing service to recommend movie theater | |
Wang et al. | The dual impact of product line length on consumer choice | |
AU2016201737A1 (en) | Interactive user interface for information relating to perishable service resources | |
US10192174B2 (en) | Sports and concert event ticket pricing and visualization system | |
WO2015066242A1 (en) | Capacity and demand matching system | |
KR102487986B1 (en) | Method and apparatus for providing platform to recommend customized cosmetics | |
JP6875223B2 (en) | Exhibit transaction processing device, exhibit transaction processing method and exhibit transaction processing program | |
JP6693900B2 (en) | Content providing device, content providing method, and content providing program | |
KR102458245B1 (en) | Apparatus and method for providing sales commodity management service | |
KR102661008B1 (en) | Server and method for operating automatic commission payment online product sales platform | |
JP7260708B1 (en) | Information processing device, information processing method and program | |
US20210192566A1 (en) | Method, apparatus, and computer program product for ascertaining a demand of promotions | |
Wang et al. | Dynamic offer creation for airline ancillaries using a Markov chain choice model | |
KR102535169B1 (en) | Method for dealing service evaluation contents and Apparatus thereof | |
JP6722160B2 (en) | Exhibit transaction processing device, exhibit transaction processing method, and exhibit transaction processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |