SolveMalfunctions
From Protoi Healing
Name | SolveMalfunctions |
---|---|
Author | Frank |
Brief descr. | Tries to solve malfunctions. |
Status | public |
Terms | sub-macro only |
Resources for the UserMacro | |||||
---|---|---|---|---|---|
1 | 10 | 100 | |||
1k | 100k | 1kk | |||
10kk | Gmax | Omax | |||
Resources with butterfly option | |||||
1 | 10 | 100 | |||
1k | 100k | 1kk | |||
10kk | Gmax | Omax |
Command syntax
Description
- This is a sub-macro which implements a standard procedure to solve malfunctions. It is typically implemented as a THREAD in the calling macro. A calling macro should provide the two options {Use butterfly} and {Use solver}. Both, butterfly and solver, need very big resources.
- Some example:
- First you implement a section to check if there is malfunction:
### '''IF''' malfunctions were found, '''DO:''' #### '''THREAD-START''' <X> ### '''IF-END'''
- Second you implement the THREAD to handle the malfunctions:
# '''THREAD''' <X> {{Comment|Try to find solutions for the malfunctions}} ## '''IF''' option ''{Use solver}'' was not given, '''DO:''' ### '''THREAD-STOP''' <X>. ## '''IF-END''' ## '''SUBMACRO-START''' 'SolveMalfunctions' ''{Use butterfly}'' # '''THREAD-END'''
{Use butterfly}
- This option activates the use of the butterfly-method inside the macro algorithm. This gives much more power, but also needs a lot of resources from Skib. You should be aware of this!
Algorithm of User Macro
- Use DATABASE 'Malfunction'.
- 'Own actions' are defined as all actions done by the calling macro.
- 'Counter actions' are defined as all counter actions done in the context of the calling macro.
- LOOP <T:15seconds>
- Scan all context of the calling macro.
- TRY to identify all 'own actions' and all 'counter actions' in all context of the calling macro.
- TRY to trace all found 'own actions' and all 'counter actions'.
- TRY to identify all 'malfunctions' in all context of the calling macro.
- TRY to trace all found 'malfunctions'.
- Create an optimal solution for all 'malfunctions'.
- Create optimal procedures for the solution.
- TRY to apply the solution by using the optimal solution procedures.
- IF the former solution or parts of the solution repeatedly failed and the option {Use butterfly} was given, DO:
- Use butterfly-method for the solution.
- IF-END
- TRY to identify the success of the solution and procedure.
- Store all successful parts of the solution and the procedure in the 'Malfunction' DATABASE.
- LOOP-END