Communication Interface for Identifying Service Providers

A secure communication interface identifies service providers based on task categories and feedback data, addressing the inefficiencies and privacy concerns in existing systems by generating a list of recommended providers while protecting member privacy and reducing cognitive load.

JP2025520336AInactive Publication Date: 2025-07-03YOHANA LLC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024572218
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-06-07
Filing Date
2023-06-07
Publication Date
2025-07-03
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Existing systems lack an efficient and secure method for identifying and recommending service providers capable of performing tasks delegated by members while protecting member privacy and reducing cognitive load.

Method used

A secure communication interface that identifies service providers based on task categories and feedback data, transmits anonymized requests, and monitors availability, generating a list of recommended providers to reduce the need for intermediaries and enhance security and efficiency.

Benefits of technology

The solution enhances efficiency in identifying service providers, reduces computing resources, strengthens security, and protects member privacy by using a separate communication platform that anonymizes personally identifiable information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025520336000001_ABST
    Figure 2025520336000001_ABST
Patent Text Reader

Abstract

The disclosed embodiments may provide a secure communication interface that enables the identification of service providers capable of performing a set of tasks specified by a member. Using the secure communication interface, candidate service providers may be identified to perform the tasks requested by the member. The candidate service providers may be identified based on their task categories and their respective feedback data submitted by other members. Once a candidate service provider is identified, the agent may automatically generate a request regarding the availability of the candidate service provider and utilize the communication interface to send the request, where the request includes project details, although some data may be anonymized. Based on the response from the candidate service provider, a set of service providers for performing the identified tasks may be determined.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Cross - Reference to Related Applications

[0001] This patent application claims the benefit of priority of U.S. Provisional Patent Application No. 63 / 349,858, filed on June 7, 2022, the entire disclosure of which is incorporated herein by reference for all purposes.

[0002]

[0002] This disclosure generally relates to identifying service providers to whom one or more tasks can be delegated. In one example, the systems and methods described herein can be used to provide a secure communication interface for an agent to communicate with service providers who can confirm their availability to perform one or more tasks. Further, the systems and methods described herein can be used to provide an automated determination of service providers using machine learning techniques.

Summary of the Invention

[0003]

[0003] The disclosed embodiments can provide a communication interface for identifying and recommending service providers capable of performing a set of tasks assigned by a member. According to some embodiments, a computer - implemented method is provided. The computer - implemented method comprises receiving, via a first communication interface, a set of messages exchanged between a member and a proxy, where the proxy is assigned to the member for performing tasks on behalf of the member. The computer - implemented method further comprises determining a set of tasks that can be performed on behalf of the member. The computer - implemented method further comprises transmitting, via the first communication interface, to an agent, a set of tasks for identifying a set of service providers through a second communication interface.

[0004]

[0004] The second communication interface is separate from the first communication interface, and the second communication interface is configured to (I) access, from a resource library, resource data regarding each candidate service provider of a plurality of candidate service providers; (ii) transmit, via the second communication interface, one or more requests to each candidate service provider of the plurality of candidate service providers, wherein the one or more requests exclude at least a portion of information related to a set of tasks; (iii) monitor, via the second communication interface, response messages from one or more service providers of the plurality of candidate service providers, wherein each of the response messages indicates the availability of the corresponding candidate service provider for performing the set of tasks; and (iv) identify, based on the response messages, a set of service providers from the plurality of candidate service providers. The computer-implemented method further comprises generating a report including the set of service providers. The computer-implemented method further comprises providing, to an agent, a report for facilitating the selection of a set of service providers for performing the set of tasks.

[0005]

[0005] In some embodiments, transmitting one or more requests to each service provider further comprises accessing task data from each of the set of tasks, identifying personally identifiable information (PII) data from the task data, excluding the PII data from the task data to generate PII-protected data, and generating one or more requests based on the PII-protected data. Excluding the PII data can include anonymizing the PII data, encrypting the PII data, or removing the PII data from the task data.

[0006]

[0006] In some embodiments, the first communication interface is configured to prevent access to a set of messages exchanged between a plurality of candidate service providers and an agent.

[0007]

[0007] In some embodiments, the second communication interface generates a plurality of status indicators for a plurality of candidate service providers, receives response messages from each of one or more of the candidate service providers, modifies the status indicators such that the status indicators visually indicate the availability of the corresponding candidate service providers for performing a set of tasks for each candidate service provider of the one or more candidate service providers, and presents the modified status indicators of the one or more candidate service providers on the second communication interface to facilitate identification of the set of service providers.

[0008]

[0008] In some embodiments, the second communication interface further facilitates an operation comprising: (i) transmitting, via the second communication interface, one or more requests to each candidate service provider of one or more additional candidate service providers, where the additional candidate service providers are identified from a data source different from the resource library; and (ii) monitoring, via the second communication interface, additional response messages from one or more of the candidate service providers of the additional candidate service providers, where the set of service providers is further identified based on the additional response messages. The set of service providers may also be identified from both the plurality of candidate service providers and the one or more additional candidate service providers.

[0009]

[0009] In some embodiments, the second communication interface is further configured to modify one or more requests to include instructions for registering an additional candidate service provider in the resource library.

[0010]

[0010] In some embodiments, identifying a set of service providers from a plurality of candidate service providers includes applying a machine learning model to response messages to identify the set of service providers. The machine learning model is trained using resource data of the plurality of candidate service providers and historical data related to other service providers. The selection of a service provider from the set of service providers is received from a member to perform a set of tasks. Based on the selection of a service provider from the set of service providers, one or more parameters of the machine learning model may be modified.

[0011]

[0011] In some embodiments, the system includes one or more processors and a memory including instructions that, as a result of being executed by the one or more processors, cause the system to perform the processes described herein. In another embodiment, a non-transitory computer-readable storage medium stores executable instructions thereon that, as a result of being executed by one or more processors of a computer system, cause the computer system to perform the processes described herein.

[0012]

[0012] Various embodiments of the present disclosure are discussed in detail below. It should be understood that specific implementations are described for illustrative purposes only. Those skilled in the art will recognize that other components and configurations may be used without departing from the spirit and scope of the present disclosure. Accordingly, the following description and drawings are exemplary and should not be construed as limiting. Numerous specific details are set forth to provide a complete understanding of the present disclosure. However, in some instances, well-known or conventional details are not described to avoid obscuring the description. References to one embodiment or an embodiment in the present disclosure may refer to the same embodiment or any embodiment, and such references mean at least one of the embodiments.

[0013]

[0013] References to "one embodiment" or "an embodiment" mean that the particular features, structures, or characteristics described in connection with the embodiment are included in at least one embodiment of the present disclosure. The appearances of the phrase "in one embodiment" in various places in this specification are not necessarily all referring to the same embodiment, nor are they necessarily referring to separate or alternative embodiments that do not mutually include other embodiments. Moreover, various features are described that may be represented by some embodiments rather than by other embodiments.

[0014]

[0014] The terms used in this specification generally have their ordinary meanings in the art within the context of the present disclosure and in the particular context in which each term is used. Alternative language and synonyms may be used for any one or more of the terms described in this specification, and no special significance should be placed on whether a term is elaborated or described in this specification. In some cases, synonyms for some terms are provided. The elaboration of one or more synonyms does not exclude the use of other synonyms. The use of examples anywhere in this specification, including examples of any of the terms described in this specification, is merely illustrative and is not intended to further limit the scope or meaning of the present disclosure or of any illustrative terms. Similarly, the present disclosure is not limited to the various embodiments given in this specification.

[0015]

[0015] Without intending to limit the scope of the present disclosure, examples of devices, apparatuses, methods, and their related results according to embodiments of the present disclosure are given below. Titles or subtitles may be used in the examples for the convenience of the reader, and it should be noted that in no case should this limit the scope of the present disclosure. Unless otherwise defined, technical and scientific terms used in this specification have the meanings as commonly understood by those skilled in the art to which the present disclosure pertains. In case of conflict, including definitions, the present document shall prevail.

[0016]

[0016] Additional features and advantages of the present disclosure will be described in the following description, will be apparent in part from the description, or may be learned by practice of the principles disclosed herein. The features and advantages of the present disclosure may be realized and obtained by means of the instrumentalities and combinations particularly pointed out in the appended claims. These and other features of the present disclosure will become more fully apparent from the following description and appended claims, or may be learned by practice of the principles set forth herein.

[0017]

[0017] Exemplary embodiments will be described in detail below with reference to the following figures.

Brief Description of the Drawings

[0018]

Fig. 1

[0018] FIG. showing an exemplary example of an environment in which a task facilitation service, according to various embodiments, assigns an agent to a member, through which various tasks that can be performed for the member can be recommended for performance by the agent and / or one or more third-party services.

Fig. 2

[0019] FIG. showing an exemplary example of an environment in which an agent assignment system, according to at least one embodiment, performs an onboarding process for a member and assigns an agent to the member based on member attributes and agent attributes.

Fig. 3

[0020] FIG. showing an exemplary example of an environment in which task-related data is collected and aggregated from a member area to identify one or more tasks that may be recommended to a member for performance by an agent and / or a third-party service.

Fig. 4

[0021] FIG. showing an exemplary example of an environment in which a task recommendation system generates and ranks recommendations for tasks to be performed for a member.

Fig. 5

[0022] A diagram showing an exemplary environment in which a task adjustment system assigns and monitors the execution of tasks for members by an agent and / or one or more third-party services, according to at least one embodiment.

Fig. 6A

[0023] A diagram showing an exemplary environment configured to identify a service provider for performing a task assigned a service communication interface, according to at least one embodiment.

Fig. 6B

[0024] A schematic diagram of an exemplary service communication interface, according to at least one embodiment.

Fig. 7

[0025] A diagram showing an exemplary process for using a communication interface to identify a service provider for performing an assigned task, according to at least one embodiment.

Fig. 8

[0026] A diagram showing an exemplary process for identifying an initial list of service providers through a communication interface, according to at least one embodiment.

Fig. 9

[0027] A diagram showing an exemplary process for generating a recommended service provider for performing an assigned task, according to at least one embodiment.

Fig. 10

[0028] A diagram showing an exemplary screenshot of a recommended service provider for performing an assigned task, according to at least one embodiment.

Fig. 11

[0029] A diagram showing a computing system architecture including various components in electrical communication with each other, according to various embodiments.

DETAILED DESCRIPTION OF THE INVENTION

[0019]

[0030] In the accompanying drawings, similar components and / or features can have the same reference labels. Further, various components of the same type can be distinguished by continuing the reference label with a dash followed by a second label that differentiates between similar components. If only the first reference label is used in this specification, the description is applicable to any of the similar components having the same first reference label, regardless of the second reference label.

[0020]

[0031] In the following description, for purposes of explanation, specific details are set forth in order to provide a thorough understanding of several embodiments of the invention. It will be apparent, however, that the various embodiments may be practiced without these specific details. The figures and the description are not intended to be limiting. The word "exemplary" as used herein means "serving as an example, instance, or illustration." Any embodiment or design described herein as "exemplary" should not necessarily be construed as preferred or advantageous over other embodiments or designs.

[0021]

[0032] The disclosed embodiments can provide a secure communication interface that enables an agent to identify a service provider capable of performing a set of tasks specified by a member. As an exemplary example, a member can involve an agent to identify and assign tasks that can be performed to reduce the member's cognitive load. The agent determines that a task (e.g., roof repair, kitchen renovation) needs to be performed by a certain service provider. The agent can delegate the details of the task assigned to an agent that can generate a list of service providers available to perform the assigned task.

[0022]

[0033] The agent can access the resource library to identify candidate service providers for performing the assigned tasks requested by the members. The candidate service providers can be identified based on their task categories and the respective feedback data submitted by other members. Once the candidate service providers are identified, the agent can utilize a communication interface configured to automatically send requests regarding the availability of the candidate service providers, in which case the requests include project details, although some data can be anonymized. To secure the data and protect the privacy of member information from the candidate service providers, the communication interface can be configured as a separate platform for the communication interface through which messages are exchanged between the members and the proxy. The agent can also use the communication interface to monitor the availability and response status of the candidate service providers. In addition, the candidate service providers can perform certain activities such as accessing the communication interface, checking availability, and requesting additional information. The information exchanged within the communication interface can then be used to generate a list of recommended service providers for performing the assigned tasks.

[0023]

[0034] The communication interface thus eliminates the need for the broker to monitor and act as a messenger between the member and candidate service providers. Instead, based on the availability status from the communication interface, the agent can generate a list of recommended service providers that can be reviewed by the broker and the member. In some cases, the communication interface provides a separate platform for service providers to communicate with the agent and the broker while protecting the personally identifiable information (PII) of the member previously exchanged between the member and the broker through other communication interfaces (e.g., through anonymization). As a result, the communication interface not only enhances efficiency and reduces computing resources for identifying service providers to perform the assigned tasks, but also strengthens security and protects the privacy of members using the task facilitation service.

[0024] I. Task Facilitation Services for Recommending and Performing Various Tasks A. Overall Computing Environment

[0035] FIG. 1 shows an exemplary example of an environment 100 in which a task facilitation service 102, according to various embodiments, assigns an agent 106 to a member 118 through which various tasks that can be performed for the member 118 can be recommended for performance by the agent 106 and / or one or more third-party services 116. The task facilitation service 102 can be implemented to reduce the cognitive load on the member and the member's family when performing various tasks in and around the member's home by identifying tasks and delegating them to an agent 106 that can coordinate the performance of these tasks for these members. In some embodiments, the member 118 can initiate an onboarding process for the assignment of the agent 106 to the member 118 and initiate the identification of tasks that can be performed for the member 118 by submitting a request to the task facilitation service 102 via a computing device 120 (e.g., a laptop computer, a smartphone, etc.). For example, the member 118 can access the task facilitation service 102 via an application provided by the task facilitation service 102 and installed on the computing device 120. Additionally or alternatively, the task facilitation service 102 can maintain a web server (not shown) that hosts one or more websites configured to present or optionally make available an interface through which the member 118 can access the task facilitation service 102 and initiate the onboarding process.

[0025]

[0036] During the onboarding process, the task facilitation service 102 may collect identification information of the member 118, and the identification information may be used by the proxy assignment system 104 to identify and assign a proxy 106 to the member 118. For example, the task facilitation service 102 may provide the member 118 with a survey or questionnaire that provides identification information that can be used by the proxy assignment system 104 for the member 118 to select a proxy 106 for the member 118. For example, the task facilitation service 102 may prompt the member 118 to provide detailed information regarding the composition of the member's family (e.g., the number of residents in the member's home, the number of children in the member's home, the number and type of pets in the member's home, etc.), the physical location of the member's home, any special needs or requirements of the member 118 (e.g., physical or emotional disabilities, etc.). In some cases, the member 118 may be prompted to provide demographic information (e.g., age, ethnicity, race, written / spoken language, etc.). The member 118 may also be prompted to indicate any personal interests or hobbies that can be used to identify possible experiences that may be of interest to the member 118 (described in more detail herein). In some cases, the task facilitation service 102 may prompt the member 118 to specify any tasks for which the member 118 desires assistance or, in some cases, desires to delegate to another entity such as a proxy and / or third party.

[0026]

[0037] In some embodiments, the task facilitation service 102 may prompt the member 118 to indicate a level of trust or other measure when delegating tasks to others such as agents and / or third parties. For example, the task facilitation service 102 may utilize the identification information submitted by the member 118 during the onboarding process to identify an initial category of tasks that may be relevant to the member's daily life. In some cases, the task facilitation service 102 may utilize machine learning algorithms or artificial intelligence to identify categories of tasks that may be relevant to the member 118. For example, the task facilitation service 102 may implement a clustering algorithm to identify members in similar situations based on one or more vectors (e.g., geographical location, demographic information, likelihood of delegating tasks to others, family composition, home configuration, etc.). In some cases, a dataset of input member characteristics corresponding to responses to prompts provided by the task facilitation service 102 given by sample members (e.g., testers, etc.) may be analyzed using a clustering algorithm to identify different types of members that may interact with the task facilitation service 102. Exemplary clustering algorithms that may be trained to classify members using a sample member dataset (e.g., historical member data, hypothetical member data, etc.) to identify categories of tasks that may be relevant to the member may include the k-means clustering algorithm, the fuzzy c-means (FCM) algorithm, the expectation maximization (EM) algorithm, the hierarchical clustering algorithm, the density-based spatial clustering of applications with noise (DBSCAN) algorithm, etc. Based on the output of a machine learning algorithm generated using the member's identification information, the task facilitation service 102 may prompt the member 118 to provide a response regarding the comfort level when delegating tasks corresponding to the category of tasks given by the machine learning algorithm.This can reduce the number of prompts given to member 118 and better adapt the prompts to the needs of the member.

[0027]

[0038] In some embodiments, the member's identification information, and any information related to the level of comfort or interest of the member when delegating tasks of different categories to others, can be provided to the agent assignment system 104 of the task facilitation service 102 to identify the agent 106 assigned to member 118. The agent assignment system 104 can be implemented using a computer system or as an application or other executable code implemented on the computer system of the task facilitation service 102. In one embodiment, the agent assignment system 104 uses the member's identification information, any information related to the level of comfort or interest of the member when delegating tasks to others, and any other information obtained during the onboarding process, as input to a classification or clustering algorithm configured to identify an agent that may be suitable for interacting and communicating with member 118 in a productive manner. For example, agent 106 can be profiled based on various criteria, including (but not limited to) demographics and other identification information, geographical location, experience handling tasks of different categories, experience communicating with members of different categories, and the like. Using the classification or clustering algorithm, the agent assignment system 104 can identify a set of agents 106 that may be more likely to develop a positive, long-term relationship with member 118 while handling any tasks that may need to be addressed for member 118.

[0028]

[0039] When the proxy assignment system 104 identifies a set of proxies 106 that can be assigned to member 118 to act as a proxy or concierge for member 118, the proxy assignment system 104 can evaluate the data corresponding to each proxy in the set of proxies 106 to identify a specific proxy that can be assigned to member 118. For example, the proxy assignment system 104 can rank each proxy in the set of proxies 106 according to the degree of similarity or vector between the demographic information of the member and the demographic information of the proxy. For example, if a member and a particular proxy share a similar background (e.g., attended the same university in the same city, are from the same hometown, share a particular interest, etc.), the proxy assignment system 104 can rank the particular proxy higher compared to other proxies that may have a less similar background. Similarly, if the member and the particular proxy are within geographical proximity to each other, the proxy assignment system 104 can rank the particular proxy higher compared to other proxies that may be further away from member 118. Each factor can, in some cases, be weighted based on the influence of factors related to building a positive long-term relationship between the member and the proxy. For example, based on historical data corresponding to member-proxy interactions, the proxy assignment system 104 can identify correlations between different factors and the polarity (e.g., positive, negative, etc.) of these interactions. Based on these correlations (or the lack thereof), the proxy assignment system 104 can apply weights to each factor.

[0029]

[0040] In some cases, each agent in an identified set of agents 106 can be assigned a score corresponding to various factors corresponding to the degree or vector of similarity between the demographic information of the members and the demographic information of the agents. For example, each factor can have a possible range of scores corresponding to the weight assigned to that factor. As an illustrative example, the various factors used to obtain the agent scores can each have a possible score of 1 to 10. However, based on the weights assigned to each factor, the possible scores can be multiplied by a weight factor such that factors with larger weights can be multiplied by a higher weight factor compared to factors with smaller weights. The result is a set of different scoring ranges corresponding to the importance or relevance of the factors in determining the match between member 118 and the agent. The scores determined for the various factors can be aggregated to obtain a composite score for each agent in the set of agents 106. These composite scores can be used to create a ranking of the set of agents 106.

[0030]

[0041] In some embodiments, the proxy assignment system 104 uses the ranking of the set of proxies 106 to select a proxy that can be assigned to the member 118. For example, the proxy assignment system 104 selects the highest-ranked proxy and involves the member 118 in identifying and recommending tasks, coordinating the resolution of tasks, and, possibly, communicating with the member to ensure that the needs of the member 118 are addressed. If the selected proxy is unavailable (e.g., the proxy is already engaged with one or more other members), the proxy assignment system 104 can select another proxy according to the aforementioned ranking and determine the availability of this proxy for involving the member 118. This process can be repeated until a proxy available for involving the member 118 is identified from the set of proxies 106. In some cases, proxy availability can be used as a factor in obtaining the aforementioned proxy scores, such that a proxy that is unavailable or does not have sufficient bandwidth to adapt to a new member 118, for example, can be assigned a lower proxy score. Thus, an unavailable proxy can be ranked lower than other proxies that may be available for assignment to the member 118.

[0031]

[0042] In some embodiments, the proxy assignment system 104 can select a proxy from the set of proxies 106 based on information corresponding to the availability of each proxy. For example, the proxy assignment system 104 can automatically select the first available proxy from the set of proxies 106. In some cases, the proxy assignment system 104 can automatically select the first available proxy that meets one or more criteria corresponding to the identification information of the member (e.g., the proxy whose profile most closely matches the member profile). For example, the proxy assignment system 104 can automatically select an available proxy within the geographical proximity of the member 118, an available proxy that shares a background similar to the background of the member 118, and so on.

[0032]

[0043] In some embodiments, agent 106 can be an automated process, such as a bot, configured to automatically engage and interact with member 118. For example, the agent assignment system 104 can utilize responses provided by member 118 during the onboarding process as input to a machine learning algorithm or artificial intelligence to generate a member profile and a bot that can serve as agent 106 for member 118. The bot can be configured to autonomously chat with member 118 to generate tasks and proposals, perform tasks on behalf of member 118 according to any approved proposals, etc., as described herein. The bot can be configured according to parameters or characteristics of member 118 defined in the member profile. As the bot communicates with member 118 over time, the bot can be updated to improve the bot's interaction with member 118.

[0033]

[0044] Data associated with member 118 collected during the onboarding process and any data corresponding to the selected agent can be stored in the user data store 108. The user data store 108 can include an entry corresponding to each member 118 of the task facilitation service 102. The entry can include the identification information of the corresponding member 118 and an identifier or other information corresponding to the agent assigned to member 118. As described in more detail herein, the entry in the user data store 108 can further include historical data corresponding to the communication between member 118 and the assigned agent over time. For example, when member 118 interacts with agent 106 via a chat session or stream, the messages exchanged via the chat session or stream can be recorded in the user data store 108.

[0034]

[0045] In some embodiments, the data associated with member 118 is used by task facilitation service 102 to create a member profile corresponding to member 118. As described above, task facilitation service 102 may provide member 118 with a survey or questionnaire through which member 118 may provide identification information associated with member 118. Responses provided by member 118 to this survey or questionnaire may be used by task facilitation service 102 to generate an initial member profile corresponding to member 118. In some embodiments, when proxy assignment system 104 assigns a proxy to member 118, task facilitation service 102 may prompt member 118 to generate a new member profile corresponding to member 118. For example, task facilitation service 102 may provide member 118 with a survey or questionnaire that includes a set of questions that may be used to supplement the information previously provided during the onboarding process. For example, through the survey or questionnaire, task facilitation service 102 may prompt member 118 to provide additional information regarding family, important dates (e.g., birthdays, etc.), dietary restrictions, and the like. Based on the responses provided by member 118, task facilitation service 102 may update the member profile corresponding to member 118.

[0035]

[0046] In some cases, the member profile may be accessible to the member 118, such as through an application or web portal provided by the task facilitation service 102. Through the application or web portal, the member 118 may add, remove, or edit any information within the member profile. The member profile may, in some cases, be divided into various sections corresponding to the member, the member's family, the member's home, etc. Each of these sections may be supplemented based on data related to the member 118 collected during the onboarding process and any responses to surveys or questionnaires given to the member 118 after the assignment of an agent to the member 118. Further, each section may include additional questions or prompts that the member 118 may use to provide additional information that may be used to expand the member profile. For example, through the member profile, the member 118 may be prompted to provide any credentials that may be used to access any external accounts (e.g., credit card accounts, retailer accounts, etc.) to facilitate the completion of tasks.

[0036]

[0047] In some embodiments, certain information within the member profile may be hidden from the member 118 or the agent. For example, as the agent progresses in the relationship with the member 118 through the completion of various tasks, the agent may modify the member profile to provide memos about the member 118 (e.g., member idiosyncrasies, any feedback regarding the member, etc.). Thus, when the member 118 accesses the member's member profile, these memos may be hidden such that the member 118 cannot review these memos or, in some cases, cannot access any section of the member profile designated as unavailable to the member by the agent 118 or the task facilitation service 102.

[0037]

[0048] As described in more detail herein, the agent assigned to member 118 may add or in some cases modify information within the member profile based on information shared with the agent and / or the agent's own observations regarding member 118. Further, when the task facilitation service 102 creates or performs a task on behalf of member 118, the relevant portions of the member profile may be automatically surfaced. For example, when the agent is generating a task related to meal planning for member 118, the task facilitation service 102 may automatically identify portions of the member profile that may be contextually relevant to meal planning and surface these portions of the member profile (e.g., meal preferences, dietary restrictions, etc.) to the agent. In some instances, when the agent requires additional information to create or perform a task on behalf of member 118, instead of sharing the additional information with member 118 through a chat session or other communication session between member 118 and the assigned agent, the agent may invite member 118 to update specific portions of the member profile.

[0038]

[0049] In some embodiments, when the agent assignment system 104 assigns a particular agent to member 118, the agent assignment system 104 notifies member 118 and the particular agent of the pairing. Further, the agent assignment system 104 may establish a chat session or other communication session between member 118 and the assigned agent to facilitate communication between member 118 and the agent. For example, member 118 may exchange messages with the assigned agent via a chat session or other communication session provided by an application given by the task facilitation service 102 and installed on the computing device 120, or through a web portal given by the task facilitation service 102. Similarly, the agent may be provided with an interface through which the agent may exchange messages with member 118.

[0039]

[0050] In some cases, member 118 may initiate or, in some cases, resume a chat session with the assigned proxy. For example, via an application or web portal provided by task facilitation service 102, a member may send a message to the proxy via a chat session or other communication session to communicate with the proxy. Member 118 may submit a message to the proxy indicating that member 118 desires assistance with a particular task. As an illustrative example, member 118 may submit a message to the proxy indicating that member 118 desires the proxy's assistance with member 118's upcoming move to Denver next month. The proxy may be presented with the submitted message via an interface provided by task facilitation service 102. Accordingly, the proxy may evaluate the message and generate a corresponding task to be performed to assist member 118. For example, the proxy may access a task generation form via an interface provided by task facilitation service 102, and through this task generation form, the proxy may provide information related to the task. The information may include information related to member 118 (e.g., member name, member address, etc.), as well as various parameters of the task itself (e.g., allocated budget, time frame for completion of the task, etc.). The parameters of the task may further include any member preferences (e.g., preferred brand, preferred third-party service 116, etc.).

[0040]

[0051] In some embodiments, the agent can provide information obtained from member 118 about a task specified in one or more messages exchanged between member 118 and the agent to the task recommendation system 112 of task facilitation service 102 to dynamically identify in real time any additional task parameters that may be required to generate one or more proposals for task completion. The task recommendation system 112 can be implemented using a computer system or as an application or other executable code implemented on the computer system of task facilitation service 102. In one embodiment, the task recommendation system 112 is presented to the member through a chat session (e.g., via an application utilized by member 118, etc.) and provides the agent with an interface through which the agent can generate tasks that can be completed by the agent and / or one or more third-party services 116 for member 118. For example, the agent may provide the name of the task, any known parameters of the task given by the member (e.g., budget, time frame, task operations to be performed, etc.). As an illustrative example, if member 118 sends the message "Hey, Russell, can you help with our move to Denver in 2 months", the agent can evaluate the message and generate a task titled "Move to Denver". For this task, the agent may indicate that the time frame for task completion is 2 months, as indicated by member 118. Additionally, the agent may add additional information known to the agent about the member. For example, the agent may indicate any preferred moving companies, any budgetary constraints, etc.

[0041]

[0052] In some embodiments, the task recommendation system 112 provides the agent with any relevant information from the member profile corresponding to the member 118 that can be used to generate a task. For example, if the agent generates a new task entitled "Move to Denver", the task recommendation system 112 may determine that the new task corresponds to a move to a new city or other location. Accordingly, the task recommendation system 112 may process the member profile to identify portions of the member profile that may be relevant to the task (e.g., the physical location of the member's home, the number of residents in the member's home, the square footage of the member's home, and the number of rooms). The task recommendation system 112 may automatically surface these portions of the member profile to the agent to enable the agent to use this information to generate new tasks. Alternatively, the task recommendation system 112 may automatically use this information to populate one or more fields in a task template for creating new tasks.

[0042]

[0053] In one embodiment, the proxy can access a resource library maintained by the task facilitation service 102 to obtain a task template that can be used to generate new tasks that can be performed on behalf of member 118. The resource library can serve as a repository for different task templates corresponding to different task categories (e.g., vehicle maintenance tasks, home maintenance tasks, family relationship event tasks, caregiving tasks, experience-related tasks, etc.). The task template can include a plurality of task definition fields that can be used to define tasks that can be performed for member 118. For example, the task definition fields corresponding to vehicle maintenance tasks can be used to define the make and model of the member's vehicle, the age of the vehicle, the information corresponding to when the vehicle was last maintained, the reported accidents related to the vehicle, the description of the problems related to the vehicle, etc. Thus, each task template maintained in the resource library can include fields that are specific to the task category associated with the task template. In some cases, the proxy can further define custom fields for the task template, through which the proxy can define tasks and supply additional information that may be useful when completing the tasks. These custom fields can be added to the task template so that they can be available to the proxy when the proxy obtains future task templates to create similar tasks.

[0043]

[0054] In some cases, when an agent selects a particular task template from the resource library, the task recommendation system 112 may automatically identify the relevant portions of the member profile corresponding to the member 118. For example, each template may be associated with a particular task category, as described above. Further, different portions of the member profile may similarly be related to different task categories such that the task recommendation system 112 can identify the relevant portions of the member profile in response to the agent's selection of a task template. From these relevant portions of the member profile, the task recommendation system 112 may automatically obtain information that can be used to populate one or more fields of the selected task template. For example, if member 118 has indicated in the member profile that they drive a 2020 Subaru Outback and this information is shown in a portion of the member profile corresponding to the member's vehicle, the task recommendation system 112 may automatically obtain this information from the member profile to populate fields within the task template corresponding to the make, model, and year of the member's vehicle (e.g., "Make = Subaru", "Model = Outback", "Year = 2020", etc.). This can reduce the amount of data entry required of the agent to populate task templates for new tasks.

[0044]

[0055] In some embodiments, based on a task template selected by the proxy, the task recommendation system 112 automatically determines which portions of the member profile can be accessed by the proxy for task creation. For example, if the proxy selects a task template corresponding to a vehicle maintenance task from a resource library (e.g., the task category of the template is specified as "vehicle maintenance"), the task recommendation system 112 can process the member profile to identify one or more portions of the member profile that may be relevant to the vehicle maintenance task (e.g., the make and model of the member's vehicle, the age of the vehicle, information corresponding to when the vehicle was last maintained, etc.). The task recommendation system 112 presents these relevant portions of the member profile to the proxy while hiding any other portions of the member profile that may not be relevant to the task category selected by the proxy. This can prevent the proxy from accessing any information from the member profile without specifically needing that information, thereby reducing the exposure of the member's information.

[0045]

[0056] In some embodiments, the agent may provide the generated task to the task recommendation system 112 to determine whether additional member input is required for creating a proposal that may be presented to the member for task completion. The task recommendation system 112 may use, for example, a machine learning algorithm or artificial intelligence to process the generated task and information corresponding to member 118 from the user data store 108 to automatically identify, for example, additional parameters for the task and any additional information that may be required from member 118 for proposal generation. For example, the task recommendation system 112 may use the generated task, the information corresponding to member 118 (e.g., member profile), and historical data corresponding to tasks performed on other members in similar situations as input to a machine learning algorithm or artificial intelligence to identify any additional parameters that may be automatically completed for the task and any additional information that may be required from member 118 to define the task. For example, if the task is related to a future move to another city, the task recommendation system 112 may utilize a machine learning algorithm or artificial intelligence to identify members in similar situations (e.g., members within the same geographic area of member 118, members with similar task delegation sensitivities, members who have performed similar tasks, etc.). Based on the task generated for member 118, the characteristics of member 118 from the member profile stored in the user data store 108, and the data corresponding to these members in similar situations, the task recommendation system 112 may provide additional parameters for the task. As an illustrative example, in the case of the above-described task "move to Denver", the task recommendation system 112 may provide a recommended budget for the task, one or more moving companies that member 118 may approve (used by other members in similar situations with positive feedback), etc. The agent may review these additional parameters and select one or more of these parameters to include in the task.

[0046]

[0057] If the task recommendation system 112 determines that additional member input is required for a task, the task recommendation system 112 may provide an agent with recommendations for questions that can be presented to member 118 regarding the task. Returning to the "Moving to Denver" task example, if the task recommendation system 112 determines that it is important to understand one or more parameters of the member's home (e.g., square footage, number of rooms, etc.) for the task, the task recommendation system 112 may provide an agent with a recommendation to prompt member 118 to provide one or more of these parameters. The agent may review the recommendation provided by the task recommendation system 112 and prompt member 118 to provide additional task parameters via a chat session. This process may reduce the number of prompts given to member 118 to define a particular task, thereby reducing the cognitive load on member 118. In some examples, rather than providing an agent with recommendations for questions that can be presented to member 118 regarding the task, the task recommendation system 112 may automatically present these questions to member 118 via a chat session. For example, if the task recommendation system 112 determines that a question regarding the area of the member's home is required for the task, the task recommendation system 112 may automatically prompt member 118 via a chat session to provide the area of the member's home. In one embodiment, the information provided by member 118 in response to these questions may be used to automatically supplement the member profile so that this information may be readily available to the agent and / or the task recommendation system 112 for defining new tasks in the future.

[0047]

[0058] In some embodiments, the task facilitation service 102 automatically generates a specific chat or other communication session corresponding to the task. This specific chat or other communication session corresponding to the task may be separate from the chat session previously established between the member 118 and the proxy. Through this task-specific chat or other communication session, the member 118 and the proxy may exchange messages related to the specific task. For example, through this task-specific chat or other communication session, the proxy may prompt the member 118 for information that may be required to determine one or more parameters of the task. Similarly, if the member 118 has questions related to a specific task, the member 118 may provide these questions through the task-specific chat or other communication session. The implementation of the task-specific chat or other communication session may reduce the number of messages exchanged through other chats or communication sessions while ensuring that the communications within these task-specific chats or other communication sessions are relevant to the corresponding task.

[0048]

[0059] In some embodiments, when the agent obtains the necessary task-related information from member 118 and / or through the task recommendation system 112 (e.g., task parameters obtained through the evaluation of tasks performed on members in similar situations, etc.), the agent can utilize the task adjustment system 114 of the task facilitation service 102 to generate one or more proposals for task resolution. The task adjustment system 114 can be implemented using a computer system or as an application or other executable code implemented on the computer system of the task facilitation service 102. In some examples, the agent, as described above, can utilize the resource library maintained by the task adjustment system 114 to identify one or more third-party services 116 and / or resources (e.g., retailers, restaurants, websites, brands, types of goods, specific goods, etc.) that can be used for the performance of tasks for member 118 according to one or more task parameters identified by the agent and the task recommendation system 112. The proposal can specify a time frame for task completion, the identification of any third-party service 116 (if any) to be engaged for task completion, a budget estimate for task completion, the resources or types of resources to be used for task completion, etc. The agent can present the proposal to member 118 via a chat session to request a response from member 118 in order to proceed with the proposal or provide an alternative proposal for task completion.

[0049]

[0060] In some embodiments, the task recommendation system 112 can provide recommendations to the agent regarding whether the agent should provide a proposal to member 118, and can provide options to the member for deferring to the agent regarding completion of the defined task. For example, in addition to providing the member and task relationship information to the task recommendation system 112 to identify additional parameters for the task, the agent can present one or more proposals for task completion to member 118 and can indicate that recommendation to the task recommendation system 112 to either present an option to defer to the agent for task completion or omit it. The task recommendation system 112 can utilize machine learning algorithms or artificial intelligence to generate the foregoing recommendations. The task recommendation system 112 can determine whether to recommend presenting one or more proposals for task completion and whether to present an option to defer to the agent for task completion to member 118, using information provided by the agent, data about members in similar situations from the user data store 108, and task data corresponding to similar tasks from the task data store 110 (e.g., tasks having parameters similar to the submitted task, tasks performed on behalf of members in similar situations, etc.).

[0050]

[0061] If the agent determines that the member should be presented with the option to delegate to the agent for task completion, the agent may present this option to the member via the chat session. The option may be presented in the form of a button or other graphical user interface (GUI) element that the member can select to indicate their approval of the option. For example, the member may be presented with a "Run With It" button to give the member the option of delegating all decisions related to the performance of the task to the agent. If member 118 selects the option, the agent may present a proposal selected by the agent for task completion on behalf of member 118 and may proceed with coordinating with one or more third-party services 116 for the performance and completion of the task according to the proposal. Thus, instead of enabling member 118 to select a specific proposal for task completion, the agent may instead select a specific proposal on behalf of member 118. The proposal may still be presented to member 118 for member 118 to verify how the task should be completed. Any action taken by the agent on behalf of member 118 for task completion may be recorded in the entry corresponding to the task in the task data store 110. Alternatively, if member 118 rejects the option and instead indicates that the agent should provide one or more proposals for task completion, the agent may generate one or more proposals as described above.

[0051]

[0062] In one embodiment, the task recommendation system 112 records the responses of members to the presentation of options for a proxy to follow in order to complete a task for use in training a machine learning algorithm or artificial intelligence used to make recommendations for the presentation of options. For example, if the proxy selects to present an option to member 118, the task recommendation system 112 may record whether member 118 selected the option or declined the offer and requested the presentation of one or more proposals related to the task. Similarly, if the proxy selects to present one or more proposals without presenting an option to delegate to the proxy, the task recommendation system 112 records whether member 118 was satisfied with the presentation of these one or more proposals or requested that the proxy select a proposal on behalf of the member, and thus may delegate to the proxy to complete the task. These member responses, along with the data corresponding to the task, the actions of the proxy (e.g., presentation of options, presentation of proposals, etc.), and the recommendations provided by the task recommendation system 112, may be stored in the task data store 110 for use by the task recommendation system 112 in training and / or enhancing a machine learning algorithm or artificial intelligence.

[0052]

[0063] In some embodiments, the agent may propose one or more tasks based on member characteristics, task history, and other factors. For example, when member 118 communicates with the agent via a chat session, the agent may evaluate any messages from member 118 to identify any tasks that may be performed to reduce the member's cognitive load. As an illustrative example, if member 118 indicates via a chat session that their spouse's birthday is approaching, the agent may utilize that knowledge of member 118 to develop one or more tasks that may be recommended to member 118 in anticipation of their spouse's birthday. The agent may recommend tasks such as purchasing a cake, ordering flowers, or setting up a personalized travel experience for member 118. In some embodiments, the agent can generate task suggestions without member input. For example, as part of an onboarding process, member 118 may grant the task facilitation service 102 access to one or more member resources such as the member's calendar, the member's personal fitness device (e.g., a fitness tracker, exercise equipment with communication capabilities, etc.), the member's vehicle data, and the like. Data collected from these member resources may be monitored by the agent, and the agent may parse the data to generate task proposals for member 118.

[0053]

[0064] In some embodiments, data collected from member 118 over a chat session with an agent can be evaluated by task recommendation system 112 to identify one or more tasks that can be presented to member 118 for completion. For example, task recommendation system 112 can utilize natural language processing (NLP) or other artificial intelligence to evaluate messages or other communications received from member 118 to identify intent. The intent can correspond to a problem that member 118 desires to solve. Examples of intent can include, for example, topic, sentiment, complexity, and urgency. The topic can include, but is not limited to, subjects, products, services, technical problems, usage questions, complaints, purchase requests, etc. The intent can be determined based on, for example, semantic analysis of the message (such as by identifying keywords, sentence structure, repeated words, punctuation marks, and / or non - article words), user input (such as selecting one or more categories), and / or statistical values related to the message (such as typing speed and / or response latency). The intent can be used by an NLP algorithm or other artificial intelligence to identify possible tasks that can be recommended to member 118. For example, task recommendation system 112 can use NLP or other artificial intelligence to process any incoming messages from member 118 to detect new tasks or other problems that member 118 desires to solve based on the identified intent. In some cases, task recommendation system 112 can utilize historical task data and corresponding messages from task data store 110 to train NLP or other artificial intelligence to identify possible tasks. When task recommendation system 112 identifies one or more possible tasks that can be recommended to member 118, task recommendation system 112 may present these possible tasks to the agent, and the agent can select tasks that can be shared with member 118 via the chat session.

[0054]

[0065] In some embodiments, the task recommendation system 112 can generate a list of possible tasks that can be presented to the member 118 for completion in order to reduce the member's cognitive load. For example, based on the evaluation of data collected from different member sources (e.g., personal fitness or biometric devices, video and audio recordings, etc.), the task recommendation system 112 can identify an initial set of tasks that can be completed for the member 118. Further, the task recommendation system 112 can identify additional and / or alternative tasks based on external factors. For example, the task recommendation system 112 can identify seasonal tasks (e.g., leaf collection, gutter cleaning, etc.) based on the member's geographical location. As another example, the task recommendation system 112 can identify tasks that have been performed for other members within the member's geographical area and / or, in some cases, tasks in similar situations (e.g., sharing one or more characteristics with the member 118). For example, if various members within the vicinity of a member have had their gutters cleaned or their driveways shoveled during the winter by other members, the task recommendation system 112 can determine that these tasks can be performed for the member 118 and appeal to the member 118 for completion.

[0055]

[0066] In some embodiments, the task recommendation system 112 can use an initial set of tasks, member-specific data from the user data store 108 (e.g., characteristics, demographics, location, past responses to recommendations and proposals, etc.), data corresponding to members in similar situations from the user data store 108, and past data corresponding to tasks previously performed for other members in similar situations from the members 118 and the task data store 110 as input to a machine learning algorithm or artificial intelligence to identify a set of tasks that can be recommended to the member 118 for implementation. For example, the initial set of tasks may include tasks related to rain barrel cleaning, but based on the member's preferences, the member 118 may prefer to perform this task himself. Thus, the output of the machine learning algorithm or artificial intelligence (e.g., the set of tasks that can be recommended to the member 118) may omit this task. Further, in addition to the set of tasks that can be recommended to the member 118, the output of the machine learning algorithm or artificial intelligence can specify recommendations for the presentation of buttons or other GUI elements that can be selected to indicate that the member 118 wishes to delegate to an agent for the performance of the task, for each of the identified tasks, as described above.

[0056]

[0067] A list of sets of tasks that may be recommended to member 118 can be given to the proxy for a final decision as to which tasks can be presented to member 118 through task-specific interfaces (e.g., such as these task-specific communication sessions). In some embodiments, task recommendation system 112 can rank the list of sets of tasks based on the likelihood that member 118 will select tasks to delegate to the proxy for the implementation of third-party service 116 and / or coordination with third-party service 116. Alternatively, task recommendation system 112 can rank the list of sets of tasks based on the level of urgency of completion of each task. The level of urgency can be determined based on member characteristics (e.g., data corresponding to the member's own prioritization of some tasks or categories of tasks) and / or the potential risk to member 118 if the task is not performed. For example, a task corresponding to the replacement or installation of a carbon monoxide detector in the member's home can be ranked higher than a task corresponding to the replacement of a refrigerator water filter because the carbon monoxide filter may be more important for the member's safety. As another exemplary example, if member 118 places significant importance on the maintenance of the member's vehicle, task recommendation system 112 can rank tasks related to vehicle maintenance higher than tasks related to other types of maintenance. As yet another exemplary example, task recommendation system 112 can rank tasks related to the upcoming birthday higher than tasks that can be completed after the upcoming birthday.

[0057]

[0068] The agent may review the set of tasks recommended by the task recommendation system 112 and select one or more of these tasks for presentation to the member 118 via the task-specific interfaces corresponding to these tasks. Further, as described above, the agent may determine whether to present the option of delegating the performance of a task to the agent (e.g., via a button or other GUI element indicating the preference of the member delegating the performance of the task). In some examples, one or more tasks may be presented to the member 118 according to a ranking generated by the task recommendation system 112. Alternatively, one or more tasks may be presented according to an understanding of the member's own preferences for task prioritization. Through the interface provided by the task facilitation service 102, the member 118 may access any of the task-specific interfaces related to these tasks to select one or more tasks that may be performed with the assistance of the agent. Alternatively, the member 118 may reject any presented task that the member 118 would rather perform personally or that the member 118 does not desire to perform in some cases.

[0058]

[0069] In some embodiments, the task recommendation system 112 may automatically select one or more of the tasks for presentation to the member 118 via a task-specific interface without proxy interaction. For example, the task recommendation system 112 may utilize a machine learning algorithm or artificial intelligence to select which tasks from a list of a set of tasks previously ranked by the task recommendation system 112 can be presented to the member 118 through the task-specific interface. As an illustrative example, the task recommendation system 112 can use the member profile corresponding to the member 118 from the user data store 108 (which can include historical data corresponding to member proxy communication, member feedback corresponding to proxy execution and presented tasks / proposals, etc.), the tasks currently in progress for the member 118, and a list of the set of tasks as input to the machine learning algorithm or artificial intelligence. The output generated by the machine learning algorithm or artificial intelligence can indicate which tasks from the list of the set of tasks should be automatically presented to the member 118 via the task-specific interfaces corresponding to these tasks. When the member 118 interacts with these newly presented tasks, the task recommendation system 112 can record these interactions and use them to further train the machine learning algorithm or artificial intelligence to better determine which tasks should be presented to the member 118 and other members in similar situations.

[0059]

[0070] In some embodiments, the task recommendation system 112 can monitor the chat session between the member 118 and the proxy, as well as the member interaction with the task-specific interfaces related to different tasks provided by the task facilitation service 102 and that can be performed on behalf of the member 118, in order to collect data regarding the member selection for the task for delegation for implementation. For example, the task recommendation system 112 can process messages corresponding to tasks presented to the member 118 by the proxy via the chat session, as well as any interaction with the task-specific interfaces corresponding to these tasks (e.g., any task-specific communication session, creation of a member for a discussion related to a particular task, etc.) to determine the polarity or sentiment corresponding to each task. For example, if the member 118 indicates in a message to the proxy that they would prefer not to receive any task recommendations corresponding to vehicle maintenance, the task recommendation system 112 can attribute a negative polarity or sentiment to the tasks corresponding to vehicle maintenance. Alternatively, if the member 118 selects a task related to gutter cleaning for delegation to the proxy and / or indicates in a message to the proxy that the recommendation for this task was a great idea, the task recommendation system 112 can attribute a positive polarity or sentiment to this task. In some embodiments, the task recommendation system 112 can use these responses to the tasks recommended to the member 118 to further train or enhance the machine learning algorithms or artificial intelligence utilized to generate task recommendations that can be presented to the member 118 and other similarly situated members of the task facilitation service 102.

[0060]

[0071] In some embodiments, in addition to recommending tasks that can be performed for member 118, the agent may recommend to member 118 one or more curated experiences that appeal to the member to keep their mind off urgent matters and spend more time with themselves and their family. As described above, during the onboarding process, member 118 may be prompted to indicate any of those interests or hobbies that member 118 enjoys. Further, as the agent continues the conversation with member 118 over the chat session, the agent may prompt member 118 to provide additional information about that interest in a natural way. For example, the agent may ask member 118 "What are you doing this weekend?" Based on the member response, the agent may update the member profile to indicate the member's preference. Thus, over time, the agent and the task facilitation service 102 may develop a deeper understanding of the member's interests and hobbies.

[0061]

[0072] In some embodiments, the task facilitation service 102 generates a set of experiences that may be available to members in each geographic market in which the task facilitation service 102 operates. For example, the task facilitation service 102 may partner with various organizations within each geographic market to identify unique and / or time-limited experience opportunities that may be of interest to members of the task facilitation service. Further, for experiences that do not require management (e.g., hiking, walking, etc.), the task facilitation service 102 may identify popular experiences within each geographic market that may appeal to its members. Information collected by the task facilitation service 102 may be stored in a resource library or other repository accessible to the task recommendation system 112 and various agents 106.

[0062]

[0073] In some embodiments, for each available experience, the task facilitation service 102 can generate a template that includes both the information required from the member 118 to plan the experience on behalf of the member 118 and a skeleton of what the experience recommendation proposal would look like when presented to the member 118. This can make it easier for the proxy to complete the definition of tasks related to the experience. In some cases, the template can incorporate data from various sources that provide high-quality recommendations such as travel guides, food and restaurant guides, reputable publications, and the like. In some embodiments, when the proxy selects a particular template for creating tasks related to the experience, the task recommendation system 112 can automatically identify the portions of the member profile that can be used to populate the template. For example, if the proxy selects a template corresponding to an evening out at a restaurant, the task recommendation system 112 can automatically process the member profile to identify any information corresponding to the member's meal preferences and restrictions that can be used to populate one or more fields within the task template selected by the proxy.

[0063]

[0074] In some embodiments, the task recommendation system 112 selects a set of experiences that may be recommended to member 118 periodically (e.g., monthly, bi-monthly, etc.) or in response to a trigger event (e.g., a set number of tasks being performed, a member request, etc.). For example, similar to the identification of tasks that may be recommended to member 118, the task recommendation system 112 may use, as inputs to a machine learning algorithm or artificial intelligence, at least the set of available experiences from user data store 108 and the member's preferences, in order to obtain, as output, a set of experiences that may be recommended to member 118. The task recommendation system 112 may, in some cases, present this set of experiences to member 118 via a chat session instead of an agent, or through a task-specific interface corresponding to each of the set of experiences. Each experience recommendation may specify an explanation of the experience and any associated costs that may be borne by member 118. Further, for each presented experience recommendation, the task recommendation system 112 may provide a button or other GUI element that may be selectable by member 118 in order to request curation of the experience for member 118.

[0064]

[0075] If member 118 instead selects a specific experience recommendation corresponding to the experience that member 118 wants to curate, the task recommendation service 112 or an agent may generate one or more new tasks related to the curation of the selected experience recommendation. For example, if member 118 selects an experience recommendation related to a weekend picnic, the task recommendation system 112 or an agent may add a new task to the member's task list so that member 118 can evaluate the progress of task completion. Further, the agent may ask member 118 detailed questions related to the selected experience to assist the agent in determining proposals for the completion of tasks related to the selected experience. For example, if member 118 selects an experience recommendation related to the curation of a weekend picnic, this information may guide the agent to curate a weekend picnic for all parties and identify appropriate third-party services 116 and possible venues for the weekend picnic, so the agent may ask member 118 about how many adults and children will be participating. The responses given by member 118 may be used to update the member profile so that, for similar experiences and related tasks, these responses can be used to automatically obtain information that can be used for the curation of the experience.

[0065]

[0076] Similar to the process described above for the completion of tasks for Member 118, the agent can generate one or more proposals for the curation of the selected experience. For example, the agent can generate proposals that provide, among other things, a list of dates / times for the experience, a list of possible venues for the experience (e.g., park, movie theater, hiking trail, etc.), a list of possible meal options and corresponding prices, options for meal delivery or pickup, etc. The various options in the proposal can be presented to Member 118 via a chat or communication session specific to the experience (e.g., a task-specific interface corresponding to a particular experience) and via an application or web portal provided by the task facilitation service 102. Based on the member response to the various options presented in the proposal, the agent can indicate that it has started the curation process for the experience. Further, the agent can provide information related to experiences that may be relevant to Member 118. For example, if Member 118 selects an option to pick up food from a selected restaurant for a weekend picnic, the agent can provide detailed driving directions from the member's home to the restaurant for picking up the food (which would not be presented if Member 118 selected a delivery option), detailed driving directions from the restaurant to the selected venue, parking information, a list of the food to be ordered, and the total price of the food order. Member 118 can review this proposal and decide whether to accept the proposal. If Member 118 accepts the proposal, the agent can proceed to perform various tasks to curate the selected experience.

[0066]

[0077] If member 118 selects a specific proposal for a specific task or selects a button or other GUI element related to a specific task to indicate a desire to delegate the performance of the task, and if the task is to be completed using third-party service 116, the proxy may coordinate with one or more third-party services 116 for the completion of the task on behalf of member 118. For example, the proxy may utilize the task coordination system 114 of the task facilitation service 102 to identify and contact one or more third-party services 116 for the performance of the task. As described above, the task coordination system 114 may include a resource library containing detailed information related to third-party services 116 that may be available for use in performing tasks on behalf of members of the task facilitation service 102. For example, entries in the resource library regarding third-party services may include contact information regarding the third-party service, any available price sheets for services or goods provided by the third-party service, a list of goods and / or services provided by the third-party service, business hours, evaluations or scores by different categories of members, etc. The proxy may identify one or more third-party services that will perform the task and query the resource library to determine the estimated cost of performing the task. In some instances, the proxy may obtain a quote for the completion of the task and contact one or more third-party services 116 to coordinate the performance of the task on behalf of member 118.

[0067]

[0078] In some cases, the resource library may further include detailed information corresponding to other services and other entities that may be associated with or partnered with the task facilitation service 102 and that are contracted to perform various tasks on behalf of members of the task facilitation service 102. These other services and other entities may provide their services or goods at a rate agreed upon with the task facilitation service 102. Thus, if the agent selects any of these other services or other entities from the resource library, the agent may be able to determine specific parameters for task completion (e.g., price, availability, required time, etc.).

[0068]

[0079] In some embodiments, for a given task, the agent can query a resource library to identify one or more third - party services and other services / entities that partner with the task facilitation service 102 to request a quote for task completion (such as through a web portal or application provided by the task facilitation service). For example, for a newly created task, the agent can send a job offer to these one or more third - party services and other services / entities. The job offer can indicate various characteristics of the task to be completed (such as the scope of the task, the approximate geographical location of member 118 or where the task is to be completed, the desired budget, etc.). Through the application or web portal provided by the task facilitation service 102, a third - party service or other service / entity can review the job offer and determine whether to submit a quote for task completion or reject the job offer. If the third - party service or other service / entity chooses to reject the job offer, the agent can receive a notification indicating that the third - party service or other service / entity has rejected the job offer. Alternatively, if the third - party service or other service / entity chooses to bid (e.g., accept the job offer) to perform the task, the third - party service or other service / entity can submit a quote for task completion. This quote can indicate the estimated cost for task completion, the time required for task completion, the estimated date when the third - party service or other service / entity will be available to start performing the task, etc.

[0069]

[0080] The agent may use any given quote from third - party services and / or other services / entities to generate different proposals for the completion of the task. These different proposals may be presented to member 118 through a task - specific interface corresponding to the specific task to be completed. If member 118 selects a specific proposal from the set of proposals presented through the task - specific interface, the agent may send a notification to the third - party service or other service / entity that submitted the quote associated with the selected proposal to indicate that it has been selected for the completion of the task. Thus, the agent may utilize task adjustment system 114 to coordinate with third - party services or other services / entities for the completion of the task, as described in more detail herein.

[0070]

[0081] In some cases, if a task is to be completed by agent 106, agent 106 may utilize the task adjustment system 114 of task facilitation service 102 to identify any resources that may be utilized by agent 106 for the performance of the task. The resource library may contain detailed information regarding different resources available for the performance of the task. As an illustrative example, if agent 106 is given the task of purchasing a set of filters for a member's home, agent 106 may query the resource library to identify retailers that sell filters of an acceptable quality and / or price corresponding to the proposal approved by member 118. Further, agent 106 may obtain from user data store 108 the available payment information of member 118 that may be used to make payment for any resources required by agent 106 to complete the task. Using the above example, agent 106 may obtain member 118's payment information from user data store 108 to complete the purchase with the retailer of the set of filters that will be used in the member's home.

[0071]

[0082] In some embodiments, the task orchestration system 114 uses machine learning algorithms or artificial intelligence to select one or more third-party services 116 and / or resources on behalf of the agent for the performance of a task. For example, the task orchestration system 114 may utilize a selected proposal or parameter related to the task (e.g., if member 118 is delegated to the agent to determine how the task should be performed), and historical task data from the task data store 110 corresponding to similar tasks as input to the machine learning algorithm or artificial intelligence. The machine learning algorithm or artificial intelligence may generate, as output, a list of one or more third-party services 116 that can perform the task with a high probability of member 118 satisfaction. If the task is to be performed by the agent 106, the machine learning algorithm or artificial intelligence may generate, as output, a list of resources (e.g., retailers, restaurants, brands, etc.) that can be used by the agent 106 to perform the task with a high probability of member 118 satisfaction. As described above, the resource library may include a rating or score related to the satisfaction of the third-party service 116 determined by a member of the task facilitation service 102 for each third-party service 116. Additionally, the resource library may include a rating or score related to the satisfaction of each resource (e.g., retailer, restaurant, brand, product, material, etc.) determined by a member of the task facilitation service 102. For example, upon completion of the task, the agent may prompt member 118 to provide an evaluation or score regarding the performance of the third-party service in completing the task on behalf of member 118. As another example, if the task is performed by the agent 106, the agent may prompt member 118 to provide an evaluation or score regarding the resources utilized by the agent for the agent's performance and completion of the task.Each rating or score is associated with a member who provided the rating or score such that the task adjustment system 114 can use machine learning algorithms or artificial intelligence to determine the satisfaction with the performance of tasks based on the implementation of third - party services, or the likelihood of satisfaction with resources utilized by proxy, for similar tasks for members in similar situations. The task adjustment system 114 can generate a list of third - party services 116 and / or resources recommended for the performance of a task, whereby the list can be ranked according to the likelihood of satisfaction (e.g., a score or other metric) assigned to each identified third - party service and / or resource.

[0072]

[0083] In some cases, if a task cannot be completed by a third - party service or other service / entity according to the estimates provided in the selected proposal, the member 118 may be given the option to cancel a particular task or, in some cases, make changes to the task. For example, if the new estimated cost for performing the task exceeds the maximum amount specified in the selected proposal, the member 118 can request the agent to find an alternative third - party service or other service / entity to perform the task within the budget specified in the proposal. Similarly, if the time frame for completion of the task is not within the time frame indicated in the proposal, the member 118 can request the agent to find an alternative third - party service or other service / entity for performing the task within the original time frame. The member's intervention can be recorded by the task recommendation system 112 and the task adjustment system 114 to retrain their corresponding machine learning algorithms or artificial intelligence to better identify third - party services 116 and / or other service / entities that can perform tasks within the defined proposal parameters.

[0073]

[0084] In some embodiments, when the agent contracts with one or more third-party services 116 or other services / entities for the performance of a task, the task orchestration system 114 may monitor the performance of the task by these third-party services 116 or other services / entities. For example, the task orchestration system 114 may record any information provided by the third-party services 116 or other services / entities regarding the time frame for the performance of the task, the costs associated with the performance of the task, any status updates regarding the performance of the task, and the like. The task orchestration system 114 may associate this information with a data record in the task data store 110 corresponding to the task being performed. The status updates provided by the third-party services 116 or other services / entities may be automatically provided to the member 118 and the agent via an application or web portal provided by the task facilitation service 102.

[0074]

[0085] In some embodiments, when a task is to be performed by the agent 106, the task orchestration system 114 can monitor the performance of the task by the agent 106. For example, the task orchestration system 114 may monitor in real time any communication between the agent 106 and the member 118 regarding the performance of the task by the agent. These communications may include messages from the agent 106 indicating any status updates regarding the performance of the task, any purchases or expenses borne by the agent 106 in performing the task, the time frame for the completion of the task, and the like. The task orchestration system 114 may associate these messages from the agent 106 with a data record in the task data store 110 corresponding to the task being performed.

[0075]

[0086] In some cases, the proxy may automatically make payments for services and / or goods provided by one or more third-party services 116 on behalf of member 118, or payments for purchases made by the proxy on behalf of member 118 for the completion of tasks. For example, during the onboarding process, member 118 may provide payment information (e.g., credit card number and related information, debit card number and related information, bank information, etc.) that can be used by the proxy to make payments to third-party services 116 or for purchases to be made by the proxy on behalf of member 118. Thus, member 118 may not be required to provide any payment information to enable the proxy 106 and / or third-party services 116 to initiate the performance of tasks on behalf of member 118. This can further reduce the cognitive load on member 118 for managing the performance of tasks.

[0076]

[0087] As described above, when a task is completed, member 118 may be prompted to provide feedback regarding the completion of the task. For example, member 118 may be prompted to provide feedback regarding the performance and expertise of the selected third-party service 116 in the performance of the task. Further, member 118 may be prompted to provide feedback regarding the quality of the proposal provided by the proxy and whether the performance of the task addressed the issues underlying the task. Using the responses provided by member 118, the task facilitation service 102 may train or in some cases update the machine learning algorithms or artificial intelligence utilized by the task recommendation system 112 and the task adjustment system 114 to provide better identification of tasks, creation of proposals, identification of third-party services 116 and / or other services / entities for completing tasks for member 118 and other members in similar situations, identification of resources that can be provided to the proxy 106 for the performance of tasks on behalf of member 118, etc.

[0077]

[0088] Regarding the processes described herein, it should be noted that the various operations performed by agent 106 can be performed, additionally or alternatively, using one or more machine learning algorithms or artificial intelligence. For example, when agent 106 performs tasks over time on behalf of member 118 or, in some cases, adjusts the performance of tasks, task facilitation service 102 can continuously and automatically update the member profile according to member feedback related to the performance of these tasks by agent 106 and / or third-party service 116. In some embodiments, after the member's profile has been updated over a period of time (e.g., 6 months, 1 year, etc.) or over a set of tasks (e.g., 20 tasks, 30 tasks, etc.), task recommendation system 112 can utilize machine learning algorithms or artificial intelligence to automatically and dynamically generate new tasks, with or without agent interaction, based on various attributes of the member's profile (e.g., historical data corresponding to communication between the member and the agent, member feedback corresponding to tasks performed and presented by the agent / suggestions, etc.). Task recommendation system 112 can obtain any additional information required for the new tasks and automatically communicate with member 118 to generate proposals that can be presented to member 118 for the performance of these tasks. Agent 106 can monitor the communication between task recommendation system 112 and member 118 to ensure that the conversation maintains a positive polarity (e.g., member 118 is satisfied with its interaction with task recommendation system 112 or other bots, etc.). If agent 106 determines that the conversation has a negative polarity (e.g., member 118 expresses frustration, task recommendation system 112 or the bot is unable to process the member's response or request, etc.), agent 106 can intervene in the conversation. This can enable agent 106 to address any member concerns and perform any tasks on behalf of member 118.

[0078]

[0089] Thus, unlike these systems and environments that may have little knowledge about the users with whom the automated customer service system and environment interact with agents or other automated systems, the task recommendation system 112 can continuously update the member profile to provide up-to-date historical information about member 118 based on the automated interaction of the system with the member or the interaction with proxy 106, and also based on the tasks performed on behalf of member 118 over time. As member 118 or the system interacts with proxy 106, and as tasks are devised, proposed, and performed on behalf of member 118 over time, this historical information can be automatically and dynamically updated and can be used by task recommendation system 112 to anticipate, identify, and present appropriate or intelligent responses to the queries, needs, and / or purposes of member 118.

[0079] B. Identify various tasks and assign agents for performing them

[0090] FIG. 2 shows an exemplary example of environment 200 in which, according to at least one embodiment, agent assignment system 104 performs an onboarding process for member 118 and assigns agent 106 to member 118 based on member attributes and agent attributes. In environment 200, in response to a request from member 118 to initiate an onboarding process for creating an account with the task facilitation service, agent assignment system 104 of the task facilitation service may collect information about member 118 that can be used to create a member profile and may send one or more onboarding prompts to member 118 to identify possible tasks that can be presented to member 118 based on the member profile. For example, as shown in FIG. 2, member 118 may submit its request to member onboarding subsystem 202 of agent assignment system 104. Member onboarding subsystem 202 may be implemented using a computer system or as an application or other executable code implemented on the computer system of agent assignment system 104.

[0080]

[0091] In some embodiments, the member onboarding subsystem 202 of the proxy assignment system 104 may select one or more questions that may be presented to member 118 to obtain initial information about member 118 that may be used to generate a member profile for member 118. For example, the member onboarding subsystem 202 may first prompt member 118 to provide basic demographic information about member 118. By way of illustrative example, the member onboarding subsystem 202 may prompt member 118 to provide information about its physical address, age, other members of the household (e.g., spouse, children, other dependents, etc.), information about any interests or hobbies, languages spoken in the household, and the like. Additionally, the member onboarding subsystem 202 may prompt member 118 to indicate a comfort level regarding the delegation of specific categories of tasks (e.g., cleaning tasks, repair tasks, maintenance tasks, etc.). In some instances, the member onboarding subsystem 202 may prompt member 118 to indicate an interest in what initial tasks to delegate to others in order to remove the cognitive load on member 118.

[0081]

[0092] The member onboarding subsystem 202 may provide responses to these initial prompts to the member modeling subsystem 204 to initiate the process of generating a member profile for member 118. The member modeling subsystem 204 may be implemented using a computer system or as an application or other executable code implemented on the computer system of the proxy assignment system 104. In some embodiments, the member modeling subsystem 204 implements a machine learning algorithm or artificial intelligence trained to identify additional prompts that may be presented to member 118 to obtain additional information that can be used to generate a member profile of member 118. Further, the machine learning algorithm or artificial intelligence may identify a proxy that may be optimal for interacting with member 118 and may be configured to use the responses given by member 118 in response to various prompts presented to member 118 and other member data from the user data store 108 to generate a member profile of member 118 that can be used to perform various tasks for member 118 according to the member's preferences and actions.

[0082]

[0093] As an illustrative example, when member 118 provides basic information about member 118 in response to an initial prompt from member onboarding subsystem 202, member modeling subsystem 204 may process the provided information using a classification or clustering algorithm to identify members in a similar situation based on one or more vectors (e.g., geographic location, demographic information, likelihood of delegating tasks to others, family composition, household composition, etc.). In some cases, a dataset of input member characteristics corresponding to responses to prompts provided by member onboarding subsystem 292 given by a sample member (e.g., a tester, etc.) may be analyzed using a clustering algorithm to identify different types of members that may interact with the task facilitation service. Further, when an actual member completes the onboarding process, member modeling subsystem 204 may retrain the clustering algorithm and / or adjust various clusters corresponding to different member types to more accurately predict the member type of the onboarding member such as member 118.

[0083]

[0094] In some embodiments, based on an initial classification of member 118 based on an initial response provided by member 118 during an onboarding process, member modeling subsystem 204 may identify additional questions or prompts that can be presented to member 118 to obtain additional information that can be used to better classify member 118 as belonging to a particular member type or classification. As an illustrative example, if member modeling subsystem 204 determines that member 118 may belong to a particular class of members that share similar basic characteristics with member 118, member modeling subsystem 204 may evaluate the member profiles corresponding to members in the particular class of members to identify additional questions or prompts that can be used to determine whether member 118 shares more in common with these members. For example, if a significant number of members in a particular class have a particular type of vehicle for which a task is performed, member modeling subsystem 204 may determine that questions related to the member's vehicle may be highly relevant in identifying possible tasks for member 118. As another illustrative example, if members in a particular class are known to prefer to handle their own gardening, member modeling subsystem 204 may determine that questions related to the member's gardening preference may be highly relevant in determining whether member 118 should be recommended to delegate gardening tasks to others and the frequency with which such a recommendation may be given. This tailored approach to member onboarding can reduce the burden on member 118 of participating in a cumbersome process of responding to numerous questions that may include irrelevant or unnecessary questions.

[0084]

[0095] Based on the response given by member 118 to the member onboarding subsystem 202, the member modeling subsystem 204 can generate a member profile or model for member 118 that can be used to identify tasks and proposals over time and recommend them to member 118. The member profile or model can define a set of attributes of member 118 that can be used by an agent to determine how to best approach member 118 in a conversation when recommending tasks and proposals to member 118, and also when performing tasks for member 118. These attributes can include measures of member behavior or preferences when delegating a particular category of tasks to others or when performing a particular category of tasks themselves. For example, the member attributes determined by the member modeling subsystem 204 can provide a score or other metric corresponding to the probability that member 118 will delegate different categories of tasks for implementation to others. As another example, the member attributes can provide an indication of member preferences that are presented along with proposals for the completion of tasks (if delegated), or simply to enable others to determine for member 118. Other member attributes can indicate whether member 118 is interested in things such as budget, brand recognition, reviews (e.g., restaurant reviews, product reviews, etc.), punctuality, response speed, and so on. The member attributes can further include basic information about member 118 provided during the onboarding process described above.

[0085]

[0096] In some embodiments, the member modeling subsystem 204 enables the member 118 to access the member profile to provide additional information that can be used to supplement the member profile and / or to modify any previously added information. For example, through an application or web portal provided by the task facilitation service, the member 118 may be provided with a link or other interactive element that can be used by the member 118 to access their member profile. Within the member profile, the member 118 may add, remove, or edit any information within the member profile. As described above, the member profile may be divided into various sections corresponding to different member characteristics such as personal demographics, family composition, home composition, payment information, etc. The member modeling subsystem 204 may automatically populate the elements of these various sections based on the responses previously provided by the member to prompts provided by the member modeling subsystem 204 during the onboarding process, as well as any responses provided by the member 118 to surveys or questionnaires provided to the member 118 during the onboarding process. Each section of the member profile may further include additional questions or prompts that the member 118 can use to provide additional information that can be used to expand the member profile.

[0086]

[0097] In some cases, the member 118 may designate one or more sections or subsections of the member profile as private so that these one or more sections or subsections are not visible to an agent other than the member 118 or any other entity. For example, the member 118 may indicate that payment information related to one or more payment methods should be hidden so that an agent assigned to the member 118 cannot view the payment information. However, the payment information may be utilized by the task facilitation service for payment processing (e.g., for payment to third-party services, etc.) without being disclosed to the agent.

[0087]

[0098] As described above, certain information within the member profile may be hidden from member 118. For example, as the relationship between member 118 and the assigned proxy progresses, the assigned proxy may add personal notes regarding member 118. These personal notes may not be relevant to member 118 and thus may be hidden from member 118. Accordingly, any section or subsection designated as only accessible by the proxy when member 118 accesses the member profile may be automatically hidden from member 118.

[0088]

[0099] In some embodiments, the member modeling subsystem 204 provides the identified member attributes to the member-proxy pairing subsystem 206 to identify a proxy that may be assigned to member 118. The member-proxy pairing subsystem 206 may be implemented using a computer system or as an application or other executable code implemented on the computer system of the proxy assignment system 104. The member-proxy pairing subsystem 206 selects a proxy from a set of proxies 106 that may be assigned to member 118, assists member 118 in identifying tasks and performing tasks for member 118, and may use the given member attributes to reduce the cognitive load in the daily life of member 118, in some cases.

[0089]

[0100] In some embodiments, the member-proxy pairing subsystem 206 implements a machine learning algorithm or artificial intelligence that utilizes given member attributes as input to identify an agent or set of agents that can be assigned to member 118 and that may provide a high likelihood of a positive relationship between member 118 and the identified proxy. The machine learning algorithm or artificial intelligence can be trained using unsupervised training techniques. For example, a dataset of input member attributes and proxy attributes can be analyzed using a clustering algorithm to identify correlations between different types of members and proxies. Conversely, a dataset of input member attributes and proxy attributes can also be analyzed using a clustering algorithm to identify types of members and types of proxies that are not well-suited to each other. Exemplary clustering algorithms that can be trained using sample member attributes and proxy attributes (e.g., historical data, hypothesized data, etc.) to identify potential pairings can include k-means clustering algorithms, fuzzy c-means (FCM) algorithms, expectation maximization (EM) algorithms, hierarchical clustering algorithms, density-based spatial clustering of applications with noise (DBSCAN) algorithms, and the like. Based on the output of the machine learning algorithm generated using the data from the member attributes and proxy datastore 208 as input, the member-proxy pairing subsystem 206 can identify one or more proxies from the group of proxies 106 that can be assigned to member 118.

[0090]

[0101] The proxy data store 208 may include entries for each proxy in the group of proxies 106 associated with the task facilitation service. The entry corresponding to a proxy may specify various characteristics of the proxy. These characteristics may be similar to those collected by the member onboarding subsystem 202 during the onboarding of member 118. For example, characteristics about a proxy may include the physical address of the proxy, age, information about other members of the household (e.g., spouse, children, other dependents, etc.), information about any interests or hobbies, languages spoken in the household, and the like. Further, an entry in the proxy data store 208 corresponding to a particular proxy may indicate the performance of the proxy with respect to other members of the task facilitation service. As described in more detail herein, the task facilitation service may monitor the performance of the proxy and may request member feedback regarding the member's relationship with the assigned proxy. Based on the provided feedback and evaluation of the proxy's performance, the task facilitation service may determine the performance of the proxy with respect to the member's relationship and support. One or more metrics related to the performance of the proxy may be added to the entry of the proxy in the proxy data store 208. For example, the entry may specify a performance score for each member-proxy pairing for the particular proxy associated with the entry. As an illustrative example, if a proxy has a positive relationship with a particular member and worked to reduce the member's cognitive load, the pairing may be assigned a high performance score. Alternatively, if the proxy has a neutral or negative relationship with a particular member, the pairing may be assigned a lower score. These performance scores as well as the proxy characteristics from the proxy data store 208 may be used by the member-proxy pairing subsystem 206 as input with member attributes to identify one or more proxies that may be assigned to member 118.

[0091]

[0102] When the member-proxy pairing subsystem 206 identifies a set of proxies that can be assigned to member 118, the member-proxy pairing subsystem 206 can select a proxy from one or more of the proxies for assignment to member 118. For example, the member-proxy pairing subsystem 206 can rank the set of proxies according to a probability or other metric corresponding to the likely compatibility between member 118 and each of the proxies in the set of proxies. Based on the ranking of the set of proxies, the member-proxy pairing subsystem 206 can select the highest-ranked proxy from the set of proxies and determine whether that proxy is available for assignment. For example, from the proxy data store 208, the member-proxy pairing subsystem 206 can determine whether the proxy is currently assigned to a threshold number of other members or, in some cases, is unavailable for assignment (e.g., on vacation, etc.). If the selected proxy is unavailable, the member-proxy pairing subsystem 206 can select an alternative proxy from the identified set of proxies and identify the availability of the alternative proxy. When a proxy is selected, the member-proxy pairing subsystem 206 can assign that proxy to member 118 and update the entry corresponding to that proxy in the proxy data store 208 to indicate that assignment.

[0092]

[0103] In some embodiments, rather than using a machine learning algorithm or artificial intelligence to identify an initial set of proxies from which a proxy can be selected for assignment to member 118, the member-proxy pairing subsystem 206 can select an available proxy from a group of proxies 106. For example, the member-proxy pairing subsystem 206 can identify a proxy from the group of proxies 106 available for assignment to member 118 and assign that proxy to member 118. Similar to the process described above, when the member-proxy pairing subsystem 206 selects a proxy, the member-proxy pairing subsystem 206 can update the entry corresponding to the selected proxy in the proxy data store 208 to record the assignment.

[0093]

[0104] In some cases, rather than using a machine learning algorithm or artificial intelligence to identify an initial set of agents from which an agent can be selected, the member-agent pairing subsystem 206 can automatically select a first available agent from a group of agents 106. In some cases, the member-agent pairing subsystem 206 can automatically narrow down the group of agents 106 based on one or more criteria corresponding to the identification information of the member. For example, if member 118 is located in Seattle, Washington, the member-agent pairing subsystem 206 can automatically narrow down the group of agents 106 such that the pool of agents that can be assigned to member 118 includes agents located within a geographic proximity of Seattle, Washington (e.g., within 100 miles of Seattle, within 200 miles of Seattle, etc.). As another example, if member 118 has children, the member-agent pairing subsystem 206 can narrow down the group of agents 106 such that the pool of agents includes agents that also have children. From the identified pool, the member-agent pairing subsystem 206 can automatically select a first available agent for assignment to member 118.

[0094]

[0105] In some embodiments, during the onboarding process, member 118 can provide the member onboarding subsystem 202 with information related to one or more tasks that member 118 wishes to delegate. The member onboarding subsystem 202 can provide this information to the member modeling subsystem 204, and the member modeling subsystem 204 can use this information to identify parameters related to the tasks that member 118 wishes to delegate for task performance, in addition to the aforementioned member attributes. For example, the parameters related to these tasks can specify the nature of these tasks (e.g., gutter cleaning, installation of carbon monoxide detectors, party planning, etc.), the level of urgency for completion of these tasks (e.g., timing requirements, deadlines, date for the next event, etc.), any member preferences for completion of these tasks, and so on. These parameters can be used as inputs to a machine learning algorithm or artificial intelligence to identify an initial set of agents from which an agent can be selected for assignment to member 118, in addition to the member attributes identified by the member modeling subsystem 204. Alternatively, the member-agent pairing subsystem 206 can query the agent data store 208 to identify one or more agents that may be associated with these specific task parameters (e.g., agents skilled in handling such tasks, agents who have previously performed similar tasks with positive member feedback, etc.). The member-agent pairing subsystem 206 can select an available agent from the one or more identified agents for assignment to member 118.

[0095]

[0106] Once an agent is assigned to member 118, the member-agent pairing subsystem 206 may provide the agent with the contact information of member 118 (e.g., phone number, email address, etc.) and instruct the agent to initiate contact with member 118 to complete the onboarding process. For example, through an application or web portal provided to the agent by the task facilitation service, the agent may receive information corresponding to member 118 (e.g., name, demographic information, family information, home information, etc.) and an instruction to initiate a communication session with member 118. This may enable the selected agent to begin a relationship with member 118 and start to identify tasks that can be delegated to the agent for execution on behalf of member 118. In some cases, the member-agent pairing subsystem 206 may establish a communication session between the agent and member 118. For example, the member-agent pairing subsystem 206 may initiate a chat session between the agent and member 118, whereby member 118 may communicate with the selected agent via an application or web portal provided by the task facilitation service. Additionally, the agent may communicate with member 118 via the chat session using an application or web portal provided by the task facilitation service.

[0096]

[0107] In some embodiments, the proxy assignment system 104 can further monitor the relationship between the member 118 and the assigned proxy to determine whether the member 118 should be reassigned to another proxy among the set of proxies 106. For example, the member 118 can be prompted (periodically and / or in response to a triggering event) by the member-proxy pairing subsystem 206 to provide feedback regarding its relationship with the assigned proxy. As an illustrative example, when the proxy has completed a particular task for the member 118, the member-proxy pairing subsystem 206 can prompt the member 118 to provide feedback regarding the performance of the proxy related to the completed task. As another example, the member-proxy pairing subsystem 206 can prompt the member 118 to provide feedback regarding the member's relationship with the assigned proxy at specific time intervals (e.g., monthly, bi-monthly, etc.). In some cases, the member 118 can provide feedback regarding the member's relationship with the assigned proxy at any time without being prompted by the member-proxy pairing subsystem 206. For example, via an application provided by the task facilitation service, the member 118 can manually generate a feedback form that can be provided to the member-proxy pairing subsystem 206 for evaluation.

[0097]

[0108] In one embodiment, the member-agent pairing subsystem 206 may utilize the feedback provided by member 118 to determine whether to assign a new agent to member 118. For example, the member-agent pairing subsystem 206 may process the acquired feedback using a machine learning algorithm or artificial intelligence to determine a relationship score for the relationship between member 118 and the assigned agent. The machine learning algorithm or artificial intelligence may be trained using supervised training techniques. For example, a dataset of input feedback, known member and agent attributes, and the resulting relationship scores may be selected for training the machine learning model. The machine learning model may be evaluated to determine whether the machine learning model is generating accurate relationship scores based on the sample inputs provided to the machine learning model. Based on this evaluation, the machine learning model may be modified to increase the likelihood that the machine learning model will generate the desired results. The machine learning model may be further dynamically trained by requesting feedback from the agents and administrators of the task facilitation service regarding the evaluations and relationship scores provided by the machine learning algorithm or artificial intelligence for agent reassignment. For example, if the member-agent pairing subsystem 206 determines that a member should be assigned a new agent based on a relationship score for a particular member-agent pairing (e.g., the relationship score is below a threshold), the member-agent pairing subsystem 206 may select a new agent that may be assigned to the member. Further, the member-agent pairing subsystem 206 may acquire new feedback from the member corresponding to the new relationship. The machine learning algorithm or artificial intelligence may use this feedback to determine a new relationship score for this pairing and to determine whether this new relationship score represents an improvement over the previous relationship score that resulted in the agent reassignment. This determination may be used to further train the machine learning algorithm or artificial intelligence to provide a more accurate relationship score for determining whether to assign a new agent to the member.

[0098]

[0109] In some embodiments, the proxy assignment system 104 can process messages exchanged between the member 118 and the assigned proxy in real time to better understand the relationship between the member 118 and the assigned proxy and to better identify techniques that can be implemented by the assigned proxy, thereby improving that relationship with the member 118. For example, the proxy assignment system 104 can use a machine learning algorithm or artificial intelligence to process messages exchanged between the member 118 and the assigned proxy to determine various attributes or peculiarities of the member 118. As an illustrative example, if the member 118 indicates to the proxy a preference for personally handling any automotive tasks (such as scheduling maintenance appointments, purchasing oil and filters, etc.), the machine learning algorithm or artificial intelligence can update the member profile to indicate that the proxy 106 should not recommend delegating the automotive tasks to the proxy 106 and / or third - party services. In some cases, based on messages exchanged between the member 118 and the assigned proxy, the machine learning algorithm or artificial intelligence can generate an action profile of the member 118 that indicates any personality attributes of the member 118, as well as any peculiarities or quirks of the member 118 that may be useful to the proxy 106 when approaching the member 118 during a conversation. In some cases, the machine learning algorithm or artificial intelligence can generate one or more recommendations based on the action profile of the member for approaching and communicating with the member 118.

[0099]

[0110] In some embodiments, the proxy assignment system 104 can further process in real time the messages exchanged between the member 118 and the assigned proxy to obtain any additional information that can be used to supplement the member profile. For example, if the member 118 indicates during a conversation with the proxy via a communication channel that a new family has moved into the member's home, the proxy assignment system 104 can automatically and in real time process this message to determine that the member profile can be updated to add information corresponding to this new family. Thus, the proxy assignment system 104 can use the information provided by the member 118 to automatically update the appropriate section of the member profile (e.g., the section related to the member's family).

[0100]

[0111] In some examples, the proxy assignment system 104 can determine whether additional information can be requested from the member 118 based on the information added to the member profile. Returning to the above example related to the introduction of a new family to the member's home, the proxy assignment system 104 can determine whether to recommend questions or prompts that can be presented to the member 118 to obtain additional information about the new family. For example, if the member 118 has not indicated the name and other identifying information corresponding to this new family, the proxy assignment system 104 can recommend questions or prompts that can be used to obtain the name and other identifying information of the new family (e.g., "What is the name of the new family?", "How old is the new family?", "Does the new family have any dietary restrictions?", etc.). These recommendations can be given to the proxy, and the proxy can communicate these questions or prompts to the member 118 via the communication session.

[0101] C. Identify tasks that can be recommended for proxy implementation

[0112] Figure 3 shows an exemplary example of an environment 300 in which task - related data is collected and aggregated from a member area 302 to identify one or more tasks that may be recommended to a member for performance by a proxy 106 and / or a third - party service 116 according to at least one embodiment. In environment 300, a member may send task - related data to a proxy 106 assigned to the member via a computing device 120 (e.g., a laptop computer, a smartphone, etc.) to identify one or more tasks that may be performed for the member. For example, in one embodiment, a member can manually enter one or more tasks that the member desires to commission the proxy 106 to perform. The task facilitation service 102 may provide options for manual entry 304 of tasks that may be commissioned to the proxy 106 or, in some cases, added to a member's task list via an application or web portal provided by the task facilitation service 102.

[0102]

[0113] If a member selects an option for manual entry 304 of a task, the task facilitation service 102 may provide a task template via an interface of the application or web portal through which the member can enter various details related to the task. The task template may include various fields that can provide, for example, the member, a name for the task, a description of the task (e.g., "I need to have my gutters cleaned before the next storm", "I want to have my bathroom repainted by a painter", etc.), a time frame for the performance of the task (e.g., a specific due date, a date range, a level of urgency, etc.), a budget for the performance of the task (e.g., no budget limit, a specific maximum amount, etc.).

[0103]

[0114] In some cases, when a member selects an option for manual entry of a task 304, the task facilitation service 102 may provide the member with different task templates that can be used to generate a new task. As described above, the task facilitation service may maintain a resource library that serves as a repository for different task templates corresponding to different task categories (e.g., vehicle maintenance tasks, home maintenance tasks, family relationship event tasks, caregiving tasks, experience-related tasks, etc.). The task template may include a plurality of task definition fields that can be used to define tasks that can be performed for the member. For example, the task definition fields corresponding to vehicle maintenance tasks can be used to define the make and model of the member's vehicle, the age of the vehicle, information corresponding to when the vehicle was last maintained, reported accidents related to the vehicle, descriptions of problems related to the vehicle, and the like. Thus, each task template maintained in the resource library may include fields that are specific to the task category associated with the task template.

[0104]

[0115] Through the resource library, the member may evaluate each of the task templates available to select a particular task template that can be closely associated with a new task the member desires to create. When the member selects a particular task template, the member may populate one or more task definition fields that can be used to define tasks that can be performed for the member. These fields may be specific to the task category associated with the task template. In some cases, based on the selected task template, the task facilitation service 102 may automatically populate one or more task definition fields based on the information specified in the member profile as described above.

[0105]

[0116] In some embodiments, the task templates provided to a member can be specially adapted according to the characteristics of the member identified by the task facilitation service 102. As described above, the task facilitation service 102 can generate a member profile or model for a member that can be used to identify tasks and proposals over time and recommend them to the member during the member onboarding process. The member profile or model can define a set of member attributes that can be used by the agent 106 to determine how best to approach the member when conversing, when recommending tasks and proposals to the member, and when performing tasks for the member. These attributes can include measures of member behavior or preferences when delegating a particular category of tasks to others or when performing a particular category of tasks themselves. These member attributes can indicate whether the member is interested in budgets, brand awareness, reviews (e.g., restaurant reviews, product reviews, etc.), being punctual, speed of response, etc. Based on these member attributes, the task facilitation service 102 can omit specific fields from the task template. For example, if the member attributes specify that the member is not interested in a budget for task completion, the task facilitation service 102 can omit the field corresponding to the member's budget from the task template for the task. As another exemplary example, if the task facilitation service 102 determines that the member prefers high-end or first-class brands for the performance of its tasks, the task facilitation service 102 can omit one or more fields corresponding to the selection or identification of brands for the performance of the task, as the task facilitation service 102 can utilize a resource library to identify high-end or first-class brands for the performance of the task.

[0106]

[0117] When a member submits a completed task template corresponding to a task that is to be performed for the benefit of the member, either via computing device 120 or through an interface provided by task facilitation service 102, the proxy 106 assigned to the member may obtain the completed task template and initiate an evaluation of the task to determine how best to perform the task for the member. For example, the proxy 106 may evaluate the completed task template and generate a new task for the member corresponding to the task-related details provided by the member in the completed task template. Further, based on the knowledge of the member's proxy (such as from an interaction with the member, from the member profile, etc.), the proxy 106 may determine whether to prompt the member for additional information that may be used to determine how best to perform the task for the member. For example, if the member indicates a desire for the member's gutters to be cleaned but does not indicate via the completed task template when the gutters must be cleaned, the proxy 106 may communicate with the member via an active chat session related to the newly created task to inquire about the time frame for the cleaning of the member's gutters. As another example, if the member submits a task without a specific budget for the performance of the task and the proxy 106 knows (such as based on the member profile, the member's personal knowledge, etc.) that the member is budget-conscious, the proxy 106 may communicate with the member to determine what budget, if any, is required for the performance of the task. As described above, any information obtained in response to these communications may be used to supplement the member profile and, thus, for future tasks, this newly obtained information may be automatically retrieved from the member profile without the need for additional prompting of the member.

[0107]

[0118] In some embodiments, a member can submit a request to agent 106 to generate a project, or optionally a project that may include one or more tasks that can be determined by agent 106 and / or by a task recommendation system 112, or one or more tasks that are to be completed for the project. For example, via a chat session established between the member and the assigned agent 106, the member can indicate that it wishes to start a project. As an illustrative example, the member can send a message to agent 106 that the member wishes to assist in planning a move to Denver in August. In response to this message, agent 106 can identify one or more tasks that may be involved in this project (e.g., moving to Denver), and generate these one or more tasks for presentation to the member. For example, agent 106 can generate tasks including, but not limited to, defining a moving budget, finding a moving company, disposing of any unwanted possessions, coordinating utility services at the current location and the new location, etc. These tasks can be presented to the member via an interface specific to the project to enable the member to evaluate each of these tasks related to the project and determine how each of these tasks can be performed (e.g., the member performs a particular task itself, the member assigns a particular task to the agent, the member defines parameters for the performance of the task, etc.) in coordination with agent 106.

[0108]

[0119] As described above, when a member requests the creation of a project that includes one or more tasks to be performed as part of the project, an interface specific to the project can be created. The project interface can include links or other graphical user interface (GUI) elements corresponding to each of the tasks associated with the project. Selection of a particular link or other GUI element corresponding to a particular task associated with the project can cause the task facilitation service 102 to present an interface specific to the particular task. Through this interface, a member can communicate with the proxy 106 to exchange messages related to a particular task, review proposals related to a particular task, monitor the performance of a particular task, and so on.

[0109]

[0120] In some embodiments, messages exchanged between a member and the proxy 106 can be processed by a task recommendation system 112 to identify potential projects and / or tasks that can be recommended to the member for presentation by the proxy 106. As described above, the task recommendation system 112 can utilize natural language processing (NLP) or other artificial intelligence to evaluate exchanged messages or other communications from a member to identify possible tasks that can be recommended to the member. For example, the task recommendation system 112 can process any incoming message from a member using NLP or other artificial intelligence to detect a new project, new task, or other problem that the member desires to solve. In some cases, the task recommendation system 112 can utilize historical task data from a task data store and corresponding messages to train NLP or other artificial intelligence to identify possible tasks. When the task recommendation system 112 identifies one or more possible projects and / or tasks that can be recommended to a member, the task recommendation system 112 can present these possible tasks to the proxy 106, and the proxy 106 can select projects and / or tasks that can be shared with the member via a chat session.

[0110]

[0121] In some embodiments, when the task recommendation system 112 identifies projects that can be proposed to a member based on messages exchanged between the member and the proxy 106, the task recommendation system 112 can utilize a resource library maintained by the task facilitation service 102 to identify one or more tasks associated with the projects that can be recommended to the proxy 106. For example, when the task recommendation system 112 identifies a project related to a member's instruction to prepare for moving to Denver, the task recommendation system 112 can query the resource library to identify any tasks associated with moving to the new location. In some cases, the query to the resource library can include member attributes from the member profile. This enables the task recommendation system 112 to identify any tasks that may have been proposed to members who have carried out similar projects or who, in some cases, are in similar situations (e.g., members in a similar geographical location, members with attributes similar to the current member's attributes, etc.).

[0111]

[0122] In some embodiments, the task recommendation system 112 uses a machine learning algorithm or other artificial intelligence to identify tasks that may be recommended to the agent 106 for the identified project. For example, the task recommendation system 112 may identify any tasks from the aforementioned resource library that may be related to the identified project. The task recommendation system 112 may process the identified tasks and the member profiles using a machine learning algorithm or other artificial intelligence to determine which of the identified tasks may be recommended to the agent 106 for presentation to the members. Further, the task recommendation system 112 may provide the agent 106 with any tasks that may need to be performed for members who have the option to delegate to the agent 106 for task completion. For example, if the task recommendation system 112 determines, based on the member profile, that a member may be able to fully delegate a task to the agent 106 without any other input being reviewed or provided by the member, the task recommendation system 112 may provide the agent 106 with tasks that have a recommendation to present the member with the option to delegate the task execution to the agent 106 (such as through a "Run With It" button).

[0112]

[0123] In some cases, the task recommendation system 112 may provide the agent 106 with a list of a set of tasks that may be recommended to the members for a final decision on which tasks may be presented to the members. As described above, the task recommendation system 112 may rank the list of the set of tasks based on the likelihood that a member may select a task for delegation to an agent for implementation and coordination with a third-party service 116 or other service / entity partnered with the task facilitation service 102. Alternatively, the task recommendation system 112 may rank the list of the set of tasks based on the level of urgency of completion of each task. For example, if the task recommendation system 112 determines that a task of hiring a moving company is of a higher urgency than a task of coordinating public services, the task recommendation system 112 may rank the former task higher than the latter task.

[0113]

[0124] In some embodiments, the task recommendation system 112 may identify a project that can be created based on messages exchanged between a member and the proxy 106. When the task recommendation system 112 identifies one or more tasks associated with the identified project, the task recommendation system 112 may provide the member with the project definition and the tasks associated with the identified project via the proxy 106 to obtain approval from the member to proceed with the project. For example, via an application or web portal provided by the task facilitation service 102 accessed using the computing device 120, the member may review the proposed project and the tasks associated with the proposed project to determine whether to proceed with the proposed project. The member may further communicate with the proxy 106 through a project-specific communication session to define the project and / or any tasks associated with the project, including defining either the scope of the project or any of the tasks proposed for completion of the project. As an illustrative example, if the proxy 106 proposes a project corresponding to the member's upcoming move to Denver and all tasks associated with this proposed project, the member may communicate with the proxy 106 to consider the tasks associated with the proposed project (e.g., inquire about the timeline, inquire about the budget, etc.). Based on the member's communication with the proxy 106, the proxy 106 and / or the task recommendation system 112 may identify any questions that may be presented to the member to further define the scope of the project and any associated tasks. For example, the proxy 106 may prompt the member to indicate the amount of square footage of the member's existing home, which may be useful in determining the scope of moving services that may be required for the project corresponding to the upcoming move to Denver. The information obtained through the member responses to these prompts may be used, as described above, to supplement the member profile.

[0114]

[0125] In some embodiments, when a member approves a specific project to be executed for the member, the task recommendation system 112 assigns priorities to the project and related tasks based on inputs from the member (e.g., deadlines, desired priorities, etc.). For example, if the member indicates that a project related to the upcoming move to Denver is more urgent than a project related to vehicle maintenance, the task recommendation system 112 may assign a higher priority to the project related to the upcoming move to Denver than to other projects related to vehicle maintenance. This may cause the project related to the upcoming move to Denver to be displayed more prominently in an application or web portal accessed by the member via the computing device 120 than these other projects. In some cases, the priority assigned to a specific project may be further assigned to tasks related to the project. For example, the task recommendation system 112 may use the priority of each project created for the member as another factor in ranking various tasks identified by the proxy 106 and / or the task recommendation system 112.

[0115]

[0126] Tasks related to a project can be added to an active queue that can be used by the task recommendation system 112 to determine which tasks the proxy 106 can work on for the member. For example, the proxy 106 may be presented with a limited set of tasks based on the prioritization or ranking of tasks performed by the task recommendation system 112. The selection of the limited set of tasks can limit the number of tasks that can be worked on by the proxy 106 at a given time, which can reduce the risk of overburdening the proxy 106 by working on the member's task list.

[0116]

[0127] In some embodiments, the task facilitation service 102 can present a member with a task list corresponding to the member's current and upcoming tasks via an application implemented on the member's computing device 120 or an application accessed via a web portal provided by the task facilitation service 102. The task facilitation service 102 can provide the status of each task (e.g., created, in progress, recurring, completed, etc.) via the task list. In some instances, the task facilitation service 102 can enable a member to filter tasks as needed, and thus, the member can customize and determine which tasks should be presented to the member via the application or web portal.

[0117]

[0128] In addition to presenting a task list corresponding to a member's current and upcoming tasks, the task facilitation service 102 can signal which of these tasks are assigned to the member or proxy 106. For example, the task facilitation service 102 can display an assignment tag for each task presented to the member via an application or web portal. The assignment tag can explicitly indicate whether the corresponding task is assigned to the member or to the proxy 106. Additionally or alternatively, tasks can be presented to the member via an application or web portal using color coding, where the color used for the task can further indicate whether the task is assigned to the member or to the proxy 106. As an illustrative example, if a task is assigned to the proxy 106, the task can be presented with a "proxy" attribute tag and presented within a task bubble using an orange hue to further indicate that the task is assigned to the proxy 106. Alternatively, if a task is assigned to the member, the task can be presented with a "member" attribute tag and presented within a task bubble using a green hue to further indicate that the task is assigned to the member. Although attribute tags and color indicators are used throughout this disclosure for illustrative purposes, it should be noted that other assignment indicators can be utilized to distinguish between tasks assigned to the member and tasks assigned to the proxy 106.

[0118]

[0129] In some embodiments, the task facilitation service 102 can provide members with an option to obtain additional information about a specific task from a task list via an application or a web portal. For example, each task presented via the task list may include an option to obtain additional information related to the task. In some embodiments, when a member selects the option to obtain additional information for a specific task, the task facilitation service 102 can evaluate the member profile to determine how much information should be provided to the member without increasing the likelihood of cognitive overload for the member. For example, if a member has a tendency to delegate tasks to proxy 106 and generally delegates all aspects of the task to proxy 106, the task facilitation service 102 may provide basic information related to the task (e.g., a short task description, an estimated completion time for the task, etc.). However, if a member values more details and is highly involved in the completion of the task, the task facilitation service 102 may provide additional information related to the task (e.g., a detailed task description, steps to be performed to complete the task, any budget information for the task, etc.). In some embodiments, the task facilitation service 102 can utilize a machine learning algorithm or artificial intelligence to determine how much information related to the task should be presented to member 102. For example, the task facilitation service 102 can use the member profile and data corresponding to the task as input to the machine learning algorithm or artificial intelligence. The resulting output can provide recommendations on what information about the task should be presented to the member. In some cases, the recommendations can be provided to proxy 106, which can evaluate the recommendations and determine what information can be presented to the member for the selected task. When information for a task is provided to the member, the task facilitation service 102 can monitor the member interaction with proxy 106 to identify the member's response to the presentation of the information.The response can be used to further train a machine learning algorithm or artificial intelligence to provide better recommendations regarding task information that can be presented to members of the task facilitation service 102.

[0119]

[0130] In some embodiments, a member can submit, via the computing device 120, one or more user records 306 that can be used to identify tasks that can be performed for the member. For example, a member can upload to the task facilitation service 102 one or more digital images of the member area 302 that can indicate problems within the member area 302 where tasks can be created. As an illustrative example, a member can capture an image of a broken skirting board that needs repair. As another illustrative example, a member can capture an image of a clogged rain gutter. The proxy 106 can obtain these digital images and manually identify one or more tasks that can be performed to address the problems represented in the uploaded digital images. For example, if the proxy 106 receives a digital image showing a broken skirting board, the proxy 106 can generate a new task corresponding to the repair of the broken skirting board. Similarly, if the proxy 106 receives a digital image showing a clogged rain gutter, the proxy 106 can generate a task corresponding to the cleaning of the member's rain gutter.

[0120]

[0131] The user record 306 may further include audio and / or video recordings within the member area 302 corresponding to possible problems for which tasks can be generated. For example, a member may utilize their smartphone or other recording device to generate audio and / or video recordings of different portions of the member area 302 to highlight problems that can be used to generate one or more tasks that can be performed to address the problems. As an illustrative example, during a chat session with the agent 106, the member may walk through the member area 302 with their smartphone and record a video highlighting the problems the member desires to be addressed by the task facilitation service 102. While walking through the member area 302, the member may indicate (such as by speaking to the smartphone, pointing out the problems, etc.) what these problems are and possible instructions or other parameters (such as time frame, budget, level of urgency, etc.) for addressing these problems. Using the example of the broken joist described above, the member may record a video highlighting the broken joist while indicating "since we are preparing to sell our house, I want this joist repaired soon." Thus, this video may highlight the problems related to the broken joist and the level of urgency for the member to have the joist repaired within a short time frame for the member to sell their home.

[0121]

[0132] A member may provide the user record 306 to an agent 106 who may review the user record 306 to identify any tasks that may be recommended to the member to address any of the issues indicated by the member in the user record 306 via the computing device 120. For example, the agent 106 may analyze a given user record 306 and identify tasks that may be performed to address any issues identified by the member in the user record 306 and / or detected by the agent 106 based on the agent 106's analysis of the user record 306. As an illustrative example, if the member provides a user record 306 indicating that there is a broken sill plate that the member desires to be repaired, the agent 106 may further determine, based on the user record 306, that the member's home may have a termite problem (e.g., the presence of termites or termite damage in the broken sill plate). Accordingly, the agent 106 may indicate an additional issue and communicate with the member via a chat session to recommend tasks to address the additional issue.

[0122]

[0133] In some cases, agent 106 may prompt a member to generate one or more user records 306 that can be used to assist agent 106 in defining one or more tasks that can be performed for the member. For example, if a member indicates via a chat session that they are preparing to move to Denver, agent 106 may request that the member generate one or more user records 306 related to member area 302 (e.g., home, apartment, etc.) so that agent 106 can identify tasks that may be related to this project. For example, using the user record 306 provided by the member, agent 106 may determine the square footage of member area 302, identify any special moving requirements for the completion of the project (e.g., special moving instructions for breakables, insurance, etc.), identify any repair or maintenance items that may need to be addressed for the project, and so on. In some cases, agent 106 may use the user record 306 to identify one or more task parameters that can be used in defining the tasks to be performed for the member. For example, if a member manually enters a new task related to repairing the member's broken baseboard, agent 106 may use any user record 306 related to the broken baseboard to identify the type of baseboard to be repaired, the scope of the repair, the time frame for the repair, and so on.

[0123]

[0134] In some embodiments, agent 106 can generate one or more proposals for the completion of a given task presented to a member via an application or web portal provided by task facilitation service 102. The proposals can include one or more options presented to the member that can be created and / or collected by agent 106 during research of the given task. In some cases, agent 106 can be provided with one or more templates that can be used to generate these one or more proposals. For example, task facilitation service 102 can maintain proposal templates for different task types, whereby a proposal template for a particular task type can include various data fields related to the task type. As an illustrative example, in the case of a task related to planning a birthday party, agent 106 can utilize a proposal template corresponding to event planning. The proposal template corresponding to event planning can include data fields corresponding to venue options, catering options, entertainment options, and the like.

[0124]

[0135] In some embodiments, the data fields within the proposed template can be toggled on or off to provide the proxy 106 with the ability to determine what information is presented to the member in the proposal. For example, in the case of tasks related to renting a balloon jump house for a party, the corresponding proposed template may include data fields corresponding to the rental company's location / address, the rental company's business hours and availability, the estimated cost, the rental company's rating / reviews, and the like. The proxy 106 can toggle any of these data fields on or off based on the knowledge of the proxy of the member's preferences. For example, if the proxy 106 has established a relationship with the member and thus knows with a high degree of confidence that the member trusts the proxy to select a reputable company for the member's task, the proxy 106 can toggle off the data field corresponding to the rating / reviews for the corresponding company from the proposed template. Similarly, if the proxy 106 knows that the member has no interest in the rental company's location / address for the purpose of the proposal, the proxy 106 can toggle off the data field corresponding to the location / address for the corresponding company from the proposed template. Although some data fields can be toggled off within the proposed template, the proxy 106 can complete these data fields to provide additional information that can be used by the task facilitation service 102 to supplement the resource library of the proposal, as described in more detail herein.

[0125]

[0136] In some embodiments, the task facilitation service 102 utilizes a machine learning algorithm or artificial intelligence to generate recommendations for the proxy 106 regarding data fields that can be presented to members in a proposal. For example, the task facilitation service 102 can use a member profile or model related to the member, historical task data for the member (e.g., previously completed tasks, tasks for which the proposal was given, etc.), and information corresponding to the task for which the proposal is being generated (e.g., task type or category, etc.) as inputs to the machine learning algorithm or artificial intelligence. The output of the machine learning algorithm or artificial intelligence can define which data fields of the proposal template should be toggled on or off. For example, based on an evaluation of the member profile or model, historical task data for the member, and information corresponding to the task for which the proposal is being generated, if the task facilitation service 102 determines that the member may not be interested in viewing information related to ratings / reviews for the company or information related to the company's location / address, the task facilitation service 102 can automatically toggle these data fields off from the proposal template. In some cases, the task facilitation service 102 can retain an option to toggle these data fields on to provide the proxy 106 with the ability to present these data fields to the member in the proposal. For example, if the task facilitation service 102 automatically toggles off the data field corresponding to the estimated cost for a balloon jump house rental from a particular company, but the member indicates an interest in the potential costs involved, the proxy 106 can toggle on the data field corresponding to the estimated cost.

[0126]

[0137] In some cases, when a proposal is presented to a member, the task facilitation service 102 may monitor the agent 106 and the member interaction with the proposal to obtain data that can be used to further train a machine learning algorithm or artificial intelligence. For example, the agent 106 presents a proposal without any rating / review for a particular company based on a recommendation generated by a machine learning algorithm or artificial intelligence, and if the member indicates an interest in the rating / review for a particular company (such as through a message to the agent 106, through the selection of an option in the proposal to view the rating / review for a particular company, etc.), the task facilitation service may utilize this feedback to increase the likelihood of recommending the presentation of the rating / review for the company selected for a similar task or task type to further train the machine learning algorithm or artificial intelligence.

[0127]

[0138] In some embodiments, the task facilitation service 102 maintains a resource library that can be used to automatically populate one or more data fields of a particular proposal template via the task coordination system 114. The resource library can include entries corresponding to proposals related to a particular task or task type, or in some cases, companies and / or products previously used on behalf of proposals related to a particular task or task type. For example, when agent 106 generates a proposal related to a task of repairing a roof near Lynnwood, Washington, the task coordination system 114 can obtain information related to the roofing contractor selected by agent 106 for the task. The task coordination system 114 can generate an entry corresponding to the roofing contractor in the resource library and associate this entry with "roof repair" and "Lynnwood, Washington". Thus, when another agent receives a task corresponding to repairing a roof for a member located near Lynnwood, Washington (e.g., Everett, Washington), the other agent can query the resource library for roofing contractors near Lynnwood, Washington. In response to the query, the resource library can return an entry corresponding to the roofing contractor previously selected by agent 106. If another agent selects this roofing contractor, the task coordination system 114 can automatically populate the data fields of the proposal template with the information available for the roofing contractor from the resource library.

[0128]

[0139] In some embodiments, the task facilitation service 102 can utilize a machine learning algorithm or artificial intelligence to automatically process the member profile associated with the member 118, the selected proposal template, and the resource library to dynamically identify any resources that may be relevant to the preparation of a proposal. The machine learning algorithm or artificial intelligence can be trained using supervised training techniques. For example, a dataset of sample member profiles, proposal templates and / or tasks, available resources (e.g., entries corresponding to third-party services, other services / entities, retailers, products, etc.), and completed proposals can be selected for training the machine learning model. The machine learning model can be evaluated to determine whether, based on the sample inputs fed into the machine learning model, the machine learning model identifies appropriate resources that can be used to automatically complete a proposal template for the presentation of a proposal. Based on this evaluation, the machine learning model can be modified to increase the likelihood that the machine learning model generates the desired results. The machine learning model can be further dynamically trained by requesting feedback from the agent and members of the task facilitation service regarding the identification of resources from the resource library and the proposals automatically generated by the task facilitation service 102 using these resources. For example, if the task facilitation service 102 generates a proposal that does not appeal to the member 118 (e.g., the proposal is not related to the task, the proposal corresponds to a resource that is not available to the member 118, the proposal includes a resource that the member 118 does not approve, etc.) based on the member profile associated with the member 118 and the selected resources from the resource library, the task facilitation service 102 can update the machine learning algorithm or artificial intelligence based on this feedback to reduce the likelihood that similar resources and proposals are generated for members in similar situations.

[0129]

[0140] Agent 106 can generate additional proposal options for companies and / or products that can be used to complete a task via the proposal template. For example, for a specific proposal, Agent 106 can generate recommended options that can correspond to the company or product that Agent 106 recommends for task completion. Further, to provide additional options or alternatives to the members, Agent 106 can generate additional options corresponding to other companies or products that can complete the task. In some cases, if Agent 106 knows that the member has delegated the decision-making regarding task completion to Agent 106, Agent 106 can refrain from generating additional proposal options in addition to the recommended options. However, Agent 106 can still present the proposal options selected for task completion to the member to ensure that the member is not lacking information regarding the status of the task.

[0130]

[0141] In some embodiments, when Agent 106 finishes defining a proposal via the use of the proposal template, Task Facilitation Service 102 can present the proposal to the member through the application or web portal provided by Task Facilitation Service 102. In some cases, Agent 106 can send a notification to the member to indicate that the proposal is prepared for a specific task and is ready for review via the application or web portal provided by Task Facilitation Service 102. The proposal presented to the member can indicate the task for which the proposal is prepared, as well as the instructions for one or more options given to the member. For example, the proposal can include links to the recommended proposal options and other options (if any) prepared by Agent 106 for a specific task. These links can enable the member to navigate between one or more options prepared by Agent 106 via the application or web portal.

[0131]

[0142] For each proposed option, the member may be presented with information corresponding to the company (e.g., a third-party service or other service / entity related to the task facilitation service 102) or product selected by the proxy 106, and information corresponding to the data fields selected for presentation by the proxy 106 via the proposal template. For example, in the case of a task related to inspecting the roof of a member's home, the proxy 106 may present, for a particular roofing contractor (e.g., a proposed option), one or more reviews or testimonials for the roofing contractor, the fees and availability (if any) of the roofing contractor for the member's task completion time frame, the roofing contractor's website, the roofing contractor's contact information, any estimated costs, and an indication of the proxy 106's next steps in the event the member must select this particular roofing contractor for the task. In some instances, the member may select which details or data fields related to a particular proposal are presented via the application or web portal. For example, if the member is presented with an estimated total for each proposed option and the member has no interest in reviewing the estimated total for each proposed option, the member may toggle this particular data field off from the proposal via the application or web portal. Alternatively, if the member is interested in reviewing additional details (e.g., additional reviews, additional company or product information, etc.) regarding each proposed option, the member may request that this additional detail be presented via the proposal.

[0132]

[0143] In some embodiments, based on member interactions with a given proposal, the task facilitation service 102 can be further trained using a machine learning algorithm or artificial intelligence to determine or recommend what information should be presented to the member and what information should be presented to members in similar situations for the same task or task type. As described above, the task facilitation service 102 can use a machine learning algorithm or artificial intelligence to generate recommendations for proxy 106 regarding data fields that can be presented to the member in a proposal. The task facilitation service 102 can monitor or track member interactions with the proposal to determine member preferences regarding the information presented in a proposal for a particular task. Further, the task facilitation service 102 can monitor or track any messages exchanged between the member associated with the proposal and the proxy 106 to further identify member preferences. For example, if a member sends a message to the proxy 106 indicating a desire to refer to further information regarding the services provided by each of the companies specified in the proposal, the task facilitation service 102 can determine that the member may desire to refer to additional information regarding the services provided by companies associated with a particular task or task type. In some cases, the task facilitation service 102 can request feedback from the member regarding a proposal provided by the proxy 106 to identify member preferences. This feedback and information obtained through member interactions with the proxy 106 regarding the proposal or with the proposal itself can be used to retrain a machine learning algorithm or artificial intelligence to provide more accurate or improved recommendations for information that should be presented to the member and to members in similar situations for the same task or task type.

[0133]

[0144] In some cases, each proposal presented to a member may specify all costs associated with each proposal option. These costs may be presented in different formats based on the requirements of the associated task or project. For example, if the task or project is for purchasing an airline ticket, each proposal option for the corresponding proposal may present a fixed price for the airline ticket. As another exemplary example, the agent 106 may provide a budget for completing the task according to the selected option (e.g., "intending to spend up to $150 on Halloween decorations for the party") for each proposal option. As yet another exemplary example, for a task or project where a payment schedule may be involved, the proposal options for the proposal related to the task or project may specify a payment schedule for each of these proposal options (e.g., "$100 for the initial negotiation and $300 for subsequent services", "$1,500 deposit for reserving the venue and $1,500 usage fee after the event", etc.).

[0134]

[0145] If a member accepts a particular proposal option for a task or project, the agent 106 may communicate with the member to ensure that the member agrees to pay the presented cost for the particular proposal option and any associated taxes and fees. In some cases, if the proposal option is selected using a static payment amount (e.g., a fixed price, "up to X dollars", a phased payment schedule with a static amount, etc.), the member may be notified by the agent 106 if the actual payment amount required for the fulfillment of the proposal option exceeds a threshold percentage or amount over the initially presented static payment amount. For example, if the agent 106 determines that the member may need to spend more than 120% of the cost specified in the selected proposal option, the agent 106 may send a notification to the member to reconfirm the payment amount before proceeding with the proposal option.

[0135]

[0146] In one embodiment, when a member accepts a proposal option from a presented proposal, the task facilitation service 102 moves the tasks associated with the presented proposal to an active state, and the proxy 106 can proceed to execute the proposal according to the selected proposal option. For example, the proxy 106 may contact one or more third-party services 116 to adjust the performance of the task according to the parameters defined in the proposal accepted by the member.

[0136]

[0147] In some embodiments, the proxy 106 utilizes a task adjustment system 114 to assist in adjusting the performance of the task according to the parameters defined in the proposal accepted by the member. For example, when the adjustment with the third-party service 116 can be automatically performed (for example, the third-party service 116 provides an automated system for ordering, scheduling, payment, etc.), the task adjustment system 114 may directly interact with the third-party service 116 to adjust the performance of the task according to the selected proposal option. The task adjustment system 114 may provide the proxy 106 with any information (such as confirmation, order status, reservation status, etc.). The proxy 106 may then provide this information to the member via the application or web portal utilized by the member to access the task facilitation service 102. Alternatively, the proxy 106 may transmit information to the member via other communication methods (such as an email message, a text message, etc.) to indicate that the third-party service 116 has started performing the task according to the selected proposal option. When the proxy 106 is performing a task on behalf of the member 118, the proxy 106 may provide the member 118 with a status update regarding the representative performance of the task via the application or web portal provided by the task facilitation service 102.

[0137]

[0148] In some embodiments, the task coordination system 114 can monitor the performance of tasks by proxy 106, third-party services 116, and / or other services / entities related to the task facilitation service 102 on behalf of a member. For example, the task coordination system 114 can record any information provided by the third-party services 116 regarding, for example, the time frame for the performance of the task, the cost associated with the performance of the task, any status updates regarding the performance of the task, etc. The task coordination system 114 can associate this information with a data record corresponding to the task being performed. Status updates provided by the third-party services 116 can be automatically provided to the member and to the proxy 106 via an application or web portal provided by the task facilitation service 102. Alternatively, the status updates can be provided to the member and to the proxy 106, which can provide these status updates to the member via a chat session established between the member and the proxy 106 for a particular task / project or through other communication methods. In some cases, where a task is to be performed by the proxy 106, the task coordination system 114 can monitor the performance of the task by the proxy 106 and record any updates provided by the proxy 106 to the member via an application or web portal.

[0138]

[0149] When the task is completed, the member may provide feedback regarding the performance of the proxy 106, third-party service 116, and / or other services / entities associated with the task facilitation service 102 that performed the task according to the proposed option selected by the member. For example, the member may exchange one or more messages with the proxy 106 via a chat session corresponding to a particular task / project that has been completed to indicate the member's feedback regarding the completion of the task. For example, the member may indicate that the member is pleased with how the task was completed. The member may additionally or alternatively provide feedback indicating areas for improvement regarding the performance of the task. For example, if the member is not satisfied with the final cost for the performance of the task and / or has any input regarding the quality of the performance (e.g., timeliness, quality of the deliverable, professionalism of the third-party service 116, etc.), the member may indicate so in one or more messages to the proxy 106. In some embodiments, the task facilitation service uses machine learning algorithms or artificial intelligence to process the feedback provided by the member to improve the recommendations provided by the task facilitation service 102 for proposed options, third-party service 116 or other services / entities, and / or the processes that may be performed for the completion of similar tasks. For example, if the task facilitation service 102 detects that the member is not satisfied with the results provided by the third-party service 116 or other services / entities for a particular task, the task facilitation service 102 may utilize this feedback to further train the machine learning algorithms or artificial intelligence to reduce the likelihood of the third-party service 116 or other services / entities being recommended to members for similar tasks and in similar situations.As another example, if the task facilitation service 102 detects that a member is happy with the result given by the proxy 106 for a particular task, the task facilitation service 102 may utilize this feedback to further train a machine learning algorithm or artificial intelligence to enhance the actions performed by the proxy for the same or similar tasks and / or for members in similar situations.

[0139] D. Ranking Recommended Tasks to be Performed by Proxy

[0150] FIG. 4 shows an exemplary example of an environment 400 in which a task recommendation system 112 generates and ranks recommendations for tasks to be performed for a member 118, according to at least one embodiment. In environment 400, the member 118 and / or the proxy 106 interact with a task creation subsystem 402 of the task recommendation system 112 to generate new tasks or projects that can be performed for the member 118. The task creation subsystem 402 may be implemented using a computer system or as an application or other executable code implemented on the computer system of the task recommendation system 112.

[0140]

[0151] In some embodiments, member 118 can access task creation subsystem 402 to request creation of one or more tasks as part of an onboarding process implemented by the task facilitation service. For example, during the onboarding process, member 118 can provide information related to one or more tasks that member 118 may wish to delegate to proxy 106 in some cases. Task creation subsystem 402 can utilize this information to identify parameters related to the tasks that member 118 wishes to delegate to proxy 106 for performance. For example, parameters related to these tasks can specify the nature of these tasks (e.g., gutter cleaning, installation of a carbon monoxide detector, party planning, etc.), the level of urgency for completion of these tasks (e.g., timing requirements, deadlines, date for the next event, etc.), any member preferences for completion of these tasks, and the like. Task creation subsystem 402 can utilize these parameters to automatically create tasks that can be presented to proxy 106 when assigned to member 118 during the onboarding process.

[0141]

[0152] Member 118 may further access the task creation subsystem 402 at any time after completion of the onboarding process to generate new tasks or projects. For example, the task facilitation service may provide a widget or other user interface element via the task facilitation service's application or web portal through which member 118 may manually generate new tasks or projects. In some embodiments, the task creation subsystem 402 provides various task templates that may be used by member 118 to generate new tasks or projects. The task creation subsystem 402 may maintain task templates for different task types or categories in the task data store 110. Each task template may include different data fields for defining the task, such that different task fields may correspond to the task type or category for the defined task. Member 118 may provide task information through these different task fields to define a task that may be submitted to the task creation subsystem 402 or proxy 106 for processing. The task data store 110 may, in some cases, be associated with a resource library. This resource library may maintain various task templates for the creation of new tasks.

[0142]

[0153] As described above, each task template can be associated with a specific task category. Thus, multiple task definition fields within a specific task template can be associated with the task category assigned to the task template. For example, task definition fields corresponding to vehicle maintenance tasks can be used to define the make and model of the member's vehicle, the age of the vehicle, information corresponding to when the vehicle was last maintained, reported accidents related to the vehicle, descriptions of problems related to the vehicle, and so on. In some cases, a member accessing a specific task template can further define custom fields for the task template that can supply additional information that may be useful when the member defines and completes the task. These custom fields can be added to the task template so that they may be available to the member and / or proxy when they obtain future task templates to create similar tasks.

[0143]

[0154] In some embodiments, the data fields presented in the task template used by member 118 to manually define a new task may be selected based on decisions generated using a machine learning algorithm of artificial intelligence. For example, the task creation subsystem 402 can use the member profile from the user data store 108 and the selected task template from the task data store 110 to identify which data fields can be omitted from the task template when presented to member 118 for the definition of a new task or project as input to the machine learning algorithm or artificial intelligence. For example, if member 118 is known to delegate maintenance tasks to proxy 106 and is uninterested in budget considerations, the task creation subsystem 402 may present member 118 with a task template that omits any budget-related data fields and other data fields that may specifically define instructions for task completion. In some cases, the task creation subsystem 402 may enable member 118 to add, remove, and / or modify data fields for the task template. For example, if the task creation subsystem 402 removes a data field corresponding to the budget for a task based on an evaluation of the member profile, member 118 may request that a data field be added to the task template to enable member 118 to define a budget for the task. In some cases, the task creation subsystem 402 may utilize this member change in the task template to retrain the machine learning algorithm or artificial intelligence to improve the likelihood of providing member 118 with a task template without the need for any modifications to the task template for member 118 to define a new task.

[0144]

[0155] In some cases, when a member selects a particular task template for creating a task related to an experience, the task creation subsystem 402 can automatically identify the portion of the member profile that can be used to populate the selected task template. For example, if the member selects a task template corresponding to an evening out at a restaurant, the task creation subsystem 402 can automatically process the member profile to identify any information corresponding to the member's meal preferences and restrictions that can be used to populate one or more fields within the task template selected by the member. The member can review these automatically populated data fields to ensure that they are accurately populated. If the member makes any changes to the information within the automatically populated data fields, the task creation subsystem 402 can use these changes to automatically update the member profile to incorporate these changes.

[0145]

[0156] In some embodiments, the task creation subsystem 402 further enables the agent 106 to create new tasks or projects on behalf of the member 118. The agent 106 may request from the task creation subsystem 402 a task template corresponding to the task type or category for the defined task. The agent 106 may define, via the task template, various parameters related to the new task or project, including (for example) the assignment of the task to the agent 106, the member 118, etc. In some cases, the task creation subsystem 402 may use a machine learning algorithm or artificial intelligence to identify which data fields should be presented to the agent 106 in the task template for the creation of the new task or project. For example, similar to the process described above for member creation of a task or project, the task creation subsystem 402 may use the member profile from the user data store 108 and the selected task template from the task data store 110 as input to the machine learning algorithm or artificial intelligence. However, rather than identifying which data fields may be omitted from the task template, the task creation subsystem 402 may indicate which data fields may be omitted from the task when presented to the member 118 via an application or web portal provided by the task facilitation service. Thus, the agent 106 may need to provide all the necessary information for the new task or project, regardless of whether all the information is presented to the member 118.

[0146]

[0157] Similar to the process described above regarding the selection of members of a particular task template, the task creation subsystem 402 can automatically identify portions of the member profile that can be used to populate the selected task template. The proxy 106 can review these automatically populated data fields to ensure that these data fields are accurately populated. If the proxy 106 makes any changes to the information within the automatically populated data fields (such as based on the proxy's personal knowledge about member 118), the task creation subsystem 402 can use these changes to automatically update the member profile to incorporate these changes. In some instances, if the member profile should be changed as a result of changes made to the task template by the proxy 106, the task creation subsystem 402 can prompt the member 118 to verify that the proposed changes to the member profile are accurate. If the member 118 indicates that the proposed changes are inaccurate or if the member 118 provides alternative changes, the task creation subsystem 402 can automatically update the corresponding data fields in the task template and the member profile to reflect the accurate information provided by the member 118.

[0147]

[0158] In some embodiments, the task creation subsystem 402 can automatically monitor in real time messages exchanged between the member 118 and the proxy 106 to identify tasks that may be recommended to the member 118. For example, the task creation subsystem 402 can utilize natural language processing (NLP) or other artificial intelligence to evaluate received messages or other communications from the member 118 to identify possible tasks that may be recommended to the member 118. For example, the task creation subsystem 402 can process any incoming messages from the member 118 using NLP or other artificial intelligence to detect new tasks or other problems that the member 118 desires to solve. In some cases, the task creation subsystem 402 can utilize historical task data from the task data store 110 and corresponding messages from the task data store 110 to train NLP or other artificial intelligence to identify possible tasks. If the task creation subsystem 402 identifies one or more possible tasks that may be recommended to the member 118, the task creation subsystem 402 can present these possible tasks to the proxy 106, and the proxy 106 can select tasks that can be shared with the member 118 via a chat session.

[0148]

[0159] The task recommendation system 112 may further include a task ranking subsystem 406 configured to rank a set of tasks of a member 118 that may be recommended to the member 118 for completion by the member 118 or a proxy 106. The task ranking subsystem 406 may be implemented using a computer system or as an application or other executable code implemented on the computer system of the task recommendation system 112. In one embodiment, the task ranking subsystem 406 can rank a list of the set of tasks based on the likelihood that the member 118 will select tasks for delegation to a proxy for implementation and coordination with third-party services and / or other services / entities related to the task facilitation service. Alternatively, the task ranking subsystem 406 may rank a list of the set of tasks based on a level of urgency for completion of each task. The level of urgency may be determined based on member characteristics from the user data store 108 (e.g., data corresponding to the member's own prioritization of some tasks or categories of tasks) and / or potential risks to the member 118 if the tasks are not performed.

[0149]

[0160] In some embodiments, the task ranking subsystem 406 provides a ranked list of a set of tasks that may be recommended to member 118 to the task selection subsystem 404. The task selection subsystem 404 may be implemented using a computer system or as an application or other executable code implemented on the computer system of the task recommendation system 112. The task selection subsystem 404 may be configured to select from the ranked list of the set of tasks which tasks may be recommended to member 118 by proxy 106. For example, if an application or web portal provided by the task facilitation service is configured to present a limited number of task recommendations to member 118 from the ranked list of the set of tasks, the task selection subsystem 404 may process the ranked list and the member's profile from the user data store 108 to determine which task recommendations should be presented to member 118. In some cases, the selection made by the task selection subsystem 404 may correspond to the ranking of the set of tasks in the list. Alternatively, the task selection subsystem 404 may process the ranked list of the set of tasks as well as the member profile and the member's existing tasks (e.g., in-progress tasks, tasks accepted by member 118, etc.) to determine which tasks may be recommended to member 118. For example, if the ranked list of the set of tasks includes a task corresponding to cleaning the gutters, but member 118 already has an in-progress task corresponding to repairing the gutters due to a recent storm, since this can be carried out in conjunction with the gutter repair, the task selection subsystem 404 may refrain from selecting the task corresponding to cleaning the gutters. Thus, the task selection subsystem 404 may provide another layer to further refine the ranked list of the set of tasks for presentation to member 118.

[0150]

[0161] The task selection subsystem 404 may provide the agent 106 with a new list of tasks that may be recommended to the member 118. The agent 106 may review this new list of tasks to determine which tasks may be presented to the member 118 via an application or web portal provided by the task facilitation service. For example, the agent 106 may review a set of tasks recommended by the task selection subsystem 404 and select one or more of these tasks for presentation to the member 118 via the individual interfaces corresponding to one or more of these tasks. Further, as described above, the agent 106 may determine whether an option to delegate to the agent 106 for task execution (e.g., using a button or other GUI element to indicate the member's preference for delegating to the agent 106 for task execution) should be presented when the task is presented. In some cases, one or more tasks may be generated by the task ranking subsystem 406 and presented to the member 118 according to a ranking refined by the task selection subsystem 404. Alternatively, one or more tasks may be presented according to an understanding of the member's own preferences for task prioritization. Through the interface corresponding to one or more tasks recommended to the member 118, the member 118 may select one or more tasks that may be performed with the assistance of the agent 106. Alternatively, the member 118 may reject any presented task that the member 118 would rather perform personally or that the member 118 does not wish to perform in some cases.

[0151]

[0162] In some embodiments, the task selection subsystem 404 monitors different interfaces corresponding to the recommended tasks, including any corresponding chat or other communication sessions between the member 118 and the proxy 106, to collect data regarding the selection of members of the tasks for delegation to the proxy 106 for execution. For example, the task selection subsystem 404 may process messages corresponding to the tasks presented by the proxy 106 to the member 118 via different interfaces corresponding to the recommended tasks to determine the polarity or sentiment corresponding to each task. For example, if the member 118 indicates in a message to the proxy 106 sent through a communication session related to a particular task that they would prefer not to receive any task recommendations corresponding to vehicle maintenance, the task selection subsystem 404 may attribute a negative polarity or sentiment to the tasks corresponding to vehicle maintenance. Alternatively, if the member 118 selects a task related to gutter cleaning for delegation to the proxy 106 (such as through a communication session related to the gutter cleaning task presented to the member 118) and / or indicates in a message to the proxy 106 that the recommendation for this task was a great idea, the task selection subsystem 404 may attribute a positive polarity or sentiment to this task. In one embodiment, the task selection subsystem 404 can use these responses to the tasks recommended to the member 118 to further train or enhance machine learning algorithms or artificial intelligence utilized by the task ranking subsystem 406 to generate task recommendations that can be presented to the member 118 of the task facilitation service and other members in similar situations. Additionally, the task selection subsystem 404 may update the member's profile or model to update the member's preferences and known behavioral characteristics based on the selection of members of the tasks from the tasks recommended by the proxy 106 and / or the sentiment regarding the tasks recommended by the proxy 106.

[0152] E. Assign and monitor the execution of tasks performed by the proxy

[0163] FIG. 5 shows an exemplary example of an environment 500 in which a task adjustment system 114 assigns and monitors the performance of tasks for a member 118 by an agent 106 and / or one or more third - party services 116, according to at least one embodiment. In environment 500, the agent 106 may access a proposal creation subsystem 502 of the task adjustment system 114 to generate proposals regarding the completion of tasks for the member 118. The proposal creation subsystem 502 may be implemented using a computer system or as an application or other executable code implemented on the computer system of the task adjustment system 114. When the agent 106 obtains the necessary task - related information from the member 118 and / or through a task recommendation system (such as task parameters obtained through the evaluation of tasks performed for members in similar situations), the agent 106 can utilize the proposal creation subsystem 502 to generate one or more proposals regarding the solution of the task.

[0153]

[0164] As described above, the proposals may include one or more options presented to the member 118 that can be created and / or collected by the agent 106 during the research of a given task. In some cases, the agent 106 may access one or more proposal templates that can be used to generate these one or more proposals via the proposal creation subsystem 502. For example, the proposal creation subsystem 502 may maintain proposal templates for different task types within or internally in the task data store 110, whereby a proposal template for a particular task type may include various data fields related to the task type. As described above, the task data store 110 may be associated with a resource library. This resource library may maintain various proposal templates for the creation of new proposals for the completion of different tasks.

[0154]

[0165] In some embodiments, the data fields within the proposal template can be toggled on or off to give the agent 106 the ability to determine what information is presented to member 118 in the proposal. The agent 106 can toggle any of these data fields within the template on or off based on the agent's knowledge of the member's preferences. For example, if the agent 106 has established a relationship with member 118 such that the agent 106 knows with a high degree of confidence that the member trusts the agent 106 to select a reputable company for the member's task, the agent 106 can toggle off the data field corresponding to the evaluation / review for the corresponding company from the proposal template. Similarly, if the agent 106 knows that member 118 has no interest in the company's location / address for the purpose of the proposal, the agent 106 can toggle off the data field corresponding to the location / address for the corresponding company from the proposal template. Although some data fields can be toggled off within the proposal template, the agent 106 can complete these data fields to provide additional information that can be used by the proposal creation subsystem 502 to supplement the proposals maintained by the task coordination system 114 in the resource library.

[0155]

[0166] In some embodiments, the proposal creation subsystem 502 utilizes a machine learning algorithm or artificial intelligence to generate recommendations for the proxy 106 regarding data fields that may be presented to the member 118 in the proposal. The proposal creation subsystem 502 may use, as input to the machine learning algorithm or artificial intelligence, a member profile or model related to the member 118 from the user data store 108, historical task data for the member 118 from the task data store 110, and information corresponding to the task for which the proposal is being generated (e.g., task type or category, etc.). The output of the machine learning algorithm or artificial intelligence may specify which data fields of the proposal template should be toggled on or off. The proposal creation subsystem 502 may, in some cases, maintain an option to toggle these data fields on for the proxy 106 in order to give the proxy 106 the ability to present these data fields to the member 118 in the proposal. For example, if the proposal creation subsystem 502 automatically toggles off a data field corresponding to an estimated cost for task completion, but the member 118 expresses an interest in the possible costs involved, the proxy 106 may toggle the data field corresponding to the estimated cost on.

[0156]

[0167] When agent 106 generates a new proposal regarding member 118, agent 106 may present the proposal and any corresponding proposal options to member 118. Further, the proposal creation subsystem 502 may store the new proposal in the user data store 108 related to the member profile. In some cases, when the proposal is presented to member 118, the proposal creation subsystem 502 may monitor the interaction of the agent 106 and the member with the proposal to obtain data that can be used to further train a machine learning algorithm or artificial intelligence. For example, agent 106 presents a proposal without any evaluation / review for a particular company based on a recommendation generated by proposal creation subsystem 502, and member 118 indicates that the member is interested in the evaluation / review of a particular company (such as through a message to agent 106, through the selection of an option in a proposal to view the evaluation / review for a particular company), the proposal creation subsystem 502 may utilize this feedback to increase the likelihood of recommending the presentation of the evaluation / review of the company selected for a similar task or task type to further train a machine learning algorithm or artificial intelligence.

[0157]

[0168] As described above, the task adjustment system 114 maintains a resource library that can be used to automatically populate one or more data fields of a particular proposal template. The resource library may include entries corresponding to proposals related to a particular task or task type, or in some cases, companies and / or products previously used on behalf of proposals related to a particular task or task type. For example, when agent 106 generates a proposal related to a task of repairing a roof near Lynnwood, Washington, the proposal creation subsystem 502 may obtain information related to the roofing contractor selected by agent 106 for the task. The proposal creation subsystem 502 may generate an entry corresponding to the roofing contractor in the resource library and associate this entry with "roof repair" and "Lynnwood, Washington". Thus, when another agent receives a task corresponding to repairing a roof for a member located near Lynnwood, Washington, the other agent may query the resource library about roofing contractors near Lynnwood, Washington. The resource library may return an entry corresponding to the roofing contractor previously selected by agent 106 in response to the query. If another agent selects this roofing contractor, the proposal creation subsystem 502 may automatically populate the data fields of the proposal template with the information available for the roofing contractor from the resource library.

[0158]

[0169] Agent 106 can query a resource library to identify one or more third - party services and other services / entities that have partnered with a task facilitation service that requests quotes for task completion. For example, for a newly created task, Agent 106 can send a job offer to these one or more third - party services 116 and other services / entities. Through an application or web portal provided by the task facilitation service, the third - party service or other services / entities can review the job offer and determine whether to submit a quote for task completion or reject the job offer. If the third - party service or other services / entities choose to reject the job offer, Agent 106 may receive a notice indicating that the third - party service or other services / entities have rejected the job offer. Alternatively, if the third - party service or other services / entities choose to bid to perform the task, the third - party service or other services / entities can submit a quote for task completion. Agent 106 can use any given quote from third - party service 116 and / or other services / entities to generate different proposal options for task completion. These different proposal options can be presented to member 118 as proposals through an interface specific to the task corresponding to the particular task to be completed. If member 118 selects a particular proposal option from a set of proposal options presented through the interface specific to the task, Agent 106 can send a notice to the third - party service or other services / entities that submitted the quote associated with the selected proposal option to indicate that it has been selected for task completion.

[0159]

[0170] As described above, the agent 106 can generate additional proposal options for companies and / or products that can be used for task completion via the proposal template. For example, for a particular proposal, the agent 106 can generate recommended options that can correspond to a company or product that the agent 106 recommends for task completion. Further, to give the member 118 additional options or alternatives, the agent 106 can generate additional options corresponding to other companies or products that can complete the task. In some cases, if the agent 106 knows that the member 118 has delegated the decision-making regarding task completion to the agent 106, the agent 106 can refrain from generating additional proposal options in addition to the recommended options. However, the agent 106 can still present the proposal options selected for task completion to the member 118 to ensure that the member 118 is not lacking information regarding the status of the task.

[0160]

[0171] Once the agent 106 has completed defining the proposal via the use of the proposal template, the agent 106 can present the proposal to the member 118 through an application or web portal provided by the task facilitation service. In some cases, the agent 106 can send a notification to the member 118 to indicate that the proposal has been prepared for a particular task and is ready for review via the application or web portal provided by the task facilitation service. The proposal presented to the member 118 can indicate the task for which the proposal has been prepared, as well as the display of one or more options given to the member 118. For example, the proposal can include links to the recommended proposal options and other options (if any) prepared by the agent 106 for a particular task. These links can enable the member 118 to navigate between one or more options prepared by the agent 106 via the application or web portal. In some cases, the agent 106 can send the proposal to the member 118 via other communication channels such as via email, text message, etc.

[0161]

[0172] For each proposed option, a member may be presented with information corresponding to the company or product selected by proxy 106 and information corresponding to the data fields selected for presentation by proxy 106 via the proposal creation subsystem 502. In some cases, the member 118 may select which details or data fields related to a particular proposal are presented via the application or web portal. For example, if the member 118 is presented with an estimated total amount for each proposed option and has no interest in reviewing the estimated total amount for each proposed option, the member 118 may toggle this particular data field off from the proposal via the application or web portal. Alternatively, if the member 118 is interested in reviewing additional details (e.g., additional reviews, additional company or product information, etc.) regarding each proposed option, the member 118 may request that this additional detail be presented via the proposal.

[0162]

[0173] As described above, based on the member's interaction with a given proposal, the proposal creation subsystem 502 may further train a machine learning algorithm or artificial intelligence used to determine or recommend what information must be presented to member 118 and what information must be presented to members in a similar situation for a similar task or task type. The proposal creation subsystem 502 may monitor or track the member's interaction with the proposal to determine the member's preferences regarding the information presented in the proposal for a particular task. Further, the proposal creation subsystem 502 may monitor or track any messages exchanged between member 118 and proxy 106 related to the proposal to further identify the member's preferences. In some cases, the proposal creation subsystem 502 may request feedback from member 118 regarding the proposal provided by proxy 106 to identify the member's preferences. This feedback and information obtained through the member's interaction with proxy 106 regarding the proposal or the member's interaction with the proposal itself may be used to retrain a machine learning algorithm or artificial intelligence to provide more accurate or improved recommendations for the information that must be presented to member 118 and to members in a similar situation for a similar task or task type in the proposal. The proposal creation subsystem 502 may further use the feedback and information obtained through the member's interaction with proxy 106 to update the member profile or model in user data store 108 for use in determining the recommendations for the information that must be presented to member 118 in the proposal.

[0163]

[0174] In some cases, each proposal presented to member 118 may specify all costs associated with each proposal option. These costs may be presented in different formats based on the requirements of the associated task or project. For example, if a proposal corresponds to the performance of a task by a third-party service or other service / entity related to a task facilitation service, the proposal may include a quote submitted by the third-party service or other service / entity in response to an offer of work from agent 106. The quote may indicate all costs associated with different aspects of the task as well as any additional charges (e.g., taxes, material costs, etc.) that may be required for the performance of the task. If member 118 accepts a particular proposal option for a task or project, agent 106 may communicate with member 118 to ensure that the member has agreed to pay the presented costs for the particular proposal option and any associated taxes and charges. In some cases, if a proposal option is selected using a static payment amount and the actual payment amount required for fulfillment of the proposal option exceeds a threshold percentage or amount above the initially presented static payment amount, member 118 may be notified by agent 106.

[0164]

[0175] In some embodiments, if member 118 accepts a proposal option from a presented proposal, task adjustment system 114 moves the task associated with the presented proposal to an executed state, and agent 106 can proceed to execute the proposal according to the selected proposal option. For example, agent 106 may contact one or more third-party services 116 and / or other services / entities related to a task facilitation service to coordinate the performance of the task according to the parameters defined in the proposal accepted by member 118. Alternatively, if agent 106 is to perform the task for member 118, agent 106 may begin performance of the task according to the parameters defined in the proposal accepted by member 118.

[0165]

[0176] In some embodiments, the proxy 106 utilizes the task monitoring subsystem 504 of the task adjustment system 114 to assist in adjusting the performance of tasks according to the parameters defined in the proposal accepted by the member 118. The task monitoring subsystem 504 can be implemented using a computer system or as an application or other executable code implemented on the computer system of the task adjustment system 114. When adjustment with the third-party service 116 can be automatically performed (for example, the third-party service 116 provides an automated system for ordering, scheduling, payment, etc.), the task monitoring subsystem 504 can directly interact with the third-party service 116 to adjust the performance of tasks according to the selected proposal option. The task monitoring subsystem 504 can provide the proxy 106 with any information from the third-party service 116. The proxy 106 can then provide this information to the member 118 via an application or web portal utilized by the member to access the task facilitation service. Alternatively, the proxy 106 can transmit information to the member 118 via other communication methods (such as an email message, text message, etc.) to indicate that the third-party service 116 has started performing the task according to the selected proposal option. When the task is to be performed by the proxy 106 for the member 118, the task monitoring subsystem 504 can monitor and interact with the proxy 106 to adjust the performance of the task according to the parameters defined in the proposal accepted by the member 118. For example, the task monitoring subsystem 504 can provide the proxy 106 with any resources that may be required for the performance of the task (such as payment information, task information, suitable sources for purchases, etc.).

[0166]

[0177] In some embodiments, the task monitoring subsystem 504 can monitor the performance of tasks by the proxy 106 and / or third party services 116 on behalf of the member 118. For example, the task monitoring subsystem 504 can record any information provided by the third party services 116 regarding, for example, the time frame for the performance of the task, the costs associated with the performance of the task, any status updates regarding the performance of the task, etc. The task monitoring subsystem 504 can associate this information with the data record corresponding to the task being performed within the task data store 110. The status updates provided by the third party services 116 can be automatically provided to the member 118 and to the proxy 106 via the application or web portal provided by the task facilitation service 102. Alternatively, the status updates can be provided to the proxy 106, which can in turn provide these status updates to the member via a chat session established between the member and the proxy 106 or through other communication means. When the proxy 106 is performing a task on behalf of the member 118, the proxy 106 can provide status updates regarding the representative performance of the task to the member 118 via the application or web portal provided by the task facilitation service 102. The task monitoring subsystem 504 can associate these status updates with the data record corresponding to the task being performed within the task data store 110.

[0167]

[0178] In some cases, the task monitoring subsystem 504 may enable third-party services or other services / entities involved in performing a task to communicate directly with member 118 to provide status updates related to the task. For example, the task monitoring subsystem 504 may facilitate a communication channel between member 118 and a third-party service or other service / entity through which member 118 and the third-party service or other service / entity can exchange messages related to the task being performed. This communication channel may be provided through an interface specific to the task, so that the communication channel is separate from the general communication channel between member 118 and proxy 106 and any other task-related communication channels between member 118 and proxy 106. In some cases, a third-party service or other service / entity may be added to an existing task-specific communication channel between member 118 and proxy 106. Since the third-party service or other service / entity performs the assigned task, this may enable member 118 and proxy 106 to actively participate in the third-party service or other service / entity.

[0168]

[0179] As described above, upon completion of a task, member 118 may provide feedback regarding proxy 106 that performed the task according to the proposed option selected by member 118 and / or third-party service 116 related to the task facilitation service or the performance of other services / entities. For example, member 118 may exchange one or more messages with proxy 106 via a task-specific chat session or other communication channel to indicate its feedback regarding completion of the task. In some embodiments, task monitoring subsystem 504 provides feedback to proposal creation subsystem 502, which may use machine learning algorithms or artificial intelligence to process the feedback provided by member 118 to improve the recommendations provided by proposal creation subsystem 502 for proposed options, third-party service 116 or other services / entities that may perform the task, and / or the processes that may be performed by proxy 106 and / or third-party service 116 or other services / entities for completion of similar tasks. For example, if proposal creation subsystem 502 detects that a member is not satisfied with the results provided by third-party service 116 or other services / entities for a particular task, proposal creation subsystem 502 may utilize this feedback to further train the machine learning algorithms or artificial intelligence to reduce the likelihood of being recommended to members in similar situations and for similar tasks. As another example, if proposal creation subsystem 502 detects that a member is pleased with the results provided by proxy 106 for a particular task, proposal creation subsystem 502 may utilize this feedback to further train the machine learning algorithms or artificial intelligence to reinforce the actions performed by the proxy for members in similar situations and / or for similar tasks.

[0169] II. Communication Interface for Identifying Service Providers A. Overall Computing Environment

[0180] FIG. 6A shows an exemplary example of an environment 600A configured to identify a service provider for performing tasks assigned to service communication interface 606 according to at least one embodiment. In environment 600, member 118 may send task-related data to agent 106 assigned to member 118 to identify one or more tasks that may be performed for member 118 via a computing device (e.g., a laptop computer, a smartphone, etc.). For example, in one embodiment, a member may manually enter one or more tasks that member 118 desires to delegate to agent 106 for performance. Task facilitation service 102 may provide options for manual entry of tasks that may be delegated to agent 106 or, in some cases, added to the member's task list via an application or web portal provided by task facilitation service 102 to member 118.

[0170]

[0181] If member 118 selects an option for manual entry of a task, task facilitation service 102 may provide a task template via the interface of the application or web portal for member 118 to enter various details related to the task. The task template may include various fields that may provide, for example, a name for the task, a description of the task (e.g., "I need to have the gutters cleaned before the next storm", "I want to have the painter repair and repaint the bathroom", etc.), a time frame for performing the task (e.g., a specific due date, a date range, a level of urgency, etc.), a budget for performing the task (e.g., no budget limit, a specific maximum amount, etc.). Various embodiments implementing the task template are further described in Section I.C. of the present disclosure.

[0171]

[0182] When member 118 submits a completed task template corresponding to a task to be performed for member 118 through the project communication interface 602 provided by the task facilitation service 102, the proxy 106 assigned to member 118 may obtain the completed task template and initiate an evaluation of the task to determine how best to perform the task for member 118. For example, the proxy 106 may evaluate the completed task template and generate a new task for member 118 that corresponds to the task relationship details provided by member 118 in the completed task template. Further, based on the knowledge of the proxy of member 118 (such as from an interaction with member 118, from the member profile, etc.), the proxy 106 may determine whether to prompt member 118 for additional information that may be used to determine how best to perform the task for member 118.

[0172]

[0183] In some embodiments, member 118 can submit a request to agent 106 to generate a project in which one or more tasks can be determined by agent 106 and / or by task recommendation system 112, or a project that may include one or more tasks to be completed for a project. For example, via a chat session established between member 118 and the assigned agent 106, member 118 can indicate that it wishes to start a project. As an illustrative example, a member can send a message to agent 106 that the member wishes to assist in planning a move to Denver in August. In response to this message, agent 106 can identify one or more tasks that may be involved in this project (e.g., moving to Denver), and generate these one or more tasks for presentation to the member. For example, agent 106 can generate tasks including, but not limited to, defining a moving budget, finding a moving company, disposing of any unwanted possessions, coordinating public services at the current location and the new location, etc. These tasks can be presented to the member via an interface specific to the project to enable the member to evaluate each of these tasks related to the project and determine how each of these tasks can be performed (e.g., the member performs a specific task himself, the member delegates a specific task to the agent, the member defines parameters for the performance of the task, etc.) and coordinate with agent 106.

[0173]

[0184] As described above, if member 118 requests creation of a project that includes one or more tasks to be performed as part of the project, a project communication interface 602 specific to the project can be created. The project communication interface 602 can include links or other graphical user interface (GUI) elements corresponding to each of the tasks associated with the project. Selection of a particular link or other GUI element corresponding to a particular task associated with the project can cause the task facilitation service 102 to present an interface specific to the particular task. Through this interface, member 118 can communicate with proxy 106 to exchange messages related to the particular task, review proposals related to the particular task, monitor the performance of the particular task, and so on.

[0174]

[0185] In some embodiments, messages exchanged between member 118 and proxy 106 can be processed by task recommendation system 112 to identify potential projects and / or tasks that may be recommended to member 118 for presentation by proxy 106. As described above, task recommendation system 112 can utilize NLP or other artificial intelligence to evaluate exchanged messages or other communications from member 118 to identify possible tasks that may be recommended to member 118. For example, task recommendation system 112 can process any incoming messages from member 118 using NLP or other artificial intelligence techniques to detect new projects, new tasks, or other problems that member 118 desires to solve. In some cases, task recommendation system 112 can utilize historical task data from a task data store and corresponding messages to train NLP or other artificial intelligence to identify possible tasks. If task recommendation system 112 identifies one or more possible projects and / or tasks that may be recommended to member 118, task recommendation system 112 can present these possible tasks to proxy 106, and proxy 106 can select projects and / or tasks that can be shared with member 118 via the chat session. Various embodiments for identifying possible tasks for a project (including the use of NLP or population intelligence) are further described in Sections I.A. and I.C. of this disclosure.

[0175]

[0186] In some cases, the task recommendation system 112 may provide the proxy 106 with a list of sets of tasks that can be recommended to the member 118 for a final decision on which tasks can be presented to the member 118. As described above, the task recommendation system 112 can rank the list of sets of tasks based on the likelihood that the member 118 will select tasks for delegation to the proxy for implementation and coordination with third-party services 116 or other services / entities partnered with the task facilitation service 102. Alternatively, the task recommendation system 112 may rank the list of sets of tasks based on the level of urgency of completion of each task. For example, if the task recommendation system 112 determines that a task corresponding to hiring a moving company is of a greater urgency than a task corresponding to adjusting public services, the task recommendation system 112 may rank the former task higher than the latter task.

[0176]

[0187] In some embodiments, the task facilitation system 112 may identify a project that can be created based on messages exchanged between the member 118 and the proxy 106. When the task facilitation system 112 identifies one or more tasks associated with the identified project, the task facilitation system 112 may provide the member with the project definition and the tasks associated with the identified project via the proxy 106 to obtain approval from the member 118 to proceed with the project. For example, via an application provided by the task facilitation service 102 or a web portal (e.g., the project communication interface 602), the member 118 may review the proposed project and the tasks associated with the proposed project to determine whether to proceed with the proposed project. The member 118 may further communicate with the proxy 106 through a project-specific communication session to further define the project and / or any tasks associated with the project, including defining the scope of the project and the scope of any of the tasks proposed for completion of the project. Various embodiments for assigning priorities to one or more tasks and placing the tasks in an active queue are further described in Section I.C. of the present disclosure.

[0177]

[0188] In some embodiments, the task facilitation service 102 can present a member 118 with a task list corresponding to the member's current and upcoming tasks via an application implemented on the member's computing device 120 or an application accessed via a web portal provided by the task facilitation service 102. The task facilitation service 102 may provide the status of each task (e.g., created, in progress, recurring, completed, etc.) via the task list. In some cases, the task facilitation service 102 may enable the member 118 to filter tasks as needed, such that the member 118 can customize and determine which tasks should be presented to the member 118 via the application or web portal.

[0178]

[0189] In addition to presenting a task list corresponding to a member's current and upcoming tasks, the task facilitation service 102 may signal which of these tasks are assigned to member 118 or proxy 106. For example, the task facilitation service 102 may display an assignment tag for each task presented to member 118 via an application or web portal. The assignment tag may explicitly indicate whether the corresponding task is assigned to member 118 or proxy 106. Additionally or alternatively, tasks may be presented to member 118 via the project communication interface 602 using color coding, where the color used for the task may further indicate whether the task is assigned to member 118 or proxy 106. As an illustrative example, if a task is assigned to proxy 106, the task may be presented with an "agent" attribute tag and presented within a task bubble using an orange hue to further indicate that the task is assigned to proxy 106. Alternatively, if a task is assigned to member 118, the task may be presented with a "member" attribute tag and presented within a task bubble using a green hue to further indicate that the task is assigned to member 118. Although attribute tags and color indicators are used throughout this disclosure for illustrative purposes, it should be noted that other assignment indicators may be utilized to distinguish between tasks assigned to member 118 and tasks assigned to proxy 106. In some embodiments, the task facilitation service 102 may provide members with the option to obtain additional information regarding the specific tasks, further described in Section I.C. of this disclosure, from the task list via an application or web portal (e.g., the project communication interface 602).

[0179]

[0190] In some embodiments, member 118 can submit one or more user records (e.g., user record 306 of FIG. 3) that can be used to identify tasks that can be performed for member 118. For example, a member can upload one or more digital images to task facilitation service 102 that can indicate issues within the member area where a task can be created. Member 118 can provide the user record to proxy 106, which can review the user record to identify any tasks that can be recommended to member 118 to address any of the issues indicated by member 118 in the user record. In some instances, proxy 106 can prompt member 118 to generate one or more user records that can be used to assist proxy 106 in defining one or more tasks that can be performed for member 118.

[0180]

[0191] In some embodiments, proxy 106 generates one or more proposals for the completion of a given task presented to member 118 via an application or web portal provided by task facilitation service 102. The proposals can include one or more options presented to the member that can be created and / or collected by proxy 106 while researching the given task. In some instances, proxy 106 can be provided one or more templates that can be used to generate these one or more proposals. For example, task facilitation service 102 can maintain proposal templates for different task types, whereby a proposal template for a particular task type can include various data fields related to the task type. As an illustrative example, for a task related to planning a birthday party, proxy 106 can utilize a proposal template corresponding to event planning. The proposal template corresponding to event planning can include data fields corresponding to venue options, catering options, entertainment options, etc. Various embodiments for generating proposals for the completion of any given task, including the use of member-interaction data and machine learning, are further described in Section I.C. of the present disclosure.

[0181]

[0192] In some cases, each proposal presented to member 118 may specify all costs associated with each proposal option. These costs may be presented in different formats based on the requirements of the associated task or project. For example, if the task or project is for purchasing an airline ticket, each proposal option for the corresponding proposal may present the fixed price of the airline ticket. As another exemplary example, proxy 106 may provide a budget for completing the task according to the selected option (e.g., "intend to spend up to $150 on Halloween decorations for the party") for each proposal option. As yet another exemplary example, for a task or project where a payment schedule may be involved, the proposal options for the proposal related to the task or project may specify a payment schedule for each of these proposal options (e.g., "$100 for the initial negotiation and $300 for subsequent services", "$1,500 deposit for reserving the venue and $1,500 usage fee after the event", etc.).

[0182]

[0193] If a member accepts a particular proposal option for a task or project, proxy 106 may communicate with the member to ensure that the member agrees to pay the presented cost for the particular proposal option and any associated taxes and fees. In some cases, if the proposal option is selected using a static payment amount (e.g., fixed price, "up to $X", a phased payment schedule with a static amount, etc.), and the actual payment amount required for the fulfillment of the proposal option exceeds a threshold percentage or amount over the initially presented static payment amount, member 118 may be notified by proxy 106. For example, if proxy 106 determines that member 118 may need to spend more than 120% of the cost specified in the selected proposal option, proxy 106 may send a notice to member 118 to reconfirm the payment amount before proceeding with the proposal option.

[0183]

[0194] In some cases, one or more proposals for task completion include recommendations of one or more third - party services and other services / entities that partner with task facilitation service 102 (collectively referred to herein as "service providers") to perform the task on behalf of member 118. In some embodiments, proxy 106 delegates the identification of service providers to task coordination agent 604. In some cases, agent 604 includes an automated agent (e.g., a chatbot, a virtual assistant utilizing artificial intelligence) configured to identify a set of service providers. Agent 604 may generate a list of service providers and / or resources recommended for task performance, whereby the list may be ranked according to the likelihood of satisfaction (e.g., a score or other metric) assigned to each identified third - party service and / or resource.

[0184]

[0195] For a given task, proxy 106 may delegate to agent 604 a service - provider identification process for identifying service providers capable of performing the assigned task. Proxy 106 may use task facilitation service 102 to send a set of tasks to agent 604 for identifying a set of service providers through service communication interface 606. In some cases, service communication interface 606 is separate from project communication interface 602. By separating the two communication interfaces, project communication interface 602 may thus be configured to prevent external entities (such as some candidate service providers) from accessing the set of messages exchanged between member 118 and proxy 106.

[0185]

[0196] In some cases, agent 604 queries the resource library to access resource data associated with candidate service providers 608 from which it requests an estimate for task completion. The resource library can act as a repository for various information about candidate service providers 608, including their contact information, the categories of tasks they perform, previous estimates for performing similar tasks, and the like. In some cases, the resource library includes a rating or score related to the satisfaction of the candidate service providers by members of task facilitation service 102 for each candidate service provider of candidate service providers 608. Additionally, the resource library may include a rating or score related to the satisfaction of each resource (e.g., retailer, restaurant, brand, product, material, etc.) determined by members of task facilitation service 102.

[0186]

[0197] In some embodiments, service communication interface 606 utilizes a machine learning algorithm or artificial intelligence to determine candidate service providers 608. For example, a machine learning model can be applied to resource data (e.g., contact information, task category, previous estimates for performing similar tasks, etc.) in the resource library to identify candidate service providers 608. The machine learning model is trained using resource data of multiple candidate service providers and historical data related to other service providers. When member 118 selects a service provider for performing a set of tasks, one or more parameters of the machine learning model can be modified based on the selection of the service provider. As a result, one or more parameters of the machine learning model can be learned to be better aligned so that subsequent candidate service providers are selected by member 118.

[0187]

[0198] Examples of machine learning models include algorithms such as the k-means clustering algorithm, the fuzzy c-means (FCM) algorithm, the expectation maximization (EM) algorithm, the hierarchical clustering algorithm, the density-based spatial clustering of applications with noise (DBSCAN) algorithm, and others. Other examples of machine learning or artificial intelligence algorithms include, but are not limited to, genetic algorithms, backpropagation, reinforcement learning, decision trees, linear classification, artificial neural networks, anomaly detection, and the like. More generally, machine learning or artificial intelligence methods can include regression analysis, dimensionality reduction, meta-learning, reinforcement learning, deep learning, and other such algorithms and / or methods.

[0188]

[0199] To create a new task, agent 604 may send one or more requests via service communication interface 606 to receive an estimate from candidate service provider 608. The requests may be sent using various types of communication methods, including email, automated phone calls, voicemail, text messages, push notifications, and the like. The requests may indicate various characteristics of the task to be completed (e.g., the scope of the task, the approximate geographical location of member 118 or where the task is to be completed, the desired budget, etc.). In some cases, service communication interface 606 is configured to generate requests such that at least a portion of the information related to the set of tasks is excluded. Specifically, service communication interface 606 may be configured to dynamically delete or anonymize certain types of data related to the task list as task data is received in real time to prevent exposing member data security and privacy. For example, personally identifiable information (``PII'') (e.g., name, address, phone number) of member 118 may be deleted, anonymized, or encrypted so that none of candidate service providers 608 can access member 118's PII data.

[0189]

[0200] The service communication interface 606 can provide a platform through which a candidate service provider 608 can interact with the agent 604 and / or proxy 106, such as to obtain additional information regarding the project and provide an estimate. For example, through the service communication interface 606, a candidate service provider of the candidate service provider 608 can review a job offer using the service communication interface 606 and determine whether to submit a bid for task completion or reject the job offer. If one of the candidate service providers 608 chooses to reject a job offer, the service communication interface 606 can issue a notification indicating that the service provider has rejected the job offer. Alternatively, if the service provider chooses to bid (e.g., accept the job offer) to perform the task, the service provider can submit a bid for task completion via the service communication interface 606. This bid can indicate, for example, an estimated cost for task completion, the time required for task completion, an estimated date on which third-party services or other services / entities will be available to begin task performance.

[0190]

[0201] The service communication interface 606 can be configured to provide a graphical user interface to the agent 604 and the candidate service provider 608 for real-time interaction with each other, data exchange, etc. In some cases, the service communication interface 606 provides a secure chat session between the agent 604 and the candidate service provider 608 to facilitate real-time communication within the service communication interface 606. Additionally or alternatively, the service communication interface 606 can utilize NLP or other artificial intelligence to evaluate messages or other communications exchanged from the candidate service provider 608 to identify additional tasks and / or identify recommended service providers for member 118 or other members of the task facilitation server 102.

[0191]

[0202] In some cases, candidate service provider 608 can upload attachments via service communication interface 606 such that one or more attachments (e.g., images, estimated costs) can be reviewed by agent 604, proxy 106, and / or member 118. Proxy 106 and agent 118 can be notified in real time via project communication interface 602 of messages sent and attachments uploaded by candidate service provider 608 and can receive them.

[0192]

[0203] The response messages from candidate service provider 608 can be monitored in real time by agent 604 using service communication interface 602. Each of the response messages indicates the availability of the corresponding candidate service provider for performing a set of tasks and / or an estimate for performing the set of tasks. In some cases, service communication interface 606 processes the response messages in order to enable agent 604 to identify a set of service providers for which they can perform tasks based on their response messages as the response messages arrive and dynamically present status updates via one or more status indicators. To facilitate real-time monitoring of response messages by the agent, service communication interface 602 is further configured to: (i) generate a plurality of status indicators for a plurality of candidate service providers; (ii) receive response messages from each of one or more candidate service providers via the service communication interface; (iii) dynamically modify the status indicators such that as each response message is received, the status indicator associated with each candidate service provider of the one or more candidate service providers visually and in real time indicates the availability of the corresponding candidate service provider for performing a set of tasks; and (iv) present the modified status indicators of the one or more candidate service providers on the service communication interface to facilitate identification of the set of service providers.

[0193]

[0204] Based on the response messages and / or status presented on the service communication interface 606, the agent 604 can identify a set of service providers 610 for performing the task from the candidate service providers 608. A report including the set of service providers can be generated and sent to the proxy 106. The proxy 106 can use the report to generate different proposals for the completion of the task, at which point the proxy 106 can send the proposals to the member 118 through the project communication interface 602. If the member 118 selects a specific proposal from the set of proposals presented through the project communication interface 602, the proxy can send a notification to the corresponding set of service providers identified by the agent 604, in which case the notification indicates that the set of service providers has been selected for the completion of the task. The proxy 106 can then coordinate the performance of the task with the service providers 610 for the completion of the task as described in more detail herein.

[0194]

[0205] In some embodiments, the agent 604 uses a machine learning algorithm or artificial intelligence to determine the service providers 610 on behalf of the proxy 106 for the performance of the task. For example, a machine learning model can be applied to the response messages to identify the set of service providers 610. The machine learning model is trained using resource data of a plurality of candidate service providers and historical data related to other service providers. When the member 118 selects a service provider for performing a set of tasks from the set of service providers 610, one or more parameters of the machine learning model can be modified based on the selection of the service provider. As a result, one or more parameters of the machine learning model can be learned to be better aligned such that subsequent sets of service providers are selected by the member 118.

[0195]

[0206] In some cases, agent 604 may utilize selected proposals or parameters related to the task (e.g., where a member has delegated to proxy 106 to determine how the task should be performed), as well as historical task data from a task data store (e.g., task data store 110 of FIG. 1) corresponding to similar tasks as input to a machine learning algorithm or artificial intelligence. The machine learning algorithm or artificial intelligence may create, as output, a list of service providers that can perform the task with a high probability of member 118 satisfaction.

[0196]

[0207] Examples of machine learning models include algorithms such as the k - means clustering algorithm, fuzzy c - means (FCM) algorithm, expectation - maximization (EM) algorithm, hierarchical clustering algorithm, density - based spatial clustering of applications with noise (DBSCAN) algorithm, etc. Other examples of machine learning or artificial intelligence algorithms include, but are not limited to, genetic algorithms, backpropagation, reinforcement learning, decision trees, linear classification, artificial neural networks, anomaly detection, etc. More generally, machine learning or artificial intelligence methods may include regression analysis, dimensionality reduction, meta - learning, reinforcement learning, deep learning, and other such algorithms and / or methods.

[0197]

[0208] In some cases, the machine learning model for determining the service provider 610 includes different parameters from the machine learning model for identifying the candidate service providers 608. The training of the machine learning models can be performed together, in which case their respective parameters are learned based on the same training dataset (e.g., response messages, historical data). Additionally or alternatively, the machine learning models can be trained separately using different training data. For example, the machine learning model for identifying the candidate service providers 608 can be trained using resource data stored in a resource library, while the machine learning model for determining the service provider 610 can be trained using response messages from the service providers and previous selections of the service providers by the user.

[0198]

[0209] In some embodiments, the agent 604 determines that additional candidate service providers may need to be selected for the task to be successfully performed. In such cases, the service communication interface 606 can be further configured to send one or more requests to each of the additional candidate service providers. The additional candidate service providers (e.g., service providers outside the network) are identified from a data source different from the resource library. The data source can include an external resource library, a search engine, or other websites.

[0199]

[0210] In some cases, one or more requests are modified to include instructions for additional candidate service providers to be registered in the resource library of the task facilitation service 102. The service communication interface 606 can be further configured to monitor additional response messages from one or more candidate services of the additional candidate service providers. By monitoring the availability of the additional candidate service providers, the agent 604 can identify a set of service providers from the candidate service providers 608 and the additional candidate service providers.

[0200]

[0211] In some embodiments, when the proxy 106 finishes defining a proposal, the task facilitation service 102 presents the proposal to the member 118 through the project communication interface 602. In some cases, the proxy 106 may send a notification to the member 118 to indicate that the proposal is prepared for a specific task and that the proposal is ready for review via the project communication interface 602. The proposal presented to the member 118 may indicate the task for which the proposal was prepared, as well as the display of one or more options given to the member 118. For example, the proposal may include links to the recommended proposal option and other options (if any) prepared by the proxy 106 for a specific task. These links may enable the member 118 to navigate between one or more options prepared by the proxy 106 via an application or a web portal.

[0201]

[0212] For each proposed option, Member 118 may be presented with information corresponding to the company (e.g., Service Provider 610) or product selected by Agent 106, or information corresponding to the data fields selected for presentation by Agent 106 via a proposal template. In some cases, Member 118 may select which details or data fields related to a particular proposal are presented via Project Communication Interface 602. For example, if Member 118 is presented with an estimated total amount for each proposed option and Member 118 has no interest in reviewing the estimated total amount for each proposed option, Member 118 may toggle this particular data field off from the proposal via an application or web portal. Alternatively, if Member 118 is interested in reviewing additional details (e.g., additional reviews, additional company or product information, etc.) regarding each proposed option, Member 118 may request that this additional detail be presented via the proposal.

[0202]

[0213] In some embodiments, based on member interactions with a given proposal, Task Facilitation Service 102 can be further trained using machine learning algorithms or artificial intelligence to determine or recommend what information should be presented to the member and what information should be presented to Member 118 in similar situations for similar tasks or task types. As described above, Task Facilitation Service 102 may use machine learning algorithms or artificial intelligence to generate recommendations for Agent 106 regarding data fields that may be presented to Member 118 in a proposal. Various embodiments for generating recommendations regarding the presentation of data fields are further described in Section I.C. of the present disclosure.

[0203]

[0214] In some embodiments, if member 118 accepts a proposed option from a presented proposal, task facilitation service 102 moves the tasks associated with the presented proposal to an active state, and agent 106 can proceed to execute the proposal according to the selected proposed option. For example, agent 106 may contact service provider 610 to adjust the performance of the task according to the parameters defined in the proposal accepted by member 118.

[0204]

[0215] In some embodiments, agent 106 utilizes a task adjustment system to assist in adjusting the performance of the task according to the parameters defined in the proposal accepted by member 118. For example, if the adjustment with service provider 610 can be automatically performed (e.g., service provider 610 provides an automated system for ordering, scheduling, payment, etc.), the task adjustment system can directly interact with service provider 610 to adjust the performance of the task according to the selected proposed option. The task adjustment system may provide agent 106 with any information (e.g., confirmation, order status, reservation status, etc.). Agent 106 can then provide this information to member 118 via project communication interface 602 to access task facilitation service 102. When agent 106 is performing a task on behalf of member 118, agent 106 may provide member 118 with a status update regarding the representative performance of the task via project communication interface 602.

[0205]

[0216] In some embodiments, the task coordination system can monitor the performance of tasks by proxy 106, service provider 610, and / or other services / entities associated with task facilitation service 102 for member 118. For example, the task coordination system can record any information provided by service provider 610 regarding a time frame for performance of the task, costs associated with performance of the task, any status updates regarding performance of the task, and the like. The task coordination system can associate this information with a data record corresponding to the task being performed. Status updates provided by service provider 610 can be automatically provided to member 118 and to proxy 106 via an application or web portal provided by task facilitation service 102. Based on the above information, member 118 can communicate directly with service provider 610 regarding the performance of the task, including providing location information, requesting additional estimated costs for any revised work orders, estimated time to completion, and the like. Various embodiments related to using the task coordination system to monitor the performance of tasks are further described in Section I.C. of the present disclosure.

[0206]

[0217] When the task is completed, member 118 can provide feedback regarding the performance of proxy 106, service provider 610, and / or other services / entities associated with task facilitation service 102 that performed the task according to a proposed option selected by member 118. For example, member 118 can exchange one or more messages with proxy 106 via a chat session corresponding to a particular task / project that has been completed, provided by project communication interface 602, to indicate the member's feedback regarding completion of the task.

[0207]

[0218] In some embodiments, the task facilitation service uses machine learning algorithms or artificial intelligence to process recommendations provided by the task facilitation service 102 for proposed options, third-party services 116 or other services / entities, and / or feedback provided by members 118 to improve the processes that can be performed for the completion of similar tasks. For example, if the task facilitation service 102 detects that a member 118 is not satisfied with the results provided by a service provider for a particular task, the task facilitation service 102 can utilize this feedback to further train the machine learning algorithm or artificial intelligence to reduce the likelihood that the service provider or other services / entities will be recommended for similar tasks and for members in similar situations. As another example, if the task facilitation service 102 detects that a member 118 is pleased with the results provided by proxy 106 for a particular task, the task facilitation service 102 can utilize this feedback to further train the machine learning algorithm or artificial intelligence to reinforce the actions performed by the proxy for similar tasks and / or for members in similar situations.

[0208]

[0219] When the task is completed, the proxy may prompt the member 118 to provide a rating or score regarding the performance of a set of service providers 610 when completing the task for the member 118. As another example, when the task is performed by proxy 106, the proxy may prompt the member 118 to provide an evaluation or score regarding the resources utilized by the proxy for the performance of the proxy and the completion of the task. Each rating or score can be associated with the member 118 that provided the rating or score such that subsequent recommendations of the service provider can be determined based on the likelihood that the service provider 610 will satisfy the performance of the task for similar tasks for members in similar situations.

[0209]

[0220] In some cases, if a task cannot be completed by service provider 610 according to the estimates provided in the selected proposal, member 118 may cancel a particular task or, in some cases, be given the option to make changes to the task. For example, if the new estimated cost for performing the task exceeds the maximum amount specified in the selected proposal, member 118 can request agent 106 to find an alternative service provider to perform the task within the budget specified in the proposal. Similarly, if the time frame for completion of the task is not within the time frame shown in the proposal, member 118 can request the agent to find an alternative third-party service or other service / entity for performing the task within the original time frame. In those situations, agent 106 can communicate with agent 604 to identify additional candidate service providers (e.g., service providers outside the network) from data sources other than the resource library that can perform the task within the maximum amount and within the time specified in the selected proposal.

[0210]

[0221] FIG. 6B shows an exemplary schematic diagram of a service communication interface according to at least one embodiment. As described in FIG. 6A, the service communication interface 606 provides a graphical user interface and various computing operations to enable an agent 604 to access resource data related to a candidate service provider 608, interact with the candidate service provider 608 to obtain additional information regarding the identified task, and identify a set of service providers 610 that can perform the task on behalf of the member 118. In some embodiments, the service communication interface 606 is implemented by a dedicated computer specifically configured to encrypt communication data exchanged between the agent 608 and the candidate service provider 608. Additionally, one or more components of the service communication interface 606 are implemented by another dedicated computer specifically configured to apply a machine learning algorithm trained to identify service providers 610 from candidate service providers 608 using a certain amount of historical data to train the machine learning algorithm.

[0211]

[0222] The service communication interface 606 may be configured to include the following modules: (i) a request generator 612, (ii) a status monitoring module 614, (iii) a chat module 616, and (iv) a service-provider recommendation module 618. The request generator 612 can generate requests through various types of communication methods, including email, automated phone calls, voicemail, text messages, push notifications, etc., and send them to the candidate service provider 608. The request generator 612 can generate and format requests to include various characteristics of the task to be completed (e.g., the scope of the task, the approximate geographical location of member 118 or where the task is to be completed, the desired budget, etc.). In some cases, the request generator 612 is configured to generate requests such that at least a portion of the information related to the set of tasks is excluded. Specifically, the request generator 612 can be configured to dynamically delete or anonymize certain types of data related to the task list as task data is received in real time to prevent exposing the member's data security and privacy to risk. For example, the personally identifiable information ("PII") (e.g., name, address, phone number) of member 118 can be deleted, anonymized, or encrypted so that none of the candidate service providers 608 can access the PII data of member 118.

[0212]

[0223] The status monitoring module 614 may be configured to generate and provide status updates of candidate service providers 608 via one or more status indicators to enable the agent 604 to identify service providers 610 capable of performing tasks. To facilitate monitoring of response messages from the agent, the status monitoring module 614 (i) generates a plurality of status indicators for a plurality of candidate service providers, (ii) receives response messages from each of one or more candidate service providers via a service communication interface, (iii) dynamically modifies the status indicators as response messages are received such that the status indicators associated with each candidate service provider of the one or more candidate service providers visually and in real time indicate the availability of the corresponding candidate service provider for performing a set of tasks, and (iv) is further configured to present the modified status indicators of the one or more candidate service providers on the service communication interface to facilitate identification of a set of service providers.

[0213]

[0224] The chat module 616 may be configured to provide a graphical user interface to the agent 604 and the candidate service providers 608 to exchange data, etc., for interacting with each other in real time. In some cases, the chat module 616 establishes a secure chat session between the agent 604 and the candidate service provider 608 to facilitate real-time communication within the service communication interface 606. Additionally or alternatively, the service communication interface may utilize NLP or other artificial intelligence to evaluate messages or other communications exchanged from the candidate service provider 608 to identify additional tasks and / or to identify service providers recommended to member 118 or other members of the task facilitation service 102.

[0214]

[0225] In some cases, the candidate service provider 608 can use the chat module 616 to upload attachments such that one or more attachments (e.g., images, estimated costs) can be reviewed by the agent 604, proxy 106, and / or member 118. The proxy 106 and agent 118 can be notified of and receive the sent messages and attachments uploaded by the candidate service provider 608 in real time via the project communication interface.

[0215]

[0226] The service-provider recommendation module 618 can be configured to process the response messages and resource data of the candidate service providers 610 using a machine learning algorithm or artificial intelligence to select a service provider 610 for task performance. For example, a machine learning model (e.g., an artificial neural network) can be applied to the response messages to identify a set of service providers 610. The machine learning model is trained using the resource data of multiple candidate service providers and historical data related to other service providers. When the member 118 selects a service provider for a set of tasks from the set of service providers, one or more parameters of the machine learning model can be modified based on the service provider selection. As a result, one or more parameters of the machine learning model can be learned to be better aligned such that subsequent sets of service providers are selected by the member 118.

[0216]

[0227] In some cases, agent 604 may utilize selected proposals or parameters related to the task (e.g., when a member delegates to proxy 106 to determine how the task should be performed), as well as historical task data from a task data store (e.g., task data store 110 of FIG. 1) corresponding to a similar task as input to a machine learning algorithm or artificial intelligence. The machine learning algorithm or artificial intelligence may create, as output, a list of service providers that can perform the task with a high probability of member 118 satisfaction.

[0217]

[0228] Examples of machine learning models include algorithms such as the k - means clustering algorithm, the fuzzy c - means (FCM) algorithm, the expectation - maximization (EM) algorithm, the hierarchical clustering algorithm, the density - based spatial clustering of applications with noise (DBSCAN) algorithm, etc. Other examples of machine learning or artificial intelligence algorithms include, but are not limited to, genetic algorithms, backpropagation, reinforcement learning, decision trees, linear classification, artificial neural networks, anomaly detection, etc. More generally, machine learning or artificial intelligence methods may include regression analysis, dimensionality reduction, meta - learning, reinforcement learning, deep learning, and other such algorithms and / or methods.

[0218]

[0229] Additionally or alternatively, the service communication interface 606 may be further configured to include the following functions: (i) automatically generating new task identifiers for each of the candidate service providers 608; (ii) enabling the candidate service providers 608 to receive updates to the tasks; (iii) enabling the candidate service providers 608 to respond regarding availability using various communication methods (e.g., email, interface operations); (iv) enabling the candidate service providers 608 to access the task templates submitted by the member 118 (although some of the data is anonymized for privacy); and (v) enabling the agent 604 to monitor and track the availability of the candidate service providers 608. Additionally, to maintain timely interaction, the agent 604 may use the communication interface 606 to identify the date or time by which a response message should be received by the candidate service provider 608.

[0219] B. Process for Using the Communication Interface to Identify a Service Provider for Performing an Assigned Task

[0230] FIG. 7 shows an exemplary process 700 for using a communication interface to identify a service provider for performing an assigned task, according to at least one embodiment. For purposes of illustration, process 700 is described with reference to the components shown in FIGS. 1 - 6, although other implementations are possible. For example, the program code for the task facilitation service 102 of FIGS. 1 - 6 is executed by one or more processing devices to cause a server system (e.g., computing device 1102 or 1124 of FIG. 11) to perform one or more of the operations described herein.

[0220]

[0231] In step 702, a set of messages exchanged between a member and a proxy is received via a first communication interface. In some cases, the proxy is assigned to the member for performing tasks on behalf of the member. The member may send task-related data to the proxy assigned to the member to identify one or more tasks that can be performed for the member. For example, in one embodiment, the member can manually enter one or more tasks that the member desires to delegate for execution to the proxy. A task facilitation service (e.g., the task facilitation service 102 of FIG. 1) may provide the member with options for manual entry of tasks that can be delegated to the proxy or, in some cases, added to the member's task list via a first communication interface (e.g., the project communication interface 602 of FIG. 6).

[0221]

[0232] If the member selects an option for manual entry of a task, the task facilitation service may provide a task template via the first communication interface for the member to enter various details related to the task. The task template may include various fields that can provide, for example, the member, a name for the task, a description of the task (e.g., "I need to have the gutters cleaned before the next storm", "I want to have the painter repair and repaint the bathroom", etc.), a time frame for task execution (e.g., a specific due date, a date range, a level of urgency, etc.), a budget for task execution (e.g., no budget limit, a specific maximum amount, etc.). Various embodiments implementing the task template are further described in Sections I.C. and II.A. of the present disclosure.

[0222]

[0233] In step 704, a set of tasks that can be performed in place of the member is determined. For example, the proxy assigned to the member may obtain the completed task template and initiate an evaluation of the task to determine how best to perform the task for the member. For example, the proxy may evaluate the completed task template and generate new tasks for the member that correspond to the task relationship details given by the member in the completed task template. Further, based on the knowledge of the member's proxy (such as from interactions with the member, from the member profile, etc.), the proxy may determine whether to prompt the member for additional information that can be used to determine how best to perform the task for the member. In some cases, the set of tasks may be identified based on NLP or other artificial intelligence trained to evaluate exchanged messages or other communications from the member to identify possible tasks that may be recommended to the member. Various embodiments for determining tasks are further described in Sections I.C. and II.A. of this disclosure.

[0223]

[0234] In step 706, the set of tasks is sent to an agent (e.g., agent 604 in FIG. 6) via a first communication interface to identify a set of service providers through a second communication interface (e.g., service communication interface 606 in FIG. 6). In some cases, the agent includes an automated agent (e.g., a chatbot, a virtual assistant that utilizes artificial intelligence) configured to identify a set of service providers. In some cases, the second communication interface is separate from the first communication interface. By separating the two communication interfaces, the first communication interface can be configured to prevent a plurality of candidate service providers from accessing the set of messages exchanged between the member and the proxy.

[0224]

[0235] The second communication interface is configured to facilitate operations related to steps 708 through 714. In step 708, resource data regarding each candidate service provider of a plurality of candidate service providers can be accessed from a resource library. The resource library can serve as a repository for various information regarding candidate service providers, including their contact information, categories of tasks they perform, previous estimates for performing similar tasks, and the like. In some instances, the resource library includes a rating or score related to the satisfaction of a candidate service provider as determined by members of the task facilitation service for each candidate service provider of the plurality of candidate service providers. Additionally, the resource library can include a rating or score related to the satisfaction of each resource (e.g., retailer, restaurant, brand, product, material, etc.) as determined by members of the task facilitation service. In some instances, a search query is submitted to the resource library with one or more parameters to identify candidate service providers for performing a task. The one or more search parameters can include a task category, a location (e.g., zip code), and an estimated cost. For example, an agent can submit a query regarding candidate service providers located under the zip code "11372" for which the resource library can generate results that include such candidate service providers.

[0225]

[0236] In some embodiments, machine learning algorithms or artificial intelligence are utilized to select a plurality of candidate service providers from a resource library. For example, a machine learning model can be applied to resource data (e.g., contact information, task categories, previous estimates for performing similar tasks, etc.) in the resource library to identify candidate service providers. The machine learning model is trained using the resource data of a plurality of candidate service providers and historical data related to other service providers. When a member selects a service provider for performing a set of tasks, one or more parameters of the machine learning model can be modified based on the selection of the service provider. As a result, one or more parameters of the machine learning model can be learned to be better aligned so that subsequent candidate service providers are selected by the member.

[0226]

[0237] Examples of machine learning models include algorithms such as the k-means clustering algorithm, fuzzy c-means (FCM) algorithm, expectation maximization (EM) algorithm, hierarchical clustering algorithm, density-based spatial clustering of applications with noise (DBSCAN) algorithm, etc. Other examples of machine learning or artificial intelligence algorithms include, but are not limited to, genetic algorithms, backpropagation, reinforcement learning, decision trees, linear classification, artificial neural networks, anomaly detection, etc. More generally, machine learning or artificial intelligence methods can include regression analysis, dimensionality reduction, meta-learning, reinforcement learning, deep learning, and other such algorithms and / or methods.

[0227]

[0238] In step 710, one or more requests can be sent to each candidate service provider of the plurality of candidate service providers via a second communication interface. In some cases, the one or more requests can include the date or time by which a response message should be received by the plurality of candidate service providers.

[0228]

[0239] In some instances, the second communication interface is configured to generate one or more requests such that at least a portion of the information related to the set of tasks is excluded. As an illustrative example, the second communication interface accesses task data from each of the set of tasks. The second communication interface identifies personally identifiable information (PII) from the task data. The second communication interface excludes PII data from the task data to generate PII-protected data. The second communication interface may exclude the PII data by (i) anonymizing the PII data, (ii) encrypting the PII data, or (iii) deleting the PII data from the task data. The second communication interface generates one or more requests based on the PII-protected data.

[0229]

[0240] In step 712, response messages from one or more of the plurality of candidate service providers may be monitored using the second communication interface. Each of the response messages indicates the availability of the corresponding candidate service provider for performing the set of tasks. To facilitate monitoring of the response messages by the agent, the second communication interface (i) generates a plurality of status indicators for the plurality of candidate service providers, (ii) receives response messages from each of the one or more candidate service providers via the second communication interface, (iii) dynamically modifies the status indicators such that as response messages are received, the status indicators associated with each candidate service provider of the one or more candidate service providers visually indicate the availability of the corresponding candidate service provider for performing the set of tasks, and (iv) is further configured to present the modified status indicators of the one or more candidate service providers on the second communication interface to facilitate identification of the set of service providers.

[0230]

[0241] In step 714, based on the response message, a set of service providers from a plurality of candidate service providers can be identified. In some cases, a machine learning model is implemented and used to identify the set of service providers. For example, a machine learning model can be applied to the response message to identify the set of service providers. The machine learning model is trained using resource data of a plurality of candidate service providers and historical data related to other service providers.

[0231]

[0242] When a member selects a service provider from the set of service providers to perform a set of tasks, one or more parameters of the machine learning model can be modified based on the selection of the service provider. As a result, one or more parameters of the machine learning model can be learned to be better aligned so that subsequent sets of service providers are selected by the member. Examples of machine learning models include algorithms such as the k-means clustering algorithm, the fuzzy c-means (FCM) algorithm, the expectation maximization (EM) algorithm, the hierarchical clustering algorithm, the density-based spatial clustering of applications with noise (DBSCAN) algorithm, etc. Other examples of machine learning or artificial intelligence algorithms include, but are not limited to, genetic algorithms, backpropagation, reinforcement learning, decision trees, linear classification, artificial neural networks, anomaly detection, etc. More generally, machine learning or artificial intelligence methods can include regression analysis, dimensionality reduction, meta-learning, reinforcement learning, deep learning, and other such algorithms and / or methods.

[0232]

[0243] In some cases, the machine learning model for determining a set of service providers includes different parameters from the machine learning model for identifying a plurality of candidate service providers. The training of the machine learning models can be performed together, in which case their respective parameters are learned based on the same training dataset (e.g., response messages, historical data). Additionally or alternatively, the machine learning models can be trained separately using different training data. For example, the machine learning model for identifying candidate service provider 608 can be trained using resource data stored in a resource library, while the machine learning model for determining service provider 610 can be trained using response messages from the service provider and the user's previous selection of the service provider.

[0233]

[0244] In some embodiments, the agent determines that an additional candidate service provider may need to be selected for the task to be successfully performed. In such cases, the second communication interface can be further configured to send one or more requests to each candidate service provider of the additional candidate service providers via the second communication interface. The additional candidate service providers (e.g., service providers outside the network) are identified from a data source different from the resource library. In some cases, one or more requests are modified to include instructions for the additional candidate service providers to be registered in the resource library. The second communication interface can be further configured to monitor additional response messages from one or more candidate services of the additional candidate service providers via the second communication interface. By monitoring the availability of the additional candidate service providers, the agent can identify a set of service providers from both the plurality of candidate service providers and the additional candidate service providers.

[0234]

[0245] In step 716, a report is generated that includes a set of service providers. The agent may use the report to generate different proposals for the completion of the task, at which point the agent can send the proposals to the members through the first communication interface.

[0235]

[0246] In step 718, the agent is provided with a report to facilitate the selection of a service provider from the set of service providers for performing the set of tasks. In some cases, the agent sends a notification to the members to indicate that a proposal (including the set of service providers) has been prepared for a particular task and that the proposal is ready for review via the first communication interface. The proposal presented to the members may indicate the task for which the proposal was prepared, as well as one or more option instructions given to the members. The members can either accept or reject the proposal given by the agent. Process 700 then ends.

[0236] C. Identifying Candidate Service Providers

[0247] FIG. 8 shows an exemplary process 800 for identifying an initial list of service providers through a communication interface according to at least one embodiment. In step 802, member 803 identifies one or more tasks to be performed by a service provider. In some cases, member 803 may use a customized task template to identify information related to one or more tasks to be performed by a service provider. For example, the customized template may include categories related to the task, a description of the task, the task's related history, attachments (e.g., images, videos), member availability for site visits, a desired completion date, a budget, as well as an agreement for sharing task details and the service provider's contact information. The task template enables the task facilitation service to collect the information necessary to perform the task.

[0237]

[0248] In step 804, member 803 sends a task (e.g., a completed task template) to the proxy 805 of the task facilitation service (e.g., task facilitation service 102 in FIG. 1). For example, member 803 uploads the completed task template to the project communication interface, and at that point, the project communication interface sends the task template to proxy 805. In some cases, the project communication interface generates a notification to proxy 805 that the task is being sent by member 803.

[0238]

[0249] In step 806, proxy 805 reviews, adds, or edits the task given by member 803. In some cases, proxy 805 sends a message and interacts with member 805 about any missing information from the task details (e.g., live chat, discussion thread). Proxy 805 may be pre - authenticated to add supplementary information to the task details specified by member 803. In some cases, proxy 805 uses the project communication interface (e.g., project communication interface 602 in FIG. 6) to review, add, or edit the task given by member 803. Additionally or alternatively, proxy 805 generates another document (e.g., a service provider acceptance form) that includes the task details given by member 803.

[0239]

[0250] In step 808, proxy 805 sends a request for research by agent 807. The request may include the task details (e.g., task template) given by member 803, including additional notes and edits added by proxy 805. In some cases, the request includes the interaction data (e.g., discussion thread) between member 803 and proxy 805 regarding the task details. The project communication interface can then notify agent 807 that the request is being sent by proxy 805.

[0240]

[0251] In step 810, agent 807 accesses the resource library. The resource library can serve as a repository for various information about candidate service providers, including their contact information, the categories of tasks they perform, previous estimates for performing similar tasks, etc. In some cases, the resource library includes a rating or score related to the satisfaction of the candidate service provider as determined by members of the task facilitation service for each candidate service provider. Further, the resource library may include a rating or score related to the satisfaction of each resource (e.g., retailer, restaurant, brand, product, material, etc.) determined by members of the task facilitation service.

[0241]

[0252] In step 812, agent 807 identifies candidate service providers from the resource library. Agent 807 can query the resource library to identify candidate service providers for performing the task by entering one or more search parameters, including the task category, location (e.g., postal code), and estimated cost. For example, agent 807 can submit a query about candidate service providers located under the postal code "11372" for which the resource library can generate results that include such candidate service providers. In some cases, the resource library can suggest relevant candidates based on the task category, the location of member 803, and their respective ratings.

[0242]

[0253] In some cases, the resource library provides a review status associated with each of the candidate service providers. The review status includes (i) "New" indicating that the candidate service provider has been manually added, (ii) "Pre-approved" indicating that the candidate service provider has been manually added and is available for use, (iii) "Under review" indicating that the candidate service provider is being evaluated by the task facilitation service, (iv) "Invited" indicating that the candidate service provider is an external network service provider invited to be registered in the resource library, (v) "Pending" indicating that the external network service provider has accepted the invitation and is being evaluated by the task facilitation service, (vi) "Approved" indicating that the candidate service provider has been approved to perform tasks related to the task category, and (vii) "Not recommended" indicating that the candidate service provider should not be contacted due to their performance. In some cases, the resource library identifies candidate service providers based on a priority level associated with the corresponding review status of the candidate service providers. For example, a candidate service provider with an "Approved" status can receive a higher priority to be considered by agent 807, followed by "Pending", "Under review", etc.

[0243]

[0254] In some embodiments, the service communication interface is configured to integrate a calendaring system, in which case the calendaring system provides the availability of each candidate service provider for performing the identified task. For example, the calendaring system may indicate that a given candidate service provider has a high rating for performing the identified task and is located within the member area. However, such candidate service providers are not available to perform those tasks during the days specified in the task template. Accordingly, agent 807 may communicate with proxy 805 to determine whether contact with such candidate service providers should be initiated.

[0244]

[0255] In step 814, agent 807 sends a request for availability to the candidate service provider. For example, agent 807 may send a request for availability to service provider 809, which is one of the candidate service providers identified from the resource library. In some cases, agent 807 uses a service communication interface (e.g., service communication interface 806) that can automatically generate and send requests to candidate service providers. The service communication interface can be implemented to provide the following: (i) automatically generate a new task identifier for each candidate service provider; (ii) enable the candidate service provider to receive updates on the task; (iii) enable the candidate service provider to respond using availability via various communication methods (e.g., email, interface operation); (iv) enable the candidate service provider to access the task template submitted by member 803 (although some of the data is anonymized for privacy); and (v) enable agent 807 to monitor and track the availability of the candidate service provider. Additionally, to maintain timely interaction, agent 807 can specify the date or time by which a response message should be received by the candidate service provider.

[0245]

[0256] In step 816, agent 807 initializes a status indicator for the candidate service provider. The status indicator can be updated based on the response message from the candidate service provider. The status indicator enables agent 807 to quickly identify which of the candidate service providers has received communication, responded with availability, and capture additional information about the candidate service provider. As a result, agent 807 can collect relevant data related to the candidate service provider, and at that point, agent 807 can identify a set of service providers from the candidate service providers for performing the task identified by member 803.

[0246]

[0257] In some embodiments, agent 807 determines that additional candidate service providers may need to be selected for successful task performance. In such cases, the service communication interface can be further configured to send one or more requests to each candidate service provider of the additional candidate service providers. The additional candidate service providers (e.g., service providers outside the network) are identified from a data source different from the resource library. In some cases, one or more requests are modified to include instructions for the additional candidate service providers to be registered in the resource library. The service communication interface can be further configured to monitor additional response messages from one or more candidates of the additional candidate service providers via the service communication interface.

[0247] D. Generate a recommended service provider for performing the assigned task

[0258] Figure 9 shows an exemplary process 900 for generating a recommended service provider for performing an assigned task, according to at least one embodiment. At step 902, service provider 809 receives and reviews the identified task specified by member 803. For example, service provider 809 can review the task template completed by member 803 to determine whether it indicates the availability of performing the identified task. The task template accessed by service provider 809 can include information such as the task identifier of the identified task, a description of the task, the geographical location where the task is to be performed, the availability of member 803 to go on-site, an image, or other task information. In some cases, some information of the task template is excluded from being shown to service provider 809. For example, the member 803's specific address (e.g., street address) can be replaced with the geographical location (e.g., country) to prevent a candidate service provider from identifying personal data related to the member. In another example, the name of member 803 can be deleted.

[0248]

[0259] Additionally or alternatively, service provider 809 can request additional information from member 803 by sending one or more messages through a service communication interface (e.g., service communication interface 606 of FIG. 6). In some cases, service provider 809 uploads attachments to the service communication interface so that one or more attachments (e.g., images, estimated costs) can be reviewed by member 803. Proxy 805 and agent 807 can be notified in real time via the project communication interface about the sent messages and the attachments uploaded by service provider 809 and can receive them.

[0249]

[0260] In step 904, service provider 809 sends a response message to agent 807. The response message can include an indication as to whether the tasks identified by service provider 809 are available for execution. In this example, service provider 809 checks its availability for executing the identified tasks. In some cases, the response message includes other information, including contact information, scope of work, price estimate, and specific dates and times for performing the assigned tasks.

[0250]

[0261] In step 906, agent 807 monitors the response messages sent by the candidate service providers. To facilitate real-time monitoring of response messages by the agent, the service communication interface: (i) generates a plurality of status indicators for a plurality of candidate service providers; (ii) receives response messages from each of one or more candidate service providers via the service communication interface; (iii) dynamically modifies the status indicators such that as response messages are received, the status indicators associated with each candidate service provider of the one or more candidate service providers visually and in real-time indicate the availability of the corresponding candidate service provider for performing a set of tasks; and (iv) is further configured to present the modified status indicators of the one or more candidate service providers on the service communication interface to facilitate identification of the set of service providers. As a result, the status indicators can identify a list of contacted candidate service providers, the response status of the candidate service providers (e.g., requested, free response question pending, available for use, not available for use), and the task identifier for which the candidate service providers are being contacted. The use of the status indicators can enable agent 807 to generate a report of the recommended service providers as soon as it determines the availability of a single candidate service provider for performing the identified task. Continuing with this example, agent 807 can identify that service provider 809 is available for performing the task identified based on the corresponding status indicator.

[0251]

[0262] In step 908, agent 807 generates a report including a recommended service provider. As an illustrative example, the recommended service provider may include service provider 809 that has indicated its availability for performing the identified task. The report includes several types of information related to the service provider. As an illustrative example, FIG. 10 shows an exemplary screenshot 1000 of a presumed service provider (service provider 809 of FIGS. 8 - 9) for performing the assigned task according to at least one embodiment. As shown in FIG. 10, screenshot 1000 includes the name of service provider 1002 listed as "Oro Pro Plumbing". Screenshot 1000 also includes one or more images 1004 related to the service provider, which may include sample images of previous tasks completed by the service provider. Screenshot 1000 also includes the phone number 1006 of the service provider as well as one or more ratings 1008 related to the service provider.

[0252]

[0263] In addition, screenshot 1000 includes a description 1010 of the service provider, which includes the background information of the service provider, the scope of work related to the task, and the estimated cost for performing the task specified by the member. Screenshot 1000 also includes the availability 1012 of the service provider, which may include the date and time range for performing the task. In addition to the above, the screenshot may include miscellaneous information such as the website 1014 and address 1016 of the service provider. Additionally or alternatively, screenshot 1000 provides a data field 1018 where the agent may include additional notes regarding the service provider.

[0253]

[0264] Returning to FIG. 9, agent 807 sends the report of the recommended service provider to proxy 805 (step 910). In some cases, agent 807 indicates that the research process for identifying the service provider has been completed. Additionally or alternatively, the progress of identifying the service provider may be separately communicated to member 803.

[0254]

[0265] In step 912, proxy 805 generates a proposal that includes the recommended service provider for performing the identified task. In some cases, another list including candidate service providers contacted by agent 807 that can be accessed from the service communication interface is attached to the proposal. The contact status of the candidate service providers ensures the transparency of the task facilitation service provided to member 803. In some cases, proxy 805 may add additional notes regarding at least one of the recommended service providers. For example, proxy 805 may add a note indicating that a particular recommended service provider has performed a similar task within the past 30 days.

[0255]

[0266] In step 914, proxy 805 sends the proposal to member 803. In addition to the sending, proxy 805 may resume the conversation with member 803 through the project communication interface to respond to any additional questions or comments by member 803. In some cases, member 803 accesses the project communication interface to review the proposal. The proposal may include the contacted service providers, the recommended service providers, and a list of one or more service providers that are "in-network" providers of the task facilitation service among the recommended service providers.

[0256]

[0267] In step 916, member 803 accepts or rejects the proposal generated by proxy 805. The decision reached by member 803 can be notified to proxy 805, at which point proxy 805 can perform a different set of actions based on the decision. For example, if member 803 accepts the proposal and selects a particular service provider (e.g., service provider 809), proxy 805 can send a confirmation that service provider 809 has been selected to perform the identified tasks, as well as provide their respective contact information so that an appointment for member 803 and service provider 809 to perform the identified tasks can be scheduled. Member 803 can also agree to a service agreement with service provider 809 to perform the identified tasks. In some cases, service providers not selected are not notified and are prevented from accessing the task template submitted by member 803.

[0257] III. SYSTEM AND METHOD FOR IDENTIFYING A SERVICE PROVIDER FOR PERFORMING ASSIGNED TASKS

[0268] FIG. 11 shows a computing system architecture 1100 that includes various components in electrical communication with each other, according to some embodiments. The exemplary computing system architecture 1100 shown in FIG. 11 includes a computing device 1102 having various components that communicate with each other electrically using a connection 1106, such as a bus, according to some implementations. The exemplary computing system architecture 1100 includes a processing unit 1104 that includes a system memory 1114 that communicates electrically with various system components using the connection 1106. In some embodiments, the system memory 1114 includes read-only memory (ROM), random access memory (RAM), and other such memory technologies including, but not limited to, the memory technologies described herein. In some embodiments, the exemplary computing system architecture 1100 includes a cache 1108 of high-speed memory that is directly connected to, in very close proximity to, or integrated as part of the processor 1104. The system architecture 1100 can copy data from the memory 1114 and / or the storage device 1110 to the cache 1108 for quick access by the processor 1104. In this way, the cache 1108 can provide a performance improvement that reduces or eliminates processor latency in the processor 1104 by waiting for data. Using modules, methods, and services such as those described herein, the processor 1104 can be configured to perform various actions. In some embodiments, the cache 1108 can include multiple types of caches, such as, for example, a level 1 (L1) cache and a level 2 (L2) cache. The memory 1114 may sometimes be referred to herein as system memory or computer system memory. The memory 1114 can include elements of an operating system, one or more applications, data related to the operating system or one or more applications, or other such data related to the computing device 1102 at various times.

[0258]

[0269] Other system memories 1114 may also be available for use. The memory 1114 can include multiple different types of memory with different performance characteristics. The processor 1104 can include any general-purpose processor and one or more hardware or software services such as the service 1112 stored in the storage device 1110 configured to control the processor 1104 as well as dedicated processors, where the software instructions are incorporated into the actual processor design. The processor 1104 can be a complete self - contained computing system including multiple cores or processors, connectors (e.g., buses), memory, memory controllers, caches, etc. In some embodiments, such a self - contained computing system with multiple cores is symmetric. In some embodiments, such a self - contained computing system with multiple cores is asymmetric. In some embodiments, the processor 1104 can be a microprocessor, a microcontroller, a digital signal processor ("DSP"), or a combination of these and / or other types of processors. In some embodiments, the processor 1104 can include multiple elements such as cores, one or more registers, and one or more processing units such as an arithmetic logic unit (ALU), a floating - point unit (FPU), a graphics processing unit (GPU), a physics processing unit (PPU), a digital system processing (DSP) unit, or a combination of these and / or other such processing units.

[0259]

[0270] To enable user interaction with the computing system architecture 1100, the input device 1116 can represent any number of input mechanisms, such as a microphone for voice, a touch-sensitive screen for gestures or graphical input, a keyboard, a mouse, motion input, a pen, and other such input devices. The output device 1118 can also be one or more of several output mechanisms known to those skilled in the art, including but not limited to a monitor, a speaker, a printer, a tactile device, and other such output devices. In some cases, a multimodal system can enable a user to provide multiple types of input to communicate with the computing system architecture 1100. In some embodiments, the input device 1116 and / or the output device 1118 can be coupled to the computing device 1102 using a remote connection device, such as a communication interface, such as the network interface 1120 described herein. In such embodiments, the communication interface can control and manage the input and output received from the attached input device 1116 and / or output device 1118. As may be contemplated, there is no limitation to operating on any particular hardware configuration, and thus the basic features herein can be readily substituted with those as other hardware configurations, software configurations, or firmware configurations are developed.

[0260]

[0271] In some embodiments, the storage device 1110 can be described as non-volatile storage or non-volatile memory. Such non-volatile memory or non-volatile storage can be a hard disk or other type of computer-readable medium capable of storing data accessible by a computer, such as a magnetic cassette, a flash memory card, a solid-state memory device, a digital versatile disk, a cartridge, RAM, ROM, and hybrids thereof.

[0261]

[0272] As described above, the storage device 1110 can include hardware services and / or software services, such as a service 1112 that controls or configures the processor 1104 to perform one or more functions, including, but not limited to, the methods, processes, functions, systems, and services described herein in various embodiments. In some embodiments, the hardware service or software service can be implemented as a module. As shown in the exemplary computing system architecture 1100, the storage device 1110 can be connected to other parts of the computing device 1102 using a system connection 1106. In some embodiments, a hardware service or hardware module, such as a service 1112 that performs a function, can include software components stored in a non-transitory computer-readable medium that can execute functions such as the functions described herein with respect to the necessary hardware components, such as the processor 1104, the connection 1106, the cache 1108, the storage device 1110, the memory 1114, the input device 1116, and the output device 1118.

[0262]

[0273] The disclosed systems and services of the task facilitation service (e.g., the task facilitation service 102 described herein with respect to at least FIG. 1) can be implemented using a computing system, such as the exemplary computing system shown in FIG. 11, that uses one or more components of the exemplary computing system architecture 1100. The exemplary computing system can include a processor (e.g., a central processing unit), a memory, a non-volatile memory, and an interface device. The memory can store data and / or one or more code sets, software, scripts, etc. The components of the computer system can be coupled via a bus or through some other known or convenient device.

[0263]

[0274] In some embodiments, the processor may be configured to perform some or all of the methods and systems for generating proposals related to the task facilitation services described herein (e.g., task facilitation service 102 described herein with respect to at least FIG. 1) by executing code using a processor such as processor 1104, where the code is stored in a memory such as memory 1114 as described herein. One or more of a user device, a provider server or system, a database system, or other such device, service or system may include some or all of the components of a computing system such as the exemplary computing system shown in FIG. 11 that uses one or more components of the exemplary computing system architecture 1100 described herein. Variations of such systems may be considered to be within the scope of the present disclosure as may be contemplated.

[0264]

[0275] The present disclosure contemplates a computer system in any suitable physical form. By way of example and not limitation, the computer system can be an embedded computer system, a system-on-chip (SOC), a single-board computer system (SBC) (such as, for example, a computer-on-module (COM) or a system-on-module (SOM)), a desktop computer system, a laptop or notebook computer system, a tablet computer system, a wearable computer system or interface, an interactive kiosk, a mainframe, a mesh of computer systems, a cellular phone, a personal digital assistant (PDA), a server, or a combination of two or more of these. Where appropriate, the computer system can include one or more computer systems present in a cloud computing system that can be unitary or distributed, across multiple locations, across multiple machines, and / or include one or more cloud components in one or more networks, as described herein in relation to computing resource provider 1128. Where appropriate, one or more computer systems can perform one or more steps of one or more of the methods described or illustrated herein without substantial spatial or temporal limitation. By way of example and not limitation, one or more computer systems can perform one or more steps of one or more of the methods described or illustrated herein in real time or in batch mode. One or more computer systems can, where appropriate, perform one or more steps of one or more of the methods described or illustrated herein at different times or in different locations.

[0265]

[0276] Processor 1104 can be a conventional microprocessor such as an Intel® microprocessor, an AMD® microprocessor, a Motorola® microprocessor, or other such microprocessors. Those skilled in the art will recognize that the term "machine-readable (storage) medium" or "computer-readable (storage) medium" includes any type of device accessible by the processor.

[0266]

[0277] Memory 1114 can be coupled to processor 1104, such as a connector 1106, or a bus. As used herein, a connector such as connector 1106 or a bus is a communication system that transfers data between components within computing device 1102 and, in some embodiments, can be used to transfer data between computing devices. Connector 1106 can be a data bus, a memory bus, a system bus, or other such data transfer mechanism. Examples of such connectors include, but are not limited to, Industry Standard Architecture (ISA) bus, Extended ISA (EISA) bus, Parallel ATA Attachment (PATA) bus (e.g., Integrated Drive Electronics (IDE) or Extended IDE (EIDE) bus), or various types of Peripheral Component Interconnect (PCI) buses (e.g., PCI, PCIe, PCI-104, etc....

Claims

1. A computer-implemented method comprising: receiving, via a first communication interface, a set of messages exchanged between a member and a proxy, where the proxy is assigned to the member for performing tasks on behalf of the member; determining a set of tasks that can be performed on behalf of the member; sending, via the first communication interface, the set of tasks to an agent for identifying a set of service providers through a second communication interface, where the second communication interface is separate from the first communication interface, and where the second communication interface is configured to: access resource data regarding each candidate service provider of a plurality of candidate service providers from a resource library; send, via the second communication interface, one or more requests to each candidate service provider of the plurality of candidate service providers, where the one or more requests exclude at least a portion of information related to the set of tasks; monitor, via the second communication interface, response messages from one or more candidate service providers of the plurality of candidate service providers, where each of the response messages indicates the availability of the corresponding candidate service provider for performing the set of tasks; identifying, based on the response messages, the set of service providers from the plurality of candidate service providers; configured to facilitate operations including: generating a report including the set of service providers; providing the report to the proxy to facilitate selection of a service provider from the set of service providers for performing the set of tasks. A computer-implemented method.

2. Sending the one or more requests to each service provider comprises: accessing task data from each of the set of tasks; identifying personally identifiable information (PII) from the task data; excluding the PII data from the task data to generate PII-protected data, where excluding the PII data comprises: anonymizing the PII data. encrypting the PII data, or deleting the PII data from the task data including generating the one or more requests based on the PII protection data The computer-implemented method according to claim 1, further comprising. **Claim 3** The computer-implemented method according to claim 1 or 2, wherein the first communication interface is configured to prevent the plurality of candidate service providers from accessing the set of messages exchanged between the member and the proxy. **Claim 4** The second communication interface generates a plurality of status indicators for the plurality of candidate service providers, receives a response message from each of the one or more candidate service providers via the second communication interface, modifies the status indicator such that the status indicator associated with each candidate service provider of the one or more candidate service providers visually indicates the availability of the corresponding candidate service provider for performing the set of tasks, presents the modified status indicator of the one or more candidate service providers on the second communication interface to facilitate the identification of the set of service providers The computer-implemented method according to any one of claims 1 to 3, configured as follows. **Claim 5** The second communication interface sending the one or more requests to each candidate service provider of the additional candidate service providers via the second communication interface, wherein the additional candidate service providers are identified from a data source different from the resource library, monitoring additional response messages from one or more candidate service providers of the additional candidate service providers via the second communication interface, wherein the set of service providers is further identified based on the additional response messages, wherein the set of service providers is identified from both the plurality of candidate service providers and the additional candidate service providers The computer-implemented method according to any one of claims 1 to 4, which further facilitates the operation comprising. **Claim 6** The computer-implemented method of claim 5, wherein the second communication interface is further configured to modify the one or more requests such that the additional candidate service provider is registered in the resource library with instructions therefor. **Claim 7** identifying the set of service providers from the plurality of candidate service providers, adapting a machine learning model to the response message to identify the set of service providers, wherein the machine learning model is trained using the resource data of the plurality of candidate service providers and historical data related to other service providers, receiving, from the members, the selection of a service provider from the set of service providers for performing the set of tasks, modifying one or more parameters of the machine learning model based on the selection of the service provider from the set of service providers The computer-implemented method according to any one of claims 1 to 6, comprising: **Claim 8** A system comprising: one or more processors; a memory storing instructions thereon; The system, wherein, as a result of the instructions being executed by the one or more processors, the system performs the method according to any one of claims 1 to 7. **Claim 9** A non-transitory computer-readable storage medium storing executable instructions thereon, wherein, as a result of the executable instructions being executed by one or more processors of a computer system, the computer system performs the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Customer-driven program for selecting architect'S office

    JP2003036368A

  • Technique for providing information assistance including a concierge-type service

    US20090074168A1

  • Information processing device

    WO2019013344A1