Securing the Skies: How the
Federal Aviation Administration Is Using Julia to Develop the Next
Generation Airborne Collision Avoidance System
With more than 100 thousand scheduled commercial flights worldwide every
day, keeping all of those aircraft from colliding with each other is a
monumental task in which any error is potentially catastrophic.
The Federal Aviation Administration partnered with Lincoln Labs to
develop the next generation Airborne Collision Avoidance System (ACAS-X)
using Julia. According to Lincoln Labs, Julia has a number of advantages
that make it suitable as the new standard for avionics.
What are the goals of this project?
Improve safety and reduce the risk of collision
Allow aircraft to fly closer together
According to Lincoln Labs, Julia is:
Easy to understand
Concise, familiar syntax
High performance – comparable to C
The ACAS-X project requires computation of an exhaustive search over
650 billion decision points within the optimized logic table in
order to identify failures. Julia reduced the time required to conduct
these computations by several years.
Most important, Julia dramatically reduces time, cost and errors by
eliminating the two language problem.
Previously, FAA partners such as Lincoln Labs needed to use Matlab to
develop their algorithms and then program in C++ in order to run the
algorithms over very large datasets quickly and efficiently. But having
to program sequentially in two languages is extremely inefficient -
costing time and money, as well as introducing room for error in
translation and conversion.
Furthermore, transferring the specifications to industry using this
legacy system required three different types of documentation: first,
the specifications were written both in variable-based pseudocode and in
English descriptive pseudocode. But this approach left gaps in
interpretation, leading to possible confusion or disagreement. So
programmers also created state charts to fill these gaps and eliminate
the potential for misinterpretation.
Julia eliminates the need for all of these different languages and
Now, the researchers at Lincoln Labs can develop their algorithms, test
them, run them over massive datasets and deliver the algorithms and
specifications for industry in just one language – Julia. Industry
partners can use the same code for implementation, analysis,
construction and testing.
This has dramatically reduced cost and time to market, increased
efficiency, reduced errors and increased air safety.
Or, as Robert Moss of Lincoln Labs says:
“The previous way of doing things was very costly. Julia is very easy to
understand. It’s a very familiar syntax, which helps the reader
understand the document with clarity, and it helps the writer develop
algorithms that are concise. Julia resolves many of our conflicts,
reduces cost during technology transfer, and because Julia is fast, it
enables us to run the entire system and allows the specification to be
executed directly. We continue to push Julia as a standard for
specifications in the avionics industry. Julia is the right answer for
us and exceeds all our needs.”
The ACAS-X project requires computation of an exhaustive search over 650 billion decision points within the optimized logic table in order to identify failures. Julia reduced the time required to conduct these computations by several years.
Need help with Julia?
We also provide training and consulting services
and build open source or proprietary packages
for our customers on a consulting basis. Mail us:
Julia Computing was founded by all the creators
of the language to provide commercial support
to Julia users. We are based in Boston, New York,
San Francisco, London and Bangalore with
customers across the world.
© 2016 - 2020 Julia Computing, Inc. All Rights Reserved.