 Good morning everyone. Thanks for being present here on a Saturday morning. I know most of them you will be partying on a Friday night. So my name is Aditya and I am part of Fulfillment Service Group at Flipkart. I am part of the product team and today I will be talking about the location problem, some of the aspects that Divya also mentioned in her talk that this problem is very unique to India and how at FSG or Fulfillment Service Group at Flipkart we are solving that problem. So the agenda for today is I will be introducing FSG or Fulfillment Services Group what at FSG we are doing currently. Then I will be talking about the location problem of India and what is the impact of location problem to the supply chain and what is the havoc that it is causing on the supply chain. Then how FSG is solving that problem and the way forward. What is our vision to ensure that we deliver the best in class customer experience that we promise to the customer. So introducing FSG what is Fulfillment Services Group and what it is responsible for at Flipkart. So Fulfillment Services Group is responsible for ensuring best in class customer experience after the customer has placed an order. By this what I mean is that once the customer has placed order on a Flipkart website right from that point till the order is delivered to the customer and even beyond delivery the entire experience is controlled by the services offered by FSG. FSG offers different kind of services and to get into detail of those services I will quickly walk you through what is the entire flow of a journey or order journey after an order has been placed. So quickly talking about it whenever an order is placed it's created into multiple shipments. Each of the shipment then flows through different facilities or the supply chain network that exists within Flipkart. So a shipment will flow through a Fulfillment Center. So we have hundreds of Fulfillment Center and it will then flow through a Sortation Center where it will be sorted further to move it to a Delivery Hub and from Delivery Hub it moves to a customer. Now think about a situation where you have hundreds of Fulfillment Centers, you have hundreds of Sortation Centers, thousands of Delivery Hubs and millions of Packages are moving through this complex network. So there are millions of packages that flow through the complex supply chain network and you will be hearing about this more when my colleague Senthil talk about this in his presentation on Orchestration and Network Intelligence. So just giving you a brief to tell you how a shipment flows through the supply chain network within FSG. Now coming to the address problem in India before moving further I have a question like how many of you understand your address? Like all of you right? I mean you live there, you have to understand your address right? Okay so why I ask this question is that I want to share few examples of how India understands the addresses. So this is an example of a very good address where the user has been kind enough to provide the details about house number, the apartment name, city, locality and all the things right? So user very well understands the address. Another example of a address that user has provided. So as we move forward right? An example in front of you. So here the user has only provided locality. So user believes that this is what the understanding of my address is and this is how I have been giving my address and this is how I how everyone is able to connect through me to or to my address. Moving forward the user says that a locality or a landmark. So this is my address right? Anyone who has to connect me has to come to near this bus stop and I'll be there. Another example looks like a perfectly good address. If you see one of the important address attributes here is the pin code. The pin code is something that the Indian Postal Service has provided us. That's how the entire geography of India has been divided right? But I don't think that all the users have understanding of the pin code also right? So in this case in this example the address is of some other pin code. It actually belongs to 560017 but the user has mentioned pin code 5600103 and this is because of numerous reasons like one of them being that this is how traditionally they have been writing address and this is how they write it and this one is my favorite right? So this is example of an address where user has provided I think a lot of information here right? And user has shown great intent to actually find himself also right? So the user has mentioned that you can ask anyone so just translating what you can ask anyone and they will take you. So I think thanks to the user for giving a good intent of the location what exactly they want to do right? And helping our referees to reach to the location right? So this is how a snapshot of how India understands the address right? So each and every user, each and every customer, everyone has its own understanding of the address right? And there is no right or wrong right? And why there's no right or wrong? Because address itself is a combination of numerous attributes it's and all those attributes are not standardized right? There are bunch of attributes such as state city or even pin code which can be standardized across but then that does not solve the problem right? So consolidating all this what are the problems that are associated with addresses in India right? First of all the scale itself is a big problem there are zillions of addresses, multiple combinations of how user understand, multiple attributes as I mentioned none of the attributes are standardized right? For example city like Bangalore have crosses right? City like Delhi has sectors even within a city Delhi has sectors Delhi has nuggles they have gullies right? So you don't have you don't get the luxury of standardizing the attributes. Another problem is that the addresses are organized very poorly physically right? So logically it looks like sector 23 has to be next to sector 24 right or house number 43 has to be next to house number 42 but that's not the case always. So the logic division does not work always within the Indian context and as I have shown you numerous examples users don't know or understand their addresses right and all these problems are further accentuated in tier 2, tier 3 and tier 3 plus communities which are the next growth engine for the economy as well as the e-commerce industry. So what does this all mean for the supply chain right? And I think Divya also mentioned in her talk right? It results in a lot of inefficient manual planning and why manual planning? Because you have to rely on the local knowledge of your hub managers or your field executives to actually do the entire out planning to actually do the entire shipment flow planning. Another problem that it creates is unoptimized shipment flow. So in my first slide when I talked about the flow of how order moves through the various facilities within the supply chain network, if let's say customer has given one wrong pin code right then it can enter into a different facility from which it is supposed to be delivered which would mean that either an order is delayed or the customer is contacting multiple times the customer supposed to know where my order is right and the third most important thing is customer discovery in the last mile. I am sure most of you would be an online shopper and may have faced this situation that delivery boys are calling you that okay I am here how to come to your location or are you available right? So the discovery of the customer and mind you the customer has given the right address. So customer has said that this is how I know my address and this is how I've been giving my address. So now it's your responsibility to come to me deliver it without disturbing me right. So what does this all mean right? All this pans down to one point which is degraded customer experience. So delivery boy calling multiple times to the customer right is very relating for the customer. Shipment not getting delivered on time or whatever time has been promised is again degraded customer experience. So keeping all this view or all the problems in mind how at FSG we are solving this problem. So before jumping into the solution what we feel is that every address has to be standardized in some form. One way of doing that is obviously you get into different standardized attributes. You create labels of address right? But ultimately the micro point for doing or the micro unit level for doing any planning is the geo codes. So what I'll talk to you about is and how we are solving the problem of geo prediction right? Different companies are doing in different way. So today I'll talk about how FSG is solving that problem. So what at FSG we have been doing is we have built a flip card location intelligence platform which we called as flip. Flip is a crowd source platform with the aim of geo predicting each and every lat long and we use machine learning algorithms and some of the techniques that we use I'll be talking about the flow of how do we geo code and address. Within flip when I say crowd source platform right we are not using or not relying on data source from one particular source. We are using multiple data sources. One of the most important being one of our own database. I think there was a question from another gentleman in the audience that over the time you get your own database then why are you not leveraging it? So this is what we do exactly. We are leveraging our own database because we do millions of deliveries and we have got millions of exact location points that has its own set of challenges which I'll talk later but that's one of the very important database that we have built. The other database that we use is map my India data. So we also rely on their own their network how they have created the idea of locality sub localities all that is called as the location time. So I'll give you a brief about how do we geo code using a geo location service that we have built. So you see an address mentioned here 691 Sharid Bhagat Singh apartment pocket tree this address is fed into the geo location service as an input. So address attribute is a standard input and we tokenize an address. So again if we are talked about some of the tokenizing techniques we follow some of those techniques and I've also built on top of it. So a token what would a token look like if you see at the bottom of your screen. Dwarka is one token sector 14 Sharid Bhagat Singh apartment pocket three. These are examples of a typical token that will come out of an address and these are very few examples. There are numerous tokens that are created within that address for each and every token we retrieve a polygon. What do I mean by this? So for Dwarka as a token we'll obtain a polygon. Now how do we get a polygon for Dwarka as an address we have done a lot of deliveries on the locations where Dwarka is one of the address. So we'll have many geo coordinates available for that. So we'll take each and every geo coordinate and generate a polygon out of it. Once the polygon is generated right each and every polygon for each and every polygon for each and every token. Area intersection score is calculated. So what do I mean by area intersection score is so for example in this case let's say sector 14 as a polygon. So sector 14 intersecting with Dwarka we calculate what is the intersecting area of a sector 14 polygon with a Dwarka polygon and divide this by the total area of sector 14 polygon and come up with a score of a particular polygon. This process is repeated for each and every token and the area which has the highest score is returned or the polygon which has the highest score is returned. So the idea of taking the intersection is that we get as close or as or pinpoint the exact location of the address because that forms the basis of the precision or accuracy of your geo prediction. Now how do we get to the geo prediction accuracy? Once a polygon is returned or once the final polygon is selected with the highest score we create a bounding box across that polygon and we take the diagonal of that polygon as the precision accuracy in meters. So what are the critical outputs of a geo location service that we have built? So latitude, longitude and precision. So precision is very important to know exactly that okay what is the level that you are operating or you are geo predicting and that's a very critical output because different precision levels are required for different use cases and applications. So this service has a lot of use cases and application and some of them are like navigation. Another one is like identifying what is the exact customer location for a field agent and another one is automated beat planning or route planning that we do and I'll be talking more in detail about the automated beat planner that we have at the FSG. So before going into details of what is automated beat planner, what it all is doing, how it's consuming the geo location service, I'll quickly introduce the concept of beat. So beat is nothing but a sequence or order or route that a field executive or a delivery executive follows on the ground when he's handed the shipment. So every day delivery executives are handed 40 to 50 shipments and they deliver those shipments in certain order or and following a certain route. So that is typically called as beat in supply chain language. Moving forward to automated beat planner. So with automated beat planner, we take number of inputs, we process these inputs and the idea is to generate automated beat plan which maximizes or which minimizes the overall cost of the delivery but ensures that the guardrails of customer experiences are maintained. So let me detail out some of the inputs that go into automated beat planner. One of the inputs is order size. What do I mean by order size? So number of shipments that are there in order, typical characteristics of a shipment, which is like what is the size of the shipment, what is the type of the shipment, whether it's a hazardous material or not. So all those inputs which are associated with every shipment, whether category of shipment goes as one of the inputs. Then geocodes which is coming out of a flip service, geolocation service, slot time or delivery time. What are the delivery times or slot times that customer has chosen or what we have promised to the customer for the delivery capacity. So we have different type of vehicles that are available in our supply chain to attempt deliveries, beat vans, beat bikes. So each vehicle has certain capacity or they are different ways of defining capacity. Some we define what is the maximum carrying capacity or what is the range of capacity that you want to operate into. And the other important one is the traffic. So what are the traffic conditions that exist on a particular day at a particular time of the day. So all these inputs and there are other inputs as well. These are major inputs that we are currently consuming in automated beat planner. All these inputs are fed and ABP processes and once ABP processes the output is a beat plan. So the beat plan is generated to again minimize the cost and when I say minimize the cost, it's function of numerous factors here. The productivity, the number of shipments that a field executive can deliver, the capacity or how much utilization you have done of a vehicle. So all those factors contribute to the overall cost equation and we ensure that the guardrails of the customer experience are maintained. You don't want that you have made a promise to your set of customers that we'll deliver by this time, but to minimize on the cost you miss that promise. So the idea here is that we continue to deliver best in class customer experience, but by deploying technology, we keep on reducing the cost of operations. So that's the overall journey of an automated beat planner that how it does. Now let me talk more about what happens when a beat plan is generated. If you see on your screen, this is a UI that is shown to our planners. It tells completely what is the area, what are the different routes that different delivery executives have to follow, what is the order. So each and every geolocation here is an address or a customer location where delivery is supposed to be done. There are certain features that we give to our planners. One of them being manual override. So what I mean by manual override is that whenever a planner feels that one of the orders is not planned in an efficient manner, there is a chance to or there is an opportunity to move it from one beat to another. Why would that happen? If the system is predicting it, why would a planner want to do this or why we are given this functionality? So what happens is that many times at ground, the reality on that particular day may not be exactly what has been planned. For example, you have planned for 10 beats assuming that 10 field executives would come every day. But there has been an attrition or not all of them have reported or let's say all of them have reported but because of some unforeseen circumstances, one of the field executives had to cut short his delivery of today. So that's one of the reasons why we have given this plus every model or every system will have certain accuracy and this is a continuous evolving process. We take feedback of every delivery that we do and we feedback into the model. So we keep on improving the accuracy but whenever there is an error rate, we throw it out of a delivery area and then we have to rely on the ground knowledge. The idea is that we want to do away with it but if we don't give that address, we have to deliver it. So all the exceptions are handled in different manners. Some of those we even call the customers to try to get a better feedback of their addresses. But those cases are very small and the idea is that we reduce or minimize those cases or those use cases with time. So the services that powers the key features automated beat plan are geo location which I have already talked about, the geo distance service. So geo distance service basically gives you the distance between various latlongs. So you basically feed the latlongs and it will give you a road network distance between different latlongs. And we use to create a distance matrix to come up with what is the route plan that has to be created. Maps interface. So the entire map interface that you are seeing on the screen is a Flipkart map interface. So this is created on the data. So we create our own tiles on the base data that we have in our database as well as use the map idea data to create tiles and this map interface is powered by Flipkart itself and traffic prediction. So these are the services that are currently used by automated beat planner to do the entire beat planning or the run sheet planning. Right. So what is the way forward? Right. Looks like, okay, we have are solving the problem of address. We are doing the manual. We are moving away from manual planning. We are doing the automated planning. But is that good enough for customers? Is this pushing the boundaries of customer experience? Right. So we at FSG believe that there is a lot of room to push the boundaries of customer experience itself. So what we want to get to is a perfect matching of supply and demand. Now before going forward, let me talk to you what I mean by perfect match. A perfect match means that each and every shipment or each and every order should be assigned to a particular delivery channel in a perfect manner. When I say a particular delivery channel, what it means is that a particular field executive, a Kirana store or a third party logistics partner. And who will define this? Right. So there are two key stakeholders that are involved in this entire operation. One of them is of course our customers and the other one is our field executives or our delivery executives. Right. So customers will themselves keep on pushing the experience boundaries. Right. They will define that. Okay. For me, perfect experience is that you are able to deliver it to me whenever I want, wherever I want. And that is my choice. Right. You are able to deliver me without contacting me even for once. Right. And for our delivery executive partners. Right. They would they would want that. Okay. I want to do deliveries from this time to this time only. I want to do deliveries in this particular area only. Right. So the matching or the perfect match of supply and demand is dependent from the supply partners, which is our field executives as well as our customers. And this is our vision. This is a way forward that we want to go to. So this brings to the concept of the allocation engine. Right. Again, the idea of an allocation engine is to ensure perfect match of supply and demand, match each and every shipment, each and every order with the most convenient or the perfect delivery channel. And there will be a lot of input services to it. I've already talked about flip and ABP, the location platform and the beat planner. The other key critical service that we are building and that will form the genesis of allocation engine. Right. The most important one being customer availability service. So what do I mean by customer availability? Can I predict during the day or during the week the point when the customer will be available to make a delivery attempt? Now what do I mean by that? Many of us place orders on our office at risk. Right. Because Monday to Friday, mostly peak times we are in our office. Right. So imagine a situation where I as a customer have placed an order. Right. I have been given, I have given my office address and I've been given delivery date or I've chosen my mistake delivery date as Sunday. Right. Now we know that a customer will not be available there on that particular day. Right. So if we can predict for each and every address or each and every customer input when the customer will be available. This will become one of the important components which will again push the boundaries of customer experience. The another service that is very critical to push the boundaries of customer experience is FE scoring engine. So FE is basically the field executive or the delivery executive. What do we mean by FE scoring engine. Right. Now different FE's or different delivery executives will give different performances. Right. They none of the two people are similar. Right. So we want to ensure that the feedback or the performance of each and every FE is given as input to the allocation engine. So as to ensure that the customer experience is not degraded. Example is that let's say one of the FE's has one of the FE says that the customer is not available at the location but actually the customer was available. He made a what we call a fake attempt. Right. So we want to get that and power that into the allocation engine. Another thing on the supply side for the perfect match is FE skill and preference. So as I mentioned that every FE would have preference of delivering certain time in delivering certain area. So we captured that and FE skill. So what do I mean by this is that certain categories may require certain skill to do a delivery a category such as TVs or washing machine which would at the time of delivery require some kind of demo versus a category such as mobile accessories will require different skill levels of the FE. So we take this input and push this and other one being service and capacity engine. So for each and every delivery channel we have different capacity and different service ability. So what we want to ensure is that every shipment is given to a certain delivery channel which ensures a perfect matching of supply and demand. So this is the vision that we want to move towards and are working towards this. So that's pretty much. Thank you. Happy to take any questions that audience might have. Hi. My name is central Kumar. I'm here. Sorry. Okay. So what kind of accuracy where you guys able to attach in terms of identifying the exact location in terms of distance? For example, 10 meters, 20 meters or anything of that kind. Okay. So before answering you that question, I'll give you one example of a live experience that I experienced on the field. And what I did was I went with one of my field executives on the field. We have pointed him to an accuracy up to 20 meters. And believe me, even after making few calls and he will be going into one direction, I go into another direction, we were not able to find the customer location. And why this was right? Because customer had never mentioned his house number outside his and it the gullies that we went into, right? I have never been to those values, right? So why I'm sharing this example is because this has different accuracy levels are required for different applications, right? If let's say I am doing a shipment planning, right? That which deliveries have it should land into, right? Then maybe I don't want to get into an accuracy level of 100 meters, right? I want to get into an accuracy level of one kilometer is good enough for me. But if I am doing a planning for the last mile will be right? Then we want to get it as close to as 200 meters, right? Now how we have arrived at this number of 200 meters is we have a internal metric of let's say how much reattempts are happening, right? So we see that what is the sweet point at which the reattempts start flattening out, right? So we figured out that sweet point currently is 200 meters, right? Having said that, that is not the I'll say the best number. The reason being that it will change across the geographies, right? We move into a tier three cities that number can change again, right? So this number I'm talking more about the metric cities as of now. So this is what we achieve towards or plan to do towards.