The numerous entities in this country that provide various fare do not keep track of the individualized preferences of their many users, and as such, are unable to recommend to a user items that are consistent with the user's preferences. A user may end up selecting an item ill-suited for that user even though the entity carries items that better fit the user's preferences. The situation can become more problematic where the user tries to recall similar fare previously selected at a different entity. Consequently, unless a solution rooted in computer technology is employed, an entity is simply incapable, as a practical matter, of recommending to a user an item he or she selected at a different entity, or a suitable alternative thereof. Similarly, even when users visit an entity they have visited before, they may fail to select fare previously selected and appreciated because they do not recall prior experiences at that entity.
The systems and methods disclosed herein may, among other things, allow for the evaluation of received patterns in a self-learning manner so as to enable an entity to provide each user with a distinct result.
In an embodiment, a computer-implemented self-learning method to assist decision-making involving any one of a plurality of entities comprises the step of creating, using an online structure, a user record. The user record includes a first item a user (patron) selected at a first of the plurality of entities and a second item the user selected at a second of the plurality of entities. The identity of the user is authenticated when the user interacts with any of the plurality of entities. The online structure evaluates the user record to determine a recommendation for the user interaction. The recommendation includes a recommended item. The recommendation is transmitted over a network to an entity computer. Activity data transmitted by the entity computer is received at the online structure, and the user record is updated using the activity data.
In another embodiment, a self-learning system to assist decision-making involving any one of a plurality of entities through an online structure comprises a processor and an application programming interface for communicating with an entity computer. The system includes an authenticator for comparing biometric data supplied by a user upon his or her interaction with any one of the plurality of entities with a biometric record. An evaluator evaluates a historical record of the user. The evaluation includes determining whether the user is a repeat customer. A recommendation engine is provided for generating a recommendation for the user based on the evaluation. The recommendation includes a recommended item. A compiler receives activity data from the entity computer to update the historical record.
In yet another embodiment, a non-transitory computer readable medium has computer executable instructions stored thereon. The executable instructions are executed by a digital processor to perform the method of assisting decision-making involving any one of a plurality of entities. The non-transitory computer readable medium includes instructions for generating a user record using an online structure having a recommendation determining processor. The user record includes a first item a user selected at a first of the plurality of entities, and a second item the user selected at one of the first entity and a second of the plurality of entities. The medium has instructions for authenticating an identity of the user when the user interacts with any one of the plurality of entities, and instructions for evaluating the user record to determine a recommendation for the user interaction. The recommendation includes a recommended item. The medium includes instructions for transmitting, over a network, the recommendation to an entity computer, and for receiving at the online structure activity data transmitted by the entity computer. The medium further includes instructions for updating the user record using the activity data.
Software 114 and food and beverage (i.e., fare) database 116 may be stored within a transitory or non-transitory portion of the memory 110. Software 114 includes machine readable instructions that are executed by processor 106 to perform the functionality of structure 102 as described herein. The food and beverage database 116 may include user records 128 pertaining to a plurality of users (e.g., the food and beverage database 116 may include N user records 128, each pertaining to one of N users).
The online structure 102, using protocol 118 and Application Programming Interface 132A, may communicate over a wired or wireless network 104 with a computer 150 of an entity 152. The term entity, as used herein, refers to one or more of a fine dining, fast food, or other restaurant, a bar, an ice cream shop, a juice shop, a food truck, a grocery store, or any other establishment that serves or otherwise sells food or drink items. The entity computer 150 has a processor 154 and a memory 156. Processor 154 represents one or more digital processors, and memory 156 represents one or more of volatile memory (e.g., RAM) and non-volatile memory (e.g., ROM, FLASH, magnetic media, optical media, and so on). Memory 156 may, in embodiments, be external to the entity computer 150 and be accessed by the computer 150 over a network.
In one embodiment, computer 150 is a mobile computer, such as a laptop, notebook, tablet, smartphone, et cetera, that is used by the entity 152. In another embodiment, computer 150 is a stationary computer, such as a desktop computer situated within the entity 152. The entity 152 is envisioned to download an entity application 158 onto computer 150 that enables computer 150 to communicate with the structure 102 via API 132A. The entity application 158 is software stored in a non-transitory portion of memory 156, and includes machine readable instructions that are executed by processor 154 to improve functionality of computer 150 and to allow communication with structure 102. As discussed herein, in embodiments, entity application 158 provides a graphical user interface that prompts the entity computer 150 to generate an authentication invite 160 and activity data 162.
Network 104, which is formed in part by one or more of the Internet, wireless networks, wired networks, local networks, and so on, facilitates communication between the structure 102 and the entity computer 150. The processor 154 of the entity computer 150, via the entity application 158 and over the network 104, may convey to the structure 102 activity data 162, and receive from the structure 102 a personalized recommendation 127 for a user 136, as discussed below. In embodiments, the entity application 158 may further generate an authentication invite 160 that is communicated to the structure 102 over the network 104.
User 136, who is a patron of the entity 152, may have a mobile computer 134 (e.g., a smart phone, a notebook, a tablet, a laptop, et cetera). The mobile computer 134 includes a processor 138 in communication with memory 142. In an embodiment, the processor 138 is also in communication with a biometric scanner 140. The processor 138 represents one or more digital processors, the memory 142 represents one or more of volatile memory and non-volatile memory, and the biometric scanner 140 represents one or more biometric scanning devices (e.g., a device that scans fingerprints, facial features, handwriting, et cetera) now known or subsequently developed. Mobile application 144, which contains software instructions implemented by the processor 138 to improve the functionality of the computer 134 and to perform the functions thereof as described herein, is stored within a transitory or non-transitory portion of the memory 142. The user 136 downloads the mobile application 144 onto mobile computer 134 to enable mobile computer 134 to communicate with the structure 102 (and/or the entity computer 150). In an embodiment, the mobile application 144 provides a graphical user interface that prompts the user to generate an authentication request 146.
The mobile computer 134 may communicate with the structure 102 over network 104A. The network 104A is preferably (but not necessarily) a wireless network, such as a wireless personal area network, local area network, and so on. As described below, in embodiments, the processor 138 of the mobile computer 134 may communicate to the structure 102 the authentication request 146 over the wireless network 104A. The structure 102 may include an application programming interface (API) 132B to facilitate such communication between it and the mobile computer 134.
The mobile computer 134 may, in embodiments, include an entity locator 148. Entity locator 148 may comprise a location determination device, such as one or more of a global positioning system, a cellular ID locator, a Wi-Fi fingerprinting device, et cetera, which may automatically identify the entity 152 the user 136 is currently visiting (i.e., interacting with). In an embodiment, the entity locator 148 may determine an approximate location of the mobile computer 134 and list on the graphical user interface entities proximate the location, and the user 136 may select the entity he or she is visiting (e.g., entity 152) from that list.
Personal information 202 (
Check-in records 204 (
The entity identification number 320 represents a unique number associated with each entity in the system 100. The check-in date and time 322 lists a date and time at which the user 136 visited the entity with which the particular entity identification number 320 is associated. Entity category 324 categorizes the entity as one of a restaurant, food truck, retail store, bar, or other establishment that serves or otherwise sells food and drink items. Geographical coordinates 326 represents the geospatial coordinates of that entity. The payment method and amount 330 represents the method which user 136 used to pay for the food and drink items and related services (e.g., cash, credit card, debit card, gift card, loyalty card, coupon, et cetera), and the amount paid therefor. Number of people 332 represents the number of individuals that accompanied the user 136 to the particular entity at that visit. Total visits 334 represents the number of times the user 136 has checked-in at that entity after installation of the mobile application 144. Visit frequency 336 represents the number of times per year (or per month, per week, et cetera) the user 136 visits the entity on average, and last visit 338 outlines the date and time on which the user 136 last visited that entity.
Food and beverage transaction data 206 (
The industry category 340 represents the type of industry to which the entity the user 136 visited belongs (e.g., beverage industry, food and beverage industry, et cetera). The channel 342 outlines the mode used by the user 136 to order food or drink items at the entity (e.g., entity 152). The primary item 344 represents the main item (e.g., an entrée) ordered by the user 136 at the entity. The primary item principal constituents 346 and primary item other constituents 348 respectively include the main ingredient and secondary ingredients of the primary item 344. For example, where the user 136 ordered shrimp Alfredo as the primary item 344, the protein (shrimp) may constitute the principal constituent 346, and Fettuccine, parmesan, cheese, onions, garlic, et cetera, may constitute the other constituents 348.
The secondary item 350 represents, for example, an appetizer or dessert ordered by the user 136. The secondary item principal constituent 352 and the secondary item other constituents 354 respectively represent the main ingredient and secondary ingredients of the secondary item 350. Those skilled in the art will appreciate that where the user 136 ordered two or more secondary items 350 at a visit to a particular entity (e.g., house salad, chicken wings, and cheesecake), that the principal constituents 352 and other constituents 354 of each may be included in the food and beverage database 206.
The beverage 356 includes a beverage ordered by the user 136 at his or her visit to the respective entity, and the cuisine type 358 represents cuisine type (e.g., Italian, American, Chinese, Thai, et cetera) of the primary item 344. Allergies 360 includes one or more food or drink items or ingredients to which the user 136 is allergic (or to which the user is otherwise averse to). Special instructions 362 represents free text that can be used by an entity (e.g., entity 152) to enter in any special instructions provided by the user 136 with his or her order.
By way of example, the user record 128(1) may indicate that a user 136 named John (
Attention is now directed to
The method 400 may begin at step 402, and at step 404, the user 136 may visit the entity 152. At step 406, the identity of the user 136 may be authenticated.
At step 506, the authentication invite 160 may be communicated by the entity computer 150 over the network 104 to the structure 102. The structure 102, in response to the authentication invite 160, may send to the mobile computer 134 (
At step 508, the user 136 may use the biometric scanner 140 (
The structure 102 may have an authenticator 122 (
As discussed above, the biometric record of the user 136, which may be created when the user 136 downloads and installs the mobile application 144 (or at another time), may be stored at a secure location (e.g., in an encrypted, password protected server (not shown)), and the food and beverage database 116 may contain tokens (e.g., tokens 318A and 318B) that are indexed to the biometric record and can be used to access the biometric record. Such may provide an additional level of security for the stored sensitive personal information of the user 136 (i.e., his or her biometric record) as compared to the information in the food and beverage database 116.
When checking-in via method 600, the user 136, after step 404 (
Once the entity 152 the user 136 is visiting is identified at step 604, at step 606, the mobile application 144 may communicate over the wireless network 104A the authentication request 146 to the structure 102. In embodiments, the authentication request 146 may have embedded therein the device identification number 312 (
Returning now to
At step 410, the recommendation engine 126 may over the network 104 communicate the personalized recommendation 127 for the user 136 to the entity computer 150. At step 412, the entity 152 may use the recommendation 127 to provide user 136 a personalized experience. For example, personnel at the entity 152 may recommend an extra spicy shrimp Alfredo to the user 136 and note that the user 136 had ordered this same entrée with the same spice level at his or her previous visit. The entity 152 may further take measures to ensure that no food or drink item containing a substance to which the user 136 is allergic is served to the user 136. Such may obviate the need for the user 136 to reiterate the allergies 360 each time he or she visits an entity.
At step 414, the user 136 may pay for his or her meal using the mobile application 144 (which may comprise, for example, a digital wallet such as Masterpass™ by MasterCard®, Google Wallet™, et cetera), or via cash, credit card, debit card, coupon, or other means. At step 416, upon check-out, the entity application 158 may communicate activity data 162 of the user 136 to the structure 102 over the network 104. This activity data 162 may include, for example, the check-in date and time 322, the payment method and amount 330, the number of people 332 that accompanied the user 136 at this visit to the entity 152, the food and drink items ordered by the user 136 and their respective constituents, any allergies 360 or special instructions 362 communicated by the user 136 to the entity 152, and so forth. At step 418, the compiler 120 of the structure 102 may use the activity data 162 to update the user record 128(1) (e.g., the compiler 120 may update the check-in records 204 and food and beverage transaction data 206 to incorporate information regarding the instant visit). The method 400 may then end at step 420.
Focus is now directed now to
Block 700 illustrates an example check-in process. At step 702, the entity application 158 may generate an authentication invite 160, as discussed in more detail above. The authentication invite 160 may then be communicated directly or via the structure 102 to the mobile application 144 at step 704. The user 136 may next be authenticated at step 706, and the mobile application 144 may send a success message confirming the identity of the user 136 to the entity application 158 at step 708.
Block 720 shows an example data collection process for a first-time user of the system 100. At this point, the user record 128(1) may include only the information provided by the user (e.g., user 136) upon installation of the mobile application 144 (i.e., the user record 128(1) may be devoid of check-in records 204 and food and beverage transaction data 206, which are yet to be populated). The user 136 may visit an entity (e.g., entity 152) and check-in as discussed above. The entity application 158 may collect activity data 162 of the user 136 at step 722. For example, the entity application 158 may record the food and drink items ordered by the user 136, any special instructions provided by the user 136, et cetera. At step 724, upon checkout, the entity application 158 may communicate over the network 104 the activity data 162 to structure 102 so the same can be stored in the food and beverage database 116. At step 726, the compiler 120 may update the user record 128(1) (e.g., populate the check-in records 204 and the food and beverage transaction data 206 using the activity data 162). At step 728, a success message may be sent to the entity application 158 confirming that the user record 128(1) has been updated.
Block 740 shows an example process to generate personalized recommendation 127 for user 136. The process 740 may be repeated to generate additional recommendations 127 (e.g., to generate recommendations 127 for visits of the user 136 to other entities). At step 742, upon check-in, the entity application 158 may request a recommendation 127 for the user 136. At step 744, the request may be communicated to the recommendation engine 126. The recommendation engine 126 may at step 746 use the evaluator 124 and data in the food and beverage database 116 (and specifically, in the user record 128(1)) to determine an appropriate recommendation 127 for the user 136. At step 748, the recommendation 127 may be communicated by the recommendation engine 126 to the entity application 158.
If, however, at step 906 the evaluator 124 determines that the user 136 has not previously patronized the entity he or she is now visiting, the evaluator 124 may at step 912 evaluate the user records 128(1) (specifically, the food and beverage transaction data 206) to identify generally preferred food and drink items for the user 136. Generally preferred food and drink items are those items which the user 136 has previously ordered at another entity or entities. For example, with reference to
At step 914, the evaluator 124 may determine whether the entity 152 serves one or more generally preferred items. For example, the food and beverage database 116 may include the menu of each entity 152 that is associated with the system 100, and the evaluator 124 may reference the menu of the entity 152 being visited by the user 136 to determine if one or more generally preferred food or drink items are carried by that entity 152. If so, at step 916, the recommendation engine 126 may generate new a customer recommendation which includes the generally preferred item(s), and communicate same to the entity computer 150. In this way, the entity 152 may make a recommendation tailored to the preferences of the user 136 even though the user 136 has not previously visited the entity 152.
If, at step 914, the evaluator 124 determines that the entity 152 does not serve a generally preferred item, at step 918, the evaluator 124 may evaluate the constituents of the food and drink items generally preferred by the user 136. Specifically, the evaluator 124 may determine the generally preferred items (as discussed above) and evaluate their principal constituents. For example, if a generally preferred item is a primary item 344, the evaluator 124 may ascertain and evaluate the primary item's principal constituents 346. Similarly, if the generally preferred item is a secondary item 350, the evaluator 124 may ascertain and evaluate the secondary item's principal constituents 352. Consider, for example, that the evaluator 124 determines that generally preferred items include shrimp Alfredo, chicken Alfredo, chicken Pad Thai, and chicken Biryani (i.e., the primary items 344 identified in
In an example embodiment, the evaluator 124 may further evaluate the secondary constituents of generally preferred items (e.g., other constituents 348 and 354). For example, the evaluator may determine that entity 152 serves chicken Ravioli, and that Ravioli is a suitable alternative for Fettuccine, which the user 136 has ordered previously. The recommendation engine 126 may thus at step 922 generate a new customer recommendation that includes one or more suitable alternatives for the generally preferred item(s). For example, the new customer recommendation, in this example, may include chicken Ravioli, because such takes into account the fondness of the user 136 for both chicken and pasta.
In some embodiments, the evaluator 124 may ensure that the new customer recommendations, or any of the other recommendations described in the context of
The evaluator 124, which in determining a suitable alternative, may take into account ingredients of items as discussed above, and in embodiments, may alternatively (or additionally) take into account other factors. For example, the evaluator 124 may ascertain that the user 136 favors Heineken® beer, and upon determining that the entity 152 the user 136 is currently visiting does not serve same, include in the new customer recommendation another beer that, like Heineken®, is brewed in the Netherlands. Or, for example, the evaluator 124, upon evaluation of the food and beverage transaction data 206, may determine that the user 136 is partial to Italian cuisine, and account for same in generating a suitable alternative for a generally preferred item.
Some entities (e.g., entity 152), to garner customer loyalty, may offer a patron a free food or drink item (e.g., a free appetizer, beer, or dessert, et cetera) to celebrate the patron's birthday, anniversary, or other special occasion. In the prior art, the user 136 typically has to inform personnel at entity 152 that he or she is celebrating a special occasion to receive special treatment. The entity 152 may also ask the user 136 to verify that it is a special occasion (e.g., the entity 152 may ask to check an identification card of the user 136 to confirm that it is his or her birthday), which the user 136 may find off-putting. Where the user 136 does not inform the entity 152 that he or she is celebrating a special occasion, the entity 152 may remain unaware of same, and thereby lose the opportunity to better personalize the experience of the user 136 at the entity 152.
Thus, as has been described, the self-learning systems and associated methods may assist decision-making involving multiple entities through an online structure 102. Changes may be made in the above systems and methods without departing from the scope hereof. For example, in an embodiment, the entity computer 150 (or another computer located at the entity 152) may be employed to effectuate some of the functionality of the mobile device 134; for example, the entity 152 may include a touch screen kiosk (not shown), and the user 136 may check-in (e.g., generate authentication requests, provide biometric records, et cetera) at the entity 152 using the kiosk. It should thus be noted that the matter contained in the above description or shown in the accompanying drawings should be interpreted as illustrative and not in a limiting sense. The following claims are intended to cover all generic and specific features described herein, as well as all statements of the scope of the present method and system, which, as a matter of language, might be said to fall therebetween.