This week, we'll learn about Robotic Mapping. Specifically, our goal of this week is to understand a mapping algorithm called Occupancy Grid Mapping based on range measurements. Before we start talking about the method, we introduce some basic concepts about robotic mapping. Also, later in this week, we introduce basic algorithms used in 3D mapping. In this lecture, I will introduce the problem of robotic mapping. Everyone already knows what a map is. But we need to think about what a map means for robots. What kinds of maps are useful for them? And what makes mapping a hard problem? A map for robots is a special model of its environment. We call a process for building a map, mapping. To help our robot to build a map, we will first think about how to represent it. For example, our coordinate we are going to use, and how detailed information the map should include. Also, the quality and the extent of the map will depend on available sensors for mapping. Therefore, you should understand how to interpret your sensor measurements properly. Lastly, mapping results can be different according to the reason why your robot wants to have a map. Is it to build a fine globally consistent map? Or does the robot just want to avoid local collisions while navigating? You should decide the level of precision and accuracy of the map based on that question. It is useful to think about various types of map representations, which we actually have seen often in real life. The first type we are going to see is the most basic type, a Metric Map. Here is an example of a metric map. This is the world map represented in the longitude and latitude coordinate frame. To indicate a location, for example the location of the University of Pennsylvania, we can use the coordinate numbers as shown. Generally, in a metric map, a location is represented as a coordinate. This serves as the most basic form of maps since most mobile robots use some coordinate frame for self localization. Here is another type of map we are familiar with. This is part of the train map that runs in and near Philadelphia. You may notice that the geometric scale of the map is not correct at all. But we don't care much about the exact numeric location of a station on this map. That is because the purpose of this map is to show which train makes stops at which stations, and which stations connect different lines. We call this type of map a topological map. Where locations are represented as nodes, and their connections as arcs. As I mentioned, the exact coordinate is not important in this representation, but the connections among nodes matter. So the graph on the left side is equivalent to the graph on the right. The arcs are used to express costs or constraints between nodes. This whole graph representation of the map is useful for path planning tests. The last type of map I'm going to introduce is a Semantic map. Again, this is not something new to us. Here is our campus building map of University of Pennsylvania. It is an example of semantic map. What makes it distinct is the labels, and the relative locations of the labeled objects. Instead of using some coordinates, we may describe Irvine Auditorium, it is located at the corner of 34th Street and Spruce Street from this map. This is useful for high level planning or human robot interaction. However, as you can imagine, building a semantic map requires advanced object recognition techniques which go beyond our scope. In this course, we will focus on a method to build a metric map. Before we start talking about mapping algorithms, let me mention what makes mapping challenging and what is our scope of learning. First, mapping is essentially a perception problem, which is about finding what is where from sensor reading. The fact that we are relying on sensors implies two things. Our measurements are noisy, so we need robust estimation method. Also the measurements are usually measured in the local coordinate frame which needs to be interpreted in the world coordinate frame of our interest. Next. Mapping actually involves other robotic problems, such as planning and navigation. Because mapping usually happens while a robot is moving around. Lastly, real world objects could change over time. In theory, a map should be constantly updated to reflect the reality. Now it sounds almost impossible to learn mapping in a week, but no worries. The following lectures, we will focus on probabilistic treatments of our noise measurements and practice the coordinate transformation from the local to the world of the measurements.