Jump to content

On predicting in flight collisions


RFguy

Recommended Posts

The last few weeks I've been umming and ahhing using the ADSB data transmitted by most GA aircraft and many SKyEcho equipped RA aircraft, for the purposes of predicting  a collision.

 

This has been  done in a rather crude method with TCAS over the years, and I have no doubt there systems are improvement.

But having GPS location in x,y,z  from surrounding aircraft gives us a silver bullet- except that pilots fly planes, not computers, it it needs to be a predictor with finesse. 

 

To predict a collision, we need to use a predictor. A 3D polynominal curve fit doesnt cut the mustard.  WHat we need is a method to predict where an object will be in the future, and this is from prior observations, and any errors in our estimations should can BACK into the system to do a better job of predicting next time. Just like if you are doing something on the mill, and you notice despite calculating the length you need,  the actual appears to be in error so next time to take off 2% etc.

 

Fortunately, there Kalman filter. developed in 1960, used for predicting where bodies will be in the future, from any number of inputs. whether it is where the missle is going to hit, or where the space probe might be in 1 year. And it works particularly well with noisy (inexact and varying ) measurements. 

 

So far I've just used X,Y,Z (3D) position) to describe the state of a aircraft. Of course from two separate measurements, you can calculate velocity, and three, acceleration.

Currently I am only using a 3D position. This is quite effective because I get an update from the airplane every second on ADSB.  However some systems might only get a position fix every say 10 seconds, but they can also measure the acceleration and velocity of that object (like a missile) and they can do a good job of predicting.

 

Using 3D position from GPS I get  present state inputs and  I have a Kalman  filter working in 3 dimensions. If I had velocity also in XYZ, then it would be a 6 dimension input. If I had acceleration in XY but not Z it would be a 8 dimension input Given we have regular position fixes, I dont know how much better it would be to have other state inputs.

 

So, I've been receiving on ADSB predicting aircraft flying overhead sydney-melbourne. and a few going into Canberra airport. When the aircraft puts in its 90 deg turn, the Kalman filter misses that for the first 2 updates , but then figures it out and is back on track. cant do that with a polynominal curve fit.  Impressive. The math is pretty involved. 

 

Where do I want to go with this - It would be useful to have a box that can listen to the ADSB info coming out of a skyecho, and then generating some sort of warning or state to the pilot of their impending doom.

I dont who what is done in TCAS, early or modern... IE whether it tells you where the aircraft is, OR what it wants you to do .

 

In a augmented reality world youd be flying along and the aircraft would be visible in you head space. 

They do this in the very latest fight jet helmets and canopies.....

 

But in our case it might just make the pilot aware of other aircraft (and not provide suggestions) . 

GLEN.

  • Like 2
  • Informative 2
  • Winner 2
Link to comment
Share on other sites

Wow ... fascinating stuff, Glen.

 

Do you know the people at Tailwind Software who do AvTraffic?

https://avtraffic.com/#

Their app has an audible alert feature which must be based on some kind of risk algorithm.

But what you're on about seems at another level.

 

 

  • Agree 1
Link to comment
Share on other sites

6 hours ago, RFguy said:

The last few weeks I've been umming and ahhing using the ADSB data transmitted by most GA aircraft and many SKyEcho equipped RA aircraft, for the purposes of predicting  a collision.

 

This has been  done in a rather crude method with TCAS over the years, and I have no doubt there systems are improvement.

But having GPS location in x,y,z  from surrounding aircraft gives us a silver bullet- except that pilots fly planes, not computers, it it needs to be a predictor with finesse. 

 

To predict a collision, we need to use a predictor. A 3D polynominal curve fit doesnt cut the mustard.  WHat we need is a method to predict where an object will be in the future, and this is from prior observations, and any errors in our estimations should can BACK into the system to do a better job of predicting next time. Just like if you are doing something on the mill, and you notice despite calculating the length you need,  the actual appears to be in error so next time to take off 2% etc.

 

Fortunately, there Kalman filter. developed in 1960, used for predicting where bodies will be in the future, from any number of inputs. whether it is where the missle is going to hit, or where the space probe might be in 1 year. And it works particularly well with noisy (inexact and varying ) measurements. 

 

So far I've just used X,Y,Z (3D) position) to describe the state of a aircraft. Of course from two separate measurements, you can calculate velocity, and three, acceleration.

Currently I am only using a 3D position. This is quite effective because I get an update from the airplane every second on ADSB.  However some systems might only get a position fix every say 10 seconds, but they can also measure the acceleration and velocity of that object (like a missile) and they can do a good job of predicting.

 

Using 3D position from GPS I get  present state inputs and  I have a Kalman  filter working in 3 dimensions. If I had velocity also in XYZ, then it would be a 6 dimension input. If I had acceleration in XY but not Z it would be a 8 dimension input Given we have regular position fixes, I dont know how much better it would be to have other state inputs.

 

So, I've been receiving on ADSB predicting aircraft flying overhead sydney-melbourne. and a few going into Canberra airport. When the aircraft puts in its 90 deg turn, the Kalman filter misses that for the first 2 updates , but then figures it out and is back on track. cant do that with a polynominal curve fit.  Impressive. The math is pretty involved. 

 

Where do I want to go with this - It would be useful to have a box that can listen to the ADSB info coming out of a skyecho, and then generating some sort of warning or state to the pilot of their impending doom.

I dont who what is done in TCAS, early or modern... IE whether it tells you where the aircraft is, OR what it wants you to do .

 

In a augmented reality world youd be flying along and the aircraft would be visible in you head space. 

They do this in the very latest fight jet helmets and canopies.....

 

But in our case it might just make the pilot aware of other aircraft (and not provide suggestions) . 

GLEN.

Welcome to the first step in autonomous flight. They did that with cars; then some prick decided to turn off the road to relieve himself, the car behind sped up and the driver reached down to the floor to pick up his cigarett and ..................

  • Informative 1
Link to comment
Share on other sites

Hi Garfly.

yeah it's easy enough to do a proximity alert with gps XYZ available.  It would be a step in the future if we could see the 3d space around the aircraft in our heads in our consciousness. Or be all aware of eachother like the Borg in Star Trek. 

 

It's the stuff of ball tracking, and of ballastic tracking etc.

For linear motions, The future motion can be described with a simple set of equations like new location = old location + velocity and direction.  One second is a pretty good update rate so it doesnt have to guess much, just project a trajectory.   As an object gets closer, its worthwhile making the algorthm leaky, such that older fix points are weighted lower in the prediction, and th emost recent updates weight more heavily. 

 

 

 

  • Like 1
  • Informative 1
Link to comment
Share on other sites

RFGuy,

Your initial post is quite interesting, but hard to read simply because of typos. Could I politely ask you to proofread and correct?

 

Now to get down to business. 

Here's an explanation of a Kalman Filter in simple, introductory terms:

 

 

1.  If A and B are two planes in flight, and you are flying plane A, how is the position of plane B in (x,y,z,) co-ordinates determined by the device in plane A?

2. Does the device in plane A always refer to its position as (0,0,0) on three dimensional axes?

3. Is [new location = old location + velocity and direction] a loop in the software?

4. How many old location values would you retain to plug the leaks in the algorithm?

5. Since in most situations, aircraft are travelling at constant velocity, is it necessary to have the filter look at acceleration? Perhaps "time to intercept" might be a better value to determine.

 

Would this be relevant to your project?

 

 

  • Haha 1
  • Caution 1
Link to comment
Share on other sites

Need MESH radio network autonomy where aircraft simply are able to join a net at reasonable range and ‘talk’ between each other without intervention by th pilot.  The pilot only has a display to glance at with instructions what to do.   Linking with autopilot takes it to a whole new level of complexity and cost that people will not pay for.

Use spread spectrum technology so the MESH network is fluid in its operation.

  • Informative 1
Link to comment
Share on other sites

OME - no -- It is NOT being use in this case to provide a better estimation of things that have happened in the past - we know those . 

 

the Kalman filter and its variants is a bit more than that.

 

it is being used as a predictor .  An effort to get the state of the system in the future----

Get yourself deep in a good book full of Matrix Calculus, first.

 

THIS is a good introduction :

 

https://arshren.medium.com/an-easy-explanation-of-kalman-filter-ec2ccb759c46

 

 

Edited by RFguy
  • Informative 1
Link to comment
Share on other sites

In my experience, the sky is really big and it takes a concentrating factor ( eg an airfield or an airspace boundary or a cloud-street ) to make the risk of a midair even worth bothering about. I once calculated that if 30 planes were flying at random without looking out the window over Australia's ag lands, there would be a mid-air or a near-miss on average once in 20,000 years. Have you ever tried to meet up with a mate in another plane ? It is harder than you might think, even when you can converse with radio. However, as soon as you introduce a concentrating factor, my math was not up to the job and so thanks Glen.

  • Informative 1
Link to comment
Share on other sites

Hi Bruce

Most seem to be circuit issues, but a few have happened en route. 

 

My $64 question for the audience is "what should it do when it detects a collision is likely" ?

 

  • Like 1
Link to comment
Share on other sites

Everything must be in real time and TCAS gives appropriate directions to avoid collisions  when used. In congested situations (Clutter) there must be limits. It wouldn't help when a plane crossed the runway against what was advised by the tower any quicker than the human eye did in an incident that happened to me.. Nev

  • Informative 1
Link to comment
Share on other sites

Agreed Nev. There is no time to look at a display ! Probably will connect to intercom with voice announcement , and maybe some basic status display/bright light for the hearing impaired...

"Conflict   3 o'clock high distance 400 meters Traffic  kilo hotel alpha"  or something.  (customizable) . 

 

THAT really neds to be thought out. 

 

since it knows about ALL the airplanes (hopefully have ADSB)  is *could* recommend action but that's a big long bow to pull on liability unless the user had to acknowledge that on turn-on...

TCAS which provides advice  was developed inside a very serious framework. 

Edited by RFguy
  • Like 1
  • Informative 1
Link to comment
Share on other sites

2 hours ago, Bruce Tuncks said:

In my experience, the sky is really big and it takes a concentrating factor ( eg an airfield or an airspace boundary or a cloud-street ) to make the risk of a midair even worth bothering about. I once calculated that if 30 planes were flying at random without looking out the window over Australia's ag lands, there would be a mid-air or a near-miss on average once in 20,000 years. Have you ever tried to meet up with a mate in another plane ? It is harder than you might think, even when you can converse with radio. However, as soon as you introduce a concentrating factor, my math was not up to the job and so thanks Glen.

Yup - which is why flying the hemisphericals makes things more dangerous.....

  • Informative 1
Link to comment
Share on other sites

In principle, having vertical separation is the best to aim for. When you have "Sighted and Passed" a plane below you It poses no threat on your continued descent. If you get allocated the same level (has happened) you are set up to hit each other'.  Nev

  • Like 1
Link to comment
Share on other sites

yes. hemisphericals when a few degrees either side of 0 or 180 is always a bit of a game.

 

I heard someone get ' some focus from ATC'  in canberra the other day for flying NW at 5500 in CTA when they were  cleared to 4500..... 

 

 

  • Informative 1
Link to comment
Share on other sites

6 hours ago, RFguy said:

OME - no -- It is NOT being use in this case to provide a better estimation of things that have happened in the past - we know those .

I understand that you are looking for a PREDICTIVE result. However, you mentioned "weighting" results from earlier iterations and I understand that those prior results are  like the shaft of an arrow which make it clearer where the tip of the arrow is. My question was simply to find out how many of those prior results (weighted or not) would you restrict access to for the current calculation ?  If you obtained fresh data from your "receiver" every second, would you dump previous data after 30; 60, or 120 seconds? I was just interested in how much memory you were allocating to stored data.

 

I like "Conflict   3 o'clock high distance 400 meters Traffic  kilo hotel alpha"

  • Like 1
Link to comment
Share on other sites

Hi OME

OK. mmmm. If looking not too far  the future, perhaps 10 updates, The Kalman will find recent  trend very quickly by itself.

It doesnt store past inputs, not like a curve fit--- it is continually generating the most likely next state (state can be X, Y Z location, oir X, Y Z velocity, or X, Y Z acceleration or all of those) . 

If you really want it to ignore the old stuff, simply rerun the filter from a 'later' time- not including early fixes in the dataset.  I'll generate some graphical examples.

 

"Conflict   3 o'clock high distance 400 meters Traffic  kilo hotel alpha" is a good start. If thruster88 is coming in from 3 oclock high 400meters away, by the time you comprehend this, he's probably 200m away. 

 

I would love to have some sort of 3D 'ball' on the instrument panel that you could see the planes in a sphere around you like little bright dots.

 

I'll get the  aircraft going around the circuit in canberra sorted and generate some actual and predicted path maps for you all. 

 

 

Edited by RFguy
  • Informative 1
Link to comment
Share on other sites

6 minutes ago, RFguy said:

If looking not too far  the future, perhaps 10 updates,

That's got to be affected by the velocities of your aircraft and the conflicting one, eg 10 might be good for 80 - 100 kts, but more might be needed for 110 - 120 kts. Is that correct? And I use 120 kts as the max speed in the circuit, where your previous posts indicated you thought was the most liely place for conflicts.

  • Informative 1
Link to comment
Share on other sites

OME

yes indeed. you'd expect 55-100 kts in circuit for most GA.  ... and  you only get one KNOWN update per second (although you can generate predictive data at any rate) 

 

There's alot that can be nutted out . IE time based  / conflict likelihood based etc hybrid. I'll have to read up a bit on TCAS.

  • Like 1
Link to comment
Share on other sites

10 minutes ago, RFguy said:

it is continually generating the most likely next state (state can be X, Y Z location, oir X, Y Z velocity, or X, Y Z acceleration or all of those) . 

Can't see the need for acceleration in a real world situation involving aircraft in teh circuit, unless Plane B pulls back on the throttle, after having also identified a possible conflict.

 

Like I say, I'd rather see time to intercept based on location and veolity estimates.

  • Like 1
Link to comment
Share on other sites

Time to intercept is certainly the pointy end of the stick. 

 

I know we all learn see & avoid but we all know it is pure luck if, in circuit,  you see another aircraft against say, the backdrop of a town, and that's if you are looking in a region.

At cowra downwind for 33 you are looking into the town for conflicts on straight in  and other odd joiners.

 

EVen worse where there is NIL wind and everyone has got their own runway direction preference...... I hate that.

 

 

 

  • Informative 1
Link to comment
Share on other sites

3 hours ago, RFguy said:

Agreed Nev. There is no time to look at a display ! Probably will connect to intercom with voice announcement , and maybe some basic status display/bright light for the hearing impaired...

"Conflict   3 o'clock high distance 400 meters Traffic  kilo hotel alpha"  or something.  (customizable) . 

 

THAT really neds to be thought out. 

 

since it knows about ALL the airplanes (hopefully have ADSB)  is *could* recommend action but that's a big long bow to pull on liability unless the user had to acknowledge that on turn-on...

TCAS which provides advice  was developed inside a very serious framework. 

Plus time (eg 10 sec or 20 sec)  In marine its like Closest point of approach in 2D.

Edited by Blueadventures
  • Informative 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...