DYNAMICALLY RECONFIGURABLE SERVICE FOR HANDLING A SITUATION
20190259117 ยท 2019-08-22
Assignee
Inventors
- Swarup Kumar MOHALIK (Marathahalli, Bangalore, IN)
- Sai Chandrasekar (Chennai, IN)
- Shivashankar Subramanian (Chennai, IN)
Cpc classification
G08B7/00
PHYSICS
G06Q10/0631
PHYSICS
International classification
Abstract
The present disclosure relates to a method performed in a communication network (1). The method comprises receiving a trigger message a) indicating that a situation (4) has occurred. The trigger message comprises situation specific information. The method also comprises, based on the received situation specific information, configuring a service for handling the situation during a period of time until a predefined goal has been achieved. The service includes a plurality of partially-ordered tasks to be performed and a plurality of stakeholders (3). The tasks are parameterized with entities and the stakeholders. The method also comprises, during the period of time, as part of the service, sending updated information c) about the tasks to the stakeholders. The method also comprises, in response to the information sent, receiving input d) about the tasks from the stakeholders. The method also comprises, in response to the received input, automatically and dynamically reconfiguring the service, including updating the information about the tasks, until the predefined goal has been achieved.
Claims
1. A method performed in a communication network, the method comprising: receiving a trigger message indicating that a situation has occurred, the trigger message comprising situation specific information; based on the received situation specific information, configuring a service for handling the situation during a period of time until a predefined goal has been achieved, the service including a plurality of partially-ordered tasks to be performed and a plurality of stakeholders, the tasks being parameterized with entities and the stakeholders; during the period of time, as part of the service, sending updated information about the tasks to the stakeholders; in response to the information sent, receiving input about the tasks from the stakeholders; and in response to the received input, automatically and dynamically reconfiguring the service, including updating the information about the tasks, until the predefined goal has been achieved.
2. The method of claim 1, wherein the received input comprises an acknowledgement from at least one of the plurality of stakeholders, said acknowledgement indicating that the at least one stakeholder has accepted responsibility for performing at least one of the plurality of tasks.
3. The method of claim 1, wherein the received input comprises a confirmation message from at least one of the plurality of stakeholders, the confirmation message comprising information confirming completion of at least one of the plurality of tasks.
4. The method of claim 1, wherein the received input comprises a task message from at least one of the plurality of stakeholders, the task message comprising information about a new or amended task to be included in the plurality of tasks.
5. The method of claim 4, wherein the new or amended task is sub-task subdivided from a task of the plurality of tasks.
6. The method of claim 4, wherein the reconfiguring comprises determining whether the new or amended task should be accepted or rejected.
7. The method of claim 1, wherein the situation is an emergency situation and at least one of the plurality of stakeholders is a medical professional.
8. The method of claim 1, wherein at least one of the entities is a location where the situation has occurred and/or a location of one of the stakeholders.
9. The method of claim 1, wherein the tasks are also parameterized with environmental parameters for which the communication network obtains environmental information.
10. The method of claim 1, wherein the sending updated information comprises sending updated information about a first group of the plurality of tasks to a first stake holder and sending updated information about a second group of the plurality of tasks to a second stake holder.
11. The method of claim 10, wherein the first and second groups of the plurality of tasksare defined by means of applying respective filters for the first and second stake holders.
12. A computer program product comprising a non-transitory computer readable medium storing computer-executable components for causing a communication network to perform the method of claim 1 when the computer-executable components are run on processing circuitry comprised in the communication network.
13. A communication network comprising: processing circuitry; and storage storing instructions executable by said processing circuitry, wherein the communication network is operative to: receive a trigger message indicating that a situation has occurred, the trigger message comprising situation specific information; based on the received situation specific information, configure a service for handling the situation during a period of time until a predefined goal has been achieved, the service including a plurality of partially-ordered tasks to be performed and a plurality of stakeholders, the tasks being parameterized with entities and the stakeholders; during the period of time, as part of the service, send updated information about the tasks to the stakeholders; in response to the information sent, receive input about the tasks from the stakeholders; and in response to the received input, automatically and dynamically reconfigure the service, including updating the information about the tasks, until the predefined goal has been achieved.
14. A computer program product comprising a non-transitory computer readable medium storing a computer program comprising computer program code which is able to, when run on processing circuitry of a communication network, cause the communication network to: receive a trigger message indicating that a situation has occurred, the trigger message comprising situation specific information; based on the received situation specific information, configure a service for handling the situation during a period of time until a predefined goal has been achieved, the service including a plurality of partially-ordered tasks to be performed and a plurality of stakeholders, the tasks being parameterized with entities and the stakeholders; during the period of time, as part of the service, send updated information about the tasks to the stakeholders; in response to the information sent, receive input about the tasks from the stakeholders; and in response to the received input, automatically and dynamically reconfigure the service, including updating the information about the tasks, until the predefined goal has been achieved.
15. (canceled)
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0025] Embodiments will be described, by way of example, with reference to the accompanying drawings, in which:
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
DETAILED DESCRIPTION
[0034] Embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments are shown. However, other embodiments in many different forms are possible within the scope of the present disclosure. Rather, the following embodiments are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art. Like numbers refer to like elements throughout the description.
[0035] It is herein proposed a service may include the following features: [0036] The service maintains an inventory of stakeholders and tasks to be carried out in case of a situation of a certain type, e.g. medical emergency, occurring. [0037] It informs the respective stakeholder about relevant parts of the task inventory. [0038] It reconfigures itself in view of new or changed tasks or subtasks thereof. [0039] It provides a platform for stakeholders to volunteer for tasks or to assign tasks to other stakeholders. [0040] It monitors the progress of the execution of the tasks and communicates regularly with the stakeholders. [0041] It provides re-planning of the tasks, e.g. when there are unforeseen changes in the environment.
[0042]
[0043]
[0044] An example of a parameterized task is given by the task navigate(amb_driver, amb, amb_location, destination) which has four parameters. In this case, all the parameters are variables and they can be instantiated (making them constants) during the execution of the task. The amb_driver is a stakeholder 3the person who is responsible for driving the ambulance, the ambulance amb, amb_location and destination are instantiated by the (concrete) entities or things during execution. We can consider locations as entities because each place is associated with a concrete value (name or latitude-longitude).
[0045]
[0046] A situation receiver 36 receives Si a trigger message a), e.g. an emergency signal, comprising situation information, e.g. the type of emergency, person(s) involved, phone number (if available), location of the occurred situation 4, time of the occurrence and/or known details of the persons involved. The service 35 is configured S2 and the situation information is inputted there to.
[0047] The receiver 36 may also receive messages from stakeholders 3 regarding instantiation values, possibly different plan implementation etc. and applies appropriate action on the task network.
[0048] Example: the receiver 36 receives Si an emergency signal that says emergency type is health-related, possible heart attack, in a car. The afflicted person is John, his phone is 9945698671, location is Marathahalli bridge (Latitude=38.03, Longitude=80.00), 12:00 pm, he is allergic to peanuts and cats, the car registration number is KA03-8885.
[0049] Extended Hierarchical Task Network (EHTN) 33 is a network of possibly parametrized tasks with dependency links between tasks. Each task may be in different states, e.g. not_assigned/assigned, not_started/in_progress/completed, etc. When the network i receives Si the signal for emergency, an appropriate task network including a plurality of partially-ordered predefined tasks suitable for the type of situation 4 may be retrieved from a plans database 31, which task network 33 may be a central data structure which may be updated by the stakeholders 3 and in view of the environment 5.
[0050] A network (NW) resource slicer 34 assigns NW resources of the communication network i to the EHTN 33.
[0051] Each task in the network 33 can be another network or an atomic task. The planning operation may then flatten the entire network to atomic tasks. [0052] Example: find_proximal_medics(location), find_ambulance(health_condition, location, amb, amb_location).fwdarw.navigate_ambulance(amb, amb_location, location), find_details(name, phone no, car), inform_hospital(health_condition, location, health_constraints), find_relatives(name, phone no, rel_location).
[0053] The task Find_ambulance finds an ambulance from the appropriate stakeholder 3 (emergency service), with the facilities for the health_condition, and also its location.
[0054] The task Navigate_ambulance(amb, location1, location2) may be divided into the subtasks Get_route(vehicle_type(amb), location1, location2, route).fwdarw.turn-by-turn(amb, route)
[0055] Navigate ambulance is a composite task which is broken into atomic tasks get_route and turn_by_turn.
[0056] The parametrized tasks may be instantiated (assigned a value, illustrated by hard brackets herein) by default stakeholder and available information. The instantiations can be changed during the execution stage. The tasks that are not fully instantiated may be marked uninstantiated. If a stakeholder is needed for performing a task, e.g. an actor parameter of the task is not instantiated, a request for a stakeholder to take care of the task may be broadcasted. Some of the information may be mandatory and hence the seek tasks must be assigned and executed. Some of the seek tasks may only be desirable, and hence can be de-prioritized in case of e.g. resource conflict.
[0057] Example: find_proximal_medics([Internet Service Provider], Marathahalli bridge(Latitude=38.03, Longitude=80.00)), [0058] find_ambulance([emergency services], [heart attack], Marathahalli bridge(Latitude=38.03, Longitude=80.00), amb, amb_location).fwdarw. [0059] navigate_ambulance([agent], amb, amb_location, Marathahalli bridge(Latitude=38.03, Longitude=80.00)), [0060] find_details([police], [name, John], [phone, 9945698671], [car, KA038885]), [0061] inform_hospital([hospital service] [heart_attack], Marathahalli bridge(Latitude=38.03, Longitude=8 0.00), [allergy, [peanut, cat's hair]], hospital_instance), [0062] find_relatives([police], [name, John], [phone, 9945698671], rel_location). [0063] navigate_ambulance([agent], amb, Marathahalli bridge(Latitude=38.03, Longitude=80.00), hospital_instance).
[0064] When a task is instantiated and does not have any dependency, it may be triggered for execution by the execution engine 36 and be marked in_progress. Task information c) is sent S3 to the stakeholder/actor responsible for performing the task. When a task is completed, the stakeholder 3 signals the network 1 (task input d) is received S4) and the task may be marked completed in response thereto. This then leads to the performance of a subsequent, dependent tasks if any.
[0065] Example: After find_ambulance task succeeds, we have an ambulance (amb) and its location (amb_location). The next task navigate ambulance gives turn-by-turn signals to the ambulance on the fastest route to the emergency location and first-aid treatment to the afflicted person.
[0066] Reconfiguring S5: If a task fails to complete, or does not meet a deadline, then a new task (may be an instance of the failed task) may be initiated depending upon the current conditions. The new task may alternatively be suggested by the stakeholder 3, in which case the proposed task may be evaluated to either match the goal of the earlier task or the entire task network 33 is checked to see if the proposed task leads to the final goal in view of any cascading impact on other tasks.
[0067] Example: During the turn-by-turn task, if there is a traffic jam on the way (as indicated by environmental information b), the system does a reconfiguring S5 to get a new route (and hence the turn sequence) since it calculates that the Estimated Time of Arrival (ETA) to the hospital will otherwise not be met.
[0068] Assume that the find_relatives( ), does not find any close relative. The communication network 1 may then reconfigure S5 the service to find a friend instead (using a servicewhich might mine e.g. social media to find a friend).
[0069] Suppose there is a task of inform_insurance([informer], [insurance-agent], person).
[0070] The details of the afflicted person may be used to find his/her insurance agent through a subtask.
[0071] The wife for instance may volunteer for this task when the to-be-decided (TBD) task Inform_insurance([informer], INSURANCE-AGENT, PERSON) is displayed. Then, the task is instantiated to Inform_insurance(wife, INSURANCE-AGENT, PERSON).
[0072] Responsibility Zone and Information filter 32: Each stakeholder 3 may have a set of parameters called the responsibility zone. The tasks depending upon and affecting these parameters form a filter 32 for the stakeholder. These tasks and their state during execution may be communicated to the stakeholders in real-time. The need for real-time may be due to the emergency situation.
[0073] Example: The hospital stakeholder 3 is interested in the health-condition, time_elapsed, allergy information and drug restrictions. It does not need the position of the ambulance, so the navigation information is filtered out from the information c) sent S3 to the hospital.
[0074] The police is interested in the transport part, hence the traffic details and ambulance positions are included in the task information c) sent S3 to the police.
[0075] The wife may be interested in the capability of the hospital (can it handle cardiac patients) and ambulance position. Thus, the information c) defined by the filter 32 for the wife is configured accordingly. If the wife is not happy with the hospital/doctor and suggests another hospital in task input d) received S4 by the network 1, the suggested hospital is evaluated based on the hospital service and the time needed for the ambulance to reach the new hospital. If feasible, the service 35/EHTN 33 of the service is reconfigured S5 accordingly.
[0076] NW resource slicer 34 may, as mentioned above, be a component in the communication network 1 that includes cloud and network resource provisioning to ensure the real-time and guaranteed Quality of Service (QoS) requirements of the service 35. This may be created for the entire task network 33 or for each task or for a subset of related tasks.
[0077] When a stakeholder 3 suggests a new task and it is evaluated to be feasible, it may be added to the plans database 31 for future use with the situation type.
[0078]
[0079]
[0080] The processing circuitry 51 may also be configured to store data in the storage 52, as needed. The communication network 1 also comprises a communication interface 53 e.g. for receiving S1, S4 the trigger a), any environmental information b) and task input d) from the stakeholders 3, as well as for sending S3 the task information c).
[0081] According to an aspect of the present application, there is provided a communication network 1 comprising processing circuitry 51, and storage 52 storing instructions 61 executable by said processing circuitry whereby said communication network is operative to receive a trigger a) message indicating that a situation 4 has occurred, the trigger message comprising situation specific information. The communication network is also operative to, based on the received situation specific information, configure a service 35 for handling the situation during a period of time until a predefined goal has been achieved, the service including a plurality of partially-ordered tasks T to be performed and a plurality of stakeholders 3, the tasks being parameterized with entities and the stakeholders. The communication network is also operative to, during the period of time, as part of the service, send updated information c) about the tasks to the stakeholders. The communication network is also operative to, in response to the information sent, receive input d) about the tasks from the stakeholders. The communication network is also operative to, in response to the received input, automatically and dynamically reconfigure the service, including updating the information about the tasks, until the predefined goal has been achieved.
[0082]
[0083]
[0084] According to an aspect of the present disclosure, there is provided a computer program product 60 comprising computer-executable components 61 for causing a communication network 1 to perform an embodiment of the method of the present disclosure when the computer-executable components are run on processing circuitry 51 comprised in the communication network 1.
[0085] According to another aspect of the present application, there is provided a computer program 61 comprising computer program code which is able to, when run on processing circuitry 51 of a communication network 1, cause the communication network to receive S1 a trigger message a) indicating that a situation 4 has occurred, the trigger message comprising situation specific information. The code is also able to cause the communication network to, based on the received S1 situation specific information, configure S2 a service 35 for handling the situation during a period of time until a predefined goal has been achieved, the service including a plurality of partially-ordered tasks T to be performed and a plurality of stakeholders 3, the tasks being parameterized with entities and the stakeholders. The code is also able to cause the communication network to, during the period of time, as part of the service, send S3 updated information c) about the tasks to the stakeholders. The code is also able to cause the communication network to, in response to the information sent S3, receive S4 input d) about the tasks from the stakeholders. The code is also able to cause the communication network to, in response to the received S4 input, automatically and dynamically reconfigure S5 the service, including updating the information c) about the tasks, until the predefined goal has been achieved S6.
[0086] According to another aspect of the present application, there is provided a computer program product 60 comprising an embodiment of the computer program 61 of the present disclosure and a computer readable means 62 on which the computer program is stored.
[0087] In some embodiments of the present disclosure, the received S4 input d) comprises an acknowledgement from at least one of the plurality of stakeholders 3, said acknowledgement indicating that the at least one stakeholder has accepted responsibility for performing at least one of the plurality of tasks T.
[0088] In some embodiments of the present disclosure, the received S4 input d) comprises a confirmation message from at least one of the plurality of stakeholders 3, the confirmation message comprising information confirming completion of at least one of the plurality of tasks T.
[0089] In some embodiments of the present disclosure, the received S4 input d) comprises a task message from at least one of the plurality of stakeholders 3, the task message comprising information about a new or amended task to be included in the plurality of tasks T. In some embodiments, the new or amended task is sub-task subdivided from a task of the plurality of tasks T. Additionally or alternatively, in some embodiments, the reconfiguring S5 comprises determining whether the new or amended task should be accepted or rejected (above discussed as whether it is feasible).
[0090] In some embodiments of the present disclosure, the situation 4 is an emergency situation and at least one of the plurality of stakeholders 3 is a medical professional. However, other types of situations 4 are also relevant with other embodiments of the present disclosure.
[0091] In some embodiments of the present disclosure, at least one of the entities is a location where the situation 4 has occurred and/or a location of one of the stakeholders 3.
[0092] In some embodiments of the present disclosure, the tasks T are also parameterized with environmental parameters for which the communication network 1 obtains environmental information b).
[0093] In some embodiments of the present disclosure, the sending S3 updated information c) comprises sending updated information about a first group of the plurality of tasks T to a first stake holder 3a and sending updated information about a second group (different from the first group) of the plurality of tasks T to a second stake holder 3b. In some embodiments, the first and second groups of the plurality of tasks T are defined by means of applying respective filters 32 for the first and second stake holders 3a and 3b.
[0094] Above, the present disclosure has been related to the example of a medical emergency, but other embodiments of the present disclosure may be used for any other situation 4 which should be handled. Below follows e.g. an example relating to EHTN 33 for a water tank cleaning operation. The parameters are in normal letters. The values are in [ ], most values are instantiated for the parameters when the EHTN is executed. Reference is also made to
[0096] This trigger a) comprises situation specific information including value for the address and details of the tank which may include the shape/size/access method etc. e.g. derived from a detailed attribute list of water tanks. The situation specific information is used for configuring S2 the service/agent 35, which generates the EHTN 33, the filter(s) 32, the execution engine 36 and the slicer 34. The EHTN 33 may then be executed. Some of the tasks can be taken up concurrently, but for ease of presentation it is assumed that they are done sequentially. In view of task input d) from the stakeholders 3, or on environmental information b), the service may be reconfigured S5, whereby the EHTN is changed/updated in view thereof. The updating of the service and its EHTN 33 may depend on whether the changes due to environment info b) and/or input d) from stakeholder(s) 3 are determined to be feasible or not (if not, the changes may be ignored). Filtered updated task info c) relating to the reconfigured S5 service is then sent S3 to the stakeholders. Examples of the execution is given below.
TABLE-US-00001 Get_contact_owner(address, tank-details, owner) // Clean_tank([RGB-612, PR Apartments, Bangalore-560037], [vol:2000, unit:liter, shape:dome, access: [method:ladder, height:20, unit:ft]]) will instantiate the address and tank details, and will also find the contact for the owner of the house. The contact may be like [name: X, phone:Y, email:Z] Get_contact_owner([ADDRESS], [TANK-DETAILS], [OWNER-CONTACT]) Publish([TANK-CLEANING], tank-details, address) > Get_quotes([TANK- CLEANING], tank-details, quotations) //publishing the task with name TANK-CLEANING and the tank details and address though a service may attract quotations from vendors. The details instantiate the parameter quotations : list of [vendor, start time, duration required, price, requirements - size of equipment, power inputs, disposal details - final dumping place and route to be followed] Negotiate(owner, civic_authority, quotations, final-quotation) //The negotiate service itself may be a graph. It finds and instantiates the civic- authority for the area mentioned in the [ADDRESS]. There is a publishing of the details in the quotation for all the stakeholders, each one ticking the possible choices. The service finds a feasible combinations and finalizes. For example, if the civic authority ticks a far-away dumpling place, the price quoted by vendor would be higher and the owner may not have ticked that range of prices, hence the negotiation will fail. The output is a final quotation - requirement of equipment should match with availability in the compound. Involve civic-authority to allow dumping in specific place and route to be followed. For example, main roads may not be allowed since any leak may affect road safety. Find_sludge_disposal([TANK-CLEANING], dumping_place) Slice-inform(vendor, owner, civic-authority, quotation) //Vendor and owner know about the cleaning and billing parts of the quotation, civic-authority is informed about the time, dumpling place and route. This may be a periodic task. Once it starts, it the filtered information to the stake-holder 3 in regular intervals. Navigate(vendor, address, time-of-cleaning) > Tank-cleaning(vendor) > Dispose_sludge(vendor, address, dumping_place, route) // the sub-graph for displose_sludge is as follows. Dispose_sludge(vendor, address, dumping_place, route): Navigate(vendor, address, route) > Dump_sludge(dumpling_place)
[0097] The present disclosure has mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the present disclosure, as defined by the appended claims.