Okay so I was reading about the Patriot Missile Software Bug, where to calculate the predicted range gate the missile system relied on the time keeping, however it would convert the whole/integer time number it stored (say 3600000) to 24 bit multiplying it by 1/10 (0.00011001100110011001100) to produce the time in real format in seconds, this way 'truncating' the actual time it computed before the converstion to a 'slightly smaller number' due to insufficient precision of 24 bit limitation. My question is not about the conversion or binary manipulation but rather how was the range gate calculated after taking the new calculated/truncated time into account for the purposes of establishing a 'distance/location/space' of where to look for the coming missile? Say the missile velocity is 2km/s, the time it was detected is at 100hrs.
1 Answers
there is some scientific/ engineering analysis of this defect & its background by professionals eg this turned up by the SEERI institute, Software Engr Ethics Research institute, An analysis of the patriot missile system (note, some glitch with figure(s) at time of this writing). essentially the missile tracking logic is highly time dependent and relies on the clock being accurate to predict the missile location and intercept position and steering corrections. there are many other "classic" bugs in software that are related to clock logic. analysis of the failure also includes/ points to inadequate testing.
another reference cited in that article, Roundoff error and the patriot missile / Robert Skeel, SIAM News.
this particular defect is getting some attention lately as it was recently ranked in the 5 most infamous software bugs of all time and of course its related to missile defense technology, a hot topic during wars.
- 11,162
- 1
- 28
- 52