| Input:, , , , |
| Output: execution code. |
| 1 code =0; //Initial value of execution code. |
| 2 ; //List ofto be evaluated. |
| 3 =1; //Times of coordinate inversion. |
| 4 axis = X; |
| 5 ifthen://Judge whether the localization is successful. |
| 6 code =1; |
| 7 break; //End the localization. |
| 8 end. |
| 9 whiledo://Detect anomalous probe combination. |
| 10 if 3 then://All coordinate inversions are tried. |
| 11 code = 2; |
| 12 break; //End inversion process. |
| 13 end. |
| 14 if axis == X then://Invert coordinates of x-axis generated probe. |
| 15 = (, 0); |
| 16 = LS(, ); //Estimate target location based on new probes. |
| 17 update ; //Obtain target distance at the evaluation location. |
| 18 .append(()); |
| 19 = ; |
| 20 axis = Y; |
| 21 continue; //Verification. |
| 22 end. |
| 23 else. |
| 24 if axis == Y then://Invert coordinates of the probe on the y-axis. |
| 25 = (, 0); |
| 26 = (0,); |
| 27 = LS(, ); //Estimate target location based on new probes. |
| 28 update ; //Obtain target distance at the evaluation location. |
| 29 .append(()); |
| 30 = ; |
| 31 axis = XY. |
| 32 continue; //Verification. |
| 33 end. |
| 34 else. |
| 35 = (, 0); //Invert coordinates of 2 generated probes. |
| 36 = (0,); |
| 37 = LS(, ); //Estimate location based on new probes. |
| 38 update ; //Obtain target distance at the evaluation location. |
| 39 .append(()); |
| 40 = ; |
| 41 continue; //Verification. |
| 42 end. |
| 43 end |
| 44 return:, code. |