Electronic apparatus and operation method thereof

TWI938935BActive Publication Date: 2026-09-11COUPANG CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
TW114113233
Authority / Receiving Office
TW · TW
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-09-18
Filing Date
2020-12-09
Publication Date
2026-09-11
Estimated Expiration
2040-12-08

AI Technical Summary

Technical Problem

Users face challenges in efficiently utilizing discount coupons in online shopping due to varying discount amounts based on item combinations, leading to impaired convenience and suboptimal use of discount services.

Method used

An electronic device and method that selects an algorithm based on the number of items and coupons to determine optimal coupon-item combinations, providing users with efficient discount information using heuristic or optimization algorithms, and optionally switching to heuristic if computational complexity exceeds thresholds.

Benefits of technology

Improves user convenience by efficiently determining and recommending optimal coupon-item combinations, reducing latency, and ensuring consistent recommendations for users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure TWG2TB001910503_001
    Figure TWG2TB001910503_001
  • Figure TWG2TB001910503_002
    Figure TWG2TB001910503_002
  • Figure TWG2TB001910503_003
    Figure TWG2TB001910503_003
Patent Text Reader

Abstract

The present invention provides a method and electronic device for using an algorithm to provide information about a discount coupon for an item that a user wants to purchase in an online store, the algorithm being selected based on at least one of the following: the number of items, the number of discount coupons, and the sum of the number of items and the number of discount coupons.
Need to check novelty before this filing date? Find Prior Art

Description

Electronic device and operating method thereof The present invention relates to an electronic device for providing information about a discount coupon applicable to an item when a user purchases the item in an online store, and an operating method of the device. A user can download a discount coupon from an online store and use it to purchase an item at a discounted price. However, discount coupons can be categorized by discount type into fixed-amount discount coupons that provide a specific discount amount, fixed-rate discount coupons that provide a specific discount rate, and the like. Even when the same discount coupon is used, the final discount amount can vary depending on the combination of items to which the discount coupon is applied. Therefore, when a user directly determines a discount coupon to be applied to each item, the user's convenience may be impaired and the user may not be able to properly utilize a discount service provided by the online store. Therefore, a service is needed to provide an online store user with information about a discount coupon applicable to each item. [Technical Objective] One aspect provides an electronic device and an operating method thereof. The technical objectives to be achieved through the exemplary embodiments are not limited to the technical objectives described above, and other technical tasks can be inferred from the following exemplary embodiments. [Technical Solution] According to a first embodiment, a method for providing information about or relating to a discount coupon to be applied to an item is provided, the method comprising: selecting one of a plurality of algorithms as a first algorithm based on at least one of the following: a number of items, a number of discount coupons, or a sum of the number of items and the number of discount coupons; using the first algorithm to determine each of the discount coupons and a set of items that enjoy each of the discount coupons; and providing discount coupon-related information to a user based on information about each of the discount coupons and the set of items that enjoy each of the discount coupons. According to a second embodiment, an electronic device for providing information about a discount coupon to be applied to an item is provided, the device comprising: a memory configured to store at least one instruction; and a processor configured to execute the at least one instruction to: select one of a plurality of algorithms as a first algorithm based on at least one of the following: a number of items, a number of discount coupons, or a sum of the number of items and the number of discount coupons; use the first algorithm to determine each of the discount coupons and a set of items that enjoy each of the discount coupons; and provide discount coupon-related information to a user based on information about each of the discount coupons and the set of items that enjoy each of the discount coupons. According to a third embodiment, a non-transitory recording medium having a program recorded thereon is provided, the program implementing the method described above when executed by a computer. Specific details of exemplary embodiments are included in the detailed description and drawings. [Effect] The electronic device according to the present invention provides discount coupon-related information to a user who wants to purchase multiple items in an online store and has multiple discount coupons, so that the user can use the discount coupons efficiently, thereby improving user convenience. In addition, compared to a case where an optimal algorithm is used to provide information about a discount coupon applicable to an item, the electronic device according to the present invention efficiently determines a set of a discount coupon and an item that enjoys the discount coupon within a shorter time period and provides a user with information about the discount coupon, thereby improving the convenience of users who want to purchase the item. In addition, the electronic device according to the present invention has an effect of providing consistent recommendations to a user who wants to use the same discount coupon to purchase the same item. The effects are not limited to the aforementioned effects, and other effects not mentioned will be clearly understood by those skilled in the art based on the description of the scope of the patent application. The terms used in the embodiments are selected from commonly used terms in consideration of their functions in the present invention. However, the terms may vary depending on the intention of a person skilled in the art, a precedent, or the emergence of new technologies. Furthermore, in certain cases, the terms are arbitrarily selected by the applicant of the present invention, and the meanings of those terms will be explained in detail in the corresponding parts of the detailed description. Therefore, the terms used in the present invention are not only designated by the terms, but also defined based on the meaning of the terms and the content throughout the present invention. Throughout this specification, unless otherwise stated, when a part is said to "comprise" a specific component, this means that the part may further include other components, unless the other components are excluded. In addition, terms such as "unit", "module" or the like refer to units that perform at least one function or operation, and these units may be implemented as hardware or software, or as a combination of hardware and software. Throughout this specification, the expression “at least one of A, B, and C” may include the following meanings: only A; only B; only C; A and B together; A and C together; B and C together; and all three of A, B, and C together. Throughout this specification, the terms "a set of a discount coupon and an item that benefits from the discount coupon" and "a combination of a discount coupon and an item" have the same meaning as a set comprising a discount coupon and a target item to which the discount coupon applies. The term "terminal" mentioned below may be implemented as a computer or mobile terminal capable of accessing a server or another terminal via a network. Here, a computer includes, for example, a laptop equipped with a web browser, a desktop computer, a notebook computer, and the like, and a mobile terminal is, for example, a wireless communication device that ensures portability and mobility and may include any type of handheld wireless communication device, such as a communication terminal based on International Mobile Telecommunications (IMT), Code Division Multiple Access (CDMA), W-Code Division Multiple Access (W-CDMA), Long Term Evolution (LTE), a smartphone, a tablet PC, and the like. Hereinafter, the embodiment of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily implement the present invention. However, the present invention can be implemented in various forms and is not limited to the exemplary embodiments described below. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. FIG1 shows an online store system according to an embodiment. 1 , an online store system 1 may include an electronic device 100 and a terminal 200. The system 1 illustrated in FIG1 only shows components relevant to this embodiment. Therefore, those skilled in the art will appreciate that the system 1 may further include general-purpose components other than those shown in FIG1 . The electronic device 100 and the terminal 200 can communicate with each other within a network. A network may include a local area network (LAN), a wide area network (WAN), a value-added network (VAN), a mobile radio communication network, a satellite communication network, or a combination thereof. In a broad sense, a network is a data network (each network component actively communicates with each other via the data network) and may include wired Internet, wireless Internet, and a mobile wireless communication network. Wireless communication may include, for example, but not limited to, wireless LAN (Wi-Fi), Bluetooth, Bluetooth Low Energy, Zigbee, WFD (Wi-Fi Direct), UWB (Ultra-Wideband), infrared communication (IrDA, Infrared Data Association), NFC (Near Field Communication), and the like. Electronic device 100 can operate an online store system. Specifically, when a user accesses an online store using terminal 200, electronic device 100 can display the items available in the online store, and the user can proceed to purchase the items selected by the user. Furthermore, electronic device 100 can provide the user with a discount coupon. The user can then download the discount coupon and use it when purchasing items. When a user of terminal 200 wishes to purchase an item from an online store, electronic device 100 can provide information about a specific discount coupon among available discount coupons. Furthermore, it is possible to recommend the use of a specific discount coupon. For example, if a user wishes to purchase multiple items and has downloaded multiple discount coupons, information can be provided to the user about a combination of each item and each discount coupon that offers the greatest discount. An algorithm that can be used by the electronic device 100 to provide information about a specific discount coupon can be at least one of a heuristic algorithm and an optimization algorithm. According to one embodiment, the electronic device 100 can select one of the heuristic algorithm and the optimization algorithm based on at least one of the following: the number of items, the number of discount coupons, and the sum of the number of items and the number of discount coupons. The selected algorithm can be used to determine a match between each discount coupon and a set of items eligible for a corresponding discount coupon, and the user can be provided with discount coupon-related information. In this case, the discount coupon-related information provided to the user can include, but is not limited to, final price information, information regarding item-coupon matching, and the like. The optimization algorithm can determine a combination of an item and a discount coupon that offers the maximum discount rate among every combination of the corresponding item and any discount coupon that can be used when purchasing the corresponding item. Based on information about a set of discount coupons and items eligible for the discount coupon determined by the optimization algorithm, a maximum discount amount can be provided when purchasing the item; however, due to the high computational complexity of the optimization algorithm, this may result in a longer delay in calculating the result. Meanwhile, the heuristic algorithm uses a greedy approach to determine a set of discount coupons and items eligible for the discount coupons, and therefore, it is unlikely that the heuristic algorithm will always calculate a result that provides the maximum discount amount. However, the heuristic algorithm has a lower computational complexity than the optimal algorithm, and therefore, compared to the optimal algorithm, the heuristic algorithm can provide discount coupon-related information with a shorter delay. The electronic device 100 can provide a platform for an online store. Specifically, the electronic device 100 can provide an application for using the online store to the terminal 200, and the electronic device 100 can execute the application to purchase an item. For example, the electronic device 100 can be included in a server operating the online store. FIG. 2 illustrates a diagram of a shopping cart page provided when purchasing an item in an online store. An online store according to an embodiment can provide a shopping cart function, and a user can add a desired item to a shopping cart. In addition, a user can download a discount coupon available in the online store, and can check the downloaded discount coupon on the shopping cart page. Discount coupons can include fixed-amount discount coupons that provide a predetermined discount amount and fixed-rate discount coupons that provide a predetermined discount rate. Furthermore, depending on the attributes, discount coupons can be applied to different items and provide different discount amounts, such as a discount coupon only for new members or a discount coupon that can be used when purchasing items in a specific category. 2, a user can select some discount coupons in the discount coupons 210 displayed on a shopping cart page and purchase an item at a discounted price. However, when there are multiple discount coupons, if the user directly selects a discount coupon, the discount rate and user convenience may be reduced. Meanwhile, the discount coupon-related information provided by the electronic device 100 can be displayed on the shopping cart page illustrated in FIG2 or on the final payment page, but the page displaying the discount coupon-related information is not limited thereto. In addition, the aforementioned "shopping cart" can be understood as an object containing a set of items selected by a user and a set of available discount coupons. FIG. 3 is a diagram for explaining a scenario in which a conventional bin packing algorithm is used to provide discount coupon related information. Meanwhile, a problem may arise if a conventional bin packing algorithm is used to determine the relationship between each discount coupon and a set of items eligible for the corresponding discount coupon. Here, the bin packing algorithm may refer to an algorithm that, assuming there are a plurality of available bins, each with a capacity C, calculates the minimum number of bins that can accommodate n items, each with a different weight. Referring to FIG3 (a) and (b), when a binning algorithm is used as an algorithm for determining each discount coupon and a set of items eligible for a corresponding discount coupon, the number of weights may correspond to items a user desires to purchase in an online store, and each weight value may correspond to a discount amount for each item. Furthermore, a plurality of available bins may correspond to the discount coupons, and the capacity of each bin may correspond to a maximum discount amount for each discount coupon. FIG3(c) is a diagram for explaining a method of using a binning algorithm to determine each of discount coupons and a set of items enjoying a corresponding discount coupon. Referring to Example 1 in FIG3(c), assuming that the discount amounts for the six items the user wants to purchase are {4, 8, 1, 4, 2, 1} and the maximum discount amount for each of the discount coupons is 10 per discount coupon, using the bin packing algorithm can determine that a total of two discount coupons are used. Specifically, it can be determined that one discount coupon is used to discount the four items with discount amounts {4, 4, 1, 1}, and a different discount coupon is used to discount the two items with discount amounts {8, 2}. Referring to Example 2 in Figure 3(c), assuming that the discount amounts for six items a user wishes to purchase are {9, 8, 2, 2, 5, 4}, and the maximum discount amount per discount coupon is 10, using a bin packing algorithm, it can be determined that a total of four discount coupons are used. Specifically, the item combinations that can be discounted using four discount coupons are {9}, {8, 2}, {2, 5}, and {4}, respectively. Referring to Example 3 in Figure 3(c), assuming that the discount amounts for the seven items a user wishes to purchase are {2, 5, 4, 7, 1, 3, 8}, and the maximum discount amount per discount coupon is 10, using a bin packing algorithm, it can be determined that a total of three discount coupons should be used. Specifically, the item combinations that can be discounted using three discount coupons are {5, 4, 1}, {7, 3}, and {2, 8}, respectively. As shown in Figure 3(c), the bin packing algorithm can efficiently determine the combination of each discount coupon and an item eligible for the corresponding discount coupon. However, it assumes that all discount coupons are fixed-rate discount coupons. In other words, if the available discount coupons include fixed-amount discount coupons, it is difficult to use the bin packing algorithm to determine the optimal combination of an item and a discount coupon. A method of determining an optimal combination of an item and a discount coupon when both a fixed-rate discount coupon and a fixed-amount discount coupon are available will be described with reference to FIG. 4 . FIG. 4 is a diagram for explaining attribute information of a discount coupon. A discount coupon usable in an online store can be a fixed-amount discount coupon or a fixed-rate discount coupon. A fixed-amount discount coupon is a coupon that provides a specific discount amount when a specific condition is met, regardless of the price and quantity of the corresponding item, while a fixed-rate discount coupon is a coupon that provides a discount at a specific discount rate. When an online store offers a fixed-rate discount coupon or discount coupons with different attributes, it can be difficult to determine the optimal combination of an item and a discount coupon using the blank packing algorithm described above. For example, the attribute information of a discount coupon may include a discount type, a discount rate, or a maximum discount amount. If the attribute information of two types of discount coupons D1 and D2 is the same as in Figure 4(a), and three items I1 to I3, each priced at 10,000 won, are included in a shopping cart, the optimal combination of items and discount coupons may be as shown in Figure 4(b). In other words, when a user purchases a first item I1 by applying the first discount coupon D1 and purchases a second item I2 and a third item I3 by applying the second discount coupon D2, the user can benefit from a maximum discount of 3,200 won. However, when the bin packing algorithm is used to determine the combination of items and discount coupons, the result is shown in FIG4 (c). Specifically, since the maximum discount amount of the second discount coupon D2 is 5,000 won, the bin packing algorithm determines that the second discount coupon D2 should be applied to all items I1 to I3. However, this amount is less than the discount amount of 3,200 won in FIG4 (b), and therefore it is not considered an optimal combination. As described above, when a fixed-rate discount coupon is included, it is difficult to determine the best combination of an item and a discount coupon using a conventional bin packing algorithm. Therefore, it is necessary to determine a combination of an item and a discount coupon with a maximum discount amount based on the attribute information of the discount coupon. At the same time, those familiar with the art understand that, in addition to the attribute information of the discount coupon shown in FIG4 (a), the information of the discount coupon may also take into account a ranking of users who are allowed to use the discount coupon and a payment method that is allowed to be used with the discount coupon, in order to calculate the combination of items and discount coupons. FIG. 5 is a diagram for explaining an embodiment of a method of providing information about a discount coupon to be applied to an item through an electronic device. In operation S510, the electronic device 100 may select one of a plurality of algorithms as a first algorithm based on at least one of the following: a number of items, a number of discount coupons, and a sum of the number of items and the number of discount coupons. The plurality of algorithms may include at least one of a heuristic algorithm and an optimal algorithm. For example, in operation S510, the electronic device 100 may select one of the heuristic algorithm and the optimal algorithm as the first algorithm based on whether at least two of the following conditions are satisfied: a first condition associated with the number of items; a second condition associated with the number of discount coupons; and a third condition associated with the sum of the number of discount coupons and the number of items. The first condition may be whether the number of items in a shopping cart exceeds a first threshold, and the second condition may be whether the number of discount coupons in a shopping cart exceeds a second threshold. Furthermore, the third condition may be whether the sum of the number of items in a shopping cart and the number of discount coupons exceeds a third threshold. When at least two of the three conditions are met, the heuristic algorithm may be selected as the first algorithm. Meanwhile, the electronic device 100 according to one embodiment may set the first threshold value to 7, the second threshold value to 3, and the third threshold value to 10. However, this is merely an example, and those skilled in the art will appreciate that various numbers may be applied. Furthermore, the sum of the first and second threshold values ​​may not necessarily be the same as the third threshold value, and the sum of the first and second threshold values ​​may be a value less than or greater than the third threshold value. Here, the heuristic algorithm may be an algorithm that determines the priority of discount coupons based on attribute information of the discount coupons and determines information associated with information about each discount coupon and a set of items eligible for the corresponding discount coupon, wherein this determination is based on selecting an item with the highest discount when using a first discount coupon with the highest priority, and starting with the first discount coupon. In this case, the attribute information of the discount coupon may include at least one of a discount type, a discount rate, and a maximum discount amount, and the discount type may include one of a fixed-rate discount type and a fixed-amount discount type. In addition, a discount coupon of a fixed rate discount type may have a higher priority than a discount coupon of a fixed amount discount type, a discount coupon with a higher fixed discount rate may have a higher priority among discount coupons of the fixed rate discount type, and a discount coupon with a larger fixed discount amount may have a higher priority among discount coupons of the fixed amount discount type. The optimal algorithm may be one that determines, for each combination of a discount coupon and an item, a combination of an item and a discount coupon that has a maximum total discount amount. Furthermore, when there are multiple combinations of discount coupons and items, the optimal algorithm may be one that performs parallel operations to determine, for each of the multiple combinations of discount coupons and items, a set of items that are eligible for a corresponding discount coupon. In the case where the best algorithm is selected as the first algorithm, the method of the present invention may further include: using a heuristic algorithm to identify a discount coupon to be applied to an item when an execution time exceeds a first time threshold. In operation S520, the electronic device 100 may use a first algorithm to determine a set of items that are eligible for each discount coupon and a corresponding discount coupon. The set of items that are eligible for each discount coupon and a corresponding discount coupon may be calculated based on at least one of the following: information about the item and information about the corresponding discount coupon. The item information may include at least one of the item ID, a category to which the item belongs, and a price, and the information about the corresponding discount coupon may include at least one of the following: attribute information of the corresponding discount coupon, a permitted user ranking, and an available payment method. In operation S530 , the electronic device 100 may provide a user with discount coupon-related information based on information about each of the discount coupons and a set of items enjoying a corresponding discount coupon. According to one embodiment, the method of the present invention may further include: determining a set having the largest number of elements among the sets of each discount coupon and an item eligible for the corresponding discount coupon as a first set; reselecting a first algorithm based on the number of elements in the first set; and using the reselected first algorithm and the set of each discount coupon and an item eligible for the corresponding discount coupon to determine a set of each updated discount coupon and an item eligible for the corresponding updated discount coupon. In this case, item-associated information may be determined based on the set of each updated discount coupon and an item eligible for the corresponding updated discount coupon. If the plurality of algorithms include at least one of a heuristic algorithm and an optimal algorithm, and the heuristic algorithm has been selected as the first algorithm, the first algorithm may be reselected by reselecting the optimal algorithm as the first algorithm when the number of elements in the first set is less than or equal to a fifth threshold. Meanwhile, the fifth threshold of the electronic device 100 according to one embodiment may be the same as the third threshold. In other words, the electronic device 100 may compare the third threshold for the sum of the number of items and the number of discount coupons with the number of elements in the first set. This is based on the fact that even if the actual sum of the number of items and the number of discount coupons exceeds the third threshold, if the number of elements in the set of items that qualify for each discount coupon determined by the heuristic algorithm is limited, the delay time will not be significantly increased despite the use of the optimal algorithm. Therefore, in this case, the electronic device 100 can use the optimal algorithm to determine whether each discount coupon is associated with a set of items that qualify for a corresponding discount coupon. In addition, in the case where only one discount coupon is used in one shopping cart and the items and discount coupon are included in a first shopping cart, the method of the present invention may further include: classifying items recommended for use with the same discount coupon based on information about each discount coupon and a set of items that enjoy a corresponding discount coupon; and dividing the first shopping cart into multiple shopping carts based on the classification. Therefore, even when multiple items and multiple discount coupons are included in one shopping cart, the electronic device 100 can provide a user with a combination of items and discount coupons that has a maximum discount benefit, as well as discount coupon-related information. In the electronic device 100 according to one embodiment, discount coupon-related information may be displayed on at least one of a shopping cart page and a final payment page in an online store. Meanwhile, electronic device 100 according to one embodiment can store information regarding each discount coupon and a set of items eligible for the corresponding discount coupon, as well as discount coupon-associated information. Furthermore, when it becomes necessary to provide later information regarding a discount coupon and a set of items to which the same discount coupon applies, electronic device 100 can provide pre-stored information. In this case, electronic device 100 can reduce the delay time required to determine a discount coupon and a set of items to which the discount coupon applies. Furthermore, according to one embodiment, the electronic device 100 may use a pruning method to determine a discount coupon and the set of items to which it applies. For example, in one embodiment, even if any one of a plurality of discount coupons is used, the coupon may not affect the total discount amount. In this case, the electronic device 100 may stop calculating a combination including the corresponding discount coupon and an item. FIG. 6 is a diagram for explaining another embodiment of a method of providing information about a discount coupon to be applied to an item through an electronic device. According to one embodiment, electronic device 100 may select a first algorithm based on the subset of combinations obtained by matching each discount coupon with an item eligible for the corresponding discount coupon. In this case, the likelihood of selecting the optimal algorithm is increased compared to selecting the first algorithm based on the total number of items and discount coupons. Therefore, there are many situations in which a user may be provided with information regarding the optimal combination of an item and a discount coupon. In operation S610, the electronic device 100 may calculate a plurality of sub-combinations based on information about each of the discount coupons by matching each of the discount coupons with an item that enjoys a corresponding discount coupon. In this case, the electronic device 100 may determine a sub-combination having the largest number of elements among the plurality of sub-combinations as a first sub-combination. In operation S620, electronic device 100 may determine whether the number of elements in the first subset exceeds a fourth threshold. If the number of elements in the first subset exceeds the fourth threshold, operation S630 may be performed; if not, operation S650 may be performed. Meanwhile, the fourth threshold may be the same as the third threshold, but the two thresholds are not limited thereto. In operation S630 , the electronic device 100 may use a heuristic algorithm to determine each of the discount coupons and a set of items that enjoy a corresponding discount coupon. Meanwhile, a procedure for executing the heuristic algorithm will be described with reference to FIG. 7 . In operation S650, using the optimization algorithm, the electronic device 100 can determine a set of a discount coupon and an item that is eligible for the discount coupon, which can provide a maximum discount benefit. Meanwhile, a process of executing the optimization algorithm will be described with reference to FIG8. Although not shown in FIG6 , when the execution time of operation S650 exceeds a first time threshold, electronic device 100 may use a heuristic algorithm to identify a discount coupon to be applied to an item. In other words, when the execution time of an optimal algorithm exceeds a predetermined time, electronic device 100 may use a heuristic algorithm rather than the optimal algorithm to identify a discount coupon to be applied to an item. This reduces latency compared to a method employing only the optimal algorithm. According to one embodiment, electronic device 100 may set the first time threshold to two seconds, but this is merely an example, and those skilled in the art will appreciate that various time periods may be used as the first time threshold. In operation S640, the electronic device 100 may determine a set having the largest number of elements among the set of each discount coupon determined in operation S630 and an item eligible for a corresponding discount coupon, as a first set, and may determine whether the number of elements in the first set exceeds a fifth threshold. If the number of elements in the first set exceeds the fifth threshold, the electronic device 100 may perform operation S660; if not, the electronic device 100 may perform operation S650. Meanwhile, according to one embodiment, the fifth threshold may be the same value as the third threshold, but the two thresholds are not limited thereto. When performing the operations described above, even if a heuristic algorithm is selected as the first algorithm, if the set of a discount coupon and an item eligible for the discount coupon determined by the heuristic algorithm has a small number of elements, the electronic device 100 can use the optimal algorithm again to determine a combination of the discount coupon and the item. Therefore, the electronic device 100 according to the present invention can provide the same recommendation results to multiple users who apply the same discount coupon to the same item. In operation S660 , the electronic device 100 may provide a user with discount coupon-related information based on information about each of the discount coupons and a set of items enjoying a corresponding discount coupon. FIG7 is a diagram illustrating a process of executing a heuristic algorithm according to an embodiment. In operation S710, the electronic device 100 may determine the priority of the discount coupons based on the attribute information of the discount coupons. Here, the attribute information of each discount coupon may include at least one of a discount type, a discount rate, and a maximum discount amount, and the discount type may include one of a fixed-rate discount type and a fixed-amount discount type. For example, a discount coupon of a fixed rate discount type may have a higher priority than a discount coupon of a fixed amount discount type, a discount coupon with a higher discount rate may have a higher priority among discount coupons of a fixed rate discount type, and a discount coupon with a higher discount amount may have a higher priority among discount coupons of a fixed amount discount type, but a criterion for determining the priority between discount coupons is not limited to this. In operation S720, the electronic device 100 may determine information associated with information regarding each discount coupon and a set of items eligible for the corresponding discount coupon, based on selecting an item with the highest discount when using a first discount coupon having the highest priority, and starting with the first discount coupon. The information associated with information regarding each discount coupon and a set of items eligible for the corresponding discount coupon may include, but is not limited to, final price information, information regarding a match between an item and each discount coupon, and the like. The heuristic algorithm described above can be used to calculate the combinations of discount coupons D1 and D2 and items I1 to I3 shown in FIG4 . When the attribute information of the discount coupons is the same as that shown in FIG4 (a), the priority of the second discount coupon D2 with a fixed-rate discount type may be higher than the priority of the first discount coupon D1 with a fixed-amount discount type. Therefore, the electronic device 100 may first select the item that is eligible for the second discount coupon D2. Meanwhile, the second discount coupon D2 is applicable to all three items I1 to I3. However, to further utilize the first discount coupon D1, the electronic device 100 may determine a second item I2 and a third item I3 as items for the second discount coupon D2 and calculate a combination {D2, I2, I3} thereof. Furthermore, a combination {D1, I1} of the first discount coupon D1 and the item I1 eligible for the first discount coupon D1 may be calculated. Therefore, even when using a heuristic algorithm, it is possible to calculate the same discount coupon and item combination as shown in FIG. 4( b ). Furthermore, in the case of a heuristic algorithm according to an embodiment, even if all items included in a shopping cart are items to which a discount coupon with a highest priority is applicable, a discount amount may be further increased when a discount coupon with a lower priority is used. Therefore, the heuristic algorithm according to an embodiment may determine to use a discount coupon with a lower priority for a number of items that is smaller than the number of items to which a discount coupon with a highest priority is applicable. FIG8 is a diagram illustrating a process of executing an optimization algorithm according to an embodiment. In operation S810, the electronic device 100 may determine each combination of a discount coupon and an item. For example, assuming that the items eligible for a first discount coupon D1 are first items I1 through I3 and the items eligible for a second discount coupon D2 are third items I3 through I5, all combinations of discount coupons and items generated in operation S810 may include each combination of the first items I1 through I3 with the first discount coupon D1 (i.e., eight combinations) and each combination of the third items I3 through I5 with the second discount coupon D2 (i.e., eight combinations). In operation S820 , the electronic device 100 may determine a combination of an item and a discount coupon having a maximum discount amount in total for each combination of the discount coupon and the item. As described above, when an optimal algorithm is used to calculate the combination of individual discount coupons and items, it is possible to calculate the combination that provides a maximum discount amount. However, when the optimal algorithm is executed for n items and m discount coupons, the computational complexity is mx2 n , and the computational complexity may increase significantly as the number of items increases. When the computational complexity increases significantly, the delay time for providing a decision to a user also increases. Therefore, when the execution of the optimal algorithm exceeds a predetermined time threshold, a heuristic algorithm may be used instead of the optimal algorithm to determine the combination of discount coupons and items and provide relevant information to the user. FIG. 9 is a diagram for explaining an embodiment of dividing a plurality of items in a shopping cart into a plurality of shopping carts. In the case of an online store according to an exemplary embodiment, the number of discount coupons applicable to items included in a shopping cart may be fixed. For example, even if ten items and three discount coupons are included in a shopping cart, the number of discount coupons applicable to a single payment may still be limited to one. For example, referring to FIG9(a), two discount coupons (a first discount coupon and a second discount coupon) and four items (a first item to a fourth item) may be included in a shopping cart. Furthermore, as a result of calculating the combination of discount coupons and items using a heuristic algorithm or an optimization algorithm, it may be recommended to apply the first discount coupon to the first and second items and the second discount coupon to the third and fourth items. In this case, if the number of discount coupons that can be used in a shopping cart is limited to one, a user has no choice but to use only one of the first discount coupon and the second discount coupon. To address this issue, the electronic device 100 according to the present invention can divide the shopping cart according to a combination of each discount coupon and an item that qualifies for a corresponding discount coupon. Referring to FIG9( b ), the electronic device 100 can divide the shopping cart according to the number of discount coupons and add items that qualify for each discount coupon to different shopping carts. Therefore, the electronic device 100 of the present invention can provide a user with a method for efficiently using available discount coupons without limiting the number of discount coupons applicable to an item. FIG. 10 is a diagram for explaining the effectiveness of a method of providing information about a discount coupon to be applied to an item according to an exemplary embodiment. Figure 10(a) illustrates the latency that occurs when an optimization algorithm is used to calculate the optimal combination of an item and a discount coupon. In Figure 10(a), "P99 Average" represents the average latency for the slowest 1% of responses, and "P99 Maximum" represents the maximum latency for the slowest 1% of responses. Furthermore, "Mean" represents the average of the total latency. Referring to Figure 10(a), when the optimization algorithm is used to calculate the optimal combination, the maximum latency for the slowest 1% of responses is approximately 50 ms to 60 ms. FIG10(b) is a diagram for explaining the number of combinations of items and discount coupons that are calculated as a basis when using each algorithm. The "optimal algorithm" in FIG10(b) refers to a case where the optimal algorithm is selected or reselected in the method according to the present invention, that is, a case where the optimal algorithm is used to calculate a combination of a discount coupon and an item, and the "heuristic algorithm" refers to a case where a heuristic algorithm is used to calculate a combination of a discount coupon and an item in the method according to the present invention. In addition, "optimal algorithm + heuristic algorithm" is the same as the sum of the values ​​of the two indices described above. Referring to FIG10(b), when the method according to the present invention is actually implemented, it can be seen that in most cases a combination of a discount coupon and an item is calculated using the optimal algorithm. Figure 10(c) is an enlarged view of the "heuristic algorithm" in Figure 10(b). Referring to Figure 10(c), when the method according to the present invention is actually implemented, it can be seen that a combination of a discount coupon and an item is calculated using only the heuristic algorithm. FIG10( d ) is a diagram for explaining a case where only the heuristic algorithm is used because the sum of the number of items and the number of discount coupons is too large. The diagram shown in FIG10( d ) is almost similar to the diagram shown in FIG10( c ), and thus, it can be seen that the case where only the heuristic algorithm is used is mainly when the sum of the number of items and the number of discount coupons exceeds a predetermined threshold value. FIG11 is a block diagram of an electronic device according to an embodiment. According to one embodiment, an electronic device 1100 may include a memory 1110 and a processor 1120. The electronic device 1100 illustrated in FIG11 only shows components relevant to the embodiment of the present invention. Therefore, those skilled in the art will understand that the electronic device 1100 may further include general-purpose components other than those shown in FIG11. Because the description of the electronic device 1100 is applicable to the description of the electronic device 100, redundant description will be omitted. Memory 1110 is hardware that stores various types of data processed by electronic device 1100. Memory 1110 may store, for example, data processed or to be processed by electronic device 1100. Memory 1110 may store at least one instruction for operating processor 1120. Furthermore, memory 1110 may store programs or applications to be executed by electronic device 1100. Memory 1110 may include random access memory (RAM) (such as dynamic random access memory (DRAM) and static random access memory (SRAM)), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), CD-ROM, Blu-ray or other optical disc storage devices, hard disk drives (HDDs), solid-state drives (SSDs), and flash memory. Processor 1120 can control the overall operation of electronic device 1100 and process data and signals. Processor 1120 can control the overall operation of electronic device 1100 by executing at least one instruction or at least one program stored in memory 1110. Processor 1120 can be implemented as a central processing unit (CPU), a graphics processing unit (GPU), or an application processor (AP), but is not limited thereto. Processor 1120 may select one of a plurality of algorithms as a first algorithm based on at least one of the following: a number of items; a number of discount coupons; and a sum of the number of items and the number of discount coupons. Here, the plurality of algorithms may include at least one of a heuristic algorithm and an optimal algorithm. According to one embodiment, processor 1120 may select one of the heuristic algorithm and the optimal algorithm as the first algorithm based on whether at least two of the following conditions are satisfied: a first condition associated with the number of items; a second condition associated with the number of discount coupons; and a third condition associated with the sum of the number of discount coupons and the number of items. Here, the first condition may be whether the number of items in a shopping cart exceeds a first threshold value, and the second condition may be whether the number of discount coupons in the shopping cart exceeds a second threshold value. In addition, the third condition may be whether the sum of the number of items in a shopping cart and the number of discount coupons exceeds a third threshold value, and when at least two of the three conditions are met, the heuristic algorithm may be selected as the first algorithm. According to one embodiment, the processor 1120 may calculate a plurality of subcombinations based on information about each of the discount coupons by matching each of the discount coupons with an item that enjoys the corresponding discount coupon. A subcombination having the largest number of elements among the plurality of subcombinations is calculated as a first subcombination. When the number of elements in the first subcombination exceeds a fourth threshold, the processor 1120 may select a heuristic algorithm as the first algorithm. Specifically, when the number of elements in the first subcombination exceeds the fourth threshold, the processor 1120 may select the heuristic algorithm as the first algorithm. Meanwhile, the heuristic algorithm may be an algorithm that determines the priority of discount coupons based on attribute information of the discount coupons and determines information associated with information about each discount coupon and a set of items eligible for the corresponding discount coupon, wherein this determination is based on selecting an item with the highest discount when using a first discount coupon with the highest priority, and starting with the first discount coupon. In this case, the attribute information of the discount coupon may include at least one of a discount type, a discount rate, and a maximum discount amount, and the discount type may include one of a fixed-rate discount type and a fixed-amount discount type. In addition, a discount coupon of a fixed rate discount type may have a higher priority than a discount coupon of a fixed amount discount type, a discount coupon with a higher fixed discount rate may have a higher priority among discount coupons of the fixed rate discount type, and a discount coupon with a larger fixed discount amount may have a higher priority among discount coupons of the fixed amount discount type. Meanwhile, the optimal algorithm may be an algorithm that determines a combination of an item and a discount coupon that has a maximum discount amount with respect to all combinations of discount coupons and items. Since the operation is performed on all combinations of discount coupons and items, if the sum n of the number of discount coupons and the number of items increases, the computational complexity increases by 2. n Also, in a case where there are multiple combinations of discount coupons and items, the optimal algorithm may be equivalent to executing, in parallel, a determination of each of the discount coupons and a set of items that enjoy a corresponding discount coupon for each of the multiple combinations. In a situation where the best algorithm is selected as the first algorithm, when an execution time exceeds a first time threshold, the processor 1120 may use a heuristic algorithm to identify a discount coupon to be applied to the item. Processor 1120 can use the selected first algorithm to determine each discount coupon and a set of items that qualify for the corresponding discount coupon. Furthermore, when there are multiple combinations of discount coupons and items, processor 1120 according to one embodiment can simultaneously determine a discount coupon to be recommended for each of the multiple combinations. For example, latency can be reduced by simultaneously calculating a discount amount for a combination {D1, I1, I2, I3} comprising a first coupon and first through third items, and calculating a discount amount for a combination {D2, I4, I5, I6} comprising a second coupon and fourth through sixth items. The example described above is an example of calculating a discount amount for each combination, but determining a discount coupon to be recommended is not limited to this. According to one embodiment, the processor 1120 may determine a set having the largest number of elements among a set of each discount coupon and an item eligible for the corresponding discount coupon as a first set, reselect a first algorithm based on the number of elements in the first set, and use the set of each discount coupon and an item eligible for the corresponding discount coupon and the reselected first algorithm to determine a set of each updated discount coupon and an item eligible for the corresponding updated discount coupon. In this case, information about the item can be determined based on the set of each updated discount coupon and an item eligible for the corresponding updated discount coupon. If the plurality of algorithms include at least one of a heuristic algorithm and an optimal algorithm and the heuristic algorithm has been selected as the first algorithm, reselecting the first algorithm by the processor 1120 may be reselecting the optimal algorithm as the first algorithm when the number of elements in the first set is less than or equal to a fifth threshold value. At the same time, each discount coupon and a set of items eligible for a corresponding discount coupon may be calculated based on at least one of the following: information about the item and information about the corresponding discount coupon. Furthermore, the information about the item may include at least one of the following: an item ID, a category to which the item belongs, and a price of the item, and the information about the corresponding discount coupon may include at least one of the following: attribute information about the corresponding discount coupon, a permitted user ranking, and an available payment method. In addition, in a situation where only one discount coupon can be used in a shopping cart in an online store and when items and discount coupons are included in a first shopping cart, the processor 1120 may classify items recommended for use with the same discount coupon based on information about each of the discount coupons and a set of items that enjoy a corresponding discount coupon, and may divide the first shopping cart into multiple shopping carts based on the classification. Furthermore, the processor 1120 may display discount coupon related information on at least one of a shopping cart page and a final payment page of the online store. The electronic device or terminal according to the embodiments described above may include a processor, a memory that stores and executes program data, a permanent storage device (such as a disk drive), a communication port for communicating with an external device, and a user interface device (such as a touch panel, a key, and a button). The method implemented by the software module or algorithm can be stored as computer-readable program code or program commands executable by the processor in a computer-readable recording medium. Here, the computer-readable recording medium can be a magnetic storage medium (for example, a read-only memory (ROM), a random access memory (RAM), a floppy disk, or a hard disk) or an optical readable medium (for example, a CD-ROM or a digital versatile disc (DVD)). The computer-readable recording medium can be distributed to computer systems connected via a network, allowing the computer-readable program code to be stored and executed in a distributed manner. The medium can be read by a computer, stored in a memory, and executed by a processor. Embodiments of the present invention can be represented by functional blocks and various processing steps. These functional blocks can be implemented by various numbers of hardware and / or software configurations that perform specific functions. For example, embodiments of the present invention can use direct circuit configurations that can perform various functions by controlling one or more microprocessors or other control devices, such as a memory, a processor, a logic circuit, and a lookup table. Similar to components that can be executed by software programming or software components, embodiments of the present invention can be implemented by programming or descriptive languages ​​(such as C, C++, Java) and a combination of various algorithms implemented by a combination of data structures, programs, routines, or other programming configurations. Functional aspects can be implemented by algorithms executed by one or more processors. In addition, for example, embodiments of the present invention can use related technologies to perform electronic environment settings, signal processing, and / or data processing. The terms "mechanism," "element," "component," and "configuration" can be used broadly and are not limited to mechanical and physical components. For example, these terms may include the meaning of a series of software routines associated with a processor. The embodiments described above are merely examples and other embodiments may be implemented within the scope of the appended claims. 100: Electronic device 200: Terminal 210: Discount coupon 1100: Electronic device 1110: Memory 1120: Processor S510: Operation S520: Operation S530: Operation S610: Operation S620: Operation S630: Operation S640: Operation S650: Operation S660: Operation S710: Operation S720: Operation S810: Operation S820: Operation FIG1 shows an online store system according to an embodiment. FIG. 2 illustrates a diagram of a shopping cart page provided when purchasing an item in an online store. FIG. 3 is a diagram for explaining a scenario in which a conventional bin packing algorithm is used to provide discount coupon related information. FIG. 4 is a diagram for explaining attribute information of a discount coupon. FIG. 5 is a diagram for explaining an embodiment of a method of providing information about a discount coupon to be applied to an item through an electronic device. FIG. 6 is a diagram for explaining another embodiment of a method for providing information about a discount coupon applicable to an item through an electronic device. FIG7 is a diagram illustrating a process of executing a heuristic algorithm according to an embodiment. FIG8 is a diagram illustrating a process of executing an optimization algorithm according to an embodiment. FIG. 9 is a diagram for explaining an embodiment of dividing a plurality of items and discount coupons contained in a shopping cart into a plurality of shopping carts. FIG. 10 is a diagram for explaining the effectiveness of a method of providing information about a discount coupon applicable to an item according to an exemplary embodiment. FIG11 is a block diagram of an electronic device according to an embodiment. S510: Operation S520: Operation S530: Operation

Claims

1. A method of using a processor of an electronic device to provide information about a discount coupon to be applied to an item, the method comprising: A first algorithm is selected from a plurality of algorithms based on at least one of the following: a number of items, a number of discount coupons, or the sum of the number of items and the number of discount coupons; the first algorithm is used to determine a set containing each of the discount coupons and an item for each of the discount coupons; and discount coupon-related information is provided to a user based on information about the set of items for each of the discount coupons and for each of the discount coupons, wherein the method further includes: when only one discount coupon is allowed in a shopping cart in an online store and the items for each of the discount coupons and for each of the discount coupons are contained in a first shopping cart: categorizing items recommended for the same discount coupon based on the information about the items for each of the discount coupons and for each of the discount coupons; and dividing the first shopping cart into a plurality of shopping carts based on the categorization. The plurality of algorithms includes a heuristic algorithm and an optimal algorithm executed by the processor, wherein the selection of the first algorithm includes selecting the heuristic algorithm as the first algorithm when at least two of the following conditions are met: a first condition, wherein the number of the items exceeds a first threshold; a second condition, wherein the number of the discount coupons exceeds a second threshold; or a third condition, wherein the sum of the number of the discount coupons and the number of the items exceeds a third threshold, and otherwise the optimal algorithm is selected as the first algorithm.

2. The method of request item 1, wherein the heuristic algorithm is based on a greedy method to determine the set, wherein the selection of the first algorithm includes: Based on information about each of the discount coupons, multiple sub-combinations are calculated by matching each of the discount coupons with the item enjoying each of the discount coupons; the sub-combination with the largest number of elements among the multiple sub-combinations is determined as a first sub-combination; and when the number of elements in the first sub-combination exceeds a fourth threshold, the heuristic algorithm is selected as the first algorithm.

3. The method of claim 2 further includes: The algorithm firstly determines a set containing the largest number of elements in the set of items for each of the discount coupons and the set of items for each of the discount coupons. Based on the number of elements in the first set, the algorithm is reselected. The reselected algorithm and the set of items for each of the discount coupons and the set of items for each of the discount coupons are used to determine an updated discount coupon and a set of items for each of the updated discount coupons. Information associated with the item is determined based on the updated discount coupon and the set of items for each of the updated discount coupons. The optimal algorithm includes an algorithm that, for each combination of discount coupons and items, determines the combination of discount coupons and items that has a maximum total discount amount. After selecting the heuristic algorithm as the first algorithm, the reselection of the first algorithm includes: when the number of the elements in the first set is less than or equal to a fifth threshold value, reselecting the best algorithm as the first algorithm.

4. The method of request item 3, wherein the method further includes: In the case where the best algorithm is selected as one of the first algorithms, when an execution time exceeds a first time threshold, the heuristic algorithm is used to identify a discount coupon to be applied to the item.

5. The method of request 3, wherein when there are multiple combinations of such discount coupons and such items, operations for determining the set of such items for each of such discount coupons and the items for which each of such discount coupons is enjoyed are performed in parallel with respect to the multiple combinations.

6. The method of claim 2, wherein the set of each of the discount coupons and the item enjoyed by each of the discount coupons is determined based on information about the item and information about each of the discount coupons, wherein the information about the item enjoyed by each of the discount coupons includes at least one of the following: identification information of the item, a category of the item, or a price of the item, and wherein the information about each of the discount coupons includes at least one of the following: attribute information of each of the discount coupons, a user ranking corresponding to each of the discount coupons, or a payment method corresponding to each of the discount coupons.

7. The method of request item 6, wherein the attribute information of each of the discount coupons includes at least one of the following: a discount type, a discount rate or a maximum discount amount, and the discount type includes one of the following: a fixed rate discount type or a fixed amount discount type.

8. The method of claim 7, wherein the heuristic algorithm determines a priority of each of the discount coupons based on the attribute information of each of the discount coupons, and wherein the determination is associated with information about each of the discount coupons and the set of items for which each of the discount coupons is enjoyed, the determination being based on the selection of the item with the highest discount when using the first discount coupon with the highest priority.

9. The method of request item 8, wherein one of the fixed rate discount types has a higher priority than one of the fixed amount discount types, wherein one of the discount coupons with a higher discount rate has a higher priority among the discount coupons of the fixed rate discount type, and wherein one of the discount coupons with a larger discount amount has a higher priority among the discount coupons of the fixed amount discount type.

10. The method of request 1, wherein the discount coupon related information is displayed on at least one of a shopping cart page and a final payment page of an online store.

11. An electronic device for providing information about a discount coupon to be applied to one of an item, the device comprising: A memory configured to store at least one instruction; and a processor configured to execute the at least one instruction to: select one of a plurality of algorithms as a first algorithm based on at least one of: a number of items, a number of discount coupons, or the sum of the number of items and the number of discount coupons; use the first algorithm to determine a set containing each of the discount coupons and an item for each of the discount coupons; and provide a user with discount coupon-related information based on information about the set of items for each of the discount coupons and the item for each of the discount coupons, wherein the processor is further configured to: allow only one discount coupon to be used in a shopping cart in an online store and the items for each of the discount coupons and the item for each of the discount coupons are contained in a first shopping cart: Based on information about each of the discount coupons and the item for which each of the discount coupons is used, the items recommended for use with the same discount coupon are categorized; and based on the categorization, the first shopping cart is divided into a plurality of shopping carts, wherein the plurality of algorithms includes a heuristic algorithm and an optimal algorithm executed by the processor, wherein the selection of the first algorithm includes selecting the heuristic algorithm as the first algorithm when at least two of the following conditions are met: a first condition, wherein the number of the items exceeds a first threshold; a second condition, wherein the number of the discount coupons exceeds a second threshold; or a third condition, wherein the sum of the number of the discount coupons and the number of the items exceeds a third threshold, and otherwise the optimal algorithm is selected as the first algorithm.

Citation Information

Patent Citations

  • Electronic commerce system, electronic commerce server, and computer program

    JP2006023864A

  • Systems and methods for instant e-coupon distribution

    TW201503021A

  • Marketing plan determining method and device, and electronic apparatus

    TW201937429A

  • Techniques For Linking Consumers For Coupon Matching

    US20140180782A1