This disclosure relates in general to the field of communications and, more particularly, to a system and a method for optimizing interactions between users in a network environment.
Communications network architectures have experienced significant notoriety because they can offer the benefits of automation, convenience, and data management for their respective online communities. Certain network protocols may be used in order to allow an end user to be matched to other end users or to scenarios in which they stand to benefit (e.g., job searches, person-finding services, real estate searches, online dating, etc.).
In the case of an online dating service, for example, an end user will typically be prompted to specify a variety of preferences to be used in matching the end user with other end users in the particular online dating service community. This specification may be accomplished by the end user responding to questions designed to elicit explicit preferences of the end user or by the end user rating a variety of qualities on a scale of very important to not at all important, for example. The end user may also be presented with an opportunity to identify “deal breakers;” that is, characteristics or behaviors that if possessed or engaged in by a potential match render that person immediately and irredeemably undesirable. Additionally, the end user may be presented with the opportunity to specify certain “must haves,” which are the opposite of deal breakers; in particular, they are characteristics or behaviors a potential match should possess or engage in to even be considered by the end user. The information each end user provides about him or herself may be viewed by other end users in the online community in determining whether to interact with that end user.
To provide a more complete understanding of the present disclosure and features and advantages thereof, reference is made to the following description, taken in conjunction with the accompanying figures, wherein like reference numerals represent like parts, in which:
A method is provided in one example embodiment and includes establishing a pool of potential matches for a user in a computer-implemented matching system, wherein each of the potential matches meet at least one criteria of the user; determining a messaging score for each of the potential matches of the pool, the messaging score indicating a messaging aptitude of the potential match; and ranking the potential matches, wherein each of the potential matches is ranked based on a similarity of the messaging score of the potential match to a messaging score of the user. In one embodiment, the method may further include presenting to the user results of the ranking. The method may further include time-weighting interactions comprising the messaging score.
In a particular embodiment, the messaging score for each of the potential matches comprises a weighted combination of a number of three way interactions initiated by the potential match and an average number of three way interactions initiated by other users having a similar age and the same gender as the potential match the messaging score for each of the potential matches comprises a weighted combination of a number of messages sent and received by the potential match and a number of messages sent and received by other users having a similar age and the same gender as the potential match.
Additionally, the method may further include further comprising determining a match factor for each of the potential matches, wherein each of the potential matches is ranked based on a weighted combination of the match factor thereof and the similarity of the messaging score of the potential match to the messaging score of the user. Still further, the method may include determining an attractiveness factor for each of the potential matches, wherein each of the potential matches is ranked based on a weighted combination of a similarity of the attractiveness factor of the potential match and an attractiveness factor of the user and the similarity of the messaging score of the potential match to the messaging score of the user.
In a particular embodiment, the criteria used in establishing the pool includes a selected one of a group of criteria, the group consisting of a gender that is specified in a particular profile of the user; an ethnicity that is specified in a particular profile of the user; a religion that is specified in a particular profile of the user; an age range that is specified in a particular profile of the user; a location that is specified in a particular profile of the user; an education level that is specified in a particular profile of the user; and one or more personal habits that are specified in a particular profile of the user. The method may also include offering a subscription to a website-based service in exchange for a fee, wherein the website is configured to provide one or more results associated with the ranking of the set of like profiles.
End users 12 may include a variety of types of end users, such as clients, customers, prospective customers, or entities wishing to participate in an online dating scenario and/or to view information associated with other participants in the system. End users 12 may also seek to access or to initiate communications with other end users that may be delivered via communications network 14. End users 12 may review data (such as user profiles, for example) associated with other users in order to make matching decisions or selections. Data, as used herein in this document, refers to any type of numeric, voice, video, or script data, or any other suitable information in any appropriate format that may be communicated from one point to another. End users 12 may access the aforementioned data via endpoints 13, which may be inclusive of devices used to initiate a communication, such as a computer, a personal digital assistant (PDA), a laptop or electronic notebook, a cellular telephone, an IP telephone, an iPhone, an iPad, a Microsoft Surface, a Google Nexus, or any other device, component, element, or object capable of initiating voice, audio, or data exchanges within communication system 10. Endpoints 13 may also be inclusive of a suitable interface to the end user 12, such as a microphone, a display, or a keyboard or other terminal equipment. Endpoints 13 may also include any device that seeks to initiate a communication on behalf of another entity or element, such as a program, a database, or any other component, device, element, or object capable of initiating a voice or a data exchange within communication system 10. In addition, each of the endpoints 13 may be a unique element designed specifically for communications involving system 10. Such an element may be fabricated or produced specifically for matching applications involving end user 12 and endpoint 13.
End user 12 may employ any device capable of operating as an endpoint 13 to connect to communications network 14 via wire, wireless, cellular, satellite link or other suitable interfaces. Web server 16, which as previously noted includes memory 18 and at least one processor 20, hosts website 22 and has access to transmit and receive user or presence data (e.g., user profile data, user and/or user endpoint data, user contact data) from database 24. Presence data may be collected, aggregated, and utilized as required to facilitate communications between endpoints 12 over communications network 10 or other outside communication systems. Presence data may also include information and/or instructions enabling the creation, duration, and termination of communication sessions between diverse endpoints 13 that utilize different communication and/or networking protocols.
Communications network 14 is a communicative platform operable to exchange data or information emanating from endpoints 13. Communications network 14 represents an Internet architecture in a particular embodiment of the present disclosure, which provides end users 12 with the ability to electronically execute or to initiate actions associated with finding a potential match candidate. Alternatively, communications network 14 could be a plain old telephone system (POTS), which end user 12 could use to perform the same operations or functions. Such transactions may be assisted by management associated with website 22 or manually keyed into a telephone or other suitable electronic equipment. In other embodiments, communications network 14 could be any packet data network (PDN) offering a communications interface or exchange between any two nodes in system 10. Communications network 14 may alternatively be any local area network (LAN), metropolitan area network (MAN), wide area network (WAN), wireless local area network (WLAN), virtual private network (VPN), intranet, or any other appropriate architecture or system that facilitates communications in a network or telephonic environment.
In one embodiment, web server 16 comprises a server that is operable to receive and to communicate information to end user 12. Alternatively, web server 16 may be any switch, router, gateway, processor, component, object, or element operable to facilitate communications involving end user 12. In one particular embodiment, web server 16, via interaction with database 24 and provision of website 22, is engaged in facilitating interaction(s) between parties interested in seeking a romantic partner (i.e., online dating). For example, website 22 can be online dating service provider www.Match.com, www.Chemistry.com, or any other suitable provider. In certain example scenarios, a given end user may pay a fee for a subscription-based service. Additionally, certain end user fee structures may apply to different tiers of service: some of which may entitle an end user to enhanced features on website 22 (e.g., the ability to communicate more frequently with other users, additional matches being provided (potentially, more frequently) to an end user who paid the higher fee structure, the ability to store data, the ability to share data, the ability to upload additional information, the ability to target specific searches based on particular criteria, the ability to receive preferential positioning in the context of being matched to other users, the ability to perform video calls (e.g., Skype, etc.) with other users, the ability to perform audio calls with other users, etc.).
In certain embodiments, website 22 is a computer-implemented matching system, which may be any website or architecture provided for facilitating a connection involving two or more people, and which may make use of a given profile, photograph, resume, article description, etc. This could include services associated with job placements, escort services, auction services, social media, real estate listings, recruiting services (e.g., in athletics, academia, employment scenarios, instances involving the sales of goods and services), etc.
Considerable flexibility is provided by the structure of web server 16 and website 22 in the context of system 10. Thus, it can be easily appreciated that such functions could be provided external to web server 16 or website 22. In such cases, such a functionality could be readily embodied in a separate component, server, processor, device, or module. Note that these online dating features and capabilities may be provided in just one of these elements, in both, or distributed across both of them. Hence, in certain embodiments, the online dating operations may be consolidated in a single website, where no redirection is needed, nor performed for the user.
In operation of an example embodiment, consider a case where a given end user is interested in participating in an online dating scenario. End user 12 can access website 22 via the communications network 14 (which in the example presented comprises the Internet) using endpoint 13, register, and create a profile on the site. Moreover, end user 12 can access website 22 through any suitable banner, pop-up, partnership, e-mail solicitations, direct mailings, etc. It can be appreciated that online commerce can be generated by a plethora of marketing tools and any such tools can readily cooperate with the operations of the present disclosure.
At this point, matching of any form can commence amongst the members of the online community. For example, in the context of a romantic endeavor, a person may begin the dating process or engage in communications that would spawn such dating. Other applications could include job applicants who are being sought by employers. Any of the individuals who reside in the online community can begin using any of the tools or capabilities of the platform.
The matching activities illustrated and described herein take into account a variety of factors in selecting matches for an end user. Some of those factors can be explicitly identified by the end user, other factors can be based on actions of the user, and still others can be based on cumulative actions of other users in the system. In one embodiment described herein, another factor that may be considered in prioritizing, or sorting, match results comprising potential matches for an end user is the extent to which the end user and matches have similar habits with regard to interacting with other users in the system.
Referring again to
In one embodiment, a messaging score (“MS”) is computed for all users in the system. In general, a user's MS is an indication of how interactive the user is on the system, in terms of both quantity (i.e., how many interactions the user initiates), as well as quality (i.e., how willing participants of interactions initiated by the user are to respond). For example, a user may email many other users in the system, making him highly interactive in terms of quantity of interactions initiated; however, a low level of response to the user's emails may be indicative of a low level of quality as gauged by other users. Similarly, failure by the user to respond to a reply by another user to his or her email (i.e., to complete a three way communication that the user initiated) may also indicate that the first user is not actually interested in or particularly adept at interacting with other users.
In one embodiment, a user's MS may be calculated using the following equation:
MS=(prior_weight*prior(age, gender)+score_weight*raw_score)/(prior_weight+score_weight)
where score_weight is the total number of initiations sent or received by the user; raw_score is the total number of three ways in which the user was involved divided by the total number of initiations the user sent; prior_weight is the average score_weight for other active users of the same age and gender as the user; and prior (age, gender) is the average raw_score for active users of the same age and gender as the user. In this manner, as described above, MS takes into account not only the quantity but also the perceived quality of the user's interactions with other users in the system.
It will be recognized that when a user first registers with the system, he or she will have no messaging history upon which to base his or her MS; however, certain attributes of a user have been found to correlate well with the user's MS. In one embodiment, this correlation may be used to predict with relative accuracy a user's MS before the user even begins sending messages. In particular, gender and age correlate highly with a user's messaging quality, so the average messaging quality for users of the same gender and in the same age group as a target user can be averaged and used as an initial “best guess” for the target user's messaging quality, or MS. The next challenge is cross-fading between the initial best guess and the estimate based on the target user's messaging history, once the target user begins to send messages. Specifically, the MS may be entirely based on the best guess when a user has no messaging history and may be based entirely on the user's actual messaging history when such history is well established.
In the middle ground between those two extremes (i.e., no messaging history and extensive messaging history), Bayesian inference is used to fill in the blanks. In particular, treating the user's MS as estimated from his messaging history as normally distributed justified by the central limit theorem, the prior estimate can be represented as a beta distribution with the variance of the distribution controlled by the average number of messages sent by other users in the target user's group (age and gender) and the mean of the distribution is equal to the mean MS for users in the target user's group (age and gender). This reduces to the simple linear weighting between prior score (prior(age, gender)) and the target user's messaging history score (raw_score), as set forth in the above equation. Intuitively, this means that when a target user has not done much messaging on the system, their MS is mostly comprised of the prior score (prior(age, gender)). As the target user messages more, his or her MS is increasingly determined by his or her own messaging history. Weighting the prior_score by the average amount of messaging in the target user's group (age and gender) means that for users who tend to send fewer messages, their messaging history data will be trusted more readily. This is desirable, since it is expected that less data will be available from those users as time goes on, so rapid use should be made of any data obtained.
In one embodiment, interactions by the user factored into score_weight and raw_score may be time weighted in accordance with the following equation, as illustrated in
weight(t)=e−t/90 days
In this manner, a user's past behavior as it relates to interactivity on the system counts less (either for or against the user) than the user's more recent behavior; as a result, trends in the user's interactive behavior can be captured in his/her MS. For example, if the user “used to” be a poor initiator but more recently has become a more active initiator, the user's MS would be higher than if the user had exactly the same types/number of interactions with other users in the system but used to be a more active initiator and has recently become a poorer initiator. In other words, “old” behavior has less of an effect (positive or negative) on a user's MS than “new” behavior.
Similarity of attractiveness between the potential matches and the user may also be considered, with potential matches whose attractiveness level is similar to the user being ranked higher than those whose attractiveness level is less similar. Accordingly, in step 54, an “attractiveness factor,” comprising an indication of similarity of attractiveness between a potential match and the user, is determined for each potential match. For example, assuming the user has an attractiveness rating of 15 on a scale of 1-20 based on some “objective” rating procedure, a particular potential match that has an attractiveness rating of 8 would likely not be as good a match for the user as one who has been given an attractiveness rating of 14, 15, or 16. Similarly, a potential match that has been given an attractiveness rating of 20 would also not be as good a match for that user. Accordingly, with respect to a user that has an attractiveness rating of 15, a potential match that also has an attractiveness rating of 15 will have a higher attractiveness factor than a potential match that has an attractiveness rating of 12.
In accordance with features of one embodiment, the respective MSes of the user and potential matches are also considered. Accordingly, in step 56, an MS is determined for each of the potential matches. For reasons previously noted, in general, the more similar a potential match's MS is to the user's MS, the more likely the potential match is to be a good match and the more highly ranked the potential match will be in the user's list of match results. Similarly, the less similar the potential match's MS is to the user's MS, the less likely the potential match is to be a good match for the user and the lower the potential match will be in the user's list of match results. An exception to this generality arises in a situation in which one the user is new to the system and the potential match has a high MS or vice versa. This exception is due to the fact that a new user likely has not had sufficient time to establish an accurate MS; therefore, to penalize him or her for a low MS, which may not ultimately accurately reflect the user's interactiveness.
It will be recognized that steps 52-56 need not be performed in the order illustrated in
The matching activities illustrated and described herein take into account a variety of factors in selecting matches for an end user. Some of those factors can be explicitly identified by the end user; other factors can be based on actions of the user, and still others can be based on cumulative actions of other users in the system. Some of the steps illustrated in the preceding FIGURES may be changed or deleted where appropriate and additional steps may also be added to the process flows. These changes may be based on specific communication architectures or particular interfacing arrangements and configurations of associated elements and do not depart from the scope or the teachings of the present disclosure. It is important to recognize that the FIGURES illustrate just one of a myriad of potential implementations of system 10.
As previously noted, “Interactions” may include the user's emailing, winking at, favorably rating, or designating as a favorite the profile of another user. It should also be noted that such interactions can take any suitable form. For example, the interactions can be facilitated by website 22 (e.g., through an e-mail platform, through a voice over IP (VoIP) technology, through a session initiation protocol (SIP), through instant messaging, through any type of mobile communications (inclusive of texting), etc.). Additionally, interactions can be performed through any suitable third-party technology (e.g., interactions involving 9 framework, a Twitter account, a Tumblr account, etc.). Some of these interactions can be facilitated directly by website 22 (e.g., provided as some sort of service as part of a subscription model), provided by an external third-party protocol, or provided in conjunction with some type of partnership involving website 22 and the external third-party protocol.
Although the present disclosure has been described in detail with reference to particular embodiments, it should be understood that various other changes, substitutions, and alterations may be made hereto without departing from the spirit and scope of the present disclosure. For example, although the present disclosure has been described with reference to a dating protocol, any service that deals with (or that leverages) profiles, photos, resumes, user information more generally, etc. could readily benefit from the present disclosure.
Moreover, although the present disclosure has been described with reference to a number of elements included within system 10, these elements may be rearranged or positioned in any appropriate manner to accommodate any suitable networking configurations. In addition, any of the elements of
It should also be noted that any of the question portions of the platform can leverage any type of format. Thus, in any aspect of the online dating process described herein, such as establishing a personality profile, for example, any suitable question format can be employed. Example formats include a Yes/No format, a multiple choice question format, a short answer format, a true/false format, etc. Other formats can readily be used in order to achieve the desired responses and solicit the necessary data.
Note that in certain example implementations, the matching functions outlined herein, such as those carried out by the match generator of web server 16 and/or provided as an application for an endpoint being operated by an end user, may be implemented by logic encoded in one or more non-transitory, tangible media (e.g., embedded logic provided in an application specific integrated circuit (“ASIC”), digital signal processor (“DSP”) instructions, software (potentially inclusive of object code and source code) to be executed by a processor, or other similar machine, etc.). In some of these instances, a memory, as shown in
A processor can execute any type of instructions associated with the data to achieve the operations detailed herein in this Specification. In one example, the processor, as shown in
These devices illustrated herein may maintain information in any suitable memory (random access memory (“RAM”), ROM, EPROM, EEPROM, ASIC, etc.), software, hardware, or in any other suitable component, device, element, or object where appropriate and based on particular needs. Any of the memory items discussed herein should be construed as being encompassed within the broad term “memory.” Similarly, any of the potential processing elements, modules, and machines described in this Specification should be construed as being encompassed within the broad term “processor.” Each of the network elements can also include suitable interfaces for receiving, transmitting, and/or otherwise communicating data or information in a network environment.
Note that with the example provided above, as well as numerous other examples provided herein, interaction may be described in terms of more than one network element. However, this has been done for purposes of clarity and example only. In certain cases, it may be easier to describe one or more of the functionalities of a given set of flows by only referencing a limited number of network elements. It should be appreciated that system 10 (and its teachings) are readily scalable and can accommodate a large number of components, as well as more complicated/sophisticated arrangements and configurations. Accordingly, the examples provided should not limit the scope or inhibit the broad teachings of system 10 as potentially applied to a myriad of other architectures.
It is also important to note that the steps in the preceding flow diagrams illustrate only some of the possible signaling scenarios and patterns that may be executed by, or within, system 10. Some of these steps may be deleted or removed where appropriate, or these steps may be modified or changed considerably without departing from the scope of the present disclosure. In addition, a number of these operations have been described as being executed concurrently with, or in parallel to, one or more additional operations. However, the timing of these operations may be altered considerably. The preceding operational flows have been offered for purposes of example and discussion. Substantial flexibility is provided by system 10 in that any suitable arrangements, chronologies, configurations, and timing mechanisms may be provided without departing from the teachings of the present disclosure. Although the present disclosure has been described in detail with reference to particular arrangements and configurations, these example configurations and arrangements may be changed significantly without departing from the scope of the present disclosure.
Numerous other changes, substitutions, variations, alterations, and modifications may be ascertained to one skilled in the art and it is intended that the present disclosure encompass all such changes, substitutions, variations, alterations, and modifications as falling within the scope of the appended claims. In order to assist the United States Patent and Trademark Office (USPTO) and, additionally, any readers of any patent issued on this application in interpreting the claims appended hereto, Applicant wishes to note that the Applicant: (a) does not intend any of the appended claims to invoke paragraph six (6) of 35 U.S.C. section 112 as it exists on the date of the filing hereof unless the words “means for” or “step for” are specifically used in the particular claims; and (b) does not intend, by any statement in the specification, to limit this disclosure in any way that is not otherwise reflected in the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
6272467 | Durand et al. | Aug 2001 | B1 |
6321224 | Beall et al. | Nov 2001 | B1 |
6480885 | Olivier | Nov 2002 | B1 |
7502787 | Bailey et al. | Mar 2009 | B2 |
7882039 | Weiss et al. | Feb 2011 | B2 |
7917448 | Smola et al. | Mar 2011 | B2 |
7996428 | Neal | Aug 2011 | B2 |
8521823 | Sheinberg et al. | Aug 2013 | B1 |
8566327 | Carrico et al. | Oct 2013 | B2 |
20060059147 | Weiss et al. | Mar 2006 | A1 |
20060059159 | Truong et al. | Mar 2006 | A1 |
20090164464 | Carrico et al. | Jun 2009 | A1 |
20090322597 | Medina-Herrero et al. | Dec 2009 | A1 |
20100246576 | Bustamente | Sep 2010 | A1 |
20100283827 | Bustamente | Nov 2010 | A1 |
20100285856 | Thomas | Nov 2010 | A1 |
20100287286 | Bustamente | Nov 2010 | A1 |
20110313647 | Koebler et al. | Dec 2011 | A1 |
20120296991 | Spivack et al. | Nov 2012 | A1 |
20140040368 | Janssens | Feb 2014 | A1 |
20140074824 | Rad et al. | Mar 2014 | A1 |
20140114965 | Balduzzi et al. | Apr 2014 | A1 |
Entry |
---|
Offringa, Peter “Zoosk—The Engineering behind Real Time Communications,” available online at <URL http://highscalability.com/blog/2012/8/27/zoosk-the-engineering-behind-real-time-communications.html>, Aug. 27, 2012 (4 pages). |
Zoosk Customer Support, “How Do I Video Chat?” available online at <URL https://zoosk.zendesk.com/entries/20513017-how-do-i-video-chat> Oct. 7, 2011 (3 pages). |