CPC G06Q 10/02 (2013.01) [G06F 16/9035 (2019.01); G06F 18/23 (2023.01); G06N 20/00 (2019.01); G06Q 10/06393 (2013.01); G06Q 10/06395 (2013.01); G06Q 10/06398 (2013.01); G06Q 50/12 (2013.01)] | 12 Claims |
1. A system for matching patrons and servers at restaurants, comprising:
a computing device comprising a memory, a processor, and a data storage device;
a database residing in the data storage device, the database comprising profiles of patrons and servers and information about external factors;
a profile mapping and recommendation engine comprising a plurality of programming instructions stored in the memory, and operating on the processor, wherein the plurality of programming instructions, when operating on the processor, cause the computing device to:
retrieve a patron's profile from the database;
retrieve the server profiles from the database;
retrieve a plurality of external factors from the database;
map the patron's profile, the server profiles, and the plurality of external factors in a computational graph and use graph analysis algorithms to identify a plurality of servers who are most connected with the patron in the computational graph, wherein patrons are mapped to servers according to the following process:
patrons are initially mapped to servers according to a first clustering algorithm in which a first variance measures discrepancies between the patrons and servers by probability distribution and a second variance measures discrepancies between the patrons and servers by overall stationary distribution; and
for patrons matching two or more servers in the first clustering algorithm, those patrons are then mapped to servers according to a second clustering algorithm in which a shortest path between each patron and each server in the computational graph is calculated; and
match the patron to one of the servers in the plurality of servers based on the mapping and on the plurality of external factors.
|