KR102068896B1 - Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor - Google Patents

Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor Download PDF

Info

Publication number
KR102068896B1
KR102068896B1 KR1020180077301A KR20180077301A KR102068896B1 KR 102068896 B1 KR102068896 B1 KR 102068896B1 KR 1020180077301 A KR1020180077301 A KR 1020180077301A KR 20180077301 A KR20180077301 A KR 20180077301A KR 102068896 B1 KR102068896 B1 KR 102068896B1
Authority
KR
South Korea
Prior art keywords
insurance
container
box
customer
space
Prior art date
Application number
KR1020180077301A
Other languages
Korean (ko)
Other versions
KR20200004188A (en
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 KR1020180077301A priority Critical patent/KR102068896B1/en
Publication of KR20200004188A publication Critical patent/KR20200004188A/en
Application granted granted Critical
Publication of KR102068896B1 publication Critical patent/KR102068896B1/en

Links

Images

Classifications

    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/08Insurance

Abstract

본 발명은 고객 맞춤형 보험 추천 방법을 제안한다. 상기 방법은 복수 개의 보험 상품 각각에 대응되는 객체(object)를 복수 개의 가상의 상자(bin) 단위로 분할하는 단계; 고객의 개인정보 및 상기 고객의 월 단위 납부 가능한 금액을 기초로 가상의 컨테이너(container)를 생성하는 단계; 상기 컨테이너의 용적(volume) 대비 상기 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록, 상기 컨테이너에 상기 상자를 하나 이상 적재하는 단계; 상기 컨테이너에 적재된 하나 이상의 상자를 상기 보험 상품의 종류별로 분류하는 단계; 및 상기 분류된 상자에 대응되는 보험 상품을 상기 고객에게 추천하는 단계를 포함할 수 있다. 이를 통하여, 본 발명은 모든 보험사의 모든 보험 상품을 모두 대비하지 않고도, 고객에게 최적의 보험 상품 추천할 수 있다. The present invention proposes a customized insurance recommendation method. The method includes dividing an object corresponding to each of the plurality of insurance products into a plurality of virtual bins; Creating a virtual container based on the customer's personal information and the monthly payment amount of the customer; Loading at least one box into the container such that a ratio of the total volume of the box loaded to the container to the volume of the container is maximum; Classifying one or more boxes loaded in the container according to the type of insurance product; And recommending an insurance product corresponding to the sorted box to the customer. Through this, the present invention can recommend the best insurance products to customers without having to prepare all insurance products of all insurance companies.

Description

고객 맞춤형 보험 추천 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램{Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor}Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor}

본 발명은 컴퓨팅 알고리즘(computing algorithm)에 관한 것이다. 보다 상세하게는, 3차원 상자 채우기 문제(3D bin packing problem)를 해결하기 위한 알고리즘을 활용한 고객 맞춤형 보험 추천 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램에 관한 것이다.The present invention relates to a computing algorithm. More specifically, the present invention relates to a customized insurance recommendation method using an algorithm for solving a 3D bin packing problem, and a computer program recorded on a recording medium to execute the same.

3차원 상자 채우기 문제(3D bin packing problem)는 3차원 직육면체의 컨테이너(container)에 3차원 직육면체 상자(bin)를 하나 이상 적재(loading)하여 컨테이너의 용적률(volume efficiency)을 최대화하기 위한 방법을 다룬 문제이다. 여기서, 용적률은 컨테이너의 용적에 대한 적재된 상자의 총 용적의 비율을 의미한다.The 3D bin packing problem deals with ways to maximize the volumetric efficiency of a container by loading one or more three-dimensional cube bins into a container of three-dimensional cubes. It is a problem. Here, the volume ratio means the ratio of the total volume of the loaded box to the volume of the container.

이와 같은, 3차원 상자 채우기 문제는 적재할 수 있는 컨테이너의 개수에 따라 두 가지로 분류될 수 있다. 단수 컨테이너 적재 문제(single container loading problem)는 하나의 컨테이너 용적이 모든 상자를 적재할 수 없는 경우, 불용 공간을 최소화하여 가급적 많은 상자를 적재하기 위한 방법을 다룬 문제이다. 그리고, 복수 컨테이너 적재 문제(multiple container loading problem)는 주어진 모든 상자를 적재하기 위한 컨테이너의 수를 최소화하기 위한 방법을 다룬 문제이다.This three-dimensional box filling problem can be classified into two types according to the number of containers that can be loaded. The single container loading problem is a problem that deals with a method for loading as many boxes as possible with a minimum amount of unusable space when one container cannot load all boxes. In addition, the multiple container loading problem is a problem dealing with a method for minimizing the number of containers for loading all given boxes.

이와 다르게, 3차원 상자 채우기 문제는 적재하고자 하는 상자의 종류에 따라 두 가지로 분류될 수 있다. 단일 적재 문제(homogeneous loading problem)는 크기가 동일한 상자를 컨테이너에 효율적으로 적재하기 위한 방법을 다룬 문제이다. 그리고, 혼합 적재 문제(heterogeneous loading problem)는 크기가 다른 여러 상자를 컨테이너에 효율적으로 적재하기 위한 방법을 다룬 문제이다. 혼합 적재 문제는 상자의 종류는 많으나 각 종류의 상자의 개수는 적은 강혼합 적재 문제(strongly heterogeneous loading problem)와, 상자의 종류가 적으나 각 종류의 상자의 개수는 많은 약혼합 적재 문제(weekly heterogeneous loading problem)로 재분류될 수 있다.Alternatively, the three-dimensional box filling problem can be classified into two types according to the type of box to be loaded. The homogeneous loading problem deals with how to efficiently load boxes of the same size into a container. In addition, the heterogeneous loading problem is a problem dealing with a method for efficiently loading several boxes of different sizes into a container. The mixed loading problem is a strongly heterogeneous loading problem with a large number of boxes but a small number of boxes of each kind, and a heterogeneous loading problem with a small number of boxes but a large number of boxes. may be reclassified as a loading problem.

한편, 보험(insurance)은 동종의 사고를 당할 위험이 있는 자들이 미리 공통된 재산을 형성하고, 사고가 발생하면 공통된 재산에서 급여를 제공하는 제도이다. 이와 같은, 보험 서비스를 제공하는 보험사들 및 각각의 보험사가 제공하는 보험 상품들은 그 수가 매우 많으며 종류 또한 매우 다양하다. 그리고, 고객에게 필요한 보험 계획을 설계하는 보험 설계사는 각각의 보험 상품별로 다르게 책정된 수수료를 보험사로부터 지급받는다. Insurance, on the other hand, is a system in which those at risk of accidents of the same kind form a common property in advance, and in the event of an accident, benefits are provided from the common property. As such, insurers providing insurance services and insurance products provided by each insurer are very large in number and variety. In addition, the insurance planner who designs the insurance plan required by the customer receives a fee set by the insurance company differently for each insurance product.

따라서, 그 수가 매우 많으며 종류 또한 매우 다양한 보험 상품들을 현실적으로 모두 알 수 없는 보험 설계사는 자신이 알고 있는 보험 상품들 중에서 보험사로부터 지급받을 수 있는 수수료가 큰 보험 상품을 중심으로 고객의 보험 계획을 설계한다. 다르게 설명하면, 종래의 보험 계획은 고객이 납부하는 보험료 대비 고객이 보장받을 수 있는 범위가 최대가 되도록 설계되지 아니하고, 보험 설계사가 보험사로부터 지급받을 수 있는 수수료가 최대가 되도록 설계되었다. Therefore, an insurance planner who has a large number and a great variety of insurance products cannot realistically know the insurance plan of the customer. . In other words, the conventional insurance plan is not designed to maximize the range that the customer can receive from the premium paid by the customer, but is designed to maximize the fee that the insurance agent can receive from the insurance company.

따라서, 고객이 납부하는 보험료 대비 고객에 보장받을 수 있는 범위가 최대가 되도록 보험 계획을 설계할 수 있는 솔루션이 요구되고 있다.Therefore, there is a demand for a solution that can design an insurance plan so that the maximum coverage that can be guaranteed by the customer compared to the premium paid by the customer.

대한민국 등록특허 10-1867241호, ‘보험정보 처리장치 및 방법’, (2018.06.12. 공고)Republic of Korea Patent Registration No. 10-1867241, 'Insurance Information Processing Device and Method', (August 12, 2018 notification)

본 명세서의 일 개시는 고객 맞춤형 보험 추천 방법을 제공하는 것을 그 목적으로 한다.One disclosure of the present specification is to provide a method for recommending a customized insurance.

본 발명의 다른 개시는 고객 맞춤형 보험 추천 방법을 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램을 제공하는 것을 그 목적으로 한다.It is another object of the present invention to provide a computer program recorded on a recording medium for executing a customized insurance recommendation method.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.Technical problems of the present invention are not limited to the aforementioned technical problems, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상술한 바와 같은 기술적 과제를 달성하기 위하여, 본 발명은 고객 맞춤형 보험 추천 방법을 제안한다. 상기 방법은 복수 개의 보험 상품 각각에 대응되는 객체(object)를 복수 개의 가상의 상자(bin) 단위로 분할하는 단계; 고객의 개인정보 및 상기 고객의 월 단위 납부 가능한 금액을 기초로 가상의 컨테이너(container)를 생성하는 단계; 상기 컨테이너의 용적(volume) 대비 상기 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록, 상기 컨테이너에 상기 상자를 하나 이상 적재하는 단계; 상기 컨테이너에 적재된 하나 이상의 상자를 상기 보험 상품의 종류별로 분류하는 단계; 및 상기 분류된 상자에 대응되는 보험 상품을 상기 고객에게 추천하는 단계를 포함할 수 있다. 여기서, 상기 상자는 상기 보험 상품에 관하여 기 설정된 기준 보장 단위당 단위 보험료에 대응되는 용적을 가지는 단위 구성일 수 있다.In order to achieve the above technical problem, the present invention proposes a customized insurance recommendation method. The method includes dividing an object corresponding to each of the plurality of insurance products into a plurality of virtual bins; Creating a virtual container based on the customer's personal information and the monthly payment amount of the customer; Loading at least one box into the container such that a ratio of the total volume of the box loaded to the container to the volume of the container is maximum; Classifying one or more boxes loaded in the container according to the type of insurance product; And recommending an insurance product corresponding to the sorted box to the customer. Here, the box may be a unit configuration having a volume corresponding to a unit insurance premium per preset guaranteed unit with respect to the insurance product.

상기 컨테이너를 생성하는 단계는 상기 고객의 개인정보를 기초로 산출된 상기 컨테이너의 2차원 너비 값과, 상기 고객의 월 단위 납부 가능한 금액에 대응되는 상기 컨테이너의 높이 값에 대응되는 용적을 가지는 컨테이너를 생성할 수 있다. 상기 컨테이너의 2차원 너비 값은 상기 고객의 나이, 성별 및 직업의 조합에 따라 할당된 위험도 값을 해시 테이블(hash table)에 키 값으로 입력하여 도출된 값일 수 있다.The generating of the container may include: a container having a volume corresponding to a 2-dimensional width value of the container calculated based on the personal information of the customer and a height value of the container corresponding to the monthly payable amount of the customer; Can be generated. The 2D width value of the container may be a value derived by inputting a risk value assigned according to a combination of age, gender, and occupation of the customer as a key value in a hash table.

상기 컨테이너에 상기 상자를 적재하는 단계는 상기 분할된 복수 개의 상자들의 리스트(list)를 기 설정된 순서(order)에 따라 정렬하는 단계; 상기 컨테이너 내부에 존재하는 공간들 중 하나의 공간을 상기 상자를 적재할 공간으로 선택하는 단계; 상기 정렬된 리스트로부터 하나의 상자를 선택하여 상기 리스트로부터 제거하고, 상기 선택된 상자를 상기 선택된 공간에 적재하는 단계; 및 상기 선택된 공간으로부터 상기 상자가 적재된 공간을 제외한 공간을 복수 개의 하위 공간으로 분할하는 단계를 포함할 수 있다. 여기서, 상기 분할된 복수 개의 하위 공간 각각은 상기 상자를 적재할 공간으로 선택하는 단계, 상기 선택된 공간에 적재하는 단계 및 상기 복수 개의 하위 공간으로 분할하는 단계가 재귀적(recursive)으로 수행될 수 있다.The loading of the boxes into the container may include arranging the divided list of the plurality of boxes according to a preset order; Selecting one of the spaces existing inside the container as a space for loading the box; Selecting one box from the sorted list to remove from the list, and loading the selected box into the selected space; And dividing a space excluding the space in which the box is loaded from the selected space into a plurality of sub-spaces. Herein, each of the divided plurality of sub-spaces may be recursively selected as a space to load the box, loading into the selected space, and dividing into a plurality of sub-spaces. .

상기 선택된 공간에 적재하는 단계는 상기 선택된 공간에 상기 선택된 상자를 적재할 수 없는 경우, 상기 선택된 공간과 인접한 면(proximate surface)을 가지며 상기 컨테이너 내부에 존재하는 제3의 공간과 상기 선택된 공간을 서로 병합(merge)한 후, 상기 병합된 공간에 상기 선택된 상자를 적재할 수 있다.In the loading of the selected space, if the selected box cannot be loaded in the selected space, a third space existing inside the container and having a proximate surface adjacent to the selected space may be selected. After merging, the selected box may be loaded in the merged space.

특히, 상기 정렬하는 단계는 상기 복수 개의 상자들의 조합으로 구성된 템플릿(template)들의 리스트를 상기 순서에 따라 정렬하고, 상기 공간에 적재하는 단계는 상기 템플릿들의 리스트로부터 하나의 템플릿을 선택하여 상기 템플릿들의 리스트로부터 제거하고, 상기 선택된 템플릿을 구성하고 있는 복수 개의 상자들을 상기 선택된 공간에 동시에 적재할 수 있다.In particular, the sorting may include arranging a list of templates consisting of a combination of the plurality of boxes in the order, and loading the space into the space by selecting one template from the list of templates and selecting the templates. The plurality of boxes constituting the selected template may be removed from the list at the same time.

상기 정렬하는 단계는 상기 상자에 대응되는 보험 상품의 브랜드 가치 순위가 작아지는 순서(descending order), 또는 상기 상자에 대응되는 보험 상품의 월 단위 보험료가 작아지는 순서에 따라 상기 리스트의 상자들을 정렬할 수 있다.The sorting may include sorting the boxes of the list according to a descending order of the brand value of insurance products corresponding to the boxes, or an order of decreasing monthly premiums of insurance products corresponding to the boxes. Can be.

상술한 바와 같은 기술적 과제를 달성하기 위하여, 본 발명은 매장 배치 방법을 실행시키기 위하여 기록매체에 기록된 컴퓨터 프로그램을 제안한다. 상기 프로그램은 메모리(memory); 상기 메모리에 상주(loading)된 명령어를 처리하는 프로세서(processor); 및 상기 프로세서의 제어에 따라 데이터를 송수신하는 송수신기(transceiver)를 포함하여 구성된 컴퓨팅 장치와 결합되어, 상기 프로세서가 복수 개의 보험 상품 각각에 대응되는 객체(object)를 복수 개의 가상의 상자(bin) 단위로 분할하는 단계, 상기 프로세서가 고객의 개인정보 및 상기 고객의 월 단위 납부 가능한 금액을 기초로 가상의 컨테이너(container)를 생성하는 단계, 상기 프로세서가 상기 컨테이너의 용적(volume) 대비 상기 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록, 상기 컨테이너에 상기 상자를 하나 이상 적재하는 단계, 상기 프로세서가 상기 컨테이너에 적재된 하나 이상의 상자를 상기 보험 상품의 종류별로 분류하는 단계, 및 상기 프로세서가 상기 송수신기를 제어하여 상기 분류된 상자에 대응되는 보험 상품을 상기 고객에게 추천하기 위한 웹페이지를 송신하는 단계를 실행시킬 수 있다.In order to achieve the above technical problem, the present invention proposes a computer program recorded on a recording medium in order to execute the store arrangement method. The program includes a memory; A processor processing an instruction loaded in the memory; And a transceiver configured to transmit and receive data under control of the processor, wherein the processor includes a plurality of virtual bins for objects corresponding to each of a plurality of insurance products. Dividing into; the processor generating a virtual container based on the customer's personal information and the monthly payable amount of the customer; the processor loading the container into the container relative to the volume of the container Loading the at least one box into the container so that the ratio of the total volume of the boxes is at a maximum, the processor sorting the at least one box loaded into the container by the type of insurance product, and the processor Controlling the transceiver to provide insurance products corresponding to the classified boxes to the customer. Web pages can be recommended to execute the step of transmitting.

기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and the drawings.

본 발명의 실시 예들에 따르면, 3차원 상자 채우기 문제를 해결하기 위한 알고리즘을 기초로 추천할 보험 상품을 결정함으로써, 모든 보험사의 모든 보험 상품을 모두 대비하지 않고도, 고객에게 최적의 보험 상품 추천할 수 있게 된다. 이를 통하여, 보험사 또는 보험 상품을 중심으로 보험 계획을 설계하지 않고, 고객의 정보 및 고객의 니즈(needs)를 중심으로 각각의 고객에게 최적화된 보험 계획을 설계할 수 있게 된다.According to embodiments of the present invention, by determining an insurance product to be recommended based on an algorithm for solving the 3D box filling problem, it is possible to recommend an optimal insurance product to a customer without preparing for all insurance products of all insurance companies. Will be. Through this, it is possible to design an insurance plan optimized for each customer based on the customer's information and the customer's needs (needs) without designing the insurance plan around the insurance company or the insurance product.

본 발명의 효과들은 이상에서 언급한 효과로 제한되지 아니하며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 본 발명이 속한 기술분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.

도 1은 본 발명의 일 실시예에 따른 보험 추천 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 보험 추천 서버의 논리적 구성도이다.
도 3은 본 발명의 일 실시예에 따른 보험 추천 서버의 하드웨어 구성도이다.
도 4는 본 발명의 일 실시예에 따른 사용자 장치의 입력 화면의 예시도이다.
도 5는 본 발명의 일 실시예에 따른 사용자 장치의 출력 화면의 예시도이다.
도 6은 본 발명의 일 실시예에 따른 상자의 개념을 설명하기 위한 예시도이다.
도 7은 본 발명의 일 실시예에 따른 컨테이너의 개념을 설명하기 위한 예시도이다.
도 8은 본 발명의 일 실시예에 따른 3차원 상자 채우기 문제 알고리즘의 예시도이다.
도 9는은 본 발명의 일 실시예에 따른 공간의 병합을 설명하기 위한 예시도이다.
도 10은 본 발명의 일 실시예에 따른 공간의 분할을 설명하기 위한 예시도이다.
도 11은 본 발명의 일 실시예에 따른 상자의 분류를 설명하기 위한 예시도이다.
도 12는 본 발명의 일 실시예에 따른 보험 추천 방법을 설명하기 위한 순서도이다.
도 13은 본 발명의 일 실시예에 따른 3차원 상자 채우기 문제를 해결하기 위한 알고리즘의 순서도이다.
1 is a block diagram of an insurance recommendation system according to an embodiment of the present invention.
2 is a logical diagram of an insurance recommendation server according to an embodiment of the present invention.
3 is a hardware configuration diagram of the insurance recommendation server according to an embodiment of the present invention.
4 is an exemplary view of an input screen of a user device according to an embodiment of the present invention.
5 is an exemplary view of an output screen of a user device according to an embodiment of the present invention.
6 is an exemplary view for explaining the concept of a box according to an embodiment of the present invention.
7 is an exemplary view for explaining the concept of a container according to an embodiment of the present invention.
8 is an exemplary diagram of a three-dimensional box filling problem algorithm according to an embodiment of the present invention.
9 is an exemplary view for explaining merging of spaces according to an embodiment of the present invention.
10 is an exemplary diagram for describing division of a space according to an embodiment of the present invention.
11 is an exemplary view for explaining the classification of boxes according to an embodiment of the present invention.
12 is a flowchart illustrating an insurance recommendation method according to an embodiment of the present invention.
13 is a flowchart of an algorithm for solving a 3D box filling problem according to an embodiment of the present invention.

본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It is to be noted that the technical terms used herein are merely used to describe particular embodiments and are not intended to limit the present invention. In addition, the technical terms used in the present specification should be interpreted as meanings generally understood by those skilled in the art to which the present invention belongs, unless specifically defined otherwise in the present specification, and are overly inclusive. It shall not be construed in the sense of or in the sense of being excessively reduced. In addition, when the technical terms used herein are incorrect technical terms that do not accurately express the spirit of the present invention, they should be replaced with technical terms that can be properly understood by those skilled in the art. In addition, the general terms used in the present invention should be interpreted as defined in the dictionary or according to the context before and after, and should not be interpreted in an excessively reduced sense.

또한, 본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "구성된다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.Also, the singular forms used herein include the plural forms unless the context clearly indicates otherwise. In the present application, terms such as “consisting of” or “having” should not be construed as necessarily including all of the various components, or the various steps described in the specification, and some of the components or some steps are included. It should be construed that it may not be, or may further include additional components or steps.

또한, 본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다. In addition, terms including ordinal numbers, such as first and second, as used herein may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.

어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is said to be "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but other components may be present in between. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다. 본 발명의 사상은 첨부된 도면 외에 모든 변경, 균등물 내지 대체물에 까지도 확장되는 것으로 해석되어야 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and the same or similar components will be given the same reference numerals regardless of the reference numerals and redundant description thereof will be omitted. In addition, in describing the present invention, when it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, it should be noted that the accompanying drawings are only for easily understanding the spirit of the present invention and should not be construed as limiting the spirit of the present invention by the accompanying drawings. The spirit of the invention should be construed as being extended to all changes, equivalents, and substitutes in addition to the accompanying drawings.

상술한 바와 같이, 보험 서비스를 제공하는 보험사들 및 각각의 보험사가 제공하는 보험 상품들은 그 수가 매우 많으며 종류 또한 매우 다양하다. 그리고, 고객에게 필요한 보험 계획을 설계하는 보험 설계사는 각각의 보험 상품별로 다르게 책정된 수수료를 보험사로부터 지급받는다. As described above, insurers providing insurance services and insurance products provided by each insurer are very large in number and variety. In addition, the insurance planner who designs the insurance plan required by the customer receives a fee set by the insurance company differently for each insurance product.

따라서, 그 수가 매우 많으며 종류 또한 매우 다양한 보험 상품들을 현실적으로 모두 알 수 없는 보험 설계사는 자신이 알고 있는 보험 상품들 중에서 보험사로부터 지급받을 수 있는 수수료가 큰 보험 상품을 중심으로 고객의 보험 계획을 설계한다. 다르게 설명하면, 종래의 보험 계획은 고객이 납부하는 보험료 대비 고객이 보장받을 수 있는 범위가 최대가 되도록 설계되지 아니하고, 보험 설계사가 보험사로부터 지급받을 수 있는 수수료가 최대가 되도록 설계되었다. Therefore, an insurance planner who has a large number and a great variety of insurance products cannot realistically know the insurance plan of the customer. . In other words, the conventional insurance plan is not designed to maximize the range that the customer can receive from the premium paid by the customer, but is designed to maximize the fee that the insurance agent can receive from the insurance company.

이와 같은 문제는 보험 서비스를 제공하는 보험사들의 수가 매우 많으며, 각각의 보험사가 제공하는 보험 상품의 종류가 매우 다양하다는 점으로부터 기인하고 있다. 특히, 동일한 보험사가 제공하는 보험 상품들이라 할지라도 보장받을 수 있는 범위 대비 납부하여야 할 보험료의 관계가 보험 상품별로 서로 상이하다. 예를 들어, 'SS 화재'라는 보험사가 제공하는 'AA 암보험'이라는 보험 상품은 3000만원의 보장을 받기 위하여 월 10만원의 보험료를 납부하여야 하나, 'BB 암보험'이라는 보험 상품은 3000만원의 보장을 받기 위하여 월 9만원5천원의 보험료를 납부하여야 하도록 구성될 수 있다.This problem is due to the large number of insurers that provide insurance services, and the variety of insurance products provided by each insurer. In particular, even if the insurance products provided by the same insurer, the relationship between the premiums to be paid compared to the coverage can be different for each insurance product. For example, an insurance company called 'AA Cancer Insurance' provided by an insurance company called 'SS Fire' should pay a premium of 100,000 won per month to be guaranteed 30 million won, while an insurance product called 'BB Cancer Insurance' is 30 million won. It may be configured to pay a premium of 90,000 won to 5,000 won per month in order to receive the guarantee.

또한, 동일한 보험사가 제공하는 동일한 보험 상품이라 할지라도 납부할 보험료에 따른 보장받을 수 있는 범위의 관계가 직선적(linearly)이지 않다. 예를 들어, 'AB 손해 보험'이라는 보험사가 제공하는 'CC 암보험'이라는 보험 상품은 월 10만원의 보험료를 납부하면 3000만원을 보장받을 수 있으나, 월 6만원의 보험료를 납부하면 1500만원을 보장받을 수 있도록 구성될 있다.In addition, even if the same insurance product provided by the same insurer, the relationship of the coverage range according to the premium to be paid is not linearly. For example, an insurance company called 'CC Cancer Insurance' provided by an insurance company called 'AB Insurance' can receive 30 million won if you pay a premium of 100,000 won a month, but 15 million won if you pay a premium of 60,000 won a month. It can be configured to be guaranteed.

따라서, 고객에게 필요한 최적의 맞춤형 보험 상품을 추천하기 위해서는 기본적으로 모든 보험사의 모든 보험 상품을 모두 대비하여야 하며, 그에 따라 많은 시간과 비용이 요구된다.Therefore, in order to recommend the optimal customized insurance products required by the customer, all insurance companies should basically prepare for all insurance products, and thus requires a lot of time and money.

이와 같은 어려움을 해결하기 위하여, 본 발명은 3차원 상자 채우기 문제(3D bin packing problem)를 해결하기 위한 알고리즘을 변형 적용하여, 고객에게 필요한 최적의 맞춤형 보험 상품을 추천하는 방법을 제안하고자 한다.In order to solve such a difficulty, the present invention proposes a method of recommending an optimal customized insurance product required by a customer by modifying and applying an algorithm for solving a 3D bin packing problem.

본 발명은 3차원 상자 채우기 문제를 해결하기 위한 알고리즘을 기초로 추천할 보험 상품을 결정함으로써, 모든 보험사의 모든 보험 상품을 모두 대비하지 않고도, 고객에게 최적의 보험 상품 추천할 수 있게 된다. 이를 통하여, 보험사 또는 보험 상품을 중심으로 보험 계획을 설계하지 않고, 고객의 정보 및 고객의 니즈(needs)를 중심으로 각각의 고객에게 최적화된 보험 계획을 설계할 수 있게 된다.The present invention determines an insurance product to be recommended based on an algorithm for solving the 3D box filling problem, so that it is possible to recommend an optimal insurance product to a customer without preparing for all insurance products of all insurance companies. Through this, it is possible to design an insurance plan optimized for each customer based on the customer's information and the customer's needs (needs) without designing the insurance plan around the insurance company or the insurance product.

이하, 첨부된 도면을 참조하여 상술한 바와 같은 본 발명의 특징을 구현하기 위한 구성들에 대하여 보다 구체적으로 설명한다.Hereinafter, with reference to the accompanying drawings will be described in more detail with respect to the configuration for implementing the features of the present invention as described above.

도 1은 본 발명의 일 1 is one of the present invention 실시예에Example 따른 보험 추천 시스템의 구성도이다. The insurance recommendation system according to the configuration.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 보험 추천 시스템은 하나 이상의 사용자 장치(100a, 100b, …, 100n; 100), 보험 추천 서버(200) 및 보험사 서버(300)를 포함하여 구성될 수 있다. 이와 같은, 보험 추천 시스템의 구성 요소들은 기능적으로 구분되는 요소들을 나타낸 것에 불과하므로, 어느 하나 이상의 구성 요소가 실제 물리적 환경에서는 서로 통합되어 구현될 수 있다.As shown in FIG. 1, an insurance recommendation system according to an embodiment of the present invention includes one or more user devices 100a, 100b,..., 100n; 100, an insurance recommendation server 200, and an insurance company server 300. Can be configured. As such, the components of the insurance recommendation system merely represent functionally distinct elements, and any one or more components may be integrated with each other in an actual physical environment.

각각의 구성 요소에 대해서 설명하면, 사용자 장치(100)는 보험에 가입하고자 하는 고객, 또는 고객과 보험사를 연결시켜주는 보험 설계사에 의해 사용될 수 있는 장치이다.Referring to each component, the user device 100 is a device that can be used by a customer who wants to purchase insurance or an insurance planner who connects the customer and the insurance company.

우선, 사용자 장치(100)는 보험에 가입하고자 하는 고객에게 보험 상품 추천 정보를 제공할 수 있다. 구체적으로, 사용자 장치(100)는 사용자(즉, 고객)의 입력에 따라, 보험 추천 서버(200)로부터 보험 추천 초기 웹페이지를 수신할 수 있다. 사용자 장치(100)는 수신된 보험 추천 초기 웹페이지를 출력하고, 사용자로부터 개인정보 및 월 단위 납부 가능한 금액을 입력 받을 수 있다. 여기서, 개인정보에는 사용자의 나이, 성별 및 직업이 포함될 수 있으나, 이에 한정되는 것은 아니다. 그리고, 사용자 장치(100)는 사용자로부터 입력 받은 개인정보 및 월 단위 납부 가능한 금액을 보험 추천 서버(200)에 전송하여, 보험 상품의 추천을 요청할 수 있다.First, the user device 100 may provide insurance product recommendation information to a customer who wants to purchase insurance. In detail, the user device 100 may receive an insurance recommendation initial webpage from the insurance recommendation server 200 according to an input of a user (ie, a customer). The user device 100 may output the received insurance recommendation initial web page and receive input of personal information and monthly payment amount from the user. Here, the personal information may include a user's age, gender, and occupation, but is not limited thereto. The user device 100 may request the recommendation of the insurance product by transmitting the personal information input from the user and the monthly payable amount to the insurance recommendation server 200.

사용자 장치(100)는 보험 추천 서버(200)로부터 보험 추천 결과 웹페이지를 수신할 수 있다. 사용자 장치(100)는 보험 추천 결과 웹페이지를 출력할 수 있다. 사용자 장치(100)는 추천된 보험 상품의 가입 요청이 사용자로부터 입력되면, 추천된 보험 상품의 가입 요청을 보험 추천 서버(200)에 전송할 수 있다.The user device 100 may receive an insurance recommendation result web page from the insurance recommendation server 200. The user device 100 may output the insurance recommendation result web page. If the user device 100 receives a request for joining the recommended insurance product from the user, the user device 100 may transmit a request for joining the recommended insurance product to the insurance recommendation server 200.

그리고, 사용자 장치(100)는 보험 설계사에게 보험에 가입하고자 하는 고객의 정보를 제공할 수 있다. 구체적으로, 사용자 장치(100)는 보험 추천 서버(200)로부터 고객의 개인정보 및 추천 보험 상품에 관한 정보를 수신할 수 있다. 사용자 장치(100)는 고객의 개인정보 및 추천 보험 상품에 관한 정보를 출력하여, 보험 설계사에 의한 고객의 보험 가입을 유도할 수 있다.In addition, the user device 100 may provide the insurance agent with information of a customer who wants to purchase insurance. In detail, the user device 100 may receive the personal information of the customer and the information about the recommended insurance product from the insurance recommendation server 200. The user device 100 may output the personal information of the customer and the information about the recommended insurance product to induce the insurance of the customer by the insurance agent.

이와 같은, 사용자 장치(100)는 보험 추천 서버(200)와 데이터를 송수신할 수 있으며, 수신된 데이터를 기초로 연산을 수행할 수 있는 컴퓨팅 장치라면 어떠한 장치도 허용될 수 있다. As such, the user device 100 may transmit / receive data with the insurance recommendation server 200, and any device may be accepted as long as it is a computing device capable of performing an operation based on the received data.

바람직하게, 사용자 장치(100)는 이동식 컴퓨팅 장치 또는 고정식 컴퓨팅 장치 중 어느 하나가 될 수 있다. 여기서, 이동식 컴퓨팅 장치에는 스마트폰(smart phone, 100a), 랩탑(laptaop), 태블릿(tablet, 100n), 패블릿(phablet), 휴대용 멀티미디어 재생장치(Portable Multimedia Player, PMP), 개인용 휴대 단말기(Personal Digital Assistants, PDA) 또는 전자책 단말기(E-book reader)가 포함될 수 있으나, 이에 한정되는 것은 아니다. 그리고, 고정식 컴퓨팅 장치에는 데스크탑(desktop, 100b), 워크스테이션(workstation) 또는 서버(server)가 포함될 수 있으나, 이에 한정되는 것도 아니다. Preferably, the user device 100 can be either a mobile computing device or a fixed computing device. Here, the mobile computing device includes a smart phone (100a), a laptop (laptaop), a tablet (tablet, 100n), a phablet, a portable multimedia player (PMP), a personal portable terminal (Personal) Digital assistants (PDAs), or e-book readers, but are not limited thereto. In addition, the stationary computing device may include a desktop 100b, a workstation, or a server, but is not limited thereto.

또한, 사용자 장치(100)가 스마트 팔찌(smart band), 스마트 시계(smart watch), 스마트 반지(smart ring) 또는 스마트 안경(smart glasses) 등과 같은 웨어러블 장치 중 어느 하나로도 구현될 수 있음은 본 발명이 속한 기술분야에서 자명할 것이다.In addition, the user device 100 may be implemented as any one of a wearable device, such as a smart wristband (smart band), smart watch (smart watch), smart ring (smart ring) or smart glasses (smart glasses, etc.) It will be obvious in this technical field.

다음으로, 보험 추천 서버(200)는 고객의 정보를 기초로 보험 상품을 추천하고, 추천된 보험 상품의 가입을 유도할 수 있는 장치이다. 간략하게, 보험 추천 서버(200)는 보험사 서버(300)로부터 보험 상품의 정보를 수집할 수 있다. 보험 추천 서버(200)는 보험에 가입하고자 하는 고객이 사용하는 사용자 장치(100)로부터 수신된 정보를 기초로, 추천할 보험 상품을 결정하여 제공할 수 있다. 보험 추천 서버(200)는 보험에 가입하고자 하는 고객이 사용하는 사용자 장치(100)로부터 추천된 보험 상품의 가입 요청이 수신되면, 보험 설계사가 사용하는 사용자 장치(100)에 고객의 보험 가입을 요청할 수 있다.Next, the insurance recommendation server 200 is a device that can recommend an insurance product based on the information of the customer, and induce the subscription of the recommended insurance product. In brief, the insurance recommendation server 200 may collect information on the insurance product from the insurance company server 300. The insurance recommendation server 200 may determine and provide an insurance product to be recommended based on information received from the user device 100 used by a customer who wants to purchase insurance. When the insurance recommendation server 200 receives a request for subscription of a recommended insurance product from a user device 100 used by a customer who wants to purchase insurance, the insurance recommendation server 200 requests a user's insurance subscription from the user device 100 used by an insurance agent. Can be.

이와 같은, 보험 추천 서버(200)는 사용자 장치(100) 및 보험사 서버(300)와 데이터를 송수신할 수 있으며, 수신된 데이터를 기초로 연산을 수행할 수 있는 컴퓨팅 장치라면 어떠한 장치도 허용될 수 있다. 바람직하게, 데스크탑, 워크스테이션 또는 서버 등과 같은 고정식 컴퓨팅 장치 중 어느 하나가 될 수 있을 것이나, 이에 한정되는 것은 아니다.As such, the insurance recommendation server 200 may exchange data with the user device 100 and the insurance company server 300, and any device may be allowed as long as it is a computing device capable of performing an operation based on the received data. have. Preferably, it may be any one of a fixed computing device such as a desktop, a workstation or a server, but is not limited thereto.

특히, 본 발명의 일 실시예에 따른 보험 추천 서버(200)는 3차원 상자 채우기 문제를 해결하기 위한 알고리즘을 변형 적용하여, 고객에게 맞춤형 보험 상품을 결정할 수 있다. 이와 같은 특징을 가지는, 보험 추천 서버(200)의 구체적인 구성 및 동작에 대해서는 추후 도 2 내지 도 13을 참조하여 보다 구체적으로 설명하기로 한다.In particular, the insurance recommendation server 200 according to an embodiment of the present invention may determine an insurance product tailored to a customer by applying an algorithm for solving a 3D box filling problem. The specific configuration and operation of the insurance recommendation server 200 having such a feature will be described in detail later with reference to FIGS. 2 to 13.

다음으로, 보험사 서버(300)는 보험 서비스를 제공하는 보험사에 의해 운용되며, 보험 상품에 관한 정보를 조회할 수 있는 장치이다. 이와 같은, 보험사 서버(300)는 각각의 보험사가 독립적으로 운용하는 복수 개의 장치이거나, 또는 보험사들이 통합적으로 운용하는 단일의 장치가 될 수 있다.Next, the insurance company server 300 is operated by an insurance company that provides insurance services, and is a device that can inquire information about insurance products. As such, the insurer server 300 may be a plurality of devices that each insurer operates independently, or may be a single device that the insurers operate integrally.

구체적으로, 보험사 서버(300)는 보험 추천 서버(200)로부터 보험 상품의 정보 제공을 요청받을 수 있다. 보험사 서버(300)는 요청에 응답하여, 보험 상품의 정보를 보험 추천 서버(300)에 전송할 수 있다. 이 때, 보험사 서버(300)는 상품의 정보가 갱신된 보험 상품의 정보만을 전송하거나, 또는 상품 정보의 갱신 여부와 무관하게 요청된 보험 상품의 정보를 전송할 수 있다.In detail, the insurance company server 300 may be requested to provide information on the insurance product from the insurance recommendation server 200. The insurance company server 300 may transmit the insurance product information to the insurance recommendation server 300 in response to the request. In this case, the insurance company server 300 may transmit only the information of the insurance product, the product information is updated, or may transmit the information of the requested insurance product regardless of whether the product information is updated.

사용자 장치(100), 보험 추천 서버(200) 및 보험사 서버(300)가 서로 데이터를 송수신하기 위한 네트워크(network)는 이동 통신망 또는 공용 유선 통신망 중 어느 하나가 될 수 있다. 여기서, 이동 통신망에는 코드 분할 다중 접속(Code Division Multiple Access, CDMA), 와이드 밴드 코드 분할 다중 접속(Wideband CDMA, WCDMA), 고속 패킷 접속(High Speed Packet Access, HSPA), 롱텀 에볼루션(Long Term Evolution, LTE)가 포함될 수 있으나, 이에 한정되는 것은 아니다. 그리고, 공용 유선 통신망에는 이더넷(ethernet), 디지털가입자선(x Digital Subscriber Line, xDSL), 광동축 혼합망(Hybrid Fiber Coax, HFC), 광가입자망(Fiber To The Home, FTTH)가 포함될 수 있으나, 이에 한정되는 것도 아니다.The network for the user device 100, the insurance recommendation server 200, and the insurance company server 300 to transmit and receive data to each other may be either a mobile communication network or a public wired communication network. The mobile communication network may include code division multiple access (CDMA), wide band code division multiple access (WCDMA), high speed packet access (HSPA), long term evolution (Long Term Evolution). LTE) may be included, but is not limited thereto. The public wired network may include Ethernet, x Digital Subscriber Line (xDSL), Hybrid Fiber Coax (HFC), and Fiber To The Home (FTTH). It is not limited to this.

또한, 사용자 장치(100)와 보험 추천 서버(200)는 RFID(Radio Frequency IDentification), NFC(Near Field Communication), 블루투스(Bluetooth), 블루투스 로우 에너지(Bluetooth Low Energy, BLE) 또는 지그비(ZigBee)와 같은 근거리 무선 통신을 이용하여 데이터를 통신할 수 있음은 본 발명이 속한 기술분야에서 자명할 것이다.In addition, the user device 100 and the insurance recommendation server 200 may include Radio Frequency Identification (RFID), Near Field Communication (NFC), Bluetooth, Bluetooth Low Energy (BLE), or ZigBee. It will be apparent to those skilled in the art that data can be communicated using the same short range wireless communication.

이하, 상술한 바와 같은 보험 추천 서버(200)의 구성에 대하여 보다 구체적으로 설명하기로 한다.Hereinafter, the configuration of the insurance recommendation server 200 as described above will be described in more detail.

도 2는 본 발명의 일 2 is one of the present invention 실시예에Example 따른 보험 추천 서버(200)의 논리적 구성도이다. According to the insurance recommendation server 200 according to the logical configuration.

도 2에 도시된 바와 같이, 보험 추천 서버(200)는 통신부(205), 입출력부(210), 보험 상품 관리부(215), 고객 관리부(220), 추천 상품 판단부(225) 및 계약 지원부(230)를 포함하여 구성될 수 있다. 이와 같은, 보험 추천 서버(200)의 구성 요소들은 기능적으로 구분되는 요소들을 나타낸 것에 불과하므로, 어느 하나 이상의 구성 요소가 실제 물리적 환경에서는 서로 통합되어 구현될 수 있다.As shown in FIG. 2, the insurance recommendation server 200 includes a communication unit 205, an input / output unit 210, an insurance product management unit 215, a customer management unit 220, a recommendation product determination unit 225, and a contract support unit ( 230). As such, the components of the insurance recommendation server 200 merely represent functionally distinct elements, and any one or more components may be integrated with each other in an actual physical environment.

각각의 구성 요소에 대하여 설명하면, 통신부(205)는 사용자 장치(100) 또는 보험사 서버(300)와 데이터를 송수신할 수 있다. 구체적으로, 통신부(205)는 사용자 장치(100)의 요청에 따라, 보험 추천 초기 웹페이지를 사용자 장치(100)에 전송할 수 있다. 통신부(205)는 사용자 장치(100)로부터 고객의 개인정보 및 월 단위 납부 가능한 금액을 수신할 수 있다. 여기서, 고객의 개인정보에는 사용자의 나이, 성별 및 직업이 포함될 수 있으나, 이에 한정되는 것은 아니다.Referring to each component, the communication unit 205 may transmit and receive data with the user device 100 or the insurance company server 300. In detail, the communication unit 205 may transmit the insurance recommendation initial web page to the user device 100 according to a request of the user device 100. The communication unit 205 may receive the customer's personal information and the monthly payment amount from the user device 100. Here, the personal information of the customer may include the age, gender and occupation of the user, but is not limited thereto.

통신부(205)는 사용자 장치(100)로부터 추천 보험 상품을 결정할 때 기준이 되는 가중치(weight)를 더 수신할 수 있다. 여기서, 가중치는 컨테이너(container)에 적재할 상자(box) 또는 템플릿(template)을 선택함에 있어 고려되는 중요도이다. 예를 들어, 가중치는 보험 상품의 브랜드 가치 순위, 보험 상품의 월 단위 보험료, 또는 브랜드 가치 순위와 월 단위 보험료의 비율 중 어느 하나가 될 수 있으나, 이에 한정되는 것은 아니다.The communication unit 205 may further receive a weight that is a reference when determining the recommended insurance product from the user device 100. Here, the weight is the importance considered in selecting a box or template to be loaded into a container. For example, the weight may be any one of the brand value ranking of the insurance product, the monthly premium of the insurance product, or the ratio of the brand value ranking and the monthly premium, but is not limited thereto.

통신부(205)는 추천 상품 판단부(225)에 의해 결정된 추천 보험 상품에 관한 정보가 포함된, 보험 추천 결과 웹페이지를 사용자 장치(100)에 전송할 수 있다. 통신부(205)는 사용자 장치(100)로부터 추천된 보험 상품의 가입 요청을 수신할 수 있다. 그리고, 통신부(205)는 고객의 개인정보 및 추천 보험 상품에 관한 정보를 사용자 장치(100)에 전송할 수 있다.The communication unit 205 may transmit the insurance recommendation result web page including the information about the recommended insurance product determined by the recommendation product determination unit 225 to the user device 100. The communication unit 205 may receive a request for subscription of a recommended insurance product from the user device 100. In addition, the communication unit 205 may transmit the personal information of the customer and the information about the recommended insurance product to the user device 100.

통신부(205)는 보험사 서버(300)에 보험 상품의 정보 제공의 요청을 전송할 수 있다. 통신부(205)는 보험사 서버(300)로부터 보험 상품의 정보를 수신할 수 있다.The communicator 205 may transmit a request for providing insurance product information to the insurance company server 300. The communication unit 205 may receive insurance product information from the insurance company server 300.

다음 구성으로, 입출력부(210)는 사용자 인터페이스를 통해, 사용자로부터 보험 추천 서버(200)의 동작에 필요한 데이터를 입출력할 수 있다. 구체적으로, 입출력부(210)는 보험 상품에 대응되는 객체를 복수 개의 상자로 분할하기 위한 기준 용적, 기준 금액 또는 기준 보장 단위를 입력 받을 수 있다. 이와 같이, 입력된 기준 용적, 기준 금액 또는 기준 보장 단위는 보험 상품 관리부(215)가 복수 개의 보험 상품 각각에 대응되는 객체를 복수 개의 상자로 분할함에 있어 이용될 수 있다.In the following configuration, the input / output unit 210 may input and output data necessary for the operation of the insurance recommendation server 200 from the user through the user interface. In detail, the input / output unit 210 may receive a reference volume, a reference amount, or a reference guarantee unit for dividing an object corresponding to the insurance product into a plurality of boxes. As such, the input reference volume, reference amount, or reference guarantee unit may be used by the insurance product management unit 215 to divide the object corresponding to each of the plurality of insurance products into a plurality of boxes.

입출력부(210)는 컨테이너(container)를 생성하기 위한 기준 공식을 입력 받을 수 있다. 이와 같이, 입력된 기준 공식은 고객 관리부(220)가 고객의 개인정보 및 고객의 월 단위 납부 가능한 금액을 기초로 컨테이너를 생성함에 이용될 수 있다.The input / output unit 210 may receive a reference formula for creating a container. As such, the input reference formula may be used by the customer manager 220 to create a container based on the customer's personal information and the monthly payment amount of the customer.

입출력부(210)는 사용자로부터 템플릿(template)에 관한 정보를 입력 받을 수 있다. 여기서, 템플릿은 컨테이너에 동시에 적재될 수 있는 하나 이상의 상자(bin)들의 조합을 의미한다. 입출력부(210)는 상자를 적재할 때 기준이 되는 가중치를 입력 받을 수 있다. 그리고, 입출력부(210)는 컨테이너를 복수 개의 하위 공간으로 분할하기 위한 분할 기준을 입력 받을 수도 있다. 이와 같이, 입력된 템플릿에 관한 정보, 가중치 또는 분할 기준은 추천 상품 판단부(225)가 3차원 상자 채우기 문제를 해결함에 이용될 수 있다.The input / output unit 210 may receive information about a template from a user. Here, the template refers to a combination of one or more bins that can be loaded into the container at the same time. The input / output unit 210 may receive a weight that is a reference when loading a box. The input / output unit 210 may receive a division criterion for dividing the container into a plurality of sub-spaces. As such, the inputted information, weight, or division criteria may be used by the recommendation product determination unit 225 to solve the 3D box filling problem.

다음 구성으로, 보험 상품 관리부(215)는 보험사 서버(300)로부터 제공된 보험 상품을 관리 및 저장하고, 3차원 상자 채우기 문제에 이용할 수 있도록 가공할 수 있다. 구체적으로, 보험 상품 관리부(215)는 통신부(215)를 통해, 보험 상품의 정보를 보험사 서버(300)에 요청할 수 있다. 보험 상품 관리부(215)는 통신부(205)를 통해 보험사 서버(300)로부터 수신된 보험 상품의 정보를 보험 상품 관리 리스트(list)에 추가할 수 있다. In the following configuration, the insurance product management unit 215 can manage and store the insurance product provided from the insurance company server 300, and can be processed to use for the three-dimensional box filling problem. In detail, the insurance product manager 215 may request the insurance company server 300 from the insurance company through the communication unit 215. The insurance product manager 215 may add the insurance product information received from the insurance company server 300 to the insurance product management list through the communication unit 205.

보험 상품 관리부(215)는 수신된 보험 상품의 정보를 보험 추천 서버(200) 내부의 데이터베이스(database)에 저장하거나, 또는 보험 추천 서버(200)의 외부에 존재하는 데이터 웨어하우스(data warehouse, 미도시)에 저장할 수 있다.The insurance product manager 215 stores the received insurance product information in a database inside the insurance recommendation server 200 or a data warehouse existing outside the insurance recommendation server 200. Can be stored at

보험 상품 관리부(215)는 보험사 서버(300)로부터 제공받은 복수 개의 보험 상품 각각에 대응되는 객체(object)를 기준 용적, 기준 금액 및 기준 보장 단위 중 어느 하나를 기초로 복수 개의 상자 단위로 분할할 수 있다. 여기서, 기준 용적, 기준 금액 또는 기준 보장 단위는 입출력부(210)를 통해 설정되거나, 사전에 프리셋(preset)되어 있을 수 있다. 그리고, 보험 상품 관리부(215)는 분할된 복수 개의 상자를 상자 관리 리스트에 추가할 수 있다.The insurance product management unit 215 divides an object corresponding to each of the plurality of insurance products received from the insurance company server 300 into a plurality of box units based on any one of a reference volume, a reference amount, and a standard guarantee unit. Can be. Here, the reference volume, the reference amount or the reference guarantee unit may be set through the input / output unit 210 or may be preset. The insurance product manager 215 may add the divided plurality of boxes to the box management list.

보다 구체적으로, 상자(bin)는 보험 상품에 관하여, 기준 보장 단위당 단위 보험료에 대응되는 용적(volume)을 가지는 가상의 단위 구성이다. 예를 들어, 월 10만원 납부 시 3000만원을 보장받을 수 있는 'AA 보험 상품'이 있다고 가정하자. 또한, 'AA 보험 상품'은 보험료와 보장 범위가 직선적 관계를 가지고 있으며, 'AA 보험 상품'을 제공하는 보험사는 10만원의 보장 단위(즉, 보장 금액)부터 인수(accept)한다고 가정한다. 이 경우, 보험 상품 관리부는 'AA 보험 상품'을 300 개의 상자로 분할할 수 있다. 따라서, 'AA 보험 상품'으로부터 분할된 상자는 각각 10만원 보장 단위당 334(333.33…의 ceil)원의 보험료에 대응되는 용적을 가질 수 있다.More specifically, the bin is a virtual unit configuration having a volume corresponding to the unit premium per standard guaranteed unit with respect to the insurance product. For example, suppose you have an AA insurance product that guarantees you 30 million won for a monthly payment of 100,000 won. In addition, it is assumed that the 'AA insurance product' has a linear relationship with the insurance premium, and the insurer that provides the 'AA insurance product' accepts from the guarantee unit of 100,000 won (ie, the guaranteed amount). In this case, the insurance product management unit may divide the 'AA insurance product' into 300 boxes. Thus, boxes divided from AA insurance products may have a volume corresponding to a premium of 334 won (333.33 ceil) per 100,000 won guaranteed units, respectively.

기준 보장 단위당 단위 보험료에 대응되는 용적은 별도의 매칭 테이블(matching table) 또는 해시 테이블(hash table)에 의해 관리될 수 있다. 따라서, 보험 상품 관리부(215)는 매칭 테이블 또는 해시 테이블에 대하여 기준 보장 단위당 단위 보험료를 키 값으로 입력하여, 기준 보장 단위당 단위 보험료에 대응되는 용적을 도출할 수 있다.The volume corresponding to the unit premium per reference guaranteed unit may be managed by a separate matching table or hash table. Accordingly, the insurance product manager 215 may input a unit premium per reference guaranteed unit as a key value for the matching table or hash table, and derive a volume corresponding to the unit premium per reference guaranteed unit.

따라서, 이와 같이 분할된 상자들은 보험 상품의 보험료 또는 보장 범위에 따라 서로 다른 용적을 가질 수 있다.Thus, the boxes thus divided may have different volumes depending on the premium or coverage of the insurance product.

또한, 보험 상품 관리부(215)는 복수 개의 상자들을 조합하여 템플릿을 구성할 수 있다. 이 경우, 보험 상품 관리부(215)는 입출력부(210)를 통하여 입력된 템플릿에 관한 정보를 기초로, 복수 개의 상자들을 조합하여 템플릿을 구성할 수 있다. 또는 보험 상품 관리부(215)는 사전에 프리셋 되어 있는 조합 규칙(combination rule)을 기초로, 복수 개의 상자들을 조합하여 템플릿을 구성할 수 있다. 보험 상품 관리부(215)는 구성된 템플릿을 템플릿 관리 리스트에 추가할 수 있다.In addition, the insurance product management unit 215 may configure a template by combining a plurality of boxes. In this case, the insurance product manager 215 may configure a template by combining a plurality of boxes based on the information about the template input through the input / output unit 210. Alternatively, the insurance product manager 215 may configure a template by combining a plurality of boxes based on a preset combination rule. The insurance product manager 215 may add the configured template to the template management list.

다음 구성으로, 고객 관리부(220)는 사용자 장치(100)로부터 제공된 고객의 정보를 관리 및 저장하고, 3차원 상자 채우기 문제에 이용할 수 있도록 가공할 수 있다. 구체적으로, 고객 관리부(220)는 통신부(205)를 통해 보험 추천 초기 웹페이지를 사용자 장치(100)에 전송할 수 있다. 고객 관리부(220)는 통신부(205)를 통해 사용자 장치(100)로부터 고객의 개인정보 및 월 단위 납부 가능한 금액의 정보를 수신할 수 있다. 그리고, 고객 관리부(220)는 통신부(205)를 통해 사용자 장치(100)로부터 수신된 고객의 개인정보 및 월 단위 납부 가능한 금액의 정보를 고객 관리 리스트에 추가할 수 있다.In the following configuration, the customer management unit 220 may manage and store the information of the customer provided from the user device 100, and may be processed to use for the three-dimensional box filling problem. In detail, the customer manager 220 may transmit the insurance recommendation initial webpage to the user device 100 through the communication unit 205. The customer manager 220 may receive the customer's personal information and the monthly payment information from the user device 100 through the communication unit 205. In addition, the customer manager 220 may add the personal information of the customer received from the user device 100 through the communication unit 205 and the information of the monthly payment amount to the customer management list.

고객 관리부(220)는 수신된 고객의 개인정보 및 월 단위 납부 가능한 금액의 정보를 보험 추천 서버(200) 내부의 데이터베이스에 저장하거나, 또는 보험 추천 서버(200)의 외부에 존재하는 데이터 웨어하우스(미도시)에 저장할 수 있다.The customer management unit 220 stores the received customer's personal information and monthly payment information in a database inside the insurance recommendation server 200 or a data warehouse (external to the insurance recommendation server 200). Not shown).

고객 관리부(220)는 사용자 장치(100)로부터 제공받은 고객의 개인정보 및 월 단위 납부 가능한 금액을 기초로, 컨테이너를 생성할 수 있다. 여기서, 컨테이너(container)는 하나 이상의 상자가 적재될 수 있는 용적을 가지는 가상의 단위 공간이다. 예를 들어, '1000'의 용적을 가지는 컨테이너는 '10'의 용적을 가지는 상자가 100개 적재될 수 있다.The customer manager 220 may generate a container based on the customer's personal information and the monthly payment amount provided from the user device 100. Here, the container is a virtual unit space having a volume in which one or more boxes can be loaded. For example, a container having a volume of '1000' may be loaded with 100 boxes having a volume of '10'.

보다 구체적으로, 고객 관리부(220)는 고객의 개인정보 및 월 단위 납부 가능한 금액을 기준 공식에 대입하여 산출된 용적을 가지는 컨테이너를 생성할 수 있다. 여기서, 기준 공식은 입출력부(210)를 통해 설정되거나, 사전에 프리셋되어 있을 수 있다.More specifically, the customer manager 220 may generate a container having a volume calculated by substituting the personal information of the customer and the monthly payable amount into the reference formula. Here, the reference formula may be set through the input / output unit 210 or may be preset.

예를 들어, 고객 관리부(220)는 고객의 개인정보 중 고객의 나이, 성별 및 직업의 조합에 따라 할당된 위험도 값을 식별할 수 있다. 고객 관리부(220)는 식별된 위험도 값을 기 구성된 매칭 테이블 또는 해시 테이블의 키 값으로 입력하여 도출된 값을 컨테이너의 2차원 너비 값(width x depth)으로 결정할 수 있다. 고객 관리부(220)는 고객의 월 단위 납부 가능한 금액의 액수에 따라 대응되는 컨테이너의 높이 값(height)을 식별할 수 있다. 그리고, 고객 관리부(220)는 컨테이너의 2차원 너비 값과 컨테이너의 높이 값에 대응되는 용적(width x depth x height)을 가지는 컨테이너를 생성할 수 있다. For example, the customer manager 220 may identify an assigned risk value according to a combination of a customer's age, gender, and occupation of the customer's personal information. The customer manager 220 may determine the derived value as the 2D width x depth of the container by inputting the identified risk value as a key value of a pre-configured matching table or hash table. The customer manager 220 may identify the height value of the corresponding container according to the amount of the monthly payable amount of the customer. In addition, the customer manager 220 may generate a container having a volume (width x depth x height) corresponding to the two-dimensional width value of the container and the height value of the container.

다음 구성으로, 추천 상품 판단부(225)는 3차원 상자 채우기 문제를 해결하기 위한 알고리즘을 변형 적용하여, 고객에게 추천할 보험 상품을 결정할 수 있다. 추천 상품 판단부(225)가 수행하는 상자 채우기 문제를 해결하기 위한 알고리즘은 크게, 컨테이너에 하나 이상의 상자를 채우는 과정, 컨테이너에 적재된 상자들을 보험 상품의 종류에 따라 분류하는 과정 및 분류된 상자에 대응되는 보험 상품을 고객에게 추천할 보험 상품으로 결정하는 과정을 수행할 수 있다.In the following configuration, the recommendation product determination unit 225 may determine an insurance product to recommend to the customer by modifying and applying an algorithm for solving the 3D box filling problem. The algorithm for solving the box filling problem performed by the recommendation product determining unit 225 is largely performed by filling one or more boxes in a container, classifying boxes loaded in the container according to types of insurance products, and classifying boxes. The process of determining the corresponding insurance product as an insurance product to be recommended to the customer may be performed.

각각의 과정을 구체적으로 설명하면, 컨테이너에 하나 이상의 상자를 채우는 과정은 컨테이너의 용적과 대비하여 컨테이너에 적재된 상자들의 총 용적 비율이 최대가 되도록, 추천 상품 판단부(225)가 고객 관리부(220)에 의해 생성된 컨테이너에 보험 상품 관리부(215)에 의해 분할된 상자를 하나 이상 적재하여 수행될 수 있다.In detail, each process of filling one or more boxes into a container includes the recommendation product determination unit 225 as the customer management unit 220 such that the total volume ratio of the boxes loaded in the container is maximized relative to the volume of the container. It may be performed by loading one or more boxes divided by the insurance product management unit 215 in the container generated by the).

보다 구체적으로, 추천 상품 판단부(225)는 보험 상품 관리부(215)에 의해 분할된 복수 개의 상자들의 리스트를, 설정된 순서(order)에 따라 정렬할 수 있다. 여기서, 리스트 내의 상자를 정렬할 순서는 통신부(205)에 의해 수신되거나 또는 입출력부(210)를 통해 입력된 가중치에 의해 결정될 수 있다. 여기서, 가중치는 상자에 대응되는 보험 상품의 브랜드 가치 순위, 상자에 대응되는 보험 상품의 월 단위 보험료, 또는 상자에 대응되는 브랜드 가치 순위와 월 단위 보험료의 비율 중 어느 하나가 될 수 있으나, 이에 한정되는 것은 아니다. More specifically, the recommendation product determination unit 225 may sort the list of the plurality of boxes divided by the insurance product management unit 215 according to a set order. Here, the order of sorting the boxes in the list may be determined by the weight received by the communication unit 205 or input through the input / output unit 210. Here, the weight may be any one of the brand value ranking of the insurance product corresponding to the box, the monthly premium of the insurance product corresponding to the box, or the ratio of the brand value ranking and monthly premium on the box. It doesn't happen.

예를 들어, 추천 상품 판단부(225)는 상자에 대응되는 보험 상품의 브랜드 가치 순위가 작아지는 순서(descending order)에 따라, 리스트에 포함된 상자들을 정렬할 수 있다. 이와 다르게, 추천 상품 판단부(225)는 상자에 대응되는 보험 상품의 월 단위 보험료가 작아지는 순서에 따라, 리스트에 포함된 상자들을 정렬할 수도 있다.For example, the recommendation product determining unit 225 may sort the boxes included in the list according to a descending order of the brand value ranking of the insurance product corresponding to the box. Alternatively, the recommendation product determination unit 225 may sort the boxes included in the list in the order of decreasing the monthly premium of the insurance product corresponding to the boxes.

추천 상품 판단부(225)는 컨테이너 내부에 존재하는 공간들 중 하나의 공간(space)을 상자를 적재할 공간으로 선택할 수 있다. 그리고, 추천 상품 판단부(225)는 정렬된 리스트로부터 하나의 상자를 선택하여 리스트로부터 제거하고, 선택된 상자를 선택된 공간에 적재할 수 있다. 이 경우, 추천 상품 판단부(225)는 선택된 공간의 하나의 모서리를 기준점으로 지정하고, 상자의 모서리 중 어느 하나가 상기 기준점에 닿도록, 선택된 상자를 선택된 공간에 적재할 수 있다. The recommended product determiner 225 may select one of the spaces existing in the container as a space for loading the box. The recommendation product determination unit 225 may select one box from the sorted list, remove the box from the list, and load the selected box in the selected space. In this case, the recommended product determiner 225 may designate one corner of the selected space as a reference point, and load the selected box in the selected space so that any one of the corners of the box touches the reference point.

만약, 선택된 공간에 선택된 상자를 적재할 수 없는 경우(즉, 선택된 공간의 용적이 선택된 상자의 용적보다 작은 경우), 추천 상품 판단부(225)는 선택된 공간과 인접한 면(proximate surface)을 가지며 컨테이너 내부에 존재하는 제3의 공간과, 선택된 공간을 서로 병합(merge)할 수 있다. 그리고, 추천 상품 판단부(225)는 병합된 공간에 선택된 상자의 적재를 시도할 수 있다. If the selected box cannot be loaded in the selected space (that is, if the volume of the selected space is smaller than the volume of the selected box), the recommendation product determining unit 225 has a proximate surface adjacent to the selected space and has a container. The third space existing inside and the selected space can be merged with each other. In addition, the recommended product determiner 225 may attempt to load the selected box in the merged space.

만약, 병합된 공간에 선택된 상자를 적재할 수 없거나, 또는 선택된 공간과 병합할 제3의 공간이 존재하지 않는 경우, 추천 상품 판단부(225)는 해당 공간을 상자를 적재할 수 없는 불가용 공간으로 결정할 수 있다.If the selected box cannot be loaded in the merged space, or if there is no third space to merge with the selected space, the recommended product determining unit 225 cannot use the space to load the box. Can be determined.

선택된 공간에 선택된 상자를 적재한 이후, 추천 상품 판단부(225)는 선택된 공간으로부터 상자가 적재된 공간을 제외한 공간을 복수 개의 하위 공간으로 분할할 수 있다. 만약, 컨테이너에 적재된 상자의 모서리 중 하나가 상기 기준점에 닿도록 적재된 경우, 추천 상품 판단부(225)는 선택된 공간으로부터 상자가 적재된 공간을 제외한 공간을 세 개의 하위 공간으로 분할할 수 있다. 이 경우, 추천 상품 판단부(225)는 입출력부(210)를 통해 설정되거나 또는 사전에 프리셋된 분할 기준에 따라, 세 개의 하위 공간으로 분할할 수 있다. 여기서, 분할 기준은 Top-to-Front, Side-to-Top, Side-to-Front 중 어느 하나가 될 수 있다.After loading the selected box in the selected space, the recommended product determining unit 225 may divide the space excluding the space in which the box is loaded from the selected space into a plurality of sub-spaces. If one of the corners of the box loaded in the container is loaded to reach the reference point, the recommended product determiner 225 may divide the space except the space in which the box is loaded into three sub-spaces from the selected space. . In this case, the recommended product determiner 225 may divide the information into three lower spaces according to the division criteria set through the input / output unit 210 or preset. Here, the division criteria may be any one of Top-to-Front, Side-to-Top, and Side-to-Front.

그리고, 추천 상품 판단부(225)는 더 이상 적재할 상자가 존재하지 않거나 컨테이너에 더 이상 상자를 적재할 공간이 존재하지 않을 때까지, 분할된 복수 개의 하위 공간 각각에 대하여 상자를 적재할 공간을 선택하고, 선택된 공간에 하나의 상자를 선택하여 적재하고, 상자가 적재된 공간을 복수 개의 하위 공간으로 분할하는 과정을 재귀적(recursive) 또는 반복적(iterative)으로 수행하여, 컨테이너 용적 대비 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록 컨테이너에 상자를 적재할 수 있다.In addition, the recommended product determining unit 225 may select a space for loading a box for each of the plurality of divided sub-spaces until there are no boxes to be loaded any more or there is no space for loading the boxes in the container. Selecting, selecting and loading one box in the selected space, and recursively or iteratively performing the process of dividing the box-loaded space into a plurality of sub-spaces, and loading the container into the container volume The crates can be loaded in containers so that the proportion of the total volume of the crates is maximum.

본 발명의 다른 실시예에 따르면, 추천 상품 판단부(225)는 보다 빠르게 3차원 상자 채우기 문제를 해결하기 위하여, 컨테이너에 상자가 아닌 템플릿을 적재할 수 있다.According to another embodiment of the present invention, the recommended product determiner 225 may load a template rather than a box in a container in order to solve the 3D box filling problem more quickly.

보다 구체적으로, 추천 상품 판단부(225)는 보험 상품 관리부(215)에 의해 복수 개의 상자들이 조합 구성된 템플릿들의 리스트를, 설정된 순서에 따라 정렬할 수 있다. 추천 상품 판단부(225)는 컨테이너 내부에 존재하는 공간들 중 하나의 공간을 템플릿을 적재할 공간으로 선택할 수 있다. 추천 상품 판단부(225)는 정렬된 템플릿들의 리스트로부터 하나의 템플릿을 선택하여 템플릿들의 리스트로부터 제거하고, 선택된 템플릿을 구성하는 복수 개의 상자를 선택된 공간에 동시에 적재할 수 있다. More specifically, the recommendation product determination unit 225 may sort the list of templates in which a plurality of boxes are combined by the insurance product management unit 215 in a set order. The recommended product determiner 225 may select one of the spaces existing in the container as a space to load the template. The recommendation product determination unit 225 may select one template from the list of the arranged templates, remove the template from the list of templates, and simultaneously load a plurality of boxes constituting the selected template in the selected space.

따라서, 한번의 적재 시도에 복수 개의 상자가 동시에 적재함으로써, 추천 상품 판단부(225)는 3차원 상자 채우기 문제를 보다 빠르게 해결할 수 있게 된다.Therefore, by stacking a plurality of boxes at once in one stacking attempt, the recommended product determination unit 225 can solve the three-dimensional box filling problem more quickly.

컨테이너에 적재된 상자들을 보험 상품의 종류에 따라 분류하는 과정은, 추천 상품 판단부(225)가 컨테이너에 적재된 상자들을 동일한 속성을 가지는 상자들의 그룹으로 분류하는 것이다. 상술한 바와 같이, 상자는 해당 상자가 분할된 보험 상품의 보험료 또는 보장 범위 등에 따라 서로 다른 용적을 가진다. 따라서, 추천 상품 판단부는 상자들의 용적 또는 상자에 대응하는 객체가 가지는 분류 코드에 따라서 상자들을 분류할 수 있다. In the process of classifying the boxes loaded in the container according to the type of insurance product, the recommendation product determination unit 225 classifies the boxes loaded in the container into groups of boxes having the same attributes. As described above, the box has different volumes depending on the premium or coverage of the insurance product in which the box is divided. Therefore, the recommendation product determination unit may classify the boxes according to the volume of the boxes or the classification code of the object corresponding to the boxes.

분류된 보험 상품을 고객에게 추천할 보험 상품으로 결정하는 과정은, 추천 상품 판단부(225)가 컨테이너로부터 동일한 그룹으로 분류된 상자들을 합친 조건을 가지는 보험 상품을 고객에게 추천할 보험 상품으로 결정할 수 있다. 예를 들어, 컨테이너 내로부터 300개의 '10만원의 보장 단위당 334원의 보험료에 대응되는 용적'을 가지는 상자가 분류된 경우, 추천 상품 판단부(225)는 보장 범위 3000만원에 보험료 10만원인 보험 상품을 고객에게 추천할 보험 상품으로 결정할 수 있다. In the process of determining the classified insurance product as an insurance product to be recommended to the customer, the recommendation product determination unit 225 may determine an insurance product having a condition of combining the boxes classified into the same group from the container as the insurance product to be recommended to the customer. have. For example, when 300 boxes having a volume corresponding to a premium of 334 won per 100,000 won guaranteed units are classified from the container, the recommendation product determination unit 225 provides insurance with a premium of 100,000 won for a coverage range of 30 million won. The product can be decided as an insurance product to recommend to the customer.

다음 구성으로, 계약 지원부(230)는 추천 상품 판단부(225)에 의해 결정된 추천할 보험 상품을 고객에게 제공하고, 고객의 요청에 따라 보험 설계사와 연결시켜줄 수 있다. 구체적으로, 계약 지원부(230)는 추천 상품 판단부(225)에 의해 결정된 추천 보험 상품에 관한 정보가 포함된. 보험 추천 결과 웹페이지를 생성할 수 있다. 계약 지원부(230)는 생성된 웹페이지를 통신부(205)를 통해 사용자 장치(100)에 전송할 수 있다.In the following configuration, the contract support unit 230 may provide the insurance product to be recommended by the recommendation product determination unit 225 to the customer, and connect it with the insurance agent at the request of the customer. Specifically, the contract support unit 230 includes information on the recommended insurance product determined by the recommended product determination unit 225. Generate a insurance recommendation result web page. The contract supporter 230 may transmit the generated webpage to the user device 100 through the communication unit 205.

계약 지원부(230)는 사용자 장치(100)로부터 추천된 보험 상품의 가입 요청이 수신되면, 고객의 개인정보 중 주소를 기초로, 보험 설계사 리스트로부터 하나의 보험 설계사를 선택할 수 있다. 그리고, 계약 지원부(230)는 선택된 보험 설계사의 개인정보에 등록된 사용자 장치(100)에 고객의 개인정보 및 추천 보험 상품에 관한 정보를 전송하여, 고객과 보험 설계사를 서로 연결시켜줄 수 있다.When the contract support unit 230 receives a request for joining the recommended insurance product from the user device 100, the contract supporter 230 may select one insurance agent from the insurance agent list based on the address of the customer's personal information. In addition, the contract support unit 230 may transmit the personal information of the customer and the information on the recommended insurance product to the user device 100 registered in the personal information of the selected insurance agent, thereby connecting the customer and the insurance agent.

이하, 상술한 바와 같은 보험 추천 서버(200)의 논리적 구성요소를 구현하기 위한 하드웨어에 대하여 보다 구체적으로 설명한다.Hereinafter, hardware for implementing the logical component of the insurance recommendation server 200 as described above will be described in more detail.

도 3은 본 발명의 일 3 is one of the present invention 실시예에Example 따른 보험 추천 서버(200)의 하드웨어 구성도이다. According to the insurance recommendation server 200 according to the hardware configuration.

도 3에 도시된 바와 같이, 보험 추천 서버(200)는 프로세서(Processor, 250), 메모리(Memory, 255), 송수신기(Transceiver, 260), 입출력장치(Input/output device, 265) 및 데이터 버스(Bus, 270) 및 스토리지(Storage, 275)를 포함하여 구성될 수 있다. As shown in FIG. 3, the insurance recommendation server 200 may include a processor 250, a memory 255, a transceiver 260, an input / output device 265, and a data bus. Bus, 270) and storage (Storage, 275).

프로세서(250)는 메모리(255)에 상주된 보험 추천 방법이 구현된 소프트웨어(280a)에 따른 명령어를 기초로, 보험 추천 방법과 관련된 동작 및 기능을 구현할 수 있다. 메모리(255)에는 보험 추천 방법이 구현된 소프트웨어(280a)가 상주(loading)될 수 있다. 송수신기(260)는 사용자 장치(100) 또는 보험사 서버(300)와 데이터를 송수신할 수 있다. 입출력장치(265)는 보험 추천 방법의 수행에 필요한 데이터를 입력 받고, 추천된 보험 상품의 정보를 출력할 수 있다. 데이터 버스(270)는 프로세서(250), 메모리(255), 송수신기(260), 입출력장치(265) 및 스토리지(275)와 연결되어, 각각의 구성 요소 사이가 서로 데이터를 전달하기 위한 이동 통로의 역할을 수행할 수 있다.The processor 250 may implement operations and functions related to the insurance recommendation method based on the instructions according to the software 280a in which the insurance recommendation method residing in the memory 255 is implemented. In the memory 255, software 280a in which the insurance recommendation method is implemented may be loaded. The transceiver 260 may transmit / receive data with the user device 100 or the insurance company server 300. The input / output device 265 may receive data necessary for executing the insurance recommendation method and output information of the recommended insurance product. The data bus 270 is connected to the processor 250, the memory 255, the transceiver 260, the input / output device 265, and the storage 275 so that each component of the movement path for transferring data to each other. Can play a role.

스토리지(275)는 보험 추천 방법이 구현된 소프트웨어(280a)의 실행을 위해 필요한 애플리케이션 프로그래밍 인터페이스(Application Programming Interface, API), 라이브러리(library) 파일, 리소스(resource) 파일 등을 저장할 수 있다. 스토리지(275)는 보험 추천 방법이 구현된 소프트웨어(280b)를 저장할 수 있다. 또한, 스토리지(275)는 보험 추천 방법의 수행에 필요한 데이터베이스(285)를 저장할 수 있다. 여기서, 데이터베이스(285)에는 보험 상품 관리 리스트, 고객 관리 리스트, 상자 리스트 또는 템플릿 리스트가 저장될 수 있으나, 이에 한정되는 것은 아니다.The storage 275 may store an application programming interface (API), a library file, a resource file, and the like necessary for executing the software 280a in which the insurance recommendation method is implemented. The storage 275 may store software 280b in which an insurance recommendation method is implemented. In addition, the storage 275 may store a database 285 necessary to perform the insurance recommendation method. The insurance product management list, the customer management list, the box list, or the template list may be stored in the database 285, but is not limited thereto.

메모리(255)에 상주되거나 또는 스토리지(275)에 저장된 보험 추천 방법을 구현하기 위한 소프트웨어(280a, 280b)는 복수 개의 보험 상품 각각에 대응되는 객체(object)를 복수 개의 가상의 상자(bin) 단위로 분할하는 단계, 고객의 개인정보 및 상기 고객의 월 단위 납부 가능한 금액을 기초로 가상의 컨테이너(container)를 생성하는 단계, 상기 컨테이너의 용적(volume) 대비 상기 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록, 상기 컨테이너에 상기 상자를 하나 이상 적재하는 단계, 상기 컨테이너에 적재된 하나 이상의 상자를 상기 보험 상품의 종류별로 분류하는 단계, 및 상기 분류된 보험 상품을 상기 고객에게 추천하기 위한 웹페이지를 송신하는 단계를 실행시키기 위하여, 기록 매체에 기록된 컴퓨터 프로그램이 될 수 있다.The software 280a or 280b for implementing an insurance recommendation method residing in the memory 255 or stored in the storage 275 may include objects corresponding to each of the plurality of insurance products in units of a plurality of virtual bins. Dividing into; generating a virtual container based on the customer's personal information and the monthly payable amount of the customer; and the total volume of the boxes loaded in the container relative to the volume of the container. Loading the at least one box into the container, classifying the at least one box loaded into the container by type of the insurance product such that the ratio is maximum, and recommending the classified insurance product to the customer. In order to execute the step of transmitting the web page, it may be a computer program recorded on the recording medium.

보다 구체적으로, 프로세서(250)는 ASIC(Application-Specific Integrated Circuit), 다른 칩셋(chipset), 논리 회로 및/또는 데이터 처리 장치를 포함할 수 있다. 메모리(255)는 ROM(Read-Only Memory), RAM(Random Access Memory), 플래쉬 메모리, 메모리 카드, 저장 매체 및/또는 다른 저장 장치를 포함할 수 있다. 송수신기(260)는 유무선 신호를 처리하기 위한 베이스밴드 회로를 포함할 수 있다. 입출력장치(265)는 키보드(keyboard), 마우스(mouse), 및/또는 조이스틱(joystick) 등과 같은 입력 장치 및 액정표시장치(Liquid Crystal Display, LCD), 발광 다이오드(Light Emitting Diode, LED), 유기 발광 다이오드(Organic LED, OLED) 및/또는 능동형 유기 발광 다이오드(Active Matrix OLED, AMOLED) 등과 같은 영상 출력 장치 프린터(printer), 플로터(plotter) 등과 같은 인쇄 장치를 포함할 수 있다. More specifically, the processor 250 may include an application-specific integrated circuit (ASIC), another chipset, a logic circuit, and / or a data processing device. The memory 255 may include read-only memory (ROM), random access memory (RAM), flash memory, a memory card, a storage medium, and / or another storage device. The transceiver 260 may include a baseband circuit for processing wired and wireless signals. The input / output device 265 may be an input device such as a keyboard, a mouse, and / or a joystick, a liquid crystal display (LCD), a light emitting diode (LED), an organic device, and the like. And a printing device such as a printer, a plotter, or the like, such as an organic light emitting diode (OLED) and / or an active organic light emitting diode (AMOLED).

본 명세서에 포함된 실시 예가 소프트웨어로 구현될 경우, 상술한 방법은 상술한 기능을 수행하는 모듈(과정, 기능 등)로 구현될 수 있다. 모듈은 메모리(255)에 상주되고, 프로세서(250)에 의해 실행될 수 있다. 메모리(255)는 프로세서(250)의 내부 또는 외부에 있을 수 있고, 잘 알려진 다양한 수단으로 프로세서(250)와 연결될 수 있다.When the embodiments included in the present specification are implemented in software, the above-described method may be implemented by a module (process, function, etc.) that performs the above-described function. The module resides in memory 255 and may be executed by processor 250. The memory 255 may be inside or outside the processor 250 and may be connected to the processor 250 by various well-known means.

도 3에 도시된 각 구성요소는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의 일 실시예는 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.Each component shown in FIG. 3 may be implemented by various means, for example, hardware, firmware, software, or a combination thereof. In the case of a hardware implementation, an embodiment of the present invention may include one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), FPGAs ( Field Programmable Gate Arrays), processors, controllers, microcontrollers, microprocessors, and the like.

또한, 펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현되어, 다양한 컴퓨터 수단을 통하여 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한, 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.In addition, in the case of the implementation by firmware or software, an embodiment of the present invention is implemented in the form of a module, procedure, function, etc. for performing the functions or operations described above, so that Can be recorded. Here, the recording medium may include a program command, a data file, a data structure, etc. alone or in combination. The program instructions recorded on the recording medium may be those specially designed and constructed for the present invention, or may be known and available to those skilled in computer software. For example, the recording medium may be a magnetic medium such as a hard disk, a floppy disk, or a magnetic tape, an optical media such as a compact disk read only memory (CD-ROM), a digital video disk (DVD), or a floppy. Magnetic-Optical Media, such as a Disk, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, Flash Memory, and the like. Examples of program instructions may include high-level language code that can be executed by a computer using an interpreter, as well as machine code such as produced by a compiler. Such hardware devices may be configured to operate as one or more software to perform the operations of the present invention, and vice versa.

한편, 상술한 바와 같이 보험에 가입하고자 하는 고객은 사용자 장치(100)에 출력된 웹페이지를 통하여 보험 추천 서비스를 제공받을 수 있다. 이하, 본 발명의 몇몇 실시예들에 따른 사용자 장치(100)에 출력되는 웹페이지를 구체적으로 설명하기로 한다.On the other hand, as described above, a customer who wishes to purchase insurance may be provided with an insurance recommendation service through a web page output to the user device 100. Hereinafter, a web page output to the user device 100 according to some embodiments of the present invention will be described in detail.

도 4는 본 발명의 일 4 is one of the present invention 실시예에Example 따른 사용자 장치(100)의 입력 화면의  Of the input screen of the user device 100 according to 예시도이다It is an illustration . . 그리고, 도And 5는 본 발명의 일  5 is one of the present invention 실시예에Example 따른 사용자 장치(100)의 출력 화면의  Of the output screen of the user device 100 according to 예시도이다It is an illustration ..

도 4에 도시된 바와 같이, 사용자 장치(100)는 스마트폰과 같은 이동식 컴퓨팅 장치에 해당될 수 있다. 그리고, 이동식 컴퓨팅 장치에 해당되는 사용자 장치(100)는 보험 추천 서버(200)로부터 수신된 보험 추천 초기 웹페이지(110)를 모바일 버전으로 출력할 수 있다.As shown in FIG. 4, the user device 100 may correspond to a mobile computing device such as a smartphone. In addition, the user device 100 corresponding to the mobile computing device may output the insurance recommendation initial webpage 110 received from the insurance recommendation server 200 in a mobile version.

보험 추천 초기 웹페이지(110)에는 사용자로부터 고객의 개인정보 및 월 단위 납부 가능한 금액을 입력 받기 위한 입력 객체들(111)에 포함될 수 있다. 고객의 개인정보 및 월 단위 납부 가능한 금액을 입력 받기 위한 객체들(111)에는 텍스트 박스(text box), 스크롤 박스(scroll box), 체크 박스(check box), 라디오 박스(radio box), 모달 다이얼로그(modal dialog) 또는 모달리스 다이얼로그(modaless dialog)가 포함될 수 있으며, 이에 한정되는 것은 아니다.The insurance recommendation initial web page 110 may be included in the input objects 111 for receiving the customer's personal information and monthly payment amount from the user. Objects 111 for inputting customer's personal information and monthly payment amount include text box, scroll box, check box, radio box, modal dialog box. (modal dialog) or modals dialog may be included, but is not limited thereto.

그리고, 보험 추천 초기 웹페이지(110)에는 사용자로부터 보험 상품 추천 요청을 입력 받기 위한 버튼(113)이 포함될 수 있다. 사용자 장치(100)는 보험 추천 초기 웹페이지(110)에 포함된 버튼(113)이 입력되면, 입력 객체들(111)에 의해 수집된 고객의 개인정보 및 월 단위 납부 가능한 금액을 보험 추천 서버(200)에 전송할 수 있다.In addition, the insurance recommendation initial web page 110 may include a button 113 for receiving an insurance product recommendation request from the user. When the button 113 included in the insurance recommendation initial webpage 110 is input, the user device 100 displays the personal information of the customer collected by the input objects 111 and the monthly payment amount that can be paid by the insurance recommendation server ( 200).

도 5에 도시된 바와 같이, 사용자 장치(100)는 데스크탑과 같은 고정식 컴퓨팅 장치에 해당될 수 있다. 그리고, 고정식 컴퓨팅 장치에 해당되는 사용자 장치(100)는 보험 추천 서버(200)로부터 수신된 추천 보험 결과 웹페이지(120)를 데스크탑 버전으로 출력할 수 있다. As shown in FIG. 5, the user device 100 may correspond to a stationary computing device such as a desktop. The user device 100 corresponding to the fixed computing device may output the recommended insurance result webpage 120 received from the insurance recommendation server 200 in a desktop version.

보험 추천 결과 웹페이지(120)에는 추천 보험 상품에 관한 정보(121)가 포함될 수 있다. 추천 보험 상품에 관한 정보(121)는 테이블(table) 또는 트리(tree) 등의 구조로 출력될 수 있다.The insurance recommendation result webpage 120 may include information 121 about recommended insurance products. The information 121 regarding the recommended insurance product may be output in a structure such as a table or a tree.

보험 추천 결과 웹페이지(120)에는 추천 보험 상품을 결정할 때 기준이 되는 가중치를 입력할 인터페이스(123)가 포함될 수 있다. 가중치를 입력할 인터페이스(123)는 보험 상품의 브랜드 가치 순위 또는 보험 상품의 월 단위 보험료 등과 같은 지표의 비율을 조정할 막대 그래프를 포함하여 구성될 수 있으나, 이에 한정되는 것은 아니다.The insurance recommendation result web page 120 may include an interface 123 for inputting a weight that is a reference when determining a recommended insurance product. The interface 123 to input the weight may be configured to include a bar graph to adjust the ratio of the index such as the brand value ranking of the insurance product or the monthly premium of the insurance product, but is not limited thereto.

그리고, 보험 추천 결과 웹페이지(120)는 사용자로부터 추천된 보험 상품의 가입 요청을 입력 받기 위한 버튼(125)이 포함될 수 있다. 사용자 장치(100)는 보험 추천 결과 웹페이지(120)에 포함된 버튼(125)이 입력되면, 추천된 보험 상품의 가입 요청을 보험 추천 서버(200)에 전송할 수 있다.In addition, the insurance recommendation result webpage 120 may include a button 125 for receiving a request for subscription of a recommended insurance product from a user. When the button 125 included in the insurance recommendation result webpage 120 is input, the user device 100 may transmit a request for joining the recommended insurance product to the insurance recommendation server 200.

이하, 본 발명의 일 실시예에 따른 보험 추천 서버(200)가 추천할 보험 상품을 결정하는 문제를 3차원 상자 채우기 문제로 변형 적용하기 위한 상자와 컨테이너의 개념을 설명하기로 한다.Hereinafter, the concept of a box and a container for transforming and applying a problem of determining an insurance product to be recommended by the insurance recommendation server 200 according to an embodiment of the present invention into a 3D box filling problem will be described.

도 6은 본 발명의 일 6 is one of the present invention 실시예에Example 따른 상자(20)의 개념을 설명하기 위한  To explain the concept of a box 20 according to 예시도이다It is an illustration . . 그리고, 도And 7은 본 발명의 일  7 is one of the present invention 실시예에Example 따른 컨테이너의 개념을 설명하기 위한  To explain the concept of containers 예시도이다It is an illustration ..

도 6을 참조하면, 상자(20a, 20b, 20c, …, 20n; 20)는 보험 상품에 관하여, 기준 보장 단위당 단위 보험료에 대응되는 용적을 가지는 가상의 단위 구성이다.Referring to FIG. 6, boxes 20a, 20b, 20c,..., 20n; 20 are virtual unit configurations having a volume corresponding to a unit premium per standard guaranteed unit with respect to an insurance product.

이와 같은, 상자(20)는 보험 상품(10)으로부터 분할되어 생성될 수 있다. 구체적으로, 보험 추천 서버(200)는 기준 용적, 기준 금액 및 기준 보장 단위 중 어느 하나를 기초로, 보험 상품(10)에 대응되는 객체를 복수 개의 상자(20) 단위로 분할할 수 있다. 이를 위하여, 기준 보장 단위당 단위 보험료에 대응되는 용적은 별도의 매칭 테이블 또는 해시 테이블에 의해 관리될 수 있다.As such, the box 20 may be generated by dividing it from the insurance product 10. In detail, the insurance recommendation server 200 may divide an object corresponding to the insurance product 10 into units of a plurality of boxes 20 based on one of a reference volume, a reference amount, and a standard guarantee unit. To this end, the volume corresponding to the unit premium per reference guaranteed unit may be managed by a separate matching table or hash table.

도 7을 참조하면, 컨테이너(40)는 하나 이상의 상자(20)가 적재될 수 있는 용적을 가지는 가상의 단위 공간이다. Referring to FIG. 7, the container 40 is a virtual unit space having a volume in which one or more boxes 20 may be loaded.

이와 같은, 컨테이너(40)는 고객의 개인정보 및 월 단위 납부 가능한 금액(30)을 기초로 생성될 수 있다. 예를 들어, 보험 추천 서버(200)는 고객의 개인정보 중 고객의 나이, 성별 및 직업의 조합에 따라 할당된 위험도 값을 식별할 수 있다. 보험 추천 서버(200)는 식별된 위험도 값을 기 구성된 매칭 테이블 또는 해시 테이블의 키 값으로 입력하여 도출된 값을 컨테이너(40)의 2차원 너비 값(width x depth)으로 결정할 수 있다. 보험 추천 서버(200)는 고객의 월 단위 납부 가능한 금액의 액수에 따라 대응되는 컨테이너(40)의 높이 값(height)을 식별할 수 있다. 그리고, 보험 추천 서버(200)는 컨테이너(40)의 2차원 너비 값과 컨테이너의 높이 값에 대응되는 용적(width x depth x height)을 가지는 컨테이너를 생성할 수 있다. As such, the container 40 may be generated based on the customer's personal information and the monthly payment amount 30. For example, the insurance recommendation server 200 may identify an assigned risk value according to the combination of the age, gender, and occupation of the customer among the personal information of the customer. The insurance recommendation server 200 may determine the derived value as the two-dimensional width x depth of the container 40 by inputting the identified risk value as a key value of a pre-configured matching table or hash table. The insurance recommendation server 200 may identify a height of the container 40 corresponding to the amount of the monthly payable amount of the customer. The insurance recommendation server 200 may generate a container having a volume (width x depth x height) corresponding to the two-dimensional width value of the container 40 and the height value of the container.

이하, 본 발명의 일 실시예에 따른 보험 추천 서버(200)가 상자(20)와 컨테이너(40)를 이용하여 3차원 상자 채우기 문제를 변형 적용하는 과정을 설명하기로 한다.Hereinafter, the insurance recommendation server 200 according to an embodiment of the present invention will be described a process of applying the three-dimensional box filling problem using the box 20 and the container 40.

도 8은 본 발명의 일 8 is one of the present invention 실시예에Example 따른 3차원 상자 채우기 문제 알고리즘의  Of 3D Box Fill Problem Algorithm 예시도이다It is an illustration . 도 9는 본 발명의 일 . 9 is one of the present invention 실시예에Example 따른 공간의 병합을 설명하기 위한  To illustrate the merging of spaces along 예시도이다It is an illustration . 도 10은 본 발명의 일 . 10 is one of the present invention 실시예에Example 따른 공간의 분할을 설명하기 위한  To explain the division of space according to 예시도이다It is an illustration . . 그리고, 도And 11은 본 발명의 일  11 is one of the present invention 실시예에Example 따른 상자의 분류를 설명하기 위한 예시도이다. It is an illustration for explaining the classification of the box according.

도 8을 참조하면, 보험 추천 서버(200)는 컨테이너(40)의 용적과 대비하여 컨테이너(40)에 적재된 상자(20)의 총 용적 비율이 최대가 되도록, 컨테이너(40)에 복수 개의 상자들(20-1, 20-2, 20-3)을 적재할 수 있다. Referring to FIG. 8, the insurance recommendation server 200 includes a plurality of boxes in the container 40 such that the total volume ratio of the boxes 20 loaded in the container 40 as compared with the volume of the container 40 is maximized. The fields 20-1, 20-2, and 20-3 can be loaded.

복수 개의 상자들(20-1, 20-2, 20-3)은 보험 상품(10)의 보험료 또는 보장 범위에 따라 서로 다른 용적을 가지고 있을 수 있다. 따라서, 보험 추천 서버(200)는 복수 개의 상자들(20-1, 20-2, 20-3)의 리스트를 가중치(weight)에 의해 결정된 순서에 따라 정렬할 수 있다. 보험 추천 서버(200)는 정렬된 리스트로부터 하나의 상자(20)를 선택하여 리스트로부터 제거하고, 선택된 상자(20)를 컨테이너(40) 내의 공간에 적재할 수 있다.The plurality of boxes 20-1, 20-2, and 20-3 may have different volumes depending on the premium or coverage of the insurance product 10. Therefore, the insurance recommendation server 200 may sort the list of the plurality of boxes 20-1, 20-2, and 20-3 in the order determined by the weight. The insurance recommendation server 200 may select one box 20 from the sorted list, remove it from the list, and load the selected box 20 in the space in the container 40.

도 9를 참조하면, 상자(20)를 적재하기 위해 선택된 공간(즉, 컨테이너 또는 분할된 공간, 40)에 상자(20)를 적재할 수 없는 경우, 보험 추천 서버(200)는 상자(20)를 적재하기 위해 선택된 공간(40-a)과 인접한 면을 가지며 컨테이너(40) 내부에 존재하는 제3의 공간(40-b)과, 선택된 공간(40-a)을 서로 병합하여, 용적이 더 큰 새로운 공간(40-c)을 생성할 수 있다. 그리고, 보험 추천 서버(200)는 생성된 새로운 공간(40-c)에 선택된 상자(20)의 적재를 시도할 수 있다. Referring to FIG. 9, when the box 20 cannot be loaded in a space (ie, a container or divided space, 40) selected for loading the box 20, the insurance recommendation server 200 may store the box 20. The third space 40-b and the selected space 40-a existing inside the container 40 and having a surface adjacent to the selected space 40-a for loading the same, the volume is further increased. It is possible to create a large new space 40-c. The insurance recommendation server 200 may attempt to load the selected box 20 in the created new space 40-c.

도 10을 참조하면, 컨테이너(40) 내의 공간에 선택된 상자(20)를 적재한 이후, 보험 추천 서버(200)는 상자(20)가 적재된 공간을 제외한 공간을 복수 개의 하위 공간(40-1, 40-2, 40-3)으로 분할할 수 있다. 만약, 상자(20)의 모서리 중 하나가 컨테이너(40)의 모서리 중 하나에 닿도록 적재된 경우, 보험 추천 서버(200)는 상자가 적재된 공간을 제외한 공간을 세 개의 하위 공간(40-1, 40-2, 40-3)으로 분할할 수 있다. 또한, 보험 추천 서버(200)는 세 개의 하위 공간(40-1, 40-2, 40-3)을 분할함에 있어, Top-to-Front, Side-to-Top, Side-to-Front 중 어느 하나에 따라 분할할 수 있다.Referring to FIG. 10, after loading the selected box 20 in the space in the container 40, the insurance recommendation server 200 divides the space except the space in which the box 20 is loaded into the plurality of sub-spaces 40-1. , 40-2, 40-3). If one of the corners of the box 20 is loaded to touch one of the corners of the container 40, the insurance recommendation server 200 divides three sub-spaces 40-1 into the space excluding the space in which the box is loaded. , 40-2, 40-3). In addition, the insurance recommendation server 200 divides three sub-spaces 40-1, 40-2, and 40-3, and selects one of Top-to-Front, Side-to-Top, and Side-to-Front. You can divide by one.

그리고, 보험 추천 서버(200)는 분할된 세 개의 하위 공간(40-1, 40-2, 40-3) 각각에 대하여, 상자를 적재할 공간(40-1, 40-2, 40-3)을 선택하고, 선택된 공간에 하나의 상자(20)를 적재하고, 상자(20)가 적재된 공간을 제외한 공간을 복수 개의 하위 공간으로 분할하는 과정을 재귀적으로 수행할 수 있다. Then, the insurance recommendation server 200, for each of the three divided sub-spaces 40-1, 40-2, 40-3, spaces 40-1, 40-2, 40-3 for loading the boxes. , A box 20 is loaded in the selected space, and the process of dividing the space excluding the space in which the box 20 is loaded into a plurality of sub-spaces can be recursively performed.

만약, 컨테이너(40)에 더 이상 적재할 상자(20)가 존재하지 않거나, 컨테이너(40)에 더 이상 상자를 적재할 공간이 존재하지 않는 경우, 컨테이너(40)에 대한 상자(20)의 적재는 종료하게 될 것이다.If there is no box 20 to be loaded in the container 40 anymore, or if there is no space for loading the box in the container 40 anymore, loading the box 20 to the container 40. Will end.

도 11을 참조하면, 컨테이너(40)에 대한 상자(20)의 적재가 종료된 이후, 보험 추천 서버(200)는 컨테이너(40)에 적재된 상자(20)를 동일한 속성을 가지는 상자들(20-1, 20-2, 20-3)의 그룹으로 분류할 수 있다. 상술한 바와 같이, 상자들(20-1, 20-2, 20-3)은 해당 상자가 분할된 보험 상품의 보험료 또는 보장 범위 등에 따라 서로 다른 용적을 가진다. 따라서, 보험 추천 서버(200)는 상자들의 용적 또는 상자에 대응하는 객체가 가지는 분류 코드에 따라서 상자들을 분류할 수 있다. Referring to FIG. 11, after the loading of the box 20 on the container 40 is finished, the insurance recommendation server 200 displays the boxes 20 having the same properties as the box 20 loaded on the container 40. -1, 20-2, 20-3). As described above, the boxes 20-1, 20-2, and 20-3 have different volumes depending on the premium or coverage of the insurance product in which the boxes are divided. Accordingly, the insurance recommendation server 200 may classify the boxes according to the volume of the boxes or the classification code of the object corresponding to the boxes.

마지막으로, 보험 추천 서버(200)는 동일한 그룹으로 분류된 상자들을 합친 조건을 가지는 보험 상품을 고객에게 추천할 보험 상품으로 결정할 수 있다.Finally, the insurance recommendation server 200 may determine an insurance product having a condition of combining boxes classified into the same group as an insurance product to be recommended to a customer.

이하, 본 발명의 일 실시예에 따른 보험 추천 서버(200)가 보험 추천 방법을 수행하는 과정을 설명하기로 한다.Hereinafter, the process of performing the insurance recommendation method by the insurance recommendation server 200 according to an embodiment of the present invention will be described.

도 12는 본 발명의 일 12 is one of the present invention 실시예에Example 따른 보험 추천 방법을 설명하기 위한  To explain how to recommend insurance 순서도이다It is a flowchart ..

보험 추천 방법을 설명함에 있어 도 2 내지도 11을 참조하여 설명한 바와 중복되는 설명은 중복 기재하지 않는다. 또한, 보험 추천 서버(200)는 고객으로부터 보험 상품 추천을 요청 받기 이전에, 보험 상품의 정보를 수집하고 각각의 보험 상품에 대한 상자(20)를 분할 관리하고 있다고 가정한다.In describing the insurance recommendation method, a description overlapping with that described with reference to FIGS. 2 to 11 will not be repeated. In addition, it is assumed that the insurance recommendation server 200 collects information on insurance products and manages a box 20 for each insurance product before receiving a request for insurance product recommendation from a customer.

도 12를 참조하면, 보험 추천 서버(200)는 사용자 장치(100)로부터 고객의 개인정보 및 월 단위 납부 가능한 금액의 정보를 수신할 수 있다(S100). 그리고, 보험 추천 서버(200)는 수신된 고객의 개인정보 및 월 단위 납부 가능한 금액을 기초로, 컨테이너(40)를 생성할 수 있다(S200). Referring to FIG. 12, the insurance recommendation server 200 may receive personal information of a customer and information of a monthly payment amount from the user device 100 (S100). The insurance recommendation server 200 may generate the container 40 based on the received personal information of the customer and the monthly payment amount (S200).

보험 추천 서버(200)는 컨테이너(40)의 용적과 대비하여 컨테이너(40)에 적재된 상자(20)들의 총 용적 비율이 최대가 되도록, 컨테이너(40)에 하나 이상의 상자(20)를 적재할 수 있다(S300).The insurance recommendation server 200 may load one or more boxes 20 in the container 40 such that the total volume ratio of the boxes 20 loaded in the container 40 is maximized relative to the volume of the container 40. It may be (S300).

보험 추천 서버(200)는 컨테이너(40)에 적재된 상자(20)들을 보험 상품의 종류에 따라 분류할 수 있다(S400). 그리고, 보험 추천 서버(200)는 분류된 상자에 대응되는 대응하는 보험 상품을 추천할 보험 상품으로 결정하고, 추천할 보험 상품의 정보를 포함하는 웹페이지를 사용자 장치(100)에 전송할 수 있다(S500).The insurance recommendation server 200 may classify the boxes 20 loaded in the container 40 according to the type of insurance product (S400). The insurance recommendation server 200 may determine a corresponding insurance product corresponding to the sorted box as an insurance product to recommend, and transmit a web page including information of the insurance product to be recommended to the user device 100 ( S500).

이후, 보험 추천 서버(200)는 대기 시간동안 사용자 장치(100)로부터 보험 설계 요청의 수신을 대기할 수 있다. 여기서, 대기 시간은 세션(session) 유지 시간이 될 수 있으나, 이에 한정되는 것은 아니다. 보험 추천 서버(200)는 대기 시간 내에 사용자 장치(100)로부터 보험 설계 요청이 수신되었는지 판단할 수 있다(S600).Thereafter, the insurance recommendation server 200 may wait to receive an insurance design request from the user device 100 during the waiting time. Here, the waiting time may be a session holding time, but is not limited thereto. The insurance recommendation server 200 may determine whether an insurance design request has been received from the user device 100 within a waiting time (S600).

판단 결과, 대기 시간 내에 사용자 장치(100)로부터 보험 설계 요청이 수신되지 않은 경우, 보험 추천 서버(200)는 이하의 단계를 수행하지 않고 종료할 수 있다. 이와 반대로, 대기 시간 내에 사용자 장치(100)로부터 보험 설계 요청이 수신된 경우, 보험 추천 서버(200)는 고객의 주소를 기초로 하나의 보험 설계사를 선택할 수 있다(S700).As a result of the determination, when the insurance design request is not received from the user device 100 within the waiting time, the insurance recommendation server 200 may terminate without performing the following steps. On the contrary, when the insurance design request is received from the user device 100 within the waiting time, the insurance recommendation server 200 may select one insurance agent based on the address of the customer (S700).

그리고, 보험 추천 서버(200)는 선택된 보험 설계사의 개인정보에 등록된 사용자 장치(100)에 고객의 개인정보 및 추천 보험 상품에 관한 정보를 전송하여, 보험 설계를 요청할 수 있다(S800).In addition, the insurance recommendation server 200 may transmit the personal information of the customer and the information about the recommended insurance product to the user device 100 registered in the personal information of the selected insurance agent, and request the insurance design (S800).

이하, 본 발명의 일 실시예에 따른 보험 추천 서버(200)가 3차원 상자 채우기 문제를 변형 적용하는 방법을 설명하기로 한다.Hereinafter, the insurance recommendation server 200 according to an embodiment of the present invention will be described how to apply the three-dimensional box filling problem.

도 13은 본 발명의 일 13 is one of the present invention 실시예에Example 따른 3차원 상자 채우기 문제를 해결하기 위한 알고리즘의  Algorithm to solve the 3D box fill problem 순서도이다It is a flowchart ..

도 13을 참조하면, 컨테이너(40)를 생성하는 단계(S200) 이후, 보험 추천 서버(200)는 상자들의 리스트를, 설정된 순서에 따라 정렬할 수 있다(S310). 여기서, 리스트 내의 상자를 정렬할 순서는 고객으로부터 제공된 가중치 또는 입력된 가중치에 의해 결정될 수 있다.Referring to FIG. 13, after generating the container 40 (S200), the insurance recommendation server 200 may sort the list of boxes according to a set order (S310). Here, the order of sorting the boxes in the list may be determined by the weight or input weight provided from the customer.

보험 추천 서버(200)는 컨테이너(40) 내부에 존재하는 공간들 중 하나의 공간을 상자(20)를 적재할 공간으로 선택할 수 있다(S320). 보험 추천 서버(200)는 정렬된 리스트로부터 하나의 상자(20)를 선택할 수 있다(S330).The insurance recommendation server 200 may select one of the spaces existing in the container 40 as a space for loading the box 20 (S320). The insurance recommendation server 200 may select one box 20 from the sorted list (S330).

보험 추천 서버(200)는 선택된 공간에 선택된 상자(20)의 적재가 가능한지 판단할 수 있다(S340). 판단 결과, 선택된 공간에 선택된 상자(20)의 적재가 가능한 경우, 보험 추천 서버(200)는 선택된 공간에 선택된 상자(20)를 적재할 수 있다(S350). 그리고, 보험 추천 서버(200)는 선택된 공간으로부터 상자(20)가 적재된 공간을 제외한 공간을 복수 개의 하위 공간으로 분할할 수 있다(S360).The insurance recommendation server 200 may determine whether the selected box 20 can be loaded in the selected space (S340). As a result of the determination, when the selected box 20 can be loaded in the selected space, the insurance recommendation server 200 may load the selected box 20 in the selected space (S350). The insurance recommendation server 200 may divide a space excluding a space in which the box 20 is loaded from the selected space into a plurality of sub-spaces (S360).

이와 반대로, 선택된 공간에 선택된 상자(20)의 적재가 불가능한 경우, 보험 추천 서버(200)는 선택된 공간과 인접한 면을 가지면 컨테이너(40) 내부에 존재하는 제3의 공간과, 선택된 공간을 병합할 수 있는지 판단할 수 있다(S370). 판단 결과, 제3의 공간과 선택된 공간을 병합할 수 있는 경우, 보험 추천 서버(200)는 제3의 공간과 선택된 공간을 병합하고(S380), 병합된 공간에 선택된 상자(20)의 적재가 가능한지 판단할 수 있다. 이와 반대로, 선택된 공간과 병합할 제3의 공간이 존재하지 않는 경우, 보험 추천 서버(200)는 선택된 공간을 상자를 적재할 수 없는 불가용 공간으로 결정할 수 있다.On the contrary, when it is impossible to load the selected box 20 in the selected space, the insurance recommendation server 200 may merge the selected space with the third space existing inside the container 40 when the insurance recommendation server 200 has a surface adjacent to the selected space. It can be determined whether or not (S370). As a result of the determination, when it is possible to merge the third space and the selected space, the insurance recommendation server 200 merges the third space and the selected space (S380), and loading of the selected box 20 in the merged space is performed. You can determine if it is possible. On the contrary, if there is no third space to merge with the selected space, the insurance recommendation server 200 may determine the selected space as an unavailable space in which a box cannot be loaded.

그리고, 보험 추천 서버(200)는 더 이상 적재할 상자(20)가 존재하지 않거나 컨테이너(40)에 더 이상 상자(20)를 적재할 공간이 존재하지 않을 때까지, 분할된 복수 개의 하위 공간 각각에 대하여 상자를 적재할 공간을 선택하는 단계(S320) 내지 공간을 분할하는 단계(S360)의 과정을 재귀적으로 수행할 수 있다.And, the insurance recommendation server 200 is each divided into a plurality of sub-spaces until there is no box 20 to be loaded anymore or there is no more space to load the box 20 in the container 40 For the step of selecting a space to load the box with respect to (S320) to divide the space (S360) can be performed recursively.

이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시예에 대하여 개시하였으나, 여기에 개시된 실시예 외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 선정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.As described above, although the present specification and drawings disclose preferred embodiments of the present invention, in addition to the embodiments disclosed herein, other modifications based on the technical idea of the present invention may be implemented in the technical field to which the present invention belongs. It is self-evident to those of ordinary knowledge. In addition, although specific terms are used in the specification and the drawings, they are only used in a general sense to easily explain the technical contents of the present invention and to help the understanding of the present invention, and are not intended to limit the scope of the present invention. Accordingly, the above detailed description should not be construed as limiting in all respects but should be considered as illustrative. The scope of the invention should be selected by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the invention are included in the scope of the invention.

아울러, 본 발명에 따른 장치나 단말은 하나 이상의 프로세서로 하여금 앞서 설명한 기능들과 프로세스를 수행하도록 하는 명령에 의하여 구동될 수 있다. 예를 들어 그러한 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다. 나아가 본 발명에 따른 장치는 서버 팜(Server Farm)과 같이 네트워크에 걸쳐서 분산형으로 구현될 수 있으며, 혹은 단일의 컴퓨터 장치에서 구현될 수도 있다.In addition, the device or the terminal according to the present invention can be driven by a command to cause one or more processors to perform the functions and processes described above. For example, such instructions may include interpreted instructions, such as script instructions such as JavaScript or ECMAScript instructions, or executable instructions or other instructions stored on a computer readable medium. Furthermore, the device according to the present invention may be implemented in a distributed manner over a network, such as a server farm, or may be implemented in a single computer device.

또한, 본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.Furthermore, a computer program (also known as a program, software, software application, script or code) mounted on an apparatus according to the invention and executing a method according to the invention comprises a compiled or interpreted language or a priori or procedural language. It can be written in any form of programming language, and can be deployed in any form, including stand-alone programs or modules, components, subroutines, or other units suitable for use in a computer environment. Computer programs do not necessarily correspond to files in the file system. A program may be in a single file provided to the requested program, in multiple interactive files (eg, a file that stores one or more modules, subprograms, or parts of code), or part of a file that holds other programs or data. (Eg, one or more scripts stored in a markup language document). The computer program may be deployed to run on a single computer or on multiple computers located at one site or distributed across multiple sites and interconnected by a communication network.

아울러, 본 발명에 따른 실시예를 설명하는데 있어서, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.In addition, in describing the embodiments according to the present invention, although the operations are depicted in the drawings in a specific order, it is necessary to perform the operations in the specific order or the sequential order shown in order to obtain a desirable result or all the illustrated operations. Should not be understood as being performed. In certain cases, multitasking and parallel processing may be advantageous. In addition, the separation of the various system components of the above-described embodiments should not be understood as requiring such separation in all embodiments, and the described program components and systems will generally be integrated together into a single software product or packaged into multiple software products. It should be understood that it can.

사용자 장치: 100 보험 추천 서버:200
보험사 서버: 300
통신부: 205 입출력부: 210
보험 상품 관리부: 215 고객 관리부: 220
추천 상품 판단부: 225 계약 지원부: 230
User Devices: 100 Insurance Recommendation Servers: 200
Insurer server: 300
Communication unit: 205 Input / output unit: 210
Insurance Product Management Department: 215 Customer Management Department: 220
Recommended Product Decision: 225 Contract Support: 230

Claims (10)

보험 추천 서버가, 복수 개의 보험 상품 각각에 대응되는 객체(object)를 복수 개의 가상의 상자(bin) 단위로 분할하는 단계;
상기 보험 추천 서버가, 고객의 개인정보 및 상기 고객의 월 단위 납부 가능한 금액을 기초로 가상의 컨테이너(container)를 생성하는 단계;
상기 보험 추천 서버가, 상기 컨테이너의 용적(volume) 대비 상기 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록, 상기 컨테이너에 상기 상자를 하나 이상 적재하는 단계;
상기 보험 추천 서버가, 상기 컨테이너에 적재된 하나 이상의 상자를 상기 보험 상품의 종류별로 분류하는 단계; 및
상기 보험 추천 서버가, 상기 분류된 상자에 대응되는 보험 상품을 상기 고객에게 추천하는 단계를 포함하되,
상기 상자는 상기 보험 상품에 관하여 기 설정된 기준 보장 단위당 단위 보험료에 대응되는 용적을 가지는 단위 구성이며,
상기 컨테이너는 컨테이너의 2차원 너비 값과 컨테이너의 높이 값에 대응되는 용적을 가지는 단위 공간이며, 상기 컨테이너의 2차원 너비 값은 상기 고객의 개인정보 중 고객의 나이, 성별 및 직업의 조합에 따라 식별된 위험도 값을 기초로 결정된 값이며, 상기 컨테이너의 높이 값은 상기 고객의 월 단위 납부 가능 금액의 액수에 따라 대응되는 값인 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The insurance recommendation server dividing an object corresponding to each of the plurality of insurance products into units of a plurality of virtual bins;
Generating, by the insurance recommendation server, a virtual container based on the personal information of the customer and the monthly payment amount of the customer;
Loading, by the insurance recommendation server, at least one box into the container such that a ratio of the total volume of the box loaded to the container to the volume of the container is maximized;
Classifying, by the insurance recommendation server, one or more boxes loaded in the container according to the type of insurance product; And
The insurance recommendation server recommending an insurance product corresponding to the classified box to the customer,
The box is a unit configuration having a volume corresponding to a unit premium per standard guaranteed unit with respect to the insurance product,
The container is a unit space having a volume corresponding to the two-dimensional width value of the container and the height value of the container, the two-dimensional width value of the container is identified according to the combination of the age, gender and occupation of the customer in the personal information of the customer And a height value of the container is a value corresponding to an amount of the monthly payable amount of the customer.
제1 항에 있어서, 상기 컨테이너에 상기 상자를 적재하는 단계는
상기 분할된 복수 개의 상자들의 리스트(list)를 기 설정된 순서(order)에 따라 정렬하는 단계;
상기 컨테이너 내부에 존재하는 공간들 중 하나의 공간을 상기 상자를 적재할 공간으로 선택하는 단계;
상기 정렬된 리스트로부터 하나의 상자를 선택하여 상기 리스트로부터 제거하고, 상기 선택된 상자를 상기 선택된 공간에 적재하는 단계; 및
상기 선택된 공간으로부터 상기 상자가 적재된 공간을 제외한 공간을 복수 개의 하위 공간으로 분할하는 단계를 포함하는 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The method of claim 1, wherein the step of loading the box in the container
Sorting the divided list of the plurality of boxes according to a preset order;
Selecting one of the spaces existing inside the container as a space for loading the box;
Selecting one box from the sorted list to remove from the list, and loading the selected box into the selected space; And
And dividing a space excluding the space in which the box is loaded from the selected space into a plurality of sub-spaces.
제2 항에 있어서, 상기 분할된 복수 개의 하위 공간 각각은
상기 상자를 적재할 공간으로 선택하는 단계, 상기 선택된 공간에 적재하는 단계 및 상기 복수 개의 하위 공간으로 분할하는 단계가 재귀적(recursive)으로 수행되는 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The method of claim 2, wherein each of the divided plurality of sub-spaces
Wherein the step of selecting the box as a space to be loaded, loading into the selected space and dividing into the plurality of sub-spaces is performed recursively.
제2 항에 있어서, 상기 선택된 공간에 적재하는 단계는
상기 선택된 공간에 상기 선택된 상자를 적재할 수 없는 경우, 상기 선택된 공간과 인접한 면(proximate surface)을 가지며 상기 컨테이너 내부에 존재하는 제3의 공간과 상기 선택된 공간을 서로 병합(merge)한 후, 상기 병합된 공간에 상기 선택된 상자를 적재하는 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The method of claim 2, wherein the step of loading in the selected space
If the selected box cannot be loaded in the selected space, after merging the selected space with the third space existing in the container and having a proximate surface adjacent to the selected space, Customized insurance recommendation method, characterized in that for loading the selected box in a merged space.
제2 항에 있어서,
상기 정렬하는 단계는 상기 복수 개의 상자들의 조합으로 구성된 템플릿(template)들의 리스트를 상기 순서에 따라 정렬하고,
상기 공간에 적재하는 단계는 상기 템플릿들의 리스트로부터 하나의 템플릿을 선택하여 상기 템플릿들의 리스트로부터 제거하고, 상기 선택된 템플릿을 구성하고 있는 복수 개의 상자들을 상기 선택된 공간에 동시에 적재하는 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The method of claim 2,
The sorting step includes sorting a list of templates consisting of a combination of the plurality of boxes in the order,
The loading of the space may include selecting one template from the list of templates, removing the template from the list of templates, and simultaneously loading the plurality of boxes constituting the selected template into the selected space. How to recommend a personalized insurance.
제2 항에 있어서, 상기 정렬하는 단계는
상기 상자에 대응되는 보험 상품의 브랜드 가치 순위가 작아지는 순서(descending order), 또는 상기 상자에 대응되는 보험 상품의 월 단위 보험료가 작아지는 순서에 따라 상기 리스트의 상자들을 정렬하는 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The method of claim 2, wherein the aligning step
Characterized in that the boxes of the list are sorted in descending order of the brand value of the insurance products corresponding to the box, or in descending order of the monthly premium of the insurance products corresponding to the box. How to recommend customized insurance.
삭제delete 삭제delete 제1 항에 있어서, 상기 컨테이너의 2차원 너비 값은
상기 고객의 나이, 성별 및 직업의 조합에 따라 할당된 위험도 값을 해시 테이블(hash table)에 키 값으로 입력하여 도출된 값인 것을 특징으로 하는, 고객 맞춤형 보험 추천 방법.
The method of claim 1, wherein the two-dimensional width value of the container
And a value derived by inputting a risk value assigned according to a combination of the age, gender, and occupation of the customer as a key value in a hash table.
메모리(memory);
상기 메모리에 상주(loading)된 명령어를 처리하는 프로세서(processor); 및
상기 프로세서의 제어에 따라 데이터를 송수신하는 송수신기(transceiver)를 포함하여 구성된 컴퓨팅 장치와 결합되어,
상기 프로세서가 복수 개의 보험 상품 각각에 대응되는 객체(object)를 복수 개의 가상의 상자(bin) 단위로 분할하는 단계,
상기 프로세서가 고객의 개인정보 및 상기 고객의 월 단위 납부 가능한 금액을 기초로 가상의 컨테이너(container)를 생성하는 단계,
상기 프로세서가 상기 컨테이너의 용적(volume) 대비 상기 컨테이너에 적재된 상자의 총 용적의 비율이 최대가 되도록, 상기 컨테이너에 상기 상자를 하나 이상 적재하는 단계,
상기 프로세서가 상기 컨테이너에 적재된 하나 이상의 상자를 상기 보험 상품의 종류별로 분류하는 단계, 및
상기 프로세서가 상기 송수신기를 제어하여 상기 분류된 상자에 대응되는 보험 상품을 상기 고객에게 추천하기 위한 웹페이지를 송신하는 단계를 실행시키되,
상기 상자는 상기 보험 상품에 관하여 기 설정된 기준 보장 단위당 단위 보험료에 대응되는 용적을 가지는 단위 구성이며,
상기 컨테이너는 컨테이너의 2차원 너비 값과 컨테이너의 높이 값에 대응되는 용적을 가지는 단위 공간이며, 상기 컨테이너의 2차원 너비 값은 상기 고객의 개인정보 중 고객의 나이, 성별 및 직업의 조합에 따라 식별된 위험도 값을 기초로 결정된 값이며, 상기 컨테이너의 높이 값은 상기 고객의 월 단위 납부 가능 금액의 액수에 따라 대응되는 값인 것을 특징으로 하는, 기록매체에 기록된 컴퓨터 프로그램.
Memory;
A processor processing an instruction loaded in the memory; And
In combination with a computing device configured to include a transceiver for transmitting and receiving data under control of the processor,
Dividing an object corresponding to each of the plurality of insurance products into units of a plurality of virtual bins by the processor;
Generating, by the processor, a virtual container based on the customer's personal information and the monthly payment amount of the customer;
Loading the at least one box into the container such that the processor has a maximum ratio of the total volume of the box loaded to the container to the volume of the container,
Classifying, by the processor, one or more boxes loaded in the container according to the type of insurance product; and
The processor controlling the transceiver to transmit a web page for recommending the insurance product corresponding to the classified box to the customer;
The box is a unit configuration having a volume corresponding to a unit premium per standard guaranteed unit with respect to the insurance product,
The container is a unit space having a volume corresponding to the two-dimensional width value of the container and the height value of the container, the two-dimensional width value of the container is identified according to the combination of the age, gender and occupation of the customer in the personal information of the customer And a height value of the container is a value corresponding to an amount of the monthly payable amount of the customer, wherein the height value of the container is a value corresponding to the risk value.
KR1020180077301A 2018-07-03 2018-07-03 Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor KR102068896B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180077301A KR102068896B1 (en) 2018-07-03 2018-07-03 Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180077301A KR102068896B1 (en) 2018-07-03 2018-07-03 Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor

Publications (2)

Publication Number Publication Date
KR20200004188A KR20200004188A (en) 2020-01-13
KR102068896B1 true KR102068896B1 (en) 2020-01-21

Family

ID=69153352

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180077301A KR102068896B1 (en) 2018-07-03 2018-07-03 Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor

Country Status (1)

Country Link
KR (1) KR102068896B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102641873B1 (en) * 2023-05-16 2024-02-28 주식회사 아이지넷 A Customized insurance products search service system for predicted disease

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130065840A (en) * 2011-12-02 2013-06-20 조성호 Method for searching insurance product and contracting on demand
KR101867241B1 (en) 2017-11-17 2018-06-12 주식회사 레드벨벳벤처스 Processing Method and Apparatus for Insurance Information

Also Published As

Publication number Publication date
KR20200004188A (en) 2020-01-13

Similar Documents

Publication Publication Date Title
US10366123B1 (en) Template-free extraction of data from documents
US20200043080A1 (en) Order processing method and device, server, and storage medium
CN106952072A (en) A kind of method and system of data processing
US20150186776A1 (en) Contextual data analysis using domain information
US20140279677A1 (en) Ontology-driven construction of semantic business intelligence models
JP6379140B2 (en) Method, system, and recording medium for providing messages in groups
US20200175403A1 (en) Systems and methods for expediting rule-based data processing
US9619533B2 (en) System and method for reporting multiple objects in enterprise content management
CN103034935A (en) Device and method for taking stock in real time
US8996588B2 (en) Mechanism for facilitating dynamic management of assets in an on-demand services environment
CN105488125A (en) Page access method and apparatus
US20220058608A1 (en) Redemption network with transaction sequencer
CN108765087A (en) Order asynchronous processing method, server and storage medium
CN113222578A (en) Payment method and device
KR102068896B1 (en) Method for recommending customized insurance, and computer program recorded on record-medium for executing method therefor
US10565535B2 (en) System having inventory allocation tool and method of using same
KR20200027730A (en) Method and apparatus for providing transportation mediating platform
US20160342931A1 (en) System and method of loading plant species for transportation
US20150206098A1 (en) System and method of loading plant species for transportation
CN109902980A (en) Method and device for business processing
KR102205214B1 (en) Binary management user interface and product information management system
CN112348298B (en) Designer management method, designer management device, electronic terminal and storage medium
KR20230080880A (en) Method and system for providing form
US20160162821A1 (en) Comparative peer analysis for business intelligence
EP3419727A1 (en) Systems and methods for resolving conflicts in order management of data products

Legal Events

Date Code Title Description
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant