**8. Conclusion**

CODA Algorithm is a Machine learning approach that can solve the grasping problem in robotic systems. In fact, the main algorithm is proposed as general solution when the problem can be expressed in Markov Chains. The algorithm is designed with the Computational model of the Natural Immune System, which is an Artificial Immune System.

The Artificial Immune System is a really broad system that has several task and subsystems as it is decentralised; therefore, numerous algorithms have been modelled in order to solve problems such as classification, fault detection among others. In particular, the AIS memory, the self-organised model, the genetic procedure in which antibodies are created and selected to complete the tasks, are all features that will lead to a robust yet versatile algorithm.

The algorithm presented in the previous sections was designed in order to produce new knowledge from limited data samples in order to reduce the need of big databases of examples of an specific task, that are difficult to build and most of the time have to be paid. In the bibliography it can be often see how there is a trend to reduce the training data sets [53], or studies to select correct data sets that would be representative enough [49], reduce the use of examples in order to learn [50] or reduce the population in order to optimise the algorithm [51]. From the previous articles it can be seen that the advantage of CODA over some mentioned algorithms is that CODA can use a simple example provided by demonstration and use this information to produce more knowledge. For example in [53] training data sizes range from 47 to 17861 samples. This would mean to ask for 17861 samples of grasping postures to people which is not impossible of course but it would be expensive, time consuming and tedious. In contrast CODA will need one demonstration of the task and it would do the hard job of producing new knowledge evaluate it and then use the most capable antibodies in order to reproduce the task.

According to **Table 1** CODA has several advantages. The first one being the quantity of examples provided in order to learn. Some algorithms need a big number of examples in order to learn a task, just as presented in the previous paragraph. CODA lets the algorithm produce new example possibilities distributed in a Gaussian space from a single example, user configurable. This is achieved thanks to the clonal/mutation procedure of the algorithm obtained from the Natural Immune systems. This can be seen in **Figure 7** were CODA was given a single example and proved to produce new data in seconds. Additionally **Figure 13**; shows how the algorithm produced 100 new data samples from a single demonstration of grasping a sphere.

The clonal/mutation procedure produced *N* different data points that can be used in order to solve the task. They have to be evaluated in order to corroborate the affinity to the original example. It is important to notice the importance of the evaluation in the algorithm, since the clonal/mutation can produce as much data as the user configures the process. Therefore, the evaluation process filters the data that may be harmful for the system or non-useful, reducing risks. The algorithm is capable of reducing learning time compared to algorithms that have to adjust weights or parameters in order to learn from a database. It is well known that those algorithms require certain minimum amount of data to effectively model the task, and it is also known that the more data samples, the more learning of the task. With CODA and the way it was designed, the task can be modelled from the very beginning since the learning is acquired by a demonstration of an expert. The clonal/mutation procedure reduces the amount of learning examples needed to be provided to the algorithm. The affinity function evaluates if the data obtained is coherent with the example provided in order to eliminate data that was created by the clonal/mutation procedure that can be harmful or that has no sense.

The next procedures complete the task with a reinforcement learning algorithm that assume as a goal state the data produced by the previous steps. This advantage of CODA creates a new generation of algorithms that should be capable of learning but reduce the necessity of data and training time, in order to model a task. Another advantage of these algorithms should be to produce own knowledge and the capability of evaluating their own, in order to produce reliable data.

CODA is an algorithm that pretends to complete the gap between data and cognition developing trust worthy responses, creating its own knowledge, measure its reliability, memorise and organise the data in order to re-use it when needed based on the immune system. These are procedures that CODA was able to emulate numerically.

**Appendices**

**Appendix**

It is important to notice that the only example provided was the one obtained with the dataglove. No information was given to the algorithm about the hand size or any parametric information. It only searched for the best possibility in the antibody population based on the

The CODA algorithm has proved to be able to use one simple example and produce new and useful data from this unique information and from there produce a grasping posture. The requirements are less than some other grasping algorithms that can correctly produce grasping postures as well but need much more information such as 3D objects [52], orientation of the hand and tracking with tags [45], tons of pre-processing hand pose (examples) needed for the algorithm to learn with expensive computational procedures for reducing dimensions [46, 47] or partial object geometry information [48]. These approaches are way more expensive not only computationally but also in the hardware required and rely on the use of big databases

CODA Algorithm is a Machine learning approach that can solve the grasping problem in robotic systems. In fact, the main algorithm is proposed as general solution when the problem can be expressed in Markov Chains. The algorithm is designed with the Computational model

The Artificial Immune System is a really broad system that has several task and subsystems as it is decentralised; therefore, numerous algorithms have been modelled in order to solve problems such as classification, fault detection among others. In particular, the AIS memory, the self-organised model, the genetic procedure in which antibodies are created and selected

The algorithm presented in the previous sections was designed in order to produce new knowledge from limited data samples in order to reduce the need of big databases of examples of an specific task, that are difficult to build and most of the time have to be paid. In the bibliography it can be often see how there is a trend to reduce the training data sets [53], or studies to select correct data sets that would be representative enough [49], reduce the use of examples in order to learn [50] or reduce the population in order to optimise the algorithm [51]. From the previous articles it can be seen that the advantage of CODA over some mentioned algorithms is that CODA can use a simple example provided by demonstration and use this information to produce more knowledge. For example in [53] training data sizes range from 47 to 17861 samples. This would mean to ask for 17861 samples of grasping postures to people which is not impossible of course but it would be expensive, time consuming and tedious. In contrast CODA will need one demonstration of the task and it would do the hard job of producing new knowledge evaluate it and then use the most capable antibodies in order to

to complete the tasks, are all features that will lead to a robust yet versatile algorithm.

of the Natural Immune System, which is an Artificial Immune System.

reward function (**Figure 13**).

278 Recent Advances in Robotic Systems

**8. Conclusion**

reproduce the task.

and more requirements than CODA does.

See **Figure 14**.


**Figure 14.** CODA algorithm pseudocode.
