Hildreth’s quadratic programming technique (HQP algorithm) | |
---|---|

For iterations 1 to 40 1. Save λ _{current} →λ_{previous}2. Start outer loop to build λ, i = 0 to # elements in M or M_{size}a. w = 0; b. start inner loop to build λ, j starts at 0 i. w = w + P[i][j]∙λ[j]ii. GOTO start inner loop If j< M_{size},c. w = w + K[i]-P[i][i]∙λ[i]d. λ _{test} = -w/P[i][i]e. if λ _{test} < 0 then λ[i] = 0, else λ[i] = λ_{test}f. GOTO start outer loop if i< M_{size}3. Check convergence a. calculate the Euclidean length of previous λ b. calculate the Euclidean length of current λ c. Compare ratio to reference value d. if converged, exit iteration, GOTO calculate new Δ u4. Else execute next iteration, GOTO 1. 5. Calculate new Δ ua. Start loop, j = 0 to j= M_{size}i. Δ u_{c} = Δu_{c} +∙λ[j] ME^{−1}[j]b. GOTO start loop if j< M_{size}c. Δ u_{k+1} = Δu°-Δu_{c}
| |

6. End |