Hi there! Today we discuss about an algorithm. I guess you have already heard of Artificial Intelligence, and especially of some futuristic anticipations in which the world would be governed by robots… Fortunately, we are very far from that.

An Artificial Intelligence (AI), Google DeepMind’s AlphaGo, beat the Go professional player Lee Sedol in March 2016. Another AI, IBM’s DeepBlue, beat the then chess world champion Garry Kasparov in May 1997. These realizations of specific tasks belong to Narrow AI, while General AI would be Star Trek’s Data, i.e. a man-made system able to interact with its environments, and react better than a human would do.

In the context of planetary sciences, AI has recently permitted the discovery of exoplanets, from data analysis. The study I present today, Lunar crater identification via Deep Learning, by Ari Silburt et al., is another example of the way Artificial Intelligence may assist science. In this paper, the author challenge the computer to identify craters from images of the Moon and of Mercury, and the results appear to be very promising. This study has recently been accepted for publication in Icarus.

Craters in the Solar System

Let us forget AI for a short while. This is a blog of planetary sciences, remember? AI is a tool, not a goal. This study challenges a tool, which goal will be to identify craters. Hence, the goal is the craters.

Craters are ubiquitous in the Solar System, since it is intensively bombarded. This is especially true for the inner Solar System, since the impactors, i.e. small rocky bodies, are gravitationally attracted by the Sun. And while passing by, they may hit us, or the Moon, Mercury, Mars,… And we are lucky, since the current bombardment is much less intense than it was in the youth of the Solar System. Anyway, we have been intensively bombarded, we still are, but our atmosphere protects us in destroying the impactors, which reach the terrestrial surface as meteorites. A huge impactor is thought to be responsible for the extinctions of the dinosaurs, and may be one day… no, better not to think about it.

There are not so many craters at the surface of the Earth, partly because our atmosphere has eroded them, and partly because the geophysical activity relaxed them. But what about atmosphereless bodies like our Moon? Craters are everywhere!

And craters are the clock of the surface. If you see only craters, it means that the surface has not changed since the impact. The surface did not heat, did not melt, there was no geophysical activity creating failures, ridges,… For instance, in the satellites of Jupiter, you see almost no craters on Io and Europa, since there are active bodies. You see some on Ganymede, which is less active, and much more on Callisto, which is quieter.

This is why it is worthwhile to catalogue the craters of a given planetary body. But since it is a difficult and exhausting task, it is probably a good idea to tell a computer how to do it. This is where AI and Deep Learning come into play.

Artificial Intelligence, Machine Learning, and Deep Learning

As I told you, we are here interested in narrow AI: we want a computer to perform a specific task, and only that task, better than a human would do. And we want the computer to learn how to do it: this is Machine Learning. We give images of craters, tell the computer that they are craters, and we hope it to identify craters on images, which have not been studied yet, i.e. new data. Very well.

A common algorithm for that is Deep Learning. I do not want to go into specifics, but this uses several layers of neurons. Here, neurons should be understood as computing nodes performing a specific sub-tasks, and interacting with each others. The analogy with the human brain is obvious. In this specific case, the authors used convolutional neural networks, in which neurons layers are structured to perform a discrete convolution (a mathematical operation) between their inputs and a filter, which is represented by weights. These weights permit to ponder the relative roles of the different inputs of the system, i.e. which input is more relevant than another one…

The inputs are the planetary data.

Use of Digital Elevation Models of the Moon

Fortunately, we dispose of numerous topographic data of the Moon, which make it the ideal target for elaborating such an algorithm.

The authors used digital elevation maps (DEM) of the Moon, resulting from 2 different missions:

the Lunar Reconnaissance Orbiter (LRO). This is an American mission, which orbits the Moon since 2009. It has made a 3-D map of the Moon’s surface at 100-meter resolution and 98.2% coverage, thanks to the Lunar Orbiter Laser Altimeter (LOLA), and the Lunar Reconnaissance Orbiter Camera (LROC). The Japanese mission SELENE (Selenological and Engineering Explorer), which is also known as Kaguya. It was composed of 3 spacecraft, i.e. a main orbiter and two satellites. It operated during 20 months, between September 2007 and June 2009. It was then intentionally crashed near the crater Gill.

The authors used such data to train the system, i.e. to make itself an expert in crater identification.

Algorithm of crater identification

Historically, the first identifications of craters were made by visually examining the images. Of course, this is an exhaustive task, and the human being has failures. Moreover, if a small crater looks like a circle, larger ones, i.e. with a diameter larger than 20 km, may have a central peak, may contain other craters, and/or may be altered by the topography (mountains…).

The consequence is that beside the time spent to perform this task, you would have false detections (you think this is a crater, but it is not), and miss some craters, especially the smallest ones. If someone else does the same task, from the same data, (s)he would get a significantly different list. Comparing these lists would be a way to estimate the identification errors.

So, you can see that the use of the numerical tool is inescapable. But how would you do that? Some algorithms identify the circles on the images thanks to a Hough transform (I do not want to go into specifics, but this is a mathematical transformation of your images which tells you “there is a circle there!”), some identify the edges of the craters, some do both… And Deep Learning is learning by itself how to identify craters.

This consists essentially of 3 steps:

training, validation, tests.

The algorithm detects crater rims from their pixel intensities, then fits a circle on them, and give as outputs the coordinates of the center and the mean radius of the crater. The authors then compared the results with existing catalogues.

The relevant parameters

The detection of the craters uses parameters, for instance the threshold for the detection of variation of pixel intensities. And the efficiency of the algorithm is measured with

the true positives T p (the algorithm tells you there is a crater, and you know there is actually one), the false positives F p (the algorithm tells you there is a crater, but there is none), the false negatives F n (the algorithm tells you nothing, while you know there is a crater),

and these quantities are recombined as