Okay, so next let's convert the previous problem descriptions into a mathematical model. So when people are using words to define our problem, sometimes we call it a conceptual model, okay? So we only have concepts, but the concepts should be defined clearly precisely. So from a real problem, the first thing is always to create a conceptual model. So when we were just as the background, and motivation, and the research objective parts. That's a real problem. That's not precise enough. We need to sit down, talk to the managers one time, two times, three times, four times to create the conceptual model before we may really do mathematical formulation. So when we really do formulation, we are creating a mathematical model, okay? And later you will see definitions, variables, mathematical formulation, and algebras. You will see some notations. After we get this mathematical model, then the next thing is that we are able to create computer models. So once we do that, we are doing Excel formulations, we are creating Excel spreadsheet, or we use some other commercial softwares to solve our problem. From mathematical model to computer model, this is purely a technical job. But from here to here, and from real problem to conceptual model, we really need some business sense as long as some mathematical training, okay? So these parts are I won't say is the most difficult part, but it's not easy. Because you need to have the business side training and also you need to have some technical training, but that will be valuable. Okay, so let's take a look at how to do this. So we need to define sets, indexes, and the variables. In our formulation or in our problem, there are several kinds of entities. There will be CSRs days, shifts, and the periods in a day. So we're going to use I, J, K, and T to denote the sets. And then we will use small i, small j, small t, and a small k to denote the I', CSR, j's day, k's is shift, and t's periods. So we call this as indexes. We will keep using these notations throughout the whole formulation. As long as you see small i, you know that's a CSR. As long as you'll see small j you know that's a day, so on, so forth. Then it's going to be easier for everybody to understand our notation and understand our formula. Having this is also very important, not just for communication. It's also for you to being able to know precisely about your formulation. In practice, problems are always difficult and complicated. You may have thousands of variables, thousands of constraints. You need to have a clever way to write it down, so that it does not confuse yourself, okay? Once we have sets and the indexes, we are able to determine our decision variables. So actually in the real formulation for this project, we have a lot of decision variables. But you should always first focus on your core decision variable. In this example is this one, let's call it xijk, xijk is one if CSR i is assigned to shift k in day j, okay? So that means I say, hey CSR i, please do this in this particular day. I need to somehow create the values for xijk so that I have a schedule. Or say it in other way. Once I have the values for xijk, I know the schedule, I may then execute the schedule. So that's why I say this is the core decision variable. Because for other variables such as these derived variables yjt is for period t in day j, it is the number of CSR shortage. This is a number that's later we will use some formulation to calculate based on xijk, okay? There are actually some other derived decision variables later you will see. But the most important thing is always to focus on core decision variables. So now pretty much we are able to write down our objective function. So our objective function should be including the major objective function and the two soft constraints. Because the two soft constraints are nice to have, right? It is good to blah, blah, blah. So that somehow means you are not required to satisfy that. So mathematically it is not a constraint. It is part of our objective function. If we satisfy that, we are good. If we don't, we get some penalty put into our objective function. That's the way to deal with soft constraints. So we're going to say w1 is the maximum number of extra on-duty CSRs among all periods. And w2 to be the maximum number of night shifts among all CSRs. So what is that? When we are talking about objective function, we talk about a total shortage. Total shortage among all periods, that's precise. Later you will see how we calculate it. But for soft constraints, the previous definition is that it is good to be similar blah, blah, blah. Then in that case we need to have a definition, and we need to make sure our model to have a way to enforce that kind of expectation. So how about this? This is the definition or the indicator for the first issue of fairness. The indicator is the maximum number of extra on-duty CSR among all periods. So I may have many, many different periods, okay? Supposing each of the periods I have 3 extra, 5 extra, 2, 0, 1, 8, 2, and 3 of what if. This is the result of my first schedule. Suppose I have another schedule 4,4,3,5,3,2,5,3,2, something like that. In this case, I would say this one is more fairer, why is that? Because the maximum number is 5. On the other hand for the first one, the maximum number is 8. So I care about the maximum number of extra on-duty CSRs among all the periods in my schedule. I want that number to be as small as possible. Because as long as that number is small, then all these numbers would be close to each others somehow, right? And naturally we want these numbers to be small, I shouldn't say small, we want them to be close to each other. So the way for me to make them similar to each other is to minimize the maximum number of extra on-duty workers. So similarly, for each CSR, we may calculate the number of night shifts that the CSR is taking, 4, 4, 3, 3, 2, 2, 1, 2, 3, 4, something like that. And then we want to minimize the maximum number of that particular element, that particular indicator. So once we have these definitions, then we are really precise. We precisely determined how to indicate how to measure the degree of fairness for these two issues. So these definitions is up to you. You don't need to have the same definition with mine. But you need to make sure that first your definition of your indicator must somehow make business sense. In the second they somehow may be formulated as a program, and that formulation cannot be too difficult. For example, if your indicator is some kind of standard deviation, that's okay. But then, that's going to make your program a nonlinear integer program. That may be too hard to be solved. Then that's not a good indicator in some sense. So once we have all these definitions, we take some kind of weighted average. So the objective function in our program is that we want to minimize the weighted sum of these three indicators. So the first thing here, some of yjt is the total shortage, later you will see how this may be calculated. And the second this w1 and w2 as we mentioned, that's the indicators for fairness 1 and the fairness 2. So later you will also see how we may use some constraints to calculate w1 and w2. And then P0, P1, and P2, they are the weights to be determined by the managers. The managers may from time to time choose different ways to represent how important these factors means. For example, if one day they think the first issue is the most important about shortage and the others are somewhat important, they may set the weights to be 100, 30, and 30. If some day later they feel that they don't care about that extra whatever thing, but they care more about the fairness among workers, then they may set the weights to be 100, 0, and 50 for example. By using that, then you are inviting the managers to somewhat affect the outcome of your mathematical model. That would help the managers to feel that they are still participating in using the model, participating in decision making. That sometimes would be welcomed by those managers, and that's going to make your model even more useful