ROBOTIC CATHETER AND AUTOMATIC NAVIGATION SYSTEM
20240307123 ยท 2024-09-19
Inventors
Cpc classification
A61B2017/00703
HUMAN NECESSITIES
A61B2034/104
HUMAN NECESSITIES
A61B2034/102
HUMAN NECESSITIES
A61B2034/105
HUMAN NECESSITIES
A61B2034/301
HUMAN NECESSITIES
A61B2034/107
HUMAN NECESSITIES
A61B34/10
HUMAN NECESSITIES
International classification
Abstract
This relates to a catheter robot including an automatic navigation system, for an elongate flexible medical instrument with a free distal end, implementing an automatic navigation method including successively: a step of creating a modeling: of the elongate flexible medical instrument, of a blood circulatory system, of the interaction thereof, a step of determining: a path to be followed, between the start point and the point of arrival, a step of planning a sequence of commands for moving the elongate flexible medical instrument, obtained by a tree search procedure, a step of implementing the planned sequence of commands, with compensation for any differences with respect to the determined path along the modeled system, by closed-loop regulation.
Claims
1. Catheter robot comprising an automatic navigation system, for an elongate flexible medical instrument that is a catheter or a catheter guide, with free distal end, implementing an automatic navigation method comprising successively: a step of creating a modeling: of the elongate flexible medical instrument, of a blood circulatory system of a patient, along which the elongate flexible medical instrument is intended to move, of the interaction between this system and this elongate flexible medical instrument, by modeling the contact between this elongate flexible medical instrument and one or more walls of a blood vessel or vessels in this system, from one or more images of the actual blood circulatory systemof this patient, a step of determining: the position of a start point in the modeled system, the position of a point of arrival in the modeled system, a path to be followed, by the elongate flexible medical instrument, between the start point and the point of arrival, by determining a path, along the modeled system, between the start point and the point of arrival, with preferentially obligatory passage points in the modeled system, a step of planning a sequence of commands for movement of the elongate flexible medical instrument, obtained by a tree search procedure which, by using the modeling of the elongate flexible medical instrument and the modeling of said contact: simulates various possible movements of the elongate flexible medical instrument in the modeled system, evaluates the results of the simulation of these various possible movements, selects the most promising simulated movements among these various possible movements, to best follow the determined path with respect to one or more given criteria, a step of implementing the planned sequence of commands, along the actual blood circulatory system of said patient, with compensation for any differences with respect to the determined path along the modeled system, by closed-loop regulation.
2. The catheter robot comprising an automatic navigation system, for an elongate flexible medical instrument that is a catheter or a catheter guide, with free distal end, implementing the automatic navigation method comprising successively: a step of creating a modeling: of the elongate flexible medical instrument, of a blood circulatory system of a patient, along which the elongate flexible medical instrument is intended to move, of the interaction between this system and this elongate flexible medical instrument, by modeling the contact between this elongate flexible medical instrument and one or more walls of a blood vessel or vessels in this system, from one or more images of the actual blood circulatory system of this patient, a step of determining: the position of a start point in the modeled system, the position of a point of arrival in the modeled system, a path to be followed, by the elongate flexible medical instrument, between the start point and the point of arrival, by determining a path, along the modeled system, between the start point and the point of arrival, with preferentially obligatory passage points in the modeled system, a step of planning a sequence of commands for movement of the elongate flexible medical instrument, obtained by a tree search procedure which, by using the modeling of the elongate flexible medical instrument and the modeling of said contact: simulates various possible movements of the elongate flexible medical instrument in the modeled system, evaluates the results of the simulation of these various possible movements, selects the most promising simulated movements among these various possible movements, to best follow the determined path with respect to one or more given criteria.
3. The catheter robot according to claim 1, wherein: said automatic navigation method is able to be implemented in real time, said tree search procedure of the planning step simultaneously implements in parallel, for a plurality of possible different movements of the elongate flexible medical instrument in the modeled system, for at least 2 or at least 3 or at least 4 possible different movements, the following planning cycle: simulating a possible movement of the elongate flexible medical instrument in the modeled system, evaluating the result of the simulation of this possible movement, selecting the simulated movement, if the simulated movement is one of the most promising among the various possible movements, to best follow the determined path with respect to one or more given criteria.
4. The catheter robot according to claim 1, wherein, if at the end of said implementation step one or more differences to be compensated for are evaluated as being too great, with respect to one or more given criteria: then an adjustment of the modeling is made, and, on the adjusted modeling, the following are next implemented: first a new step of determining a new path, next a new step of planning a new sequence of commands for moving the elongate flexible medical instrument, from the new path determined, finally, where applicable, a new step of implementing the new planned sequence of commands.
5. The catheter robot according to claim 1, wherein the step of creating modeling makes a representation of the physical system encompassing both the elongate flexible medical instrument and the blood circulatory system of a patient, along which the elongate flexible medical instrument is intended to move, by finite-element simulation.
6. The catheter robot according to claim 4, wherein: the blood circulatory system of the patient is modeled: either by point clouds, or by meshings, or by center lines associated with their respective diameters, or by implicit surfaces.
7. The catheter robot according to claim 4, wherein: the modeling of the blood circulatory system of the patient incorporates the movements affecting this blood circulatory system of the patient, and preferentially incorporates the deformations of the heart of the patient when the heart is beating and/or the deformations caused by the breathing of the patient.
8. The catheter robot according to claim 1, wherein: in said determination step: said start point in the modeled system is positioned at the outlet of the guide catheter of the catheter robot, at the ostium, and said point of arrival in the modeled system is positioned in the patient, at the lesion to be treated.
9. The catheter robot according to claim 1, wherein: in said determination step: the path to be followed is determined by interpolation between said start point and said point of arrival, and preferentially by the use of a Dijkstra graph travel algorithm applied to the center lines of the blood vessels of the blood circulatory system.
10. The catheter robot according to claim 1, wherein said tree search procedure: evaluates the results of the simulation of these various possible movements by attributing marks to each branch of the tree, and then calculating a value for each node in the tree from the marks attributed to the branches leading to this node, selects the most promising simulated movements among these various possible movements, which are the simulated movements leading to the node for the highest value, to guide its exploration in the tree.
11. The catheter robot according to claim 10, wherein said tree search procedure: attributes the marks in the following manner: if the elongate flexible medical instrument advances along the determined path, then the corresponding possible movement of the elongate flexible instrument in the modeled system receives a positive mark, if the elongate flexible medical instrument advances otherwise than along the determined path or if the elongate flexible medical instrument retracts or if the elongate flexible medical instrument stagnates along the determined path, then the corresponding possible movement of the elongate flexible medical instrument in the modeled system receives a zero or negative mark.
12. The catheter robot according to claim 10, wherein said tree search procedure: attributes the marks in the following manner: if the possible movement of the elongate flexible medical instrument along the determined path is considered to be similar to that which would result from the action of a doctor selected as a reference, then this possible movement receives a positive mark, if the possible movement of the elongate flexible medical instrument along the determined path is considered to be different from that which would result from the action of a doctor selected as a reference, then this possible movement receives either a zero mark or a negative mark.
13. The catheter robot according to claim 10, wherein said tree search procedure: partly attributes the marks in the following first manner: if the elongate flexible medical instrument advances along the determined path, then the corresponding possible movement of the elongate flexible medical instrument in the modeled system receives a positive mark, if the elongate flexible medical instrument advances otherwise than along the determined path or if the elongate flexible medical instrument retracts or if the elongate flexible medical instrument stagnates along the determined path, then the corresponding possible movement of the elongate flexible medical instrument in the modeled system receives a zero or negative mark, also partly attributes the marks in the following second manner: if the possible movement of the elongate flexible medical instrument along the determined path is considered to be similar to that which would result from the action of a doctor selected as a reference, then this possible movement receives a positive mark, if the possible movement of the elongate flexible medical instrumentalong the determined path is considered to be different from that which would result from the action of a doctor selected as a reference, then this possible movement receives either a zero mark or a negative mark, uses, with preferentially predetermined weightings, optionally different from each other, respectively the first manner and the second manner.
14. The catheter robot according to claim 10, wherein the value of each node is calculated by totaling the marks of each branch leading to this node, or the value of each node is calculated in accordance with the UCB method.
15. The catheter robot according to claim 10, wherein said tree search procedure returns to pass through a node with a less good value, after a node with a better value has proved to be a dead end.
16. The catheter robot according to claim 1, wherein said step of implementing the planned sequence of commands is implemented by direct command implementing the movements of the actuators controlling the movements of the elongate flexible medical instrument.
17. The catheter robot according to claim 1, wherein said step of implementing the planned sequence of commands is implemented by inverse command calculating the movements of the actuators from the movements of the elongate flexible medical instrument.
18. The catheter robot according to claim 1, wherein, the catheter robot comprising an automatic navigation system for a plurality of elongate flexible medical instruments among which there are at least a catheter and a catheter guide associated with this catheter, these elongate flexible medical instruments being with a free distal end.
19. Automatic navigation system for an elongate flexible medical instrument that is a catheter or a catheter guide, of a catheter robot, with free distal end, implementing an automatic navigation method comprising successively: a step of creating a modeling: of the elongate flexible medical instrument, of a blood circulatory system of a patient, along which the elongate flexible medical instrument is intended to move, of the interaction between this system and this elongate flexible medical instrument, by modeling the contact between this elongate flexible medical instrument and one or more walls of a blood vessel or vessels in this system, from one or more images of the actual blood circulatory system of this patient, a step of determining: the position of a start point in the modeled system, the position of a point of arrival in the modeled system, a path to be followed, by the elongate flexible medical instrument, between the start point and the point of arrival, by determining a path, along the modeled system, between the start point and the point of arrival, with preferentially obligatory passage points in the modeled system, a step of planning a sequence of commands for movement of the elongate flexible medical instrument, obtained by a tree search procedure which, by using the modeling of the elongate flexible medical instrument and the modeling of said contact: simulates various possible movements of the elongate flexible medical instrument in the modeled system, evaluates the results of the simulation of these various possible movements, selects the most promising simulated movements among these various possible movements, to best follow the determined path with respect to one or more given criteria, a step of implementing the planned sequence of commands, along the actual blood circulatory system of said patient, with compensation for any differences with respect to the determined path along the modeled system, by closed-loop regulation.
20. Automatic navigation system for an elongate flexible medical instrument that is a catheter or a catheter guide, of a catheter robot, with free distal end, implementing an automatic navigation method comprising successively: a step of creating a modeling: of the elongate flexible medical instrument, of a blood circulatory system of a patient, along which the elongate flexible medical instrument is intended to move, of the interaction between this system and this elongate flexible medical instrument, by modeling the contact between this elongate flexible medical instrument and one or more walls of a blood vessel or vessels in this system, from one or more images of the actual blood circulatory system of this patient, a step of determining: the position of a start point in the modeled system, the position of a point of arrival in the modeled system, a path to be followed, by the elongate flexible medical instrument, between the start point and the point of arrival, by determining a path, along the modeled system, between the start point and the point of arrival, with preferentially obligatory passage points in the modeled system, a step of planning a sequence of commands for movement of the elongate flexible medical instrument, obtained by a tree search procedure which, by using the modeling of the elongate flexible medical instrument and the modeling of said contact: simulates various possible movements of the elongate flexible medical instrument in the modeled system, evaluates the results of the simulation of these various possible movements, selects the most promising simulated movements among these various possible movements, to best follow the determined path with respect to one or more given criteria.
21-22. (canceled)
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0068]
[0069]
[0070]
[0071]
[0072]
[0073]
[0074]
[0075]
[0076]
[0077]
[0078]
[0079]
[0080]
[0081]
[0082]
[0083]
[0084]
[0085]
[0086]
[0087]
[0088]
[0089]
[0090]
[0091]
[0092]
[0093]
[0094]
DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
[0095] The invention proposes an automation of the navigation of one or more flexible elongate medical instruments, for example a catheter guide and a catheter. This automation will successively implement the following steps. First a first step of creating a model of the elongate flexible medical instruments, for example guide, catheter, catheter guide, and the environment thereof, for example the arteries and/or the veins of the blood system of the patient wherein the elongate flexible medical instruments will move. Next, a second step of defining a start point, for example the ostium, and a point of arrival, for example a distal part of the artery close to the lesion to be treated in the patient, in the model generated at the previous step, so as to obtain a path to be followed for the elongate flexible medical instrument in the blood system of the patient, for example following a path along the arteries of the patient. Then a third step of planning a sequence of commands to be implemented so that the elongate flexible medical instrument follows the previously defined path, this planning being implemented by a tree search of the various movements of the elongate flexible medical instrument, this planning being implemented in the previously generated model. Finally, a fourth step of implementing the sequence of previously defined commands on the catheter robot.
[0096] In the first step, the model that will be constructed during this first step is a representation of the physical system comprising the arteries of the blood system of the patient, obtained from medical imaging of the patient, and the elongate flexible medical instruments that navigate in these arteries of the blood system of the patient. Several methods can be used for generating this model.
[0097] In one variant used, the model is a finite element simulator, of the simulation FEM type. The arteries of the blood system of the patient are represented by a 3D geometric model (three-dimensional) such as for example point cloud, meshing, center line and diameter, implicit surface. The elongate flexible medical instruments are modeled by beams, for example by Kirchhoff beams or by Cosserat beams.
[0098] The model can incorporate the movements of the environment, for example the deformations of the heart when it beats.
[0099] In the second step, the start point and the point of arrival are 3D coordinates defined in the previously generated model. The start point corresponds in general to the outlet of the catheter guide at the ostium. The point of arrival in general corresponds to the lesion to be treated, or more precisely to a selected point in the lesion to be treated.
[0100] The path is obtained by interpolation between the start point and the point of arrival. The path may for example be determined by a Dijkstra graph travel algorithm applied to the center line of the arteries of the blood system of the patient.
[0101] In the third step, the planning of the sequence of commands is obtained by tree search, which is also referred to as predictive command (or Model Predictive Control).
[0102] This tree search is implemented by exploring sequences of commands in the model to predict the effects thereof, and thus to find a suitable command sequence.
[0103] The algorithm may for example simulate each possible movement from a start position, and each of the states of the model, a state of the model including the position of the elongate flexible medical instrument as well as the position of the arteries of the blood system of the patient, resulting from these commands, are marked in order to explore as a priority the states with the best mark. The mark given by the algorithm may also be termed recompense.
[0104] The algorithm may for example interact with its environment by 4 discrete actions, which are: [0105] either advancing by N mm (millimeters), [0106] or turning through M radians, [0107] or turning through-M radians, [0108] or retracting by N mm, [0109] N and M advantageously being predefined constants.
[0110] The various states of the physical system constitute the nodes of a tree to be travelled over. The branches of this tree are the actions making it possible to pass from one node to the other, and therefore from one state of the physical system to the other.
[0111] Each node of the tree is associated with a value evaluating the potential of each node so that a node with the highest value has more chances of being on the optimal path between the start point and the point of arrival than a node with a lower value. This value is preferably determined in the following manner:
Vnode=Vparent+g.sup.d?1*Recompense+(g.sup.d/(1?g))
[0112] With Vnode being the value of the current node, Vparent the value of the parent node, g the discount factor, d the depth of the node in the tree, Recompense the recompense corresponding to the action going from the parent node to the current node.
[0113] In a first possible variant of the third step, these marks are determined in the following manner. If the elongate flexible medical instrument advances along the path defined at the second step, then it receives a positive mark. In all the other cases, i.e. if the elongate flexible medical instrument advances in an arterial branch not corresponding to the path defined at the second step, or if the elongate flexible medical instrument retracts, then it receives a zero or negative mark.
[0114] In a second possible variant of the third step, the marks (or recompenses) are attributed so that the movements that are closest to those that would be performed by a doctor obtain the best marks (Inverse Reinforcement Learning), and the movements that would not be selected by a doctor obtain zero or negative marks.
[0115] The algorithm attributes a value based on the marks to each node in the tree and uses this value for guiding its exploration, the exploration being performed as a priority on the nodes with the highest value.
[0116] According to a first possible option, this value can be the total recompense of the node and of all its parents in the tree. According to a second possible option, the value is determined according to the UCB method (standing for Upper Confidence Bound).
[0117] If a branch that appeared promising at the start is finally a dead end, there is a rearward movement towards the branches which, initially, had a less high value, and therefore less promising at the start and which therefore had not been selected at that moment.
[0118] In a third possible variant of the third step, the exploration of the movement by the tree search is implemented not systematically, but with a predetermined algorithm, for example resulting from an end-to-end learning. The exploration of the movements by the tree search can also be implemented by imitating movements that would have been made by a doctor. In this third variant, the exploration of the movements is implemented during A % of the time by using the values determined as at the first variant, and B % of the time by attempting to imitate the movements of a doctor as at the second variant. The third variant amounts for example to combining for 50% of the time the first variant and for 50% of the time the second variant, or for example combining for 80% of the time the first variant and for 20% of the time the second variant.
[0119] Examples of a tree search algorithm are: [0120] either a Monte Carlo tree search (MCTS), [0121] or upper bound of the confidence interval applied to the trees (UCT, standing for Upper Confidence Bound applied to Trees), [0122] or optimized planner for deterministic systems (OPD), [0123] or open loop optimistic planning (OLOP).
[0124] In the tree search algorithm used here, the tree is developed in 3 phases: [0125] First of all a selection, where the node with the highest value is selected, [0126] Then an expansion, where all the possible actions from this selected node are simulated and new child nodes are created, [0127] Next a backpropagation, where the values of the newly created child nodes are calculated from the recompenses associated with each action. These values are next propagated first to the parent nodes and next recursively to the root node, [0128] These 3 steps can be repeated several times. Advantageously the number of repetitions of these 3 steps is predefined, thus making it possible to ensure that the algorithm converges in a finite time. This number of repetitions is called the budget.
[0129] In a fourth step, the sequence of commands planned at the third step is implemented by the catheter robot in order to move the elongate flexible medical instrument. This implementation can be done by a direct command algorithm, wherein the command is a movement of the actuators, or an inverse command algorithm in which the command is a movement of the elongate flexible medical instrument from which the corresponding movements of the actuators are calculated.
[0130] A closed-loop control system is used for implementing the sequence of commands. This closed loop uses the medical imaging system in order to follow over time the position of the elongate flexible medical instrument that is being moved by the catheter robot, and also in order to check that the elongate flexible medical instrument is indeed following the path defined during the second step. If differences in position are noted, then there are two possibilities that are either being able to compensate for these differences with the closed-loop regulation or, if these differences are too great, to proceed with a replanning of the command sequence from the current state of the system, which becomes the new start point for the second step, and said second step is then reiterated.
[0131] The use of the closed loop with the medical imaging can make it possible no to plan all the commands to go as far as the point of arrival, but to plan only the commands over a certain step. It is in fact considered in this case that, in particular because of the simplifications of the model, after several time steps, the model would not entirely correspond to reality, and that then it could be more advantageous to implement an adjustment with the medical imagery and then replanning.
[0132]
[0133] The patient 1 is for example lying on an examination bed or table 2, to which a catheter robot 4 controlled by a control unit 5 is attached, using the images of the patient 1 that are obtained by a medical imaging system 3.
[0134]
[0135] The blood system 21 of the patient comprises a main artery 22 that will gradually divide into several secondary arteries 23, 24, 25, 26. The point of arrival, i.e. the lesion of the patient to be treated, is the point 27 located along the secondary artery 23. The catheter guide 28 has a curved distal end 29 that is located on the main artery 22 at a first branching 51. At this first branching 51, the curved distal end 29 of the catheter guide 28, which descends (on
[0136]
[0137] From the position 30, on which the arteries 35 of the blood system of the patient can be seen, and the curved distal end 37 of a catheter guide 36 that progresses along these arteries 35, towards its point of arrival 38, which is located in the lesion of the patient to be treated. From this position 30, 4 actions are possible for the curved distal end 37 of a catheter guide 36: [0138] either advancing along these arteries 35, which is shown in the position 31, where the curved distal end 37 of a catheter guide 36 that has advanced towards its point of arrival 38 can be seen, [0139] or turning in a direction about its longitudinal axis, which is shown in the position 32, where the curved distal end 37 of a catheter guide 36 can be seen, that has remained in place with respect to its point of arrival 38, but which has turned about the longitudinal axis of the catheter guide 36, in one direction, for example in the clockwise direction, for example to better approach the next branching or the next artery curvature 35, or to better advance thereafter, [0140] or turning in the other direction about its longitudinal axis, which is shown in the position 33, where the curved distal end 37 of a catheter guide 36 can be seen, which has remained in position with respect to its point of arrival 38, but which has turned about the longitudinal axis of the catheter guide 36, in the other direction, for example in the anticlockwise direction, for example to better approach the next branching or the next artery curvature 35, or to better retract thereafter, [0141] or retracting along these arteries 35, which is shown in the position 34, where the curved distal end 37 of a catheter guide 36 that has retracted by moving away from its point of arrival 38 can be seen.
[0142]
[0146]
[0147] This first type of use corresponds to a sequential use of the tree search algorithm, the expansion of the tree takes place in three phases: [0148] First a selection, where the leaf node with the highest value is selected, [0149] Then an expansion, where all the possible actions from this selected node are simulated and new child nodes are created, [0150] Next a backpropagation, where the recompenses associated with each action are recovered and propagated first to the parent nodes and next recursively as far as the root node, [0151] These 3 steps can be repeated several times. Advantageously the number of repetitions of these three steps is predefined, thus making it possible to ensure that the algorithm converges in a finite time. This number of repetitions is called the budget.
[0152]
[0153] The various nodes 10 are distributed in various levels, here only the root node 11 is shown. Its default value is 0. This node being the only one, it is necessarily this one that is selected.
[0154]
[0155] The various nodes 10 are distributed in various levels, the root level 11, and the first filiation level 12 (also referred to as depth 1).
[0156] The passage between two nodes, with different filiations, and therefore from a filiation level of the parent type to a filiation level of the child type, for example from the root level 11 to the first filiation level 12, is an action 20 (to be selected among the 4 actions already presented, which are: advancing or turning in one direction or turning in the other direction or retracting).
[0157] From the root node, the expansion of possible actions 20 is implemented, resulting in 4 new child nodes at the first filiation level 11.
[0158]
[0159] Once the values have been determined for these 4 new child nodes at the first filiation level 11, of this parent node, which is the root node, namely, from left to right, the values 3, 2, 1 and 3, the highest of these values, namely the value 3 of the first node or of the fourth node (starting from the left in
[0161]
[0162] The various nodes 10 are distributed in various levels, the root level 11, the first filiation level 12 (also referred to as depth 1).
[0163] The leaf node (i.e. the nodes that do not have children in the tree) of the first filiation level 12 that is selected is the node furthest to the right on
[0164]
[0165] The various nodes 10 are distributed in various levels, the root level 11, the first filiation level 12, the second filiation level 13.
[0166] The passage between two nodes with different filiations, and therefore from a filiation level of the parent type to a filiation level of the child type, for example from the root level 11 to the first filiation level 12, or from the first filiation level 12 to the second filiation level 13, is an action 20.
[0167] From the leaf node selected at the first filiation level 12, the node furthest to the right of
[0168]
[0169] Once the values have been determined for these 4 new child nodes at the second filiation level 13 (namely from left to right the values 0, 0, 2 and 0), the highest of these values (namely the value 2 of the third node starting from the left in
[0172]
[0173] The various nodes 10 are distributed in various levels, the root level 11, the first filiation level 12 (also referred to as depth 1) and the second filiation level 13 (also referred to as depth 2).
[0174] The leaf that is now selected is the node furthest to the left on
[0175]
[0176] From the node selected at the first filiation level 12, the node furthest to the left on
[0177]
[0178] Once the values have been determined for these 4 new child nodes at the second filiation level 13, namely from left to right the values 4, 2, 2 and 2, the highest of these values (4) is backpropagated: [0179] to its parent node of the first filiation level 12, the value of which then changes from 3 to 4, [0180] as well as to the node of the root level 11, the value of which changes from 3 to 4.
[0181]
[0182] The leaf node that is selected is the node of value 4 located at the second filiation level 13 and which is furthest to the left on
[0183]
[0184] From the leaf node selected at the second filiation level 13, the node furthest to the left on
[0185]
[0186] Once the values have been determined for these 4 new child nodes at the third filiation level 14 (namely, from left to right, the values 0, 5, 0 and 0, the highest of these values (namely the value 5 of the second node starting from the left in
[0190]
[0191]
[0192] The two leaf nodes selected are: firstly the leaf node of value 4 that is located at the second filiation level 13 (the leaf node furthest to the left on
[0193]
[0194] From the first leaf node selected (of value 4), which is at the second filiation level 13, the possible actions 20 are expanded, resulting in 4 new child nodes at the third filiation level 14.
[0195] In parallel with this first expansion, from the second leaf node selected (or value 3), which is at the second filiation level 13, the possible actions 20 are expanded, resulting in 4 new child nodes at the third filiation level 14.
[0196]
[0197] The values are determined for these 4 new child nodes at the third filiation level 14 of the first parent node previously selected at the second filiation level 13, the values being 0, 5, 0 and 0 (from left to right). Once the values have been determined for these 4 new child nodes at the third filiation level 14, the highest of these values (namely the value 5 of the second node starting from the left in
[0201] The values are determined for these 4 new child nodes at the third filiation level 14 of the second parent node previously selected at the second filiation level 13, the values being 6, 0, 0 and 0 (from left to right). Once the values have been determined for these 4 new child nodes at the third filiation level 14, the highest of these values (namely the value 6 of the fifth node starting from the left in
[0205]
[0206] This third type of use corresponds to a parallel expansion based on a plurality of values (two values in the example presented on
[0207]
[0208] The various nodes 10 are distributed in various levels, here only the root level 11 is shown. Its double default value is equal to 0-0 (first value of 0, and second value of 0).
[0209]
[0210] The various nodes 10 are distributed in various levels, the root level 11, the first filiation level 12 (also referred to as depth 1).
[0211] The passage between two nodes, of different filiations, and therefore from a filiation level of the parent type to a filiation level of the child type, for example from the root level 11 to the first filiation level 12, is an action 20 (to be selected from the 4 actions already presented which are: advancing or turning in one direction or turning in the other direction or retracting).
[0212] From the root node, the possible actions 20 are expanded, resulting in 4 new child nodes at the first filiation level 11.
[0213]
[0214] Once the double values have been determined for these 4 new child nodes at the first filiation level 11, of this parent node that is the root node, namely from left to right the double values 4-4, 2-2, 1-5 and 3-6, the highest of these values, namely the first value 4 of the first node and the second value 6 of the fourth node (starting from the left in
[0215] > to its parent node, which is the root node, the double value of which then changes from 0-0 to 4-6.
[0216]
[0217] The various nodes 10 are distributed in various levels, the root level 11, the first filiation level 12 (also referred to as depth 1).
[0218] The leaf nodes (i.e. the nodes that do not have any children in the tree) that are selected are: [0219] firstly the node furthest to the left on
[0221]
[0222] From the two leaf nodes selected that are located at the first filiation level 12, firstly the node furthest to the left on
[0223]
[0224] Once the double values have been determined for these 8 new child nodes at the second filiation level 13, namely, from left to right, the double values 4-1, 2-4, 2-3, 2-1, 0-4, 0-1, 3-1, and 0-0: [0225] the highest of these first values, namely the first value 4 of the first node (starting from the left in
[0231]
[0232] The leaf node that is selected for the first value is the leaf node located at the second filiation level 13, which is furthest to the left in
[0233] The leaf node that is selected for the second value is the leaf node located on the first filiation level 12, which is the third node furthest to the left on
[0234]
[0235] From the two leaf nodes selected that are located firstly at the second filiation level 13 for the first leaf node selected with the first highest value 4, and secondly at the first filiation level for the second leaf node selected with the second highest value 5, the possible actions 20 are expanded. This results in 8 new child nodes, including 4 new child nodes at the third filiation level 14 and 4 new child nodes at the second filiation level 13 (4 child nodes per parent node previously selected). The expansions from the two leaf nodes selected are implemented in parallel.
[0236]
[0237] Once the double values have been determined for these 4 new child nodes at the third filiation level 14, namely from left to right, the double values 0-0, 5-1, 0-1 and 0-0: [0238] the highest of the first values, namely the value 5 of the second node (starting from the left in
[0243] Likewise, once the double values have been determined for the 4 new child nodes at the second filiation level 13, namely from left to right the double values 0-0, 5-1, 0-1 and 0-0: [0244] the highest of the first values, namely the value 1 of the seventh node (starting from the left in
[0248] Naturally the present invention is not limited to the examples and to the embodiment described and shown, but is capable of numerous variants accessible to a person skilled in the art. In particular, the number of actions 20 is not limited to 4. It is possible for example to increase the number of possible actions 20 by establishing the following actions: advancing, retracting, turning in a first direction at an angle of X?, turning in the first direction at an angle of Y?, turning in a second direction at an angle of X?, and turning in the second direction at an angle of Y?. The first direction of rotation being opposite to the second direction of rotation, and X being less than Y.
[0249] According to a possible embodiment, an additional action may be of implementing a command according to another algorithm for N time steps, for example an inverse command of a QP (standing for quadratic programming) constrained optimization algorithm. Another additional action may also be requesting the doctor to manipulate the instrument during N time steps.