Sign In to Follow Application
View All Documents & Correspondence

Implicit Signal Based Virtual Assistant System For Automatic Question Generation, Task Prediction And Scheduling

Abstract: “IMPLICIT SIGNAL BASED VIRTUAL ASSISTANT SYSTEM FOR AUTOMATIC QUESTION GENERATION, TASK PREDICTION AND SCHEDULING” Methods and system for providing assistance to the user. The method includes capturing one or more user activities, generating one or more questions by analysing the user activities. The one or more questions are indicative of attributes of assistance required to the user. The method further includes determining one or more tasks based on the generated questions, prioritizing one or more determined tasks, and executing the tasks based on the priority thereby providing assistance to the user. [Fig. 3]

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
28 December 2018
Publication Number
27/2020
Publication Type
INA
Invention Field
ELECTRONICS
Status
Email
ipo@knspartners.com
Parent Application
Patent Number
Legal Status
Grant Date
2024-02-28
Renewal Date

Applicants

ZENSAR TECHNOLOGIES LIMITED
ZENSAR KNOWLEDGE PARK, PLOT # 4, MIDC, KHARADI, OFF NAGAR ROAD, PUNE-411014, MAHARASHTRA, INDIA

Inventors

1. KULKARNI, Sumant
T-307, Nammane Apartments, Judicial Layout Main Road, Talaghattapura, Bangalore -560062, Karnataka, India
2. NAMBIAR, Ullas Balan
1086 Prestige Kensington Gardens, Bangalore -560013, Karnataka, India

Specification

FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION (See section 10, rule 13)
“IMPLICIT SIGNAL BASED VIRTUAL ASSISTANT SYSTEM FOR AUTOMATIC QUESTION GENERATION, TASK PREDICTION AND
SCHEDULING ”
ZENSAR TECHNOLOGIES LIMITED of Plot#4 Zensar Knowledge Park, MIDC, Kharadi, Off Nagar Road, Pune, Maharashtra – 411014, India
The following specification particularly describes the invention and the manner
in which it is to be performed.

TECHNICAL FIELD
[0001] The present disclosure relates to the field of virtual assistant system. More particularly, but not exclusively, the present disclosure describes a virtual digital assistant system with implicit communication comprehension capability and a method thereof.
BACKGROUND
[0002] Now a days, a virtual assistant or a personal assistant is capable of providing assistance to a user through voice-based query or command and through a natural-language user interface. The virtual assistant may either provide a response to the query or perform a task based on a command from the user. The examples of exiting virtual assistants (VAs) are Alexa, Google Assistant, Siri or Cortana. Such a Virtual Assistant interprets a user’s input by drawing information from a number of sources such as the internet, a knowledge base, and the like.
[0003] A user input can either be implicit or explicit. Implicit communication focuses on the ambiguous areas of gestures, vocal tones and actions, while explicit communication deals with what a person writes or says directly. However, the communication with VAs is limited to explicit as the current VAs understand only the explicit commands given to them, and hence miss-out on a lot of information a user may want to communicate implicitly. This in turn makes the VAs less useful in situations where the user’s communication is more implicit than explicit.
[0004] Therefore, there exists a need in the art of an intelligent virtual assistant that augments the explicit information with implicit information to understand the intent of the communication.
SUMMARY
[0005] The present disclosure overcomes one or more shortcomings of the prior art and provides additional advantages discussed throughout the present disclosure. Additional features and advantages are realized through the techniques of the

present disclosure. Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed disclosure.
[0006] In one non-limiting embodiment of the present disclosure, a method for providing assistance to a user is disclosed. The method comprises a step of capturing one or more user activities. The method further comprises a step of generating one or more questions by analysing the one or more user activities, wherein the one or more questions are indicative of attributes of assistance required to the user. The method furthermore comprises a step of determining one or more tasks based on the one or more generated questions and prioritizing the one or more determined tasks. The method furthermore comprises a step of executing the one or more determined tasks based on the determined task priorities for providing assistance to the user.
[0007] In still non-limiting embodiment of the present disclosure, the step of capturing the at least one user activity comprises capturing at least one of voice of the user, one or more gestures of the user, one or more movements of the user, location of the user, browsing history, call information, posture of the user, body language of the user, one or more facial expressions of the user.
[0008] In yet another non-limiting embodiment of the present disclosure, the step of analysing the voice of the user comprises: determining one or more context parameters of the voice of the user, wherein the one or more context parameters comprises frequency, amplitude, type of voice of the user, and one or more keywords, and mapping the one or more context parameters with one or more pre-defined parameters to generate the one or more questions.
[0009] In yet another non-limiting embodiment of the present disclosure, the step of analysing the one or more gestures of the user comprises mapping the one or more captured gestures with one or more pre-defined gestures to generate the one or more questions. Further, the step of analysing the captured movement of the users comprises mapping the captured movement with one or more pre-defined

movements to generate the one or more questions. Furthermore, the step of analysing the one or more captured facial expressions of the user comprises mapping the one or more captured facial expressions with one or more pre-defined facial expression to generate the one or more questions.
[0010] In yet another non-limiting embodiment of the present disclosure, the step of analysing the postures of the user comprises determining duration of the one or more postures and generating the one or more questions related to at least one task based on the duration of the one or more postures.
[0011] In yet another non-limiting embodiment of the present disclosure, the step of analysing the at least one user activity further comprises generating a request for information from the user to generate the one or more questions after a predefined time period.
[0012] In yet another non-limiting embodiment of the present disclosure, a system for providing assistance to the user is disclosed. The system comprises at least one activity capturing unit configured to capture one or more user activities. The system further comprises at least one processing unit operatively coupled to the at least one activity capturing unit. The at least one processing unit comprises an analysing unit configured to analyse the one or more user activities for generating one or more questions, wherein the one or more questions are indicative of attributes of assistance required to the user, a determination unit configured to determine determining one or more tasks based on the generated questions, a prioritization unit configured to prioritize the one or more determined tasks, and an execution unit configured to execute the one or more determined tasks based on the determined task priorities for providing assistance to the user. The system further comprise at least one memory unit configured to store the one or more user activities, the one or more questions, the one or more tasks, and the determined task priorities.

[0013] In still non-limiting embodiment of the present disclosure, the at least one activity capturing unit is configured to capture the one or more user activities by capturing at least one of voice of the user, one or more gestures of the user, one or more movements of the user, location of the user, browsing history, call information, posture of the user, body language of the user, one or more facial expressions of the user.
[0014] In yet another non-limiting embodiment of the present disclosure, wherein the analysing unit is configured to analyse the voice of the user by: determining one or more context parameters of the voice of the user, wherein the one or more context parameters comprises at least one of frequency, amplitude, type of voice of the user, and one or more keywords; and mapping the one or more context parameters with one or more pre-defined parameters to determine the generate the one or more questions.
[0015] In yet another non-limiting embodiment of the present disclosure, the analysing unit is configured to: analyse the one or more gestures of the user by mapping the one or more captured gestures with one or more pre-defined gestures to generate the one or more questions, analyse the captured movement of the users by mapping the captured movement with one or more pre-defined movements to generate the one or more questions, and analyse the one or more captured facial expressions of the user by mapping the one or more captured facial expressions with one or more pre-defined facial expression to generate the one or more questions.
[0016] In yet another non-limiting embodiment of the present disclosure, the analysing unit is configured to analyse the postures of the user by determining duration of the one or more postures and generating the one or more questions based on the duration of the one or more postures.
[0017] In yet another non-limiting embodiment of the present disclosure, wherein the analysing unit is configured to generate a request for information from the user

to determine the one or more questions indicative of the attributes of the at least one task after a predefined time period.
[0018] In yet another non-limiting embodiment of the present disclosure, the at least one activity capturing unit comprises: at least one audio sensor for capturing voice of the user, wherein the at least one audio sensor comprises one or more microphones, at least one video data capturing unit for capturing the posture of the user, body language of the user, and facial expression of the user, wherein the at least one video data capturing unit comprises at least one of an optical camera, a stereo camera and an infrared camera.
[0019] In yet another non-limiting embodiment of the present disclosure, the at least one activity capturing unit comprises at least one motion detection unit for capturing the movement of the user, wherein the at least one motion detection unit comprises one or more motion sensor and at least one location detection unit for capturing location of the user, wherein the at least one location detection unit comprises one or more location detectors. The at least one activity capturing unit further comprises at least one processor for capturing the browsing history and call information, and at least one gesture detection unit for capturing the one or more gestures, wherein the at least one gesture detection unit comprises one or more gesture detecting sensors.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS [0020] The features, nature, and advantages of the present disclosure will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference characters identify correspondingly throughout. Some embodiments of system and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:

[0021] Fig. 1 shows a block diagram illustrating a virtual assistant (VA) system for providing assistance to a user in accordance with an embodiment of the present disclosure.
[0022] Fig. 2 shows a block diagram illustrating a virtual assistant (VA) system for providing assistance to a user in accordance with an embodiment of the present disclosure.
[0023] Fig. 3 shows a flowchart of an exemplary method for providing assistance to a user in accordance with an embodiment of the present disclosure.
[0024] It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DETAILED DESCRIPTION
[0025] In the present document, the word “exemplary” is used herein to mean “serving as an example, instance, or illustration”. Any embodiment or implementation of the present subject-matter described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
[0026] While the disclosure is susceptible to various modifications and alternative forms, specific embodiments thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the particular forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternatives falling within the scope of the disclosure.

[0027] The terms “comprises”, “comprising”, “include(s)”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, system or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or system or method. In other words, one or more elements in a system or apparatus proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or apparatus.
[0028] In the following detailed description of the embodiments of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.
[0029] The present disclosure will be described herein below with reference to the accompanying drawings. In the following description, well known functions or constructions are not described in detail since they would obscure the description with unnecessary detail.
[0030] The present disclosure relates to a virtual assistance (VA) system that may identify assistance required by a user based on implicit communication and thereafter may provide the required assistance to the user. The disclosure relates to the virtual assistance system that processes the implicit communication for automatic question generation, task prediction and scheduling for providing assistance to the user.

[0031] Referring to figure 1, an exemplary system 100 is disclosed for providing assistance to a user. The system 100 may include various elements such as a processing unit 102, a database unit 104, a capturing unit 106, an input interface 108, an output interface 110. The processing unit 102, database unit 104 and capturing unit 106 may communicate with each other over wired or wireless link. The system 100 may receive one or more inputs from the input interface 108 and provide one or more outputs via the output interface 110.
[0032] According to a non-limiting exemplary embodiment of the present disclosure, the database unit 104 may store information associated with the one or more user activities. The one or more user activities may be used by the VA system 100 to determine whether assistance should be provided to the user. The one or more user activities may represent implicit communication and/or explicit communication to the VA system 100. In an exemplary embodiment, the one or more user activities may comprises one or more of the following, but not limited to: voice of the user, one or more movements of the user, posture of the user, body language of the user, one or more facial expressions of the user, location of the user, browsing history, call information, one or more gestures of the user, demographic details etc. The information stored in the database unit 104 may include data related to one or more user activities, but not limited to: frequency of the voice, amplitude of the voice, keywords of the voice, type of the voice of the user, one or more movements of the user, one or more postures of the user, one or more body languages of the user, one or more facial expressions of the user, one or more locations of the user, one or more gestures of the user, browsing history, call information, etc. The one or more user activities may be stored in the database unit 104 along with one or more questions indicative of attributes of the assistance required to the user, prioritization criterion and execution rules for the one or more tasks.
[0033] Various non limiting examples of providing user assistance in accordance to an aspect of the present invention are described here below.

[0034] Considering a user requiring assistance on medical conditions. The database unit 104 may store information associated with the user activity that relates to one or more medical conditions. The user may require medical assistance, wherein the medical assistance may be required from ordinary ailment like cough, cold, headache…etc to life threatening situation like heart attack, accident, cancer, etc. In any scenario requiring medical assistance, one or more user activities may be captured by the at least one activity capturing unit 106 and may be stored in the database unit 104, for instance, capturing pain or discomfort or stress…etc of a person through one or more user activities like facial expressions, body language, posture, duration of the posture, one or more parameters of voice of the user such as frequency, amplitude, and type of the voice, one or more movements of the user, etc. The posture of user may be defined as the user has kept his hands on his head for a certain time duration, which may signify that the user has the headache or the values of the frequency and amplitude while screaming or crying may be stored in the database unit 104. In addition, capturing health vitals of the person (such as: Blood Pressure, Sugar level, pulse) can be determined using suitable devices such as smart watch, health apps...etc and monitored on regular intervals. Further, one or more keyword of the voice of the user such as, but not limited to, “I”, “having” and “headache” may be stored in association with the scenario in the database unit 104.
[0035] In the same embodiment, the one or more questions indicative of attributes of the assistance required to the user may be stored in the database unit 104 as, but not limited to, “Is the user suffering from any health issues” and “does the user require medical assistance”. The one or more tasks based on the one or more questions may be, but not limited to, “determining the type of medical assistance required”, “determining the nearest medical assistance center”, “determining the contact number of the nearest medical assistance center”, and “calling for the medical assistance by dialling the determined number” and/or the past modification prescribed or treatment undertaken for such ailment.
[0036] The execution priorities of the one or more tasks may be stored as, but not limited to, “determining the type of medical assistance required” has highest

execution priority, “determining nearest medical assistance center” has lower execution priority than the previous task, “determining the contact number of the nearest medical assistance center” has lower execution priority than the previous task, and the task “calling for the medical assistance center” has lowest execution priority. All the above-mentioned information may be stored in the database unit 104 in association with the respective scenario i.e. headache. In this manner, one or more of the above-mentioned information about the different scenarios may be stored in the database unit 104 in association with the respective scenarios depending on the different types of scenarios.
[0037] Considering another example of two people having conversation. The database unit 104 may store information associated with scenario that the user having conversation either over a call or VC or in person. For example, the user may be having the conversation about movie plan over the weekend. In such scenario, one or more user activities may be captured by the at least one activity capturing unit 106 and may be stored in the database unit 104. The one or more user activities may be one or more of the following, but not limited to, facial expressions of the user, one or more parameters of voice of the user such as frequency, amplitude, type of the voice, and keywords of the voice, one or more movements of the user, etc. The values of the frequency and amplitude may also be stored in the database unit 104 along with the scenario. Further, one or more keyword of the voice of the user such as, but limited to, “Movie”, “weekend” “genre of movie”, “name of movie” and “number of people” may be stored in association with the scenario in the database unit 104.
[0038] In the same example, the one or more questions may be stored in the database unit 104 as, but not limited to, “does user want to watch movie”, “what is name of movie”, “what is genre of movie”, “which are the nearby cinemas” “what is price of tickets” and “is tickets available in the cinemas”. The one or more tasks based on the one or more questions may be, but not limited to, “determining the nearby cinemas”, “determining the availability of tickets”, “determining the price

of the tickets”, and “providing the availability and price details to the user”. Further, the execution priorities of the one or more tasks may be stored as, “determining the nearby cinemas” has highest execution priority, “determining the availability of tickets” has lower execution priority then previous task, “determining the price of the tickets” has lower execution priority than the previous task, and “providing the availability and price details to the user” has the lowest execution priority. All the above-mentioned information may be stored in the database unit 104 in association with the respective scenario i.e. conversation about the movie. In this manner, one or more of the above-mentioned information about the different scenarios may be stored in the database unit 104 in association with the scenarios depending on the different types of scenarios as described above.
[0039] In yet another example, the user assistance system can understand the assistance required by the user based on browsing history. The database unit 104 may store information associated with a scenario of tapping browsing history. The user may search for a movie or buying of any other stuff or may be looking into some website for any information required on the device. In such scenario, one or more user activities may be captured by the at least one activity capturing unit 106 and may be stored in the database unit 104. The one or more user activities may be, but not limited to, internet browsing. The one or more questions indicative may be stored in the database unit 104 as, but not limited to, “is user looking for a movie”, “what is name of searched movie”, “what is genre of the searched movie”, “which are the nearest cinemas” “what is price of tickets” and “is tickets available in the cinemas”.
[0040] The one or more tasks based on the one or more questions may be “determining the nearby cinemas”, “determining the availability of tickets”, “determining the price of the tickets”, and “providing the availability and price details to the user”. Further, the execution priorities of the one or more tasks may be stored as, but not limited to, the task of “determining the nearby cinemas” has highest execution priority, “determining the availability of the tickets” has lower execution priority than the previous task, “determining the price of the tickets” has

lower execution priority than the previous task , and “providing the availability and price details to the user” has lowest execution priority. All the above-mentioned information may be stored in the database unit 104 in association with the respective scenario i.e. tapping of browsing history of the user. In this manner, one or more of the above-mentioned information about the different scenarios may be stored in the database unit 104 in association with the respective scenarios depending on the different types of scenarios.
[0041] In another example user assistance can be provided based on location. The database unit 104 may store information associated with a scenario of the user moving from one location to another location. For example, the user is at his office in the evening hours and may be about to leave the office. In such scenario, one or more user activities may be captured by the at least one activity capturing unit 106 and may be stored in the database unit 104. The one or more user activities may be one or more of the following, but not limited to: one or more movements of the user and location of the user. The one or more movements may be, but not limited to, packing bags, switching off lights, and logging off/shutting down the devices such as desktop, laptop, and monitors, etc. The one or more questions may be stored in the database unit 104 as, but not limited to, “what is the user current location”, “is user at office”, and “is the cab already booked”.
[0042] In the above scenario, the one or more tasks based on the one or more questions may be determined such as, but not limited to: “determining the user current location”, “determining whether user is leaving the office”, “determining whether cab is booked or not”, and “booking a cab for the user if cab is not already booked”. Further, the execution priorities of the one or more tasks may be defined as “determining the user current location” has highest execution priority, “determining whether that user is leaving the office” has lower execution priority than the previous task, “determining whether cab is booked or not” has lower execution priority than the previous task, and “booking a cab for the user if the cab is not already booked” has lowest execution priority. All the above-mentioned

information may be stored in the database unit 104 in association with the respective scenario i.e. moving from one location to another location. In an exemplary embodiment, the user may receive a request for the destination location and the user may provide destination location for booking the cab. In this manner, one or more of the above-mentioned information about the different scenarios may be stored in the database unit 104 in association with the respective scenarios depending on the different types of scenarios.
[0043] The processing unit 102 may comprise an analysing unit 112, a determination unit 114, a prioritization unit 116, and an execution unit 118. Each of the analysing unit 112, determination unit 114, prioritization unit 116, and execution unit 118 may comprise one or more processors and may communicate with each other over wired or wireless link. The processing unit 102 of the system 100 may be trained for various scenarios, as described above, to provide assistance to the user based the one or more user activities. The database unit 104 of the system 100 may store all the training data, rules for interpretation of the one or more user activities, and execution rules for performing one or more tasks for providing assistance to the user.
[0044] The capturing unit 106 may capture one or more user activities. In an exemplary embodiment, the one or more user activities may comprises one or more of the following, but not limited to: voice of the user, one or more movements of the user, posture of the user, body language of the user, one or more facial expressions of the user, location of the user, browsing history, call information, one or more gestures of the user, etc. The capturing unit 106 may capture one or more user activities utilizing one or more of the following, but not limited to: at least one audio sensor such as microphone, at least one video data capturing unit such as an optical camera, a stereo camera and an infrared camera etc., at least one motion detection unit, at least one location detection unit such as location detectors, at least one processor for capturing the browsing history and call information, at least one gesture detection unit.

[0045] For example, the at least one audio sensor for capturing voice of the user may comprises one or more microphones. The at least one video data capturing unit for capturing the posture of the user, body language of the user, and facial expression of the user may comprise at least one of an optical camera, a stereo camera and an infrared camera. The at least one motion detection unit for capturing the movement of the user may comprises one or more motion sensor. The at least one location detection unit for capturing location of the user may comprises one or more location detectors. The at least one processor may be utilized for capturing the browsing history and call information of the user. The at least one gesture detection unit for capturing the one or more gestures may comprise one or more gesture detecting sensors.
[0046] The analysing unit 112 of the processing unit 102 may analyse the one or more captured user activities to determine one or more questions. In an exemplary embodiment, the analysing unit 112 may analyse the voice of the user to determine one or more context parameters of the voice of the user. The one or more context parameters may comprise at least one of following, but not limited to: frequency, amplitude, type of voice of the user, and one or more keywords. Further, the analysing unit 112 may map the one or more context parameters with one or more pre-defined parameters in the database unit 104 to determine the one or more questions.
[0047] In a further non-limiting exemplary embodiment, the analysing unit 112 may analyse the one or more gestures of the user by mapping the one or more captured gestures with one or more pre-defined gestures in the database unit 104 to determine the one or more questions. The analysing unit 112 may analyse the captured movement of the users by mapping the captured movement with one or more pre-defined movements in the database unit 104 to determine the one or more questions. Further, the analysing unit 112 may analyse the one or more captured facial expressions of the user by mapping the one or more captured facial expressions in the database unit 104 with one or more pre-defined facial expression to determine the one or more questions.

[0048] In a further non-limiting exemplary embodiment, the analysing unit 112 may analyse the postures of the user to determine duration of the one or more postures. Further, the analysing unit 112 may determine the one or more questions based on the duration of the one or more postures.
[0049] The determination unit 114 may determine one or more tasks based on one or more generated questions. The prioritization unit 116 may prioritize the one or more determined tasks. Further, the execution unit 118 may execute the one or more determined tasks based on the determined task priorities for providing assistance to the user.
[0050] In a further non-limiting exemplary embodiment, if the analysing unit 112 of the system 100 is unable not determine the one or more questions by analysing the one or more user activities, the analysing unit 112 may generate a request for information from the user to determine the one or more questions, after a predefined time period. The time period may be defined by the user. Based on the input provided by the user in response to the request for information, the system 100 may be further trained. Thus, the system 100 is continuously trained and the database unit 104 is simultaneously updated to store the updated information.
[0051] For explaining the embodiments defined in paragraphs [0043]- [0050], let us consider a scenario where the user is having a conversation with his friend and says that he wants to buy new pair of shoes. The activity capturing unit 106 may capture the voice of the user. The analysing unit 112 may analyse the voice to determine one or more key words as the context parameter. The one or more determined key words may be following: “buy” and “shoes”. The analysing unit 112 may determine one or more questions such as “does user want to buy the shoes”, “what is the size of the user’s shoe”, “what is user’s colour preference”, “which are the nearby stores”. Further, the determination unit 114 may determine one or more tasks based on the one or more determined questions. The one or more tasks may be determined as “determining the size of user’s shoe”, “determining the

colour preference”, “locating the nearby the stores”. Further, the one or more tasks may be prioritized according to criticality and dependency of the tasks. Furthermore, the execution unit 118 may execute the one or more tasks to provide the assistance to the user for buying the shoes.
[0052] In further non-limiting exemplary embodiment, lets us consider a scenario, where the user is having backpain and is also having a conversation with his friend and says that he wants to buy new pair of shoes. In this scenario, the capturing unit 106 may capture voice, body language, posture and duration of the posture, and facial expressions of the user. Further, the analysing unit 112 may determine frequency, amplitude, and keywords of the captured voice. Further, the analysing unit 112 may compare the one or more captured information with one or more predefined information such as pre-defined body language, posture, duration of the posture, facial expression, frequency of the voice, amplitude of the voice and keywords of the voice stored in the database 104.
[0053] Based on the captured activities, the analysing unit 112 may determine one or more questions such as “does user required medical assistance”, “what kind of the medical assistance is required”, “what are the nearby medical assistance centres” “which is nearest medical assistance center” and “what is the number of the nearest medical assistance center” related to backpain and may determine one or more questions such as “does user want to buy the shoes”, “what is the size of the user’s shoe”, “what is user’s colour preference”, and “where are the nearby stores” related to the purchase of the shoes. Further, the determination unit 114 may determine one or more tasks based on the one or more questions. The one or more determined tasks based on the one or more questions related to back pain may be “determining the type of medical assistance required”, “determining the nearest medical assistance center”, “determining the number of the nearest medical assistance center”, and “calling for the medical assistance by dialling the determined number”. The one or more determined tasks based on the one or more questions related to the purchase of shoes may be “determining the size of user’s

shoe”, “determining the colour preference”, “locating the nearby the stores” for buying the pair of shoes.
[0054] Further, the one or more tasks may be prioritized by the prioritization unit 116, according to criticality and dependency of the tasks. In this scenario, the one or more determined tasks related to the backpain are given higher priorities than the one or more determined tasks related to purchase of the shoes. According to an exemplary embodiment, priorities for the one or more tasks may be determined based on one or more of the following, but not limited to, type of the one or more tasks, scenario associated with the one or more tasks, timing information of the one or more tasks, criticality of the one or more tasks, etc. Furthermore, the execution unit 118 may execute the one or more tasks based on the priorities to provide the assistance to the user.
[0055] According to another embodiment of the present application, functionality and operations of the various entities of the processing unit 102 of system 100 as described in the fig. 1 may be performed by a processing unit 202 of system 200 as illustrated in fig. 2. The processing unit 202 may be operationally coupled to a memory 204 of the system 200. The processing unit 202 may be communicatively coupled with input interface 208 and output interface 210. The processing unit 202 may be communicatively coupled with activity capturing unit 206 through the input interface 208. The processing unit 202 may be communicate with the activity capturing unit 206 through wireless communication or wired communication. The activity capturing unit 206 may have functionality and operations similar to the functionality and operations of the activity capturing unit 206 of system 100.
[0056] . Fig. 3 shows a flowchart of an exemplary method 300 of providing assistance to a user, in accordance with another embodiment of the present disclosure. At block 302, one or more user activities are captured. In an exemplary embodiment, the one or more user activities may comprises one or more of the following, but not limited to: voice of the user, one or more movements of the user, posture of the user, body language of the user, one or more facial expressions of the

user, location of the user, browsing history, call information, one or more gestures of the user, etc. The one or more user activity may be captured by the at least activity capturing unit 106 of the system 100.
[0057] At block 304, one or more questions are generated by analysing the user activities. The one or more questions are indicative of attributes of assistance required to the user. In an embodiment, the voice of the user may be analysed to determine one or more context parameters of the voice of the user. The one or more context parameters may comprise at least one of following, but not limited to: frequency, amplitude, type of voice of the user, and one or more keywords. Further, the one or more context parameters may be mapped with one or more pre-defined parameters in the database unit 104 to determine the one or more questions. The one or more user activity may be analysed by the analysis unit 112 of the system 100.
[0058] In a further non-limiting exemplary embodiment, the one or more gestures of the user may be analysed by mapping the one or more captured gestures with one or more pre-defined gestures in the database unit 104 to determine the one or more questions. Further, the captured movement of the users may be analysed by mapping the captured movement with one or more pre-defined movements in the database unit 104 to determine the one or more questions. Further, the one or more captured facial expressions of the user may be analysed by mapping the one or more captured facial expressions in the database unit 104 with one or more pre-defined facial expression to determine the one or more questions. Furthermore, the postures of the user may be analysed to determine duration of the one or more postures and to determine the one or more questions based on the duration of the one or more postures.
[0059] In a further non-limiting exemplary embodiment, if the one or more questions are not generated by analysing the one or more user activities, a request for information from the user to determine the one or more questions may be generated after a predefined time period. The time period may be defined by the

user. Based on the input provided by the user in response to the request for information, the system 100 may be further trained. Thus, the system 100 is continuously trained and the database unit 104 is simultaneously updated to store the updated information
[0060] At block 306, one or more tasks may be determined based on the generated questions. The determination unit 114 may determine one or more tasks based on one or more generated questions, as described in previous embodiments. At block 308, one or more determined tasks are prioritized by the prioritization unit 116, as described in previous embodiments. Further, at block 310, the one or more determined tasks are executed based on the priority to providing assistance to the user. The execution unit 118 may execute the one or more determined tasks, as described in the previous embodiments.
[0061] The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed.
[0062] Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0063] Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-

readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., are non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
[0064] Suitable processors include, by way of example, a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs) circuits, any other type of integrated circuit (IC), and/or a state machine.
Advantages of the embodiment of the present disclosure are illustrated herein.
[0065] In an embodiment, the present disclosure provides the realization of an implicit communication based virtual assistant system for automatic question generation, task prediction and scheduling for providing assistance to the user.
[0066] In an embodiment, the present disclosure provides virtual assistant system that decides whether the assistance is required to the user and then intelligently and efficiently provides the assistance depending on the user activities.
[0067] In an embodiment, the virtual assistance system provides any kind of assistance to the user not limiting to any specific area of assistance to all age group of people at any given location.

WE CLAIM:
1. A method for providing assistance to a user, the method comprising:
capturing one or more user activities;
generating one or more questions by analysing said one or more user activities, wherein said one or more questions are indicative of attributes of assistance required to the user;
determining one or more tasks based on said one or more generated questions,
prioritizing said one or more determined tasks; and
executing said one or more determined tasks based on the determined task priorities for providing assistance to the user.
2. The method of claim 1, wherein capturing said one or more user activities
comprises capturing at least one of voice of the user, one or more gestures of the
user, one or more movements of the user, location of the user, browsing history,
call information, posture of the user, body language of the user, one or more facial
expressions of the user.
3. The method of claim 2, wherein analysing the voice of the user comprises:
determining one or more context parameters of the voice of the user,
wherein said one or more context parameters comprises at least one of frequency, amplitude, type of voice of the user, and one or more keywords; and
mapping said one or more context parameters with one or more pre-defined parameters to generate said one or more questions.
4. The method of claim 2, wherein analysing said one or more gestures of the user
comprises mapping said one or more captured gestures with one or more pre¬
defined gestures to generate said one or more questions;

wherein analysing the captured movement of the users comprises mapping the captured movement with one or more pre-defined movements to generate said one or more questions; and
wherein analysing said one or more captured facial expressions of the user comprises mapping the one or more captured facial expressions with one or more pre-defined facial expression to generate said one or more questions.
5. The method of claim 2, wherein analysing the postures of the user comprises
determining duration of said one or more postures and generating said one or more
questions based on the duration of said one or more postures.
6. The method of claim 1, wherein analysing said one or more user activities further
comprises generating a request for information from the user to generate the one or
more questions after a predefined time period.
7. A system for providing assistance to a user, the system comprising:
at least one activity capturing unit configured to capture one or more user activities;
at least one processing unit operatively coupled to the at least one activity capturing unit, wherein the at least one processing unit comprises:
an analysing unit configured to analyse said one or more user activities for generating one or more questions, wherein said one or more questions are indicative of attributes of assistance required to the user,
a determination unit configured to determine determining one or more tasks based on the generated questions,
a prioritization unit configured to prioritize said one or more determined tasks, and
an execution unit configured to execute said one or more determined tasks based on the determined task priorities for providing assistance to the user; and

at least one memory unit configured to store said one or more user activities, said one or more questions, said one or more tasks, and the determined task priorities.
8. The system of claim 7, wherein the at least one activity capturing unit is configured to capture said one or more user activities by capturing at least one of voice of the user, one or more gestures of the user, one or more movements of the user, location of the user, browsing history, call information, posture of the user, body language of the user, one or more facial expressions of the user.
9. The system of claim 8, wherein the analysing unit is configured to analyse the voice of the user by:
determining one or more context parameters of the voice of the user, wherein the one or more context parameters comprises at least one of frequency, amplitude, type of voice of the user, and one or more keywords; and
mapping said one or more context parameters with one or more pre-defined parameters to determine the generate the one or more questions.
10. The system of claim 8, wherein the analysing unit is configured to:
analyse said one or more gestures of the user by mapping said one or more captured gestures with one or more pre-defined gestures to generate said one or more questions;
analyse the captured movement of the users by mapping the captured movement with one or more pre-defined movements to generate said one or more questions; and
analyse said one or more captured facial expressions of the user by mapping said one or more captured facial expressions with one or more pre-defined facial expression to generate said one or more questions.
11. The system of claim 8, wherein the analysing unit is configured to analyse
the postures of the user by:

determining duration of said one or more postures; and
generating said one or more questions based on the duration of said one or more postures.
12. The system of claim 7, wherein the analysing unit is configured to generate a request for information from the user to generate said one or more questions after a predefined time period.
13. The system of claim 7, wherein the at least one activity capturing unit comprises:
at least one audio sensor for capturing voice of the user, wherein the at least one audio sensor comprises one or more microphones;
at least one video data capturing unit for capturing the posture of the user, body language of the user, and facial expression of the user, wherein the at least one video data capturing unit comprises at least one of an optical camera, a stereo camera and an infrared camera;
at least one motion detection unit for capturing the movement of the user, wherein the at least one motion detection unit comprises one or more motion sensor;
at least one location detection unit for capturing location of the user, wherein the at least one location detection unit comprises one or more location detectors;
at least one processor for capturing the browsing history and call information; and
at least one gesture detection unit for capturing said one or more gestures, wherein the at least one gesture detection unit comprises one or more gesture detecting sensors.

Documents

Application Documents

# Name Date
1 201821049566-STATEMENT OF UNDERTAKING (FORM 3) [28-12-2018(online)].pdf 2018-12-28
2 201821049566-PROVISIONAL SPECIFICATION [28-12-2018(online)].pdf 2018-12-28
3 201821049566-PROOF OF RIGHT [28-12-2018(online)].pdf 2018-12-28
4 201821049566-POWER OF AUTHORITY [28-12-2018(online)].pdf 2018-12-28
5 201821049566-FORM 1 [28-12-2018(online)].pdf 2018-12-28
6 201821049566-DRAWINGS [28-12-2018(online)].pdf 2018-12-28
7 201821049566-DECLARATION OF INVENTORSHIP (FORM 5) [28-12-2018(online)].pdf 2018-12-28
8 201821049566-Proof of Right (MANDATORY) [07-05-2019(online)].pdf 2019-05-07
9 201821049566-RELEVANT DOCUMENTS [19-11-2019(online)].pdf 2019-11-19
10 201821049566-FORM 13 [19-11-2019(online)].pdf 2019-11-19
11 201821049566-FORM 18 [28-12-2019(online)].pdf 2019-12-28
12 201821049566-DRAWING [28-12-2019(online)].pdf 2019-12-28
13 201821049566-CORRESPONDENCE-OTHERS [28-12-2019(online)].pdf 2019-12-28
14 201821049566-COMPLETE SPECIFICATION [28-12-2019(online)].pdf 2019-12-28
15 201821049566-ORIGINAL UR 6(1A) FORM 1-080519.pdf 2019-12-31
16 Abstract1.jpg 2020-01-07
17 201821049566-FER.pdf 2021-10-18
18 201821049566-OTHERS [29-10-2021(online)].pdf 2021-10-29
19 201821049566-FER_SER_REPLY [29-10-2021(online)].pdf 2021-10-29
20 201821049566-COMPLETE SPECIFICATION [29-10-2021(online)].pdf 2021-10-29
21 201821049566-CLAIMS [29-10-2021(online)].pdf 2021-10-29
22 201821049566-PatentCertificate28-02-2024.pdf 2024-02-28
23 201821049566-IntimationOfGrant28-02-2024.pdf 2024-02-28

Search Strategy

1 201821049566SearchE_16-03-2021.pdf
2 201821049566D3AE_26-08-2022.pdf

ERegister / Renewals

3rd: 15 Apr 2024

From 28/12/2020 - To 28/12/2021

4th: 15 Apr 2024

From 28/12/2021 - To 28/12/2022

5th: 15 Apr 2024

From 28/12/2022 - To 28/12/2023

6th: 15 Apr 2024

From 28/12/2023 - To 28/12/2024

7th: 29 Nov 2024

From 28/12/2024 - To 28/12/2025

8th: 06 Oct 2025

From 28/12/2025 - To 28/12/2026