Annotate successful flight planning with GEN0500
BenjaminPelletier opened this issue · 1 comments
Is your feature request related to a problem? Please describe.
InterUSS currently has a test scenario that validates tiny operational intent overlaps are detected by the USS. NASA/FAA feedback indicates they would prefer a test that verifies compliance to the other half of GEN0500 (more than 1cm spacing is recognized as not intersecting).
Describe the solution you'd like
While it is difficult to construct a scenario that detects non-compliance with this part of this requirement with high sensitivity, we already perform some test actions which can detect non-compliance at some level of sensitivity. Whenever a flight is planned when another operational intent is already present, this validates that the USS's intersection algorithm is not so broken that it incorrectly detects an intersection with the pre-existing operational intent (despite separation exceeding 1 cm). Therefore, whenever successful planning occurs when another operational intent exists nearby (but does not intersect), we should annotate that the check verifying successful planning would also fail if the USS were non-compliant to GEN0500 by failing to recognize a lack of intersection despite more than 1 cm of separation. One example of when this happens is when Flight 1c is successfully planned even though non-conflicting Flight 2 exists nearby.
Describe alternatives you've considered
Ideally, we want our checks to be as sensitive as practical without compromising specificity. Therefore, the situations annotated in the solution above (which generally involve operational intents separated by many meters) are less sensitive in detecting non-compliance with the "1+ cm separation implies no intersection" portion of the requirement than operational intents which are spaced 1.1 cm apart. However, it is difficult to design a robust 1.1 cm scenario because ASTM F3548-21 generally does not establish any positive requirements to plan eligible flights -- that is, it does not say "a USS shall accept any flight that does not violate one of the requirements in this standard". That's for good reason: there are lots of other requirements a USS must follow (e.g., a LAANC authorization may be needed in controlled airspace), so a flight may be rejected for any of those external reasons and still be compliant with F3548. InterUSS does impose an "ExpectedBehavior" requirement where flights that are "clearly ok" are expected to be planned, but InterUSS attempts to impose as few additional requirements as possible -- only those necessary to sufficiently verify compliance, and hopefully not ones that would materially limit the design space otherwise available to the USS. In order to verify "do not intersect" via test at the 1.1 cm level, the USS would be required to create an optional intent with geometry precisely matching the user flight intent. This limits USS design space considerably -- they would be unable to, for instance, represent flight areas as solely point-radius, or represent flight areas solely using H3/S2 cells, or represent flight areas solely as lat-lng bounding boxes. Because failure to detect non-intersection does not have the same safety impact as failure to detect intersection, the benefits of very-high-sensitivity verification of this requirement likely do not justify the burden of additional requirements placed on USSs outside the standard being tested.