A personalized soft service robot active service providing method
By performing hierarchical clustering and state conflict judgment on users' historical needs, demand templates are generated and multi-level proactive services are provided, which solves the problem of the lack of initiative of soft service robots, realizes personalized service recommendations when users do not make explicit requests, and improves interaction efficiency.
Patent Information
- Application Number
- CN202310510511.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-08
- Publication Date
- 2025-11-25
- Estimated Expiration
- 2043-05-08
AI Technical Summary
Existing soft service robots lack initiative and are unable to predict user needs and provide personalized services without user requests, resulting in low user interaction efficiency.
By hierarchically clustering users' historical needs, routine needs are extracted, and need templates are generated by combining user preferences. Services are provided using state conflict judgment and multi-level initiative, including four levels of proactive behavior: passive, prompt, suggestion, and intervention.
It enables personalized and proactive service recommendations based on user history and current status even without explicit user request, improving user interaction efficiency and the accuracy of information filtering.
Smart Images

Figure CN116484104B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of robotics technology and relates to a proactive service method based on historical needs, specifically a method for providing proactive services by a personalized soft service robot. Background Technology
[0002] Soft service robots are widely used in service recommendation, and personalized soft service robots proactively provide services based on user cognition, reducing user interaction with the robot and better meeting user needs. Traditional service recommendation technologies recommend items based on user or item similarity, but do not consider user individuality, while users exhibit clear preferences for services. By extracting the spatiotemporal characteristics of user needs, we can identify regular sets of user needs. Based on these needs, we can construct personalized soft service robots to help users filter information and reduce the burden of interaction.
[0003] Proactivity means that the user doesn't need to explicitly state their needs; the soft service robot proactively provides the information the user requires based on their preferences. The difference between proactive and reactive soft service robots lies in the need to consider the reason, timing, and method of proactive service. Currently, most soft service robots passively respond to user requests and lack proactivity. Summary of the Invention
[0004] To make communication between users and soft service robots smoother and more efficient, this invention provides a personalized soft service robot proactive service delivery method that can predict a user's needs at a certain moment and proactively recommend services.
[0005] The objective of this invention is achieved through the following technical solution:
[0006] A method for proactively providing personalized soft service robots includes the following steps:
[0007] Step S1: Extracting Conventional Requirements
[0008] By hierarchically clustering users' historical needs, we extract the needs that are highly concentrated in the time and location dimensions, which are called routine needs. Once routine needs are identified, we give the soft service robot initiative and combine it with user preferences to form a complete demand template, so as to proactively provide users with service information.
[0009] Step S2: State Conflict Judgment
[0010] The state conflict module calculates intent by identifying the current user state. i Based on the spatiotemporal characteristics, we can then determine whether proactive services should be provided.
[0011] Step S3: Service demand matching
[0012] For the demand template generated in step S1, find the service that can better meet the demand from the current service library as the information searched by the soft service robot is further delivered to the user, the constraint on the demand in the demand template is in the form of key-value pair, comparison is made in the existing service library, similarity of the demand template constraint and the service library description is calculated, and sorting is performed, and topk services are selected as recommended services after sorting;
[0013] Step S4, active service
[0014] Four levels of initiative are adopted: 1) passive, no initiative is taken; 2) prompt, prompting the user of the existence of information; 3) suggestion, informing the user of the information content and suggesting the user to take; 4) intervention, completely active, replacing the user to take the information and use the service, different information templates are used for different active behaviors, and the message is delivered to the user.
[0015] Compared with the prior art, the present application has the following advantages:
[0016] Without the user's request, the soft service robot predicts the current demand of the user according to the historical demand of the user, and provides services for the user with multi-level initiative in combination with the current state of the user, so as to help the user to efficiently screen information and quickly complete the demand and service matching. BRIEF DESCRIPTION OF DRAWINGS
[0017] Figure 1 It is a soft service robot model module diagram;
[0018] Figure 2 It is a whole flow chart of the method for providing active service of the personalized soft service robot;
[0019] Figure 3 It is an extraction demand neural network model diagram;
[0020] Figure 4 It is a demand template filling algorithm. DETAILED DESCRIPTION
[0021] The technical solutions of the present application will be further described below in combination with the drawings, but are not limited thereto, any modification or equivalent replacement to the technical solutions of the present application without departing from the spirit and scope of the present application shall be covered in the protection scope of the present application.
[0022] The application provides a personalized soft service robot active service providing method. The life of a user is regular. A personalized soft service robot obtains habitual demands of the user by analyzing consistency of past demands of the user, and generates a demand template in combination with a user portrait. In combination with a state of the user, the soft service robot further analyzes importance of the habitual demands to the user. Finally, services are matched in a service library, and are delivered to the user with a certain degree of initiative. The initiative degree can be divided into four degrees of no initiative, reminding, suggestion and intervention, and the initiative degree is gradually improved. Since the application combines historical demand data of the user and the current state of the user, personalized active services can be provided for the user. Figure 1 and 2 The method comprises the following steps:
[0023] Step S1, habitual demand extraction
[0024] In order to provide active services, the soft service robot first needs to understand demand characteristics of the user in a specific space-time, form a demand template of the user, and then recommend services. The historical demands of the user are first hierarchically clustered, and demands highly concentrated in the time and place dimensions are extracted, which are called habitual demands. After such concentrated demands are identified, the soft service robot can be given initiative, and a complete demand template is formed in combination with user preferences, so as to actively provide service information for the user.
[0025] The personalized demands of the user have spatio-temporal complexity, and it is difficult to directly analyze them. However, the demands of the user facing specific fields sometimes show spatio-temporal concentration. For example, the user generally has meals from 12:00 to 13:00. In order to extract such demands, the application proposes a method of clustering each type of demand and then using a self-attention mechanism to analyze their frequency and concentration degree.
[0026] The demands of the user not only have concentration in the day dimension, but also have concentration in the week and month dimensions. For example, the user buys train tickets every Saturday and Sunday, and the concentration in the day dimension is not obvious. In order to capture such demands of the user, the application proposes a hierarchical idea, and a method of neural network splicing in place-day, place-week and place-month.
[0027] The specific steps are as follows:
[0028] Step S1.1, demand division
[0029] (1) Assuming that a historical demand sequence I of a user has n types of demands, there are:
[0030] I={intend1, intend2, …, intend i …, intend n};
[0031] wherein intend i = {time, place, domain, last_time}, time is the time when the user proposes the demand, place is the place where the user proposes the demand, domain is the field to which the demand belongs, and last_time is the duration of the demand;
[0032] (2) The historical demands are divided into three levels of day, month and year, and the demands are divided into three levels of day, week and month according to the time when the demands are proposed;
[0033] (3) According to the stratification, intend i is described in place-day, place-week and place-month dimensions respectively;
[0034] Step S1.2, routine demand extraction
[0035] The centralized demand extraction is performed by using a neural network, and the specific steps are as follows:
[0036] (1) Taking place-day as the input layer a [0] ;
[0037] (2) The first layer calculates the aggregation boundary len i , wid i and the number of demands in the aggregation range of each type of intend i in the place-day dimension:
[0038] Min S = len i *wid i
[0039]
[0040] intent_count i = count(intend i in S)
[0041] Z [1] = W [1] (Intend_count, Len, Wid) + b [1]
[0042]
[0043] In the formula, len i , wid i are the length and width of the aggregation of intend i ; S is len i , wid iArea of the rectangle; intent_count i For in len i wid i enclosed in a rectangle, intend i The number of occurrences; Intend_count, Len, and Wid represent the intend_count, len, and wid data for all intents, respectively; variance(X) represents the variance of X; Z [1] This is the intermediate value calculated for this layer; A [1] This is the output value of this layer, which is also the input value of the next layer; Z represents [1] The i-th parameter;
[0044] (3) The second layer introduces a self-attention mechanism: in A [1] Add a softmax function, and specify the desired result for each type of requirement. i The variance and frequency within the rectangular region are categorized into four types: ① high and concentrated demand, ② low and dispersed demand, ③ high and dispersed demand, and ④ low and concentrated demand.
[0045]
[0046]
[0047] In the formula, This means taking X1. Upper quantile, take the value of x2 Upper quantile; These represent the four categories defined by variance and frequency, respectively; A [2] This indicates the output of this layer, which is the input of the third layer.
[0048] (4) The third layer will Of the four categories, ① is extracted as a routine requirement; ② will continue to be compared with the place-week layer; ③ will be divided into several categories for further discussion; and ④ will not participate in the following calculations.
[0049]
[0050]
[0051] in, A represents [1] The i-th parameter; h [3] (X) represents the correspondence between X and the requirements in I; A [3] This indicates the output of this layer, which is the input of the next layer.
[0052] (5) For place-week receiving place-day centralized and decentralized demand place-week repeat place-day operation, place-month receive place-week centralized and decentralized demand, so get the user's habit demand set Central_Intend={intend1, intend2, …, intend n}, and its corresponding time interval and place interval Section={Len, Wid}.
[0053] Step S1.3, demand template filling
[0054] (1) Provide user preferences for a certain service type through user and soft service robot dialogue, and define the user portrait as follows:
[0055] P={p1, p2, …, p n}
[0056] p i ={name, domain, V, E}
[0057] In the formula, P is the user preference attribute set, name is the attribute name of preference p i , domain is the service domain to which the preference p i belongs, V is the preference attribute value set of the preference p i , and E is the edge set.
[0058] (2) Fill in the user centralized demand into the demand template using the user portrait, and define the demand template as follows:
[0059]
[0060]
[0061] o k =<name, v>
[0062] In the formula, G is the user centralized demand set with time sequence, is the complete demand of the user at a certain time, o k is the service preference attribute and its value, name is the attribute name, and v is the name attribute value.
[0063] (3) Select the.domain element containing the centralized demand intend i in P, and select the largest weight corresponding to the weight as the user preference to fill in the demand template.
[0064] Step S2, state conflict judgment
[0065] Proactive service can reduce the user's burden by meeting the user's habitual needs. However, too frequent reminders of the user will hurt the user's satisfaction. Therefore, it is necessary to balance the degree of proactive service. The state conflict module identifies the current user state, calculates the spatio-temporal characteristics of intend i , and then judges whether proactive service should be provided. The specific steps are as follows:
[0066] Step S2.1, state fusion
[0067] (1) The soft service robot collects three kinds of physical information of motion, environment, location and place, and further fuses the service information of the user's service time, service type, service price and service information used by the user into the user's current state, which is called intend t , respectively the user's location and place, the user's service, and the user's action. When the user proposes a demand or uses a service, the user state sampling is performed once.
[0068] (2) The long short-term neural network is used to calculate the probability that the user can receive this service. The state fusion step is located in the first layer and the second layer, wherein:
[0069] The first layer initializes the user state data:
[0070] phy_stat t ={motion t ,envir t ,p_l t}
[0071] serv_stat t ={time t ,type t}
[0072]
[0073]
[0074] In the formula, motion t , envir t , p_l t respectively represent the user's action, environment and location at time t; phy_stat t represents the user's physical state at time t; time t , type t respectively represent the time when the user starts to use the software service and the category of the software used by the user; serv_stat t represents the user's state of using the software; represents the fused state at time t. represents the input of this layer, i.e. the lower layer input.
[0075] The second layer uses long short-term neural network to discard historical information, update current information and output hidden state information:
[0076]
[0077]
[0078]
[0079]
[0080]
[0081]
[0082] wherein, respectively represent the upper layer output at time t and time t-1; f t represents the result of discarding certain information from the user state historical data; represents the result of concatenating the new state; i t represents meaningful historical state information; represents the memory of the new state at the current time in the long-term state; o t represents the calculated hidden state; represents the output of this layer introducing a nonlinear factor, i.e. the state at the current time, which is also the input of the next layer.
[0083] Step S2.2, conflict judgment
[0084] Judge whether the current routine requirement conflicts with the current state of the user, and further aggregate the third layer:
[0085]
[0086] A [3] = sigmoid(Z [3] )
[0087] wherein, represents the input of the previous layer, i.e. the current user state; intend i represents the requirement of the user at time t; Z ([3]) represents the judgment of the conflict between the current state of the user and the current routine requirement; A [3] represents the mapping of Z [3] to the interval (0, 1) as the possibility of conflict, which is also the input of the next layer.
[0088] Step S2.3, comprehensive benefit calculation
[0089] Calculate the benefits of the initiative behavior before giving the user proactive service:
[0090]
[0091] In the formula, prob is the probability of conflict; freq is the frequency of user's habitual demand; and vari is the variance of user's habitual demand.
[0092] Step S3, service demand matching
[0093] For the demand template generated in step S1, find the service that can better meet the demand from the current service library as the information searched by the soft service robot is further delivered to the user. The demand template The constraints on the demand are in the form of key-value pairs, which are compared in the existing service library. The similarity between the demand template constraints and the service library description is calculated and sorted. After sorting, the top k services are selected as recommended services. The specific steps are as follows:
[0094] (1) The demand of the user at a certain moment is Where o k =<name, v>, the description of the service in the service library is S={s1, s2,...s n}, and the service s={domain, name, d1, d2,..., d r}, the service description d r =<name, v>;
[0095] (2) The cosine similarity is used to calculate the similarity between the vector O={o1.v, o2.v,..., o m .v} and the vector D={d1.v, d2.v,..., d r .v}, and the top 1-2 services are selected after sorting as recommended services.
[0096] Step S4, proactive service
[0097] The initiative degree is not a binary passive and initiative, but a continuous state from passive to initiative. In order to be closer to the fact and give the user a more realistic experience, the soft service robot adopts four levels of initiative degree: 1) passive, no initiative behavior; 2) prompt, prompt the user about the existence of information; 3) suggestion, inform the user of the information content and suggest the user to take; 4) intervention, completely initiative, replace the user to take the information and use the service. The behavior selection is determined by the benefits of the initiative behavior, and the higher the benefits, the higher the initiative level. Different information templates are used for different initiative behaviors to deliver messages to the user. The specific steps are as follows:
[0098] Step S4.1, behavior selection
[0099] (1) Linearly transform the reward value into a value suitable for calculation:
[0100] Z [4] =W [4] A [3] +b [4]
[0101] wherein W [4] , b [4] are parameters to be trained, A [3] is the output of the previous layer, and Z [4] is the adjusted reward value.
[0102] (2) Map Z [4] to the interval (-1, 1) using the tanh function:
[0103] A [4] =tanh(Z [4] )
[0104] wherein A [4] is Z [4] after adding a non-linear factor processing, which is mapped to the interval (-1, 1) to facilitate the subsequent calculation.
[0105] (3) When Z [4] is above the upper 0.98 quantile of tanh, the initiative of intervention can be selected; when Z [4] is between the upper 0.5 quantile and the upper 0.98 quantile of tanh, the initiative level of suggestion is selected; when Z [4] is between the upper 0.2 quantile and the upper 0.5 quantile of tanh, the initiative level of prompt is selected; when Z [4] is between the upper 0 and the upper 0.2 quantile of tanh, the lowest level of non-initiative is selected.
[0106] Step S4.2, information generation
[0107] For different initiative levels, different natural language templates are set, service information dictionaries are extracted from service descriptions of recommended services, text information is generated, and the user is displayed.
[0108] Embodiment:
[0109] In this example, the user's mobile phone carried by the user is used as a soft service robot to deliver information to the user. Actual user historical data and user portraits are used as data for testing. First, the user's demand is predicted to form the reason for the soft service robot to express initiative. Then the user's state is determined to select the appropriate opportunity to actively serve the user. Finally, the user is shown information in a certain degree of initiative service mode, and the algorithm process is as shown in Figure 2 . Specifically, the following steps are included:
[0110] Step S1: Extracting Conventional Requirements
[0111] Step S1.1, Requirements Division
[0112] Let the user's historical demand sequence be I = {intend1, intent2, ..., intent...} i …,intend n}, where n represents the number of requirements. intend i = {time, place, domain, last_time}, where time is the time the user submitted the request, place is the location where the user submitted the request, domain is the domain to which the request belongs, and last_time is the duration of the request. Historical requests are divided into three levels: day, month, and year. Requests are further divided into three levels based on the time they were submitted: day, week, and month. The day time field is a continuous 24 hours, the week time field is a continuous Monday to Sunday, and the month time field is a continuous 1st to 31st. Because intend i It exists in both spacetime and time dimensions, so according to the layering, it will be intended to... i It is described in three dimensions: place-day, place-week, and place-month. These three layers are logically related, and the data structure and even the physical structure do not need to be modified.
[0113] Step S1.2, Routine Requirements Extraction
[0114] The specific steps for using neural networks to extract concentrated demand are as follows:
[0115] (1) Using place-day as the input layer a [0] ;
[0116] (2) The first layer calculates the intent for each category in the place-day dimension. i Cluster boundary len i wid i The number of requirements within the cluster range can be calculated using the following formula:
[0117] Min S = len i *wid i
[0118]
[0119] intent_count i = count(intend) j in S)
[0120] Z[1] = W [1] (Intend_count, Len, Wid) + b [1]
[0121]
[0122] where variance(X) denotes the variance of X.
[0123] The algorithm flow is shown in Table 1:
[0124] Table 1
[0125]
[0126] (3) The second layer introduces a self-attention mechanism: in A [1] softmax function is added, and is divided into four categories: ① demand is much and concentrated, ② demand is little and not concentrated, ③ demand is much and not concentrated, and ④ demand is little and concentrated.
[0127]
[0128]
[0129] wherein denotes the upper quantile of X1; and denotes the upper quantile of X2.
[0130] (4) The third layer extracts ① as routine demand, continues to compare ② with the place-week layer, divides ③ into several categories for further discussion, and ④ does not participate in the subsequent calculation. The network structure is shown in Figure 3 .
[0131]
[0132]
[0133] wherein h [3] (X) is the corresponding relationship of X to the concentrated demand in A [1] .
[0134] (5) For place-week receiving concentrated and dispersed demand in place-day place-week repeats the operation of place-day, and place-month receives concentrated and dispersed demand in place-week, so as to obtain the routine demand set of the user Central_Intend = {intend1, intend2,..., intendn}, and its corresponding time interval and place interval Section = {Len, Wid}.
[0135] Step S1.3, requirement template filling
[0136] The user's preference for a certain service type is provided through the user and the soft service robot dialogue. The user portrait is defined as follows:
[0137] P = {p1, p2,..., p n}
[0138] p i = {name, domain, V, E}
[0139] In the formula, P is a set of user preference attributes, which is generally a service type name and a service attribute name. name is the name of p i , domain is the service domain to which the preference p i belongs. V = {v1, v2,..., v h} is a set of preference attribute values of p i , E is a set of edges, which represents a set of directed edges from the preference p i to each specific value in its preference set p i · V. E = {e1, e2,..., e h} represents that each e h has a weight w h , which reflects the user's degree of like or dislike for the preference value.
[0140] The user portrait is used to fill the concentrated requirements of the user into a complete requirement template, and the requirement template is defined as follows:
[0141]
[0142]
[0143] o k = <name, v>
[0144] In the formula, G is a set of concentrated requirements of the user with time sequence, is the complete requirement of the user at a certain time, o k is a service preference attribute and its value, name is the attribute name, and v is the name attribute value.
[0145] The.domain element containing the concentrated requirement intend i is selected in P, and the largest weight corresponding to the weight is selected as the user preference to fill the requirement template. The overall algorithm is shown in Figure 4 .
[0146] Step S2, state conflict judgment
[0147] Step S2.1, state fusion
[0148] The four kinds of physical information collected by the smartphone sensors, motion, environment, location and place, and close distance, and the service information of the user's service time, service type, and service price on the phone software are further fused to be called the user's current state, which is the user's location and place, the user's service, and the user's action. When the user proposes a demand or uses a service, a user state sampling intend is performed. t .
[0149] The long short-term neural network is used to calculate the probability that the user can receive the service, and the state fusion step is located in the first layer and the second layer.
[0150] The first layer initializes the user state data:
[0151] phy_stat t = {motion t , envir t , p_l t , c_dist t}
[0152] serv_stat t = {time t , type t , price t}
[0153]
[0154]
[0155] The second layer uses the long short-term neural network to discard historical information, update current information, and output hidden state information:
[0156]
[0157]
[0158]
[0159]
[0160]
[0161]
[0162] Step S2.2, conflict judgment
[0163] Determine whether the current routine demand conflicts with the current state of the user. Because the routine demand is extracted based on the user's historical demand, it is difficult to capture the user's frequently changing demand in the short term. For example, the user has a routine demand for lunch between 12:00 and 13:00, but the user has had this type of demand today at 11:00 and used the service. Then the user only has a certain probability of having this demand, that is, the current state has a certain probability of not conflicting with the predicted demand. Therefore, further aggregate the third layer:
[0164]
[0165] A [3] = sigmoid(Z [3] )
[0166] Step S2.3, comprehensive benefit calculation
[0167] For different frequency and variance of the user's routine demand, the benefits brought by the active behavior of the soft service robot to the user are not the same in the current state. If not distinguished, noise may be conveyed to the user, and the benefits brought by the active behavior need to be calculated before the user is actively served. The benefit calculation formula is:
[0168]
[0169] In the formula, prob is the non-conflict probability; freq is the frequency of the user's routine demand; vari is the variance of the user's routine demand. When the non-conflict probability is close to 1, the benefit increases; when the frequency is large, the benefit is large; when the variance is small, the benefit is large. The benefit is jointly affected by the non-conflict probability, the frequency, and the variance. When all three are large, the benefit is high, and vice versa.
[0170] Step S3, service demand matching
[0171] The user's demand at a certain time is where o k = <name, v>, the description of the service in the service library is a service set S = {s1, s2,... s n}, the service s = {domain, name, d1, d2,..., d r}, and the service description d r = <name, v>. The cosine similarity is used to calculate the similarity of the vector O = {o1.v, o2.v,..., o m .v} and the vector D = {d1.v, d2.v,..., d r .v}, and the top k services are selected after sorting as recommended services.
[0172] Step S4, active service
[0173] Step S4.1, behavior selection
[0174] The benefit of the active behavior is calculated as follows:
[0175] First, the benefit value is linearly transformed into a value suitable for calculation:
[0176] Z [4] = W [4] A [3] + b [4]
[0177] It is mapped to the interval (-1, 1) using the tanh function:
[0178] A [4] = tanh(Z [4] )
[0179] When Z [4] is above the upper 0.98 quantile of tanh, the initiative of intervention is selected; when Z [4] is between the upper 0.5 quantile and the upper 0.98 quantile of tanh, the initiative level of suggestion is selected; when Z [4] is between the upper 0.2 quantile and the upper 0.5 quantile of tanh, the initiative level of prompt is selected; when Z [4] is between the upper 0 and the upper 0.2 quantile of tanh, the lowest level of no initiative is selected.
[0180] Step S4.2, information generation
[0181] For different active behaviors, different natural language templates are set as shown in Table 2. The service information dictionary is extracted in the service description of the recommended service, and the text information is generated and displayed to the user.
[0182] Table 2 Different active behaviors
[0183] Proactive level Natural language template Not proactive \ Prompt Prompt user to discover X service Suggest Suggest user to take X service + service description Intervene Help user to schedule X service, book X service
Claims
1. A personalized soft service robot active service providing method, characterized by The method comprises the following steps: Step S1, routine demand extraction The user history demand is hierarchically clustered, and the demand highly concentrated in the time and place dimensions is extracted as a routine demand. When the routine demand is identified, the soft service robot is given initiative, a complete demand template is formed in combination with the user preference, and the information of the service provided for the user is actively provided; Step S2, state conflict judgment The state conflict module calculates by identifying the current user state. Based on the spatiotemporal characteristics, the decision on whether to provide proactive services is made, and the specific steps are as follows: Step S2.1, state fusion The four physical information of action, environment, location and place, and close distance, and the service information of service time, service type, and service price are further fused to be called the current state of the user, which is the location and place of the user, the service used by the user, and the action of the user, and when the user proposes a demand or uses a service, the state of the user is sampled once The probability that the user can currently receive the service is calculated by using a long short-term neural network, and the state fusion step is located in the first layer and the second layer. The first layer initializes the user state data: In the formula, respectively represent the user's action, environment, location and place, and close distance at time t; represent the user's physical state at time t; respectively represent the time when the user starts to use the software service, the category of using the software, and the price of using the software; the state of the user using the software; represent the fused state at time t; represent the input of this layer, i.e., the input of the lower layer; The second layer uses a long short-term neural network to discard historical information, update current information, and output hidden state information: ; In the formula, respectively represent the upper layer output at time t and time t-1; represents the result of discarding certain information from the user state history data; represents the result of splicing the new state; represents meaningful historical state information; represents the memory of the new state at the current time in the long-term state; represents the calculated hidden state; represents the output of the layer introducing a nonlinear factor, i.e., the state at the current time, which is also the input of the next layer; Step S2.2, conflict judgment It is judged whether the current routine demand conflicts with the current state of the user, and the third layer is further aggregated: In the formula, This represents the input from the previous layer, i.e., the current user state; This represents the user's needs at time t; This indicates a judgment that there is a conflict between the user's current state and their current routine requirements; Indicates will Mapping to the (0,1) interval is considered as a possibility of conflict and is also the input to the next layer; Step S2.3, comprehensive benefit calculation The benefit calculation formula is: wherein is the probability of no conflict; is the frequency of the user's habitual demand; is the variance of the user's habitual demand; Step S3, service demand matching For the demand template generated in step S1, find the service that can better meet the demand from the current service library, as the information searched by the soft service robot is further transmitted to the user. The constraints in the demand template are in the form of key-value pairs, which are compared in the existing service library, the similarity between the demand template constraints and the service library description is calculated, and sorted, and the top k services are selected as recommended services after sorting; Step S4, active service Adopt four levels of initiative: 1) passive, do not take the initiative; 2) prompt, prompt the user of the existence of information; 3) suggest, inform the user of the information content and suggest the user to take; 4) intervention, completely active, replace the user to take the information and use the service, different information templates are used for different active behaviors, and the message is transmitted to the user. 2.The personalized soft-service robot active service providing method of claim 1, characterized in that The specific steps of step S1 are as follows: Step S1.1, demand division (1) Set user historical demand sequence There are Class demand, then: ; wherein, , is the time when the user raises the demand, is the location where the user raises the demand, is the field to which the demand belongs, is the duration of the demand; (2) The historical demand is divided into day, week, and month levels, and the demand is divided into day, week, and month levels according to the time of the demand; (3) According to the stratification, the Place-day, place-week, and place-month are described respectively. Step S1.2, routine demand extraction The concentrated demand is extracted using a neural network, and the specific steps are as follows: (1) place-day as input layer ; (2) The first layer calculates the aggregate boundary , , and the demand number in the aggregate range in the place-day dimension for each category wherein is the aggregated length-width; is enclosing a rectangular area; is in the enclosing rectangle occurrence times; , respectively represent all intend , len, wid data; represent variance; is the intermediate value calculated for this layer; is the output value of this layer, that is, the input value of the lower layer; represent the i-th parameter; (3) The second layer introduces self-attention mechanism: in Join the softmax function, according to the demand of each class The variance and frequency in the rectangular area are divided into four categories: ① demand is more and concentrated, ② demand is less and not concentrated, ③ demand is more and not concentrated, and ④ demand is less and concentrated. wherein denotes the upper quantile, taken from , , , , the upper quantile, taken from , , , , the upper quantile; denote the four classes divided by variance and frequency, respectively; denotes the output of this layer, i.e. the input of the third layer; (4) The third layer will extract 1 as a routine demand, continue comparing 2 with the place-week layer, divide 3 into several categories for further discussion, and 4 will not participate in the following calculation: wherein, represents the i-th parameter of the layer; the corresponding relationship required in X to the corresponding relationship required in X to represents the output of the layer, i.e. the input of the next layer; (5) For place-week to receive place-day centralized and decentralized demand , place-week repeat place-day operation, place-month to receive place-week centralized and decentralized demand, so get the user's habitual demand set , and its corresponding time interval and place interval Section={Len, Wid}; Step S1.3, demand template filling (1) Provide the user's preference for a certain service type through the user and the soft service robot dialogue; (2) Fill in the user's concentrated demand into a complete demand template using the user portrait; (3) Selecting the demand template with the largest weight corresponding to the user preference attribute set containing the concentrated demand element, and selecting the weight corresponding to the user preference attribute set with the largest weight to fill the demand template. 3.The personalized soft-service robot active service providing method of claim 2, characterized in that The user portrait is defined as follows: In the formula, is a set of user preference attributes, is attribute name, is a preference service domain to which the user belongs, is a set of preference attribute values, is an edge set. 4.The personalized soft-service robot active service providing method of claim 2, characterized in that The demand template is defined as follows: wherein, is a time-ordered set of demands for a user set, is the complete demand for a user at a certain time, is a service preference attribute and its value, is an attribute name, is an attribute value. 5.The personalized soft-service robot active service providing method of claim 1, wherein The specific steps of step S3 are as follows: (1) the user's demand at a certain time is wherein the description of the services in the service library is a service set the service the service description ; (2) Cosine similarity is used to calculate the similarity of vectors and vectors are sorted and the top 1-2 services are selected as recommended services. 6.The personalized soft-service robot active service providing method of claim 1, wherein The specific steps of step S4 are as follows: Step S4.1, behavior selection (1) Linearly transform the benefit value into a value suitable for calculation: wherein, , is a parameter to be trained, is the output of the previous layer, is the adjusted reward value; (2) Map to (-1, 1) interval using tanh function: y = tanh(x) wherein, is the processed for adding non-linear factor mapped to the interval (-1, 1); (3) when above the upper 0.98 quantile of tanh, select the proactive level of intervention; when between the upper 0.5 quantile and the upper 0.98 quantile of tanh, select the proactive level of suggestion; when between the upper 0.2 quantile and the upper 0.5 quantile of tanh, select the proactive level of prompt; when between 0 and the upper 0.2 quantile of tanh, select the lowest level of non-proactive Step S4.2, information generation For different initiative degrees, different natural language templates are set, service information dictionaries are extracted from the service description of the recommended service, text information is generated, and the user is displayed.
Citation Information
Patent Citations
Certification for flexible resource demand applications
CN104303168A
Embedded software demand analysis method
CN112783475A