This section discusses the dynamic allocation of a task in the assistive robotic system in the health care application. Depending on the research analysis multiple task allocation problem is overcome by applying the optimized building block distribution algorithm. Before allocating the resources and tasks, the robotic utilities [17] are computed. The utility factor computes the fitness of robots for a specific task. In general, every robot has a specific capacity to perform the task which has the utility value that is represented as
. So, the robot utility value for a task is calculated using Eqn (1).
(1)
In a (1)
is represented as a utility value of robot (r) on task (t).
is denoted as the quality of task performing by the robot (r)
Cost for performing the task is represented as ![](https://myfiles.space/user_files/58677_ec8811c6b4185256/1618435801_test/1618435801_test.005.png)
From the computation of Eqn (1)
value, the task is allocated to the robot to different categories [18] which are listed as follows.
Category 1:
- The robots are identified according to their utility and the single or several tasks are assigned at the same time.
- The tasks are identified first and it will be allocated to a single robot or several robots at the same time.
- The tasks are allocating to the robot according to the current as well as future needs and information.
Category 2:
- Allocating the task by examining the interdependency between the task and robots.
- Assign the task according to category 1 and considering the interdependency between the task and robot (No-dependency, cross schedule dependence(utility of task and robot does not only depend on schedule), in schedule dependence (utility of task and robot must have dependency in schedule) and complex dependency(the schedules are dynamic).
Category 3:
- In this category, the task is allocated according to category 1 but divided according to the time extended assignment process.
- The allocation of the task must be considered on time, robot utility and synchronization between tasks and robots.
By considering these three categories, tasks are allocated to robots in a dynamic manner which is done by applying the bacterial Foraging Optimization building block distribution algorithm (BFOBBD). This distribution algorithm is one of the effective probabilistic modeling building stochastic optimized algorithm[19]. The algorithm searches optimized robots from the search space and helps to get the candidate solution. Initially, the robots are analyzed by the utility factor to choose the admissible solution and finally, the globally optimal solution (correct robots) is selected to perform the task. According to the discussion, the general searching process of the distribution algorithm is described in table 2.
Table 2
General Steps for distribution algorithm
Initialize t (task), robots(r), model T = 0; Initialize the model to denote the distribution of tasks to get the optimal solution. While (perform until to meet the termination condition) do L: generate the candidate solution from model m(t) G: analyze the solutions present in L M(t + 1) = adjust model (L,G, m(t)) T:t + 1 |
Based on the above table 2, the distribution algorithm selects the optimized robots from the multiple robots present in the hospital environment. By considering this algorithm step, the multivariate factorization process is applied to get the dependency [20] between the task and robots and the decisions are taken in the model. During the factorization process, a joint probability distribution is computed which is multiplied with multivariate marginal distribution value. This distribution value helps to determine the interdependence between the task and robots. This dependency computation process satisfies the category 2 type of task allocation process. Let assume
is the subset of a task in which every
is belonged to T is linkage set. The task t consists of several variables that are denoted as
. Then the factorized joint probability distribution value of t is estimated as follows,
(2)
During the probability distribution estimation process, the linkage learning process is applied to identify the link between the robots and the task. The linkage learning process is done by two measures such as model complexity and compressed population complexity. The model complexity measure computes the size of bits needed to save the entire marginal probability value of task t which is estimated using Eqn (3).
(3)
After computing the model complexity of the task, the entropy value of the task is estimated using the number of tasks involved in the search area
,
is denoted as the number of decision variables in a linkage set. So, the entropy value of the task set is computed as using Eqn (4).
(4)
In ,and (4) H(t) is represented as the joint entropy variable of task t.
From the computed linkage learning process, allocate the task to the robot and verify the schedule of the robot continuously. By adding these two-measure value, the task-related robots are computed in saved in the search space effectively. Based on the discussion, the robots and task allocation process are demonstrated in figure 2.
From figure 2, it depicted that each robot assists the user request according to different sensors such as sound, light, ultrasonic and touch sensor. These sensors are used to monitor the patient's activities continuously and provide the proper guides to the patient. Here task 1 is allocated according to the computation of interdependency between the robots and task. Based on the above discussion, the task is allocated to specific robots. Further, the optimized task allocation process is done by applying the bacterial foraging optimization algorithm [21]. It is one of the metaheuristic optimization algorithm works according to the bacteria characteristics. It used to solve the computational intelligent problem called which robots are chosen to perform the task in the hospital environment. As discussed earlier, the robots are selected based on utility factors, inter-dependency and other cost factors. Among that information, optimal robots are selected via this optimization algorithm. This algorithm selects the right robot based on three function such as chemotaxis (comparing the one robot with other robot based on the utility factor, cost and so on), reproduction (perform the comparison process and produce the next generation information) and elimination -dispersal (eliminate the old robot and check the probability or possibility of next robots in the list). So, the interaction between the robots is analyzed and the bacterial cost derated is estimated. To obtain the value, the interaction [22] between the cells (robots) are computed using Eqn (5).
(5)
In Eqn (5) given robot or cell is denoted as ![](https://myfiles.space/user_files/58677_ec8811c6b4185256/1618436173_test/1618436173_test.010.png)
Attraction coefficients are
, ![](https://myfiles.space/user_files/58677_ec8811c6b4185256/1618436173_test/1618436173_test.012.png)
Repulsion coefficients are
,![](https://myfiles.space/user_files/58677_ec8811c6b4185256/1618436173_test/1618436173_test.014.png)
Number of robots in search space is S
The number of dimensions on a cell is denoted as P.
Based on the interaction, the optimized robots are selected, when the robots having the highest fitness value. According to the discussion, the pseudocode for the robot’s selection process [23] is depicted in table 3.
![](https://myfiles.space/user_files/58677_ec8811c6b4185256/58677_custom_files/img1618436445.png)
Based on table 3, the optimized robots are selected by the continuous optimization process. During the computation process, by default, , values are 0.1 and 0.2, value is equal to the and the value is 10. Then the step size is 0.1 which is a small fraction of search space. Along with this, half of the robots are selected for the searching process and remaining populations are discarded. Then the elimination dispersal probability value 0.25. Thus the bacterial optimization algorithm successfully selects the best robots and allocates the task to the robot successfully. This allocation process considering the above category by computing different computation numerical factors. Then the efficiency of the introduced system is evaluated using experimental analysis discussed in section 4.