This section describes a design method using operations research, especially simulation and mathematical optimization, for a gastronomy service system. Operations research is a study that provides an optimal operation method to a system. Operations research includes various methods such as linear programming, combinatorial optimization, queuing, and simulation. Therefore, it is necessary to use a suitable method for system characteristics and the design purpose.

In fact, because services have different characteristics from those of manufacturing, it is necessary to keep their characteristics in mind when designing service processes. Additionally, the value of services as a concept different from manufacturing must be kept in mind. We outline the characteristics and values of services. Then we describe mathematical modeling for gastronomy service processes.

1 Characteristics and Values of Services

Services have many characteristics (Murakami and Arai 2017). When designing a gastronomy service system, one must do so considering simultaneity and disappearance of the product along with the characteristics presented below.

  1. (1)

    Intangible …Services have no physical form that industrial products have.

  2. (2)

    Simultaneity … Services are consumed at the time they are produced.

  3. (3)

    Heterogeneity … Recognition of service value differs depending on the person, time, and place.

  4. (4)

    Disappearance … Services cannot be inventoried.

As such, the design of services is inherently different from the design of industrial products that involve physical form. Industrial products are introduced to customers through design, production, transportation, and sales. After introduction to the customer, direct contact with the customer will occur. After an introduction to the customer, direct contact with the customer will occur and will be disposed of after utilization and maintenance. That is, the industrial products are designed using a product specification converted from the customer request based on the use-to-disposal process. No customer–manufacturer interaction exists at the production stage.

By contrast, with services, various interactions occur between the provider and the customer at the utilization stage. Therefore, when designing services, it is necessary to consider factors that have not been considered in the design of industrial products, such as locations where employees and stores are provided and storage yards. In service design, interaction between the service provider and the customer during the usage stage must be designed directly. In the design of engineering products, human decision-making is not the subject of design, but in service design, human decision-making comes into the subject of design.

Another important issue exists in service design: the issue of how to create customer value in the usage cycle. It is difficult to generally describe the relationship between service design and its value. Ueda et al. proposed differences in the value creation process (Ueda et al. 2009). Ueda et al. proposed a value creation model that classifies value creation processes into three classes based on the concept of emergent synthesis (Ueda et al. 2001) in production engineering (Fig. 3.1).

Fig. 3.1
figure 1

Value creation models

  1. (1)

    Class I: Providing Value Model

The product/service provider and its receiver are defined independently. Their values (objectives) and environments are clear. The model can be described completely with a closed system. Optimization strategy is fundamentally important. In designing the gastronomy service process, what applies to this class is the case if the provider has a clear goal (e.g. improving customer satisfaction) and if the resources to achieve it can also be modeled clearly.

  1. (2)

    Class II: Adaptive Value Model

The objective of product/service receiver is defined completely. However, the environment is changing and not predictable. Therefore, the model is to be an opened system. An adaptive strategy is therefore fundamentally important. In the design of the gastronomy service processes, what applies to this class is the case if a provider with a clear goal (e.g. improving customer satisfaction) and the resources to achieve it changed depend on environmental changes.

  1. (3)

    Class III: Co-creative Value Model

The objective of the product/service receiver is uncertain even for itself. Therefore, the provider and receiver cannot be mutually separable. Value-co-creation by the provider and receiver is fundamentally important. In the design of gastronomy service processes, what applies to this class is the case in which the service is provided while listening for information related to preferences to improve the satisfaction of customers whose provider is not clear.

2 Mathematical Modeling for Gastronomy Service Process

There are various target fields in gastronomy service. Their methods and results for modeling differ depending on the target field. Even in the same target field, modeling differs depending on the class shown in Sect. 3.1 and the service type between the service provider and the service receiver. Because it is difficult to discuss gastronomy service process models in general, and because we are aiming at describing mathematical modeling, herein, we discuss what is often regarded as a design target.

Two service processes are discussed as modeling objects. One process is a service process of ordering, cooking, serving dishes, and payment in a restaurant. During this process, service providers (i.e. kitchen staff and waitpersons) and service receivers (i.e. customers) are associated at each service stage. This service process has the goal of reducing waiting times to improve customer satisfaction. A restaurant has many customers. Therefore, the actions of other customers can cause unexpected environmental changes. From the explanation above, this process is classifiable as class II. Another process is the modeling of staff scheduling based on the desired working hours of the restaurant staff. This scheduling problem has a clear goal of working time placement for staff to improve customer satisfaction. In addition, there are various restrictions (e.g. working hours of staff). This problem is classifiable as class I because the model can be described clearly. In the following, mathematical modeling for gastronomy service process is described using modeling methods and numerical examples for these two cases.

3 Modeling of a Restaurant Service Process (Tanizaki and Shimmura 2017)

This section describes modeling of restaurant service processes. In this model, let a waitperson be a service provider and let a customer be a service receiver. This service process deals with the process from a customer entering a restaurant to leaving after dining. Conditions of customers and waitpersons change in a restaurant hall while interacting. Figures 3.2 and 3.3 show the condition transition of customers and waitpersons. In conditions of customers in Fig. 3.2, Waiting for water, Waiting on an order, Waiting for dishes, Waiting for offers, Moving to the cashier, and Payment change to the next condition as a result of interaction with waitpersons. Regarding conditions of waitpersons in Fig. 3.3, all conditions change to the next condition as a result of interaction with customers. Queuing theory, which is one of the methods of operations research, is often adapted to modeling and analysis. Queuing theory is an effective analytical technique to use when a customer has a static relation with the waitperson. It is difficult to analyze service processes by which a waitperson and customer mutually interact and move at a restaurant. Therefore two-dimensional cellular automata (CA) are used to model customer and waitperson behavior. Next, we outline CA, the mathematical method used for this modeling.

Fig. 3.2
figure 2

Condition transition of customers

Fig. 3.3
figure 3

Condition transition of waitperson

3.1 Cellular Automata

CA is automata with a cellular structure. It is a characteristic of CA that analysis objects are divided into the division domain called cells. Their overall behavior is expressed through interaction with neighboring cells (Katoh et al. 1998). Complicated aspects emerge even when simple rules are set. Therefore, it is a convincing analytical technique of complicated systems such as refugee flow simulation (Ohi and Onogi 2008). Regarding CA environments, CA can be one-dimensional or two-dimensional. Two-dimensional CA is applied for this modelling.

Two-dimensional CA are automata placed in a cell two-dimensionally (Fig. 3.4). The condition transition of the two-dimensional with neighborhood range r is described in Eq. (3.1).

Fig. 3.4
figure 4

Eight cell coordinates centered around \(\varvec{C}_{{\varvec{ij}}} \left( \varvec{t} \right)\)

$$\small C_{ij}\left(t + 1\right)\:=\: f\left(C_{i - r,j - r}\left(t\right),\:C_{i - r,j - r + 1}\left(t\right),\:\ldots,\:C_{ij}\left(t\right),\:C_{i,j + 1}\left(t\right),\:\ldots,\:C_{i + r,j + r}\left(t\right)\right)$$
(3.1)

\(C_{ij} \left( t \right)\): Condition of cell \(\left( {i,j} \right)\:{\text{at time}}\ t \left( {t,\:i,\:j}\:{\text{are integer values of }}\:0\:{\text{or more}} \right)\)

3.2 Modeling of Restaurant Service Processes Using CA

The modeling of restaurant service process using two-dimensional CA is described hereinafter. The planar layout of the restaurant is expressed by two-dimensional coordinates (i, j). This two-dimensional coordinate can be regarded as a cell (i, j) of a two-dimensional CA. The customer and waitperson condition is defined as the cell condition. Furthermore, the movement of customer and waitperson in a restaurant is defined as movement from cell to cell. As a result, the change and movement of the condition of the customer and the waitperson can be expressed by the condition transition of the cell. Letting \(C_{m}^{v}\) be condition v of customer m and letting \(p_{l}^{u}\) be condition u of waitperson l, then the condition \(C_{ij} \left( t \right)\) of cell (i, j) at time t is described in Eq. (3.2).

$$C_{ij} \left( t \right) = \left\{ {\begin{array}{*{20}c} C_{m}^{v} &:&\text{Customer}\: m\:\text{in condition}\: v\: \text{at cell}\left( {i,\:j} \right)\:\text{at time}\: t \\ P_{l}^{u}&:&\text{Waitperson}\: l\:\text{in condition}\: u\: \text{at cell}\left( {i,\:j} \right)\:\text{at time}\: t \\ 0&:&\text{No customer and waitperson at cell}\left( {i,\:j} \right)\:\text{at time}\: t \\ \end{array} } \right.$$
(3.2)

The location movement of the customer and waitperson is modeled as moving one cell at a time per unit time. The restaurant service process can be modeled as a two-dimensional CA with a neighborhood range of 1 surrounded by 8 cells around the central cell. As a result, the condition transition of cell Cij(t) is described in Eq. (3.3).

$$\begin{array}{*{20}c} {C_{ij} \left( {t + 1} \right)\:=\:f_{q}^{r} (C_{i - 1,j - 1} \left( t \right),\:C_{i - 1,j} \left( t \right),\:C_{i - 1,j + 1} \left( t \right),} \\ {C_{i,j - 1} \left( t \right)\:,C_{ij} \left( t \right),\:C_{i,j + 1} \left( t \right),} \\ {C_{i + 1,j - 1} \left( t \right)\:,C_{i + 1,j} \left( t \right),\:C_{i + 1,j + 1} \left( t \right))} \\ \end{array}$$
(3.3)
$$f_{q}^{r} {\text{ : A function that expresses that the cell condition transitions from }}q {\text{ to }}r$$

As an example, consider that customer m moves from cell (i, j-1) to cell (i, j) in condition v at time t-1 to t as shown in Fig. 3.4. This condition transition is described in Eqs. (3.4) and (3.5) (Fig. 3.5).

Fig. 3.5
figure 5

Movement between cells

$$C_{i,j} \left( t \right)\: =\: f_{0}^{{C_{m}^{v} }} \left( {C_{i,j - 1} \left( {t - 1} \right),\:C_{ij} \left( {t - 1} \right)} \right)$$
(3.4)
$$C_{i,j - 1} \left( t \right)\: =\: f_{{C_{m}^{v} }}^{0} \left( {C_{i,j - 1} \left( {t - 1} \right),\:C_{ij} \left( {t - 1} \right)} \right)$$
(3.5)

3.3 Application of CA to This Modeling

Condition \(C_{ij} \left( t \right)\) of customers shown in Fig. 3.2 is expressed as follows using \(C_{m}^{v}\):

\(C_{m}^{1}\):

: Entering the restaurant

\(C_{m}^{2}\):

: Moving to a seat

\(C_{m}^{3}\):

: Taking a seat

\(C_{m}^{4}\):

: Waiting to offer water

\(C_{m}^{5}\):

: Deciding on an order

\(C_{m}^{6}\):

: Waiting to take an order

\(C_{m}^{7}\):

: Waiting to cook dishes

\(C_{m}^{8}\):

: Waiting to offer dishes

\(C_{m}^{9}\):

: Having dishes

\(C_{m}^{10}\):

: Moving to the cashier

\(C_{m}^{11}\):

: Payment

\(C_{m}^{12}\):

: Leaving the restaurant

Function to express condition transition of customers in Eq. (3.3) is expressed as follows:

\(f_{0}^{{c_{m}^{1} }}\):

: Changing from null to Entering the restaurant

\(f_{{C_{m}^{1} }}^{{c_{m}^{2} }}\):

: Changing from Entering the restaurant to Moving to a seat

\(f_{{C_{m}^{2} }}^{{c_{m}^{3} }}\):

: Changing from Moving to a seat to Taking a seat

\(f_{{C_{m}^{3} }}^{{c_{m}^{4} }}\):

: Changing from Taking a seat to Waiting to offer water

\(f_{{C_{m}^{4} }}^{{c_{m}^{5} }}\):

: Changing from Waiting to offer water to Deciding dishes

\(f_{{C_{m}^{5} }}^{{c_{m}^{6} }}\):

: Changing from Deciding dishes to Waiting to take an order

\(f_{{C_{m}^{6} }}^{{c_{m}^{7} }}\):

: Changing from Waiting to take an order to Waiting to cook dishes

\(f_{{C_{m}^{7} }}^{{c_{m}^{8} }}\):

: Changing from Waiting to cook dishes to Waiting to offer dishes

\(f_{{C_{m}^{8} }}^{{c_{m}^{9} }}\):

: Changing from Waiting to offer dishes to Having dishes

\(f_{{C_{m}^{9} }}^{{c_{m}^{10} }}\):

: Changing from Having dishes to Moving to the cashier

\(f_{{C_{m}^{10} }}^{{c_{m}^{11} }}\):

: Changing from Moving to the cashier to Payment

\(f_{{C_{m}^{11} }}^{{c_{m}^{12} }}\):

: Changing from Payment to Leaving the restaurant

Condition \(C_{ij} \left( t \right)\) of waitpersons shown in Fig. 3.3 is expressed as follows using \(p_{l}^{u}\)

\(p_{l}^{1}\):

: Entering requirement

\(p_{l}^{2}\):

: Offering water

\(p_{l}^{3}\):

: Taking an order

\(p_{l}^{4}\):

: Offering dishes

\(p_{l}^{5}\):

: Payment

\(p_{l}^{6}\):

: Cleaning table

Functions to express the condition transition of waitpersons in Eq. (3.4) is expressed as follows:

\(f_{0}^{{p_{l}^{1} }}\):

: Changing from null to Waiting requirement

\(f_{{p_{l}^{1} }}^{{p_{l}^{2} }} ,f_{{p_{l}^{1} }}^{{p_{l}^{3} }} f_{{p_{l}^{1} }}^{{p_{l}^{4} }} ,f_{{p_{l}^{1} }}^{{p_{l}^{5} }} ,f_{{p_{l}^{1} }}^{{p_{l}^{6} }}\):

: Changing from Waiting requirement to each condition

\(f_{{p_{l}^{2} }}^{{p_{l}^{1} }} ,f_{{p_{l}^{3} }}^{{p_{l}^{1} }} ,f_{{p_{l}^{4} }}^{{p_{l}^{1} }} ,f_{{p_{l}^{5} }}^{{p_{l}^{1} }} ,f_{{p_{l}^{6} }}^{{p_{l}^{1} }}\):

: Changing from each condition to Waiting requirement

\(f_{{p_{l}^{2} }}^{{p_{l}^{3} }} ,f_{{p_{l}^{2} }}^{{p_{l}^{5} }} ,f_{{p_{l}^{2} }}^{{p_{l}^{6} }}\):

: Changing from Offering water to each condition

\(f_{{p_{l}^{3} }}^{{p_{l}^{5} }} ,f_{{p_{l}^{3} }}^{{p_{l}^{6} }}\):

: Changing from Taking an order to each condition

\(f_{{p_{l}^{4} }}^{{p_{l}^{3} }} ,f_{{p_{l}^{4} }}^{{p_{l}^{5} }} ,f_{{p_{l}^{4} }}^{{p_{l}^{6} }}\):

: Changing from Offering dishes to each condition

\(f_{{p_{l}^{5} }}^{{p_{l}^{3} }} ,f_{{p_{l}^{5} }}^{{p_{l}^{6} }}\):

: Changing from Payment to each condition

3.4 Multi-agent Simulation

Next, we move on to analysis of restaurant service processes. In restaurant service processes, customer satisfaction is related to various factors such as service waiting time, the deliciousness of dishes, and the hospitality of restaurant staff. An analysis of service waiting time that can be handled quantitatively is described in this book. Queuing theory is used conventionally for analyses of queue and waiting time (Takahashi and Morimura 2001). Queuing theory is effective for analysis when relations of service providers and receivers are static, as at bank counters. Like service processes of restaurants, it is difficult to analyze dynamic processes, such as restaurant service processes, where customers who are service receivers and waitpersons who are service providers interact and move to change the situation. In recent years, multi-agent simulation (MAS) has attracted attention as an analytical method of such processes. In actuality, MAS is a method to simulate the real world on a computer and to analyze the behavior of objects using multiple agents. Figure 3.6 shows that each agent acts independently and autonomously on the MAS, so the whole simulation can be executed through interaction with other agents and the neighboring environment. MAS can express human and organizational activities naturally. MAS can express human and organizational activities naturally, and because it is a simulation based on humans and organizations, it is readily applicable to simulate verification of events involved in decision-making (Nakanishi et al. 2003; Kawamura et al. 2003). Figure 3.6 shows the stepwise process for MAS. Within the system, all agents (customers and waitpersons) start by following a sequence of actions or conditions for transition, as shown through Figs. 3.2 and 3.3. If an agent satisfies a particular rule, it then moves to the next step to restart the process. After taking a dish, a customer moves to the cashier and leaves the restaurant. The system computes the overall time a customer stays in the restaurant. Then the process follows as in the earlier step. The simulation ends when the event queue is empty.

Fig. 3.6
figure 6

Overview of MAS flowchart

3.5 Case Study of This Method

As a case study of this method, an analysis of the seating arrangement of a restaurant is described. Restaurant A, for which the case study is conducted, is a restaurant specializing in pork cutlets in a restaurant street adjacent to the main station. Many restaurants exist in this street. When waiting for entering a restaurant occurs because the seat is full or no vacant seat exists for the number of group customers, there is a problem that the customer selects another restaurant without waiting.

Therefore, using this design method, measures to improve the service process of restaurant A are examined. In other words, the service process of the restaurant hall is modeled based on an analysis of customer visit results. Using this model, the relations among the seat layout, the number of waitpersons, and customer queues are analyzed.

Figure 3.7 shows the seat layout of restaurant A. The maximum number of customers who can use this restaurant is 43; that of groups is 21. Three waitpersons serve customers. The method used to reduce the customer waiting time is the following.

Fig. 3.7
figure 7

Seat layout of restaurant A

  1. (1)

    Shortening time to take orders and offer dishes of waitpersons.

  2. (2)

    Shortening time to cook dishes of kitchen staff.

The purpose of service process design in this case study is (1).

Table 3.1 presents findings of the customer visit ratio at lunch time. As for the number of customer ratio per group, one is 76%, two are 19%, and four or more are 2%. On the other hand, as for the seat ratio of restaurant A, a seat for one customer is 62%, and a seat for four customers is 33% (Fig. 3.7). Therefore, there is estrangement between the ratio of customer ratio per group and ratio of the seat. When a seat for four customers is used alone seat efficiency decreases because this restaurant does not allow customers from different groups to share a table. Figure 3.7 shows store improvement plan I, for which seats for one customer are increased, thereby reducing seats for four customers. It is difficult to extend a central seat in the facilities limitation of this restaurant. Therefore, Fig. 3.8 shows store improvement plan II of a realistic seat layout with the central seat as it is. Figures 3.7 and 3.8 show the ratio of the seats in store improvement plans I and II. The maximum number of customers who can use this restaurant decreases. However, that of customer groups increases by both Improvement plans I and II.

Table 3.1 Visit customer ratio at lunch time
Fig. 3.8
figure 8

Store Improvement Plan I

The purpose of this case study is the design of a restaurant model that decreases the number of customers waiting to enter the restaurant (waiting customers) by changing the seat layout and the number of waitpersons. Therefore, following (1), (2) are compared for existing restaurant, improvement plan I, improvement plan II to inspect restaurant improvement plan that is effective for the decrease in the number of waiting customers (Fig. 3.9).

Fig. 3.9
figure 9

Store Improvement Plan II

  1. (1)

    The number of waiting customers

  2. (2)

    Seat-sharing ratio (= the number of seats customers using/total seats)

Results of a computer simulation using visit customer data for two weeks are shown. Figure 3.10 and Table 3.2 show the average numbers of waiting customers. Figure 3.10 shows that the number of waiting customers decreases both improvement plan I and improvement plan II in comparison with an existing store. Table 3.2 shows that the average number of waiting customers is 0.288 for the existing restaurant, 0.078 for improvement plan I, and 0.130 for improvement plan II in the case of three waitpersons. In other words, the average numbers of waiting customers of improvement plans I and II decrease in comparison with the existing store. The average number of waiting customers is 0.273 for the existing store, 0.090 for improvement plan I, and 0.130 for improvement plan II in the case of four waitpersons. The average number of waiting customers of improvement plans I and II also decrease as in the case of three waitpersons. The average numbers of waiting customers of three waitpersons and four waitpersons are almost equal.

Fig. 3.10
figure 10

Average waiting customers

Table 3.2 Average number of waiting customers

Figure 3.11 and Table 3.3 show seat sharing ratios. Figure 3.11 shows that the seat-sharing ratios are lower for both improvement plan I and improvement plan II in comparison with existing stores. Table 3.3 shows that the average seat-sharing ratio as 52.8% for the existing store, 42.8% for improvement plan I, and 42.8% for improvement plan II in the case of three waitpersons. In other words, the average seat-sharing ratio of improvement plan I and II decreases in comparison with an existing store. The average seat-sharing ratio is 52.3% for the existing store, 42.8% for improvement plan I, and 46.6% for improvement plan II in the case of four waitpersons. The seat-sharing ratio decreases and the outbreak of waiting are controlled.

Fig. 3.11
figure 11

Average seat-sharing ratio

Table 3.3 Average seat-sharing ratio

4 Modeling of Work Scheduling

This section describes the modeling of work scheduling based on the desired working hours of restaurant staff. Specifically, it is the modeling of a business process that decides the working hours of staff members working in a store. In this business process, when the objective and constraints for realizing the objective are clear (i.e. classified into class I), it can be modeled as an optimization problem. The following outlines the optimization problem required for modeling. It then describes the case of modeling.

4.1 Optimization Problem (Yagiura and Ibaraki 2001)

The optimization problem is generally formulated as follows:

$${\text{Minimize or Maximize}}\: f\left( x \right)\qquad \text{s}.\text{t}.\: x\: \in\: F.$$
(3.6)

Therein, f (x) is called an objective function; F is called a feasible region. F is a solution set satisfying the constraints. \(x\: \in\: F\) is called a feasible solution, \(x\: \notin\: F\) is called an infeasible solution. The objective function f (x) is a function that takes a real number value or an integer value. The feasible solution that minimizes f (x) is the optimal solution. Finding such a solution is the goal of the optimization problem. If F has a combinatorial structure, then Eq. (3.6) is called the combinatorial optimization problem. A number of algorithms have been studied to solve combinatorial optimization problems, and optimization solvers are also sold. Therefore, an optimization solver is useful to solve for this class of problems related to the gastronomy service process by modeling them into a combinatorial optimization problem. The following describes typical combination optimization problems.

  1. (1)

    Traveling salesman problem

Given a set of n cities \(V = \left\{ {1,\: \cdots,\: n} \right\}\) and a distance \(d_{ij} \left( {i,\:j\: \in\: V} \right)\) between cities i and j, after visiting all the cities exactly once, the problem is to find the shortest route by which a traveling salesman can visit each city and return to the starting point. This problem is expressed as shown as follows;

$$\text{Minimize }\ \mathop \sum \limits_{i = 1}^{n} \mathop \sum \limits_{j = 1}^{n} d_{ij} x_{ij}$$
(3.7)
$$\text{Subject to }\mathop \sum \limits_{i\: =\: 1}^{n} x_{ij} = 1,\qquad j\: =\: 1,\:2,\: \cdots,\:n$$
(3.8)
$$\mathop \sum \limits_{j\: =\: 1}^{n} x_{ij} =\: 1,\qquad i\: =\: 1,\:2,\: \cdots,\:n$$
(3.9)
$$x_{ij} = \left\{ {\begin{array}{*{20}c} 1&:&\text{pass route between cities}\: i\:\text{and}\: j \\ 0&:&\text{not pass route between cities}\: i\:\text{and}\: j, \\ \end{array}} \right.$$
$$\sum\limits_{i \in S,j \in S} {x_{ij}\: \ge\: 1\:\left (S\:\text{is the set of all partitions of } V\right).}$$
(3.10)

Equation (3.7) shows that the objective function is to minimize the traveling route. Equation (3.8) shows that one incoming route exists for each city. Equation (3.9) shows that one outgoing route exists from each city. Equation (3.10) shows that there is at least one route connecting \({\text{S}}\) and \({\overline{S}}\). This problem is applicable to determination of the optimal route when delivering goods to homes.

  1. (2)

    Knapsack problem

Given a set \(V\:=\:\left\{ {1,\: \cdots,\: n} \right\}\) of n elements, each element j with size \(a_{j}\), value \(c_{j}\) and size b of the knapsack. The problem is to determine the number of each element to be selected from V to maximize the total value, under the condition that the total size of the selected elements is less than or equal to b. This problem is written as follows;

$${\text{Maximize}}\:\mathop \sum \limits_{j = 1}^{n} c_{j} x_{j}$$
(3.11)
$${\text{Subject to}}\:\mathop \sum \limits_{j = 1}^{n} a_{j} x_{j}\:\le\:b,$$
(3.12)
$$x_{j} = \left\{ {\begin{array}{*{20}c} 1&:&\text{Put element}\: j\:\text{in the knapsack} \\ 0&:&\text{Not put element}\: j\:\text{in the knapsack.} \\ \end{array} } \right.$$

Equation (3.11) shows that the objective function is to maximize the total value of the element put in the knapsack. Equation (3.12) shows that the sum of the elements that can be put into the knapsack is less than or equal to size b. This problem is applicable to optimum loading when loading a truck.

  1. (3)

    Generalized assignment problem

When \(\it {\text{n}}\) given tasks \(V = \left\{ {1,\: \cdots ,\:n} \right\}\) are assigned to m agents \(W = \left\{ {1,\: \cdots,\:m} \right\}\), the problem is to minimize the total cost of the assignment. Also, cost \(c_{ij}\) and required resource amount \(a_{ij}\) when assignment task \(j\:\in\: V\) to agent \(i\:\in\:W\), and available resource amount \(b_{i}\) of each agent i are given. Each task must be assigned to one agent. The sum of resource requirements of assigned tasks cannot exceed the available agent resources. This problem is written as follows;

$${\text{Minimize }}\:\mathop \sum \limits_{i = 1}^{n} \mathop \sum \limits_{j = 1}^{m} c_{ij} x_{ij}$$
(3.13)
$${\text{subject to }}\:\mathop \sum \limits_{j = 1}^{n} a_{ij} x_{ij}\: \le\: b_{i} ,\qquad i\: =\: 1,\: \cdots ,\:m$$
(3.14)
$$\mathop \sum \limits_{i = 1}^{m} x_{ij}\: =\: 1,\qquad j = 1,\: \cdots ,\:n$$
(3.15)
$$x_{ij} = \left\{ {\begin{array}{*{20}c} 1&:&\text{Agent}\: i\:\text{is assigned to task}\: j \\ 0&:&\text{Agent}\: i\:\text{is not assigned to task}\:j. \\ \end{array} } \right.$$

Equation (3.13) shows that the objective function is to minimize the total cost of assigning agent i to job j. Equation (3.14) shows that the available resource amount of each agent is less than or equal to bi. Equation (3.15) shows that each job must be assigned to one agent. This problem is applicable to the optimal working arrangement of the store clerks.

  1. (4)

    Integer programming problem

Given coefficients \(a_{ij}\), \(b_{i}\) and \(c_{j} \left(\: {i\:=\:1,\:\cdots,\:m,\:\:j\:=\:1,\:\cdots ,\:n} \right)\) and the set \(J\: \subseteq\: V\: =\: \left\{ {1,\: \cdots,\:n} \right\}\), the problem is written as follows;

Objective function

$$f\left( z \right)\: =\: \mathop \sum \limits_{j = 1}^{n} c_{j} x_{j}\: \to\:\text{Minimize or Maximize}$$

Subject to

$$\mathop \sum \limits_{j = 1}^{n} a_{ij} x_{j}\: \ge\: b_{i} ,\qquad i\:=\:1,\: \cdots,\:m$$
$$x_{j}\: \ge\: 0,\qquad j\: =\: 1,\: \cdots,\: n$$
$$x_{j}\: :\:{\text{Integer}},\qquad j\: \in\: J.$$

The integer programming problem has a general form. Therefore, most combinatorial optimization problems can be formulated into this problem. When the gastronomy service process problem is modeled as a combined optimization problem, it is started by formulating it as the problem above.

4.2 Modeling of Staff Scheduling

Determining the working day and time slot (hereinafter, working time) of staff in restaurants is an important task of the store manager. The staff scheduling problem in the gastronomy service is a problem of finding a working time that maximizes an objective function value (e.g., a customer satisfaction level) using a staff member’s desired time as an input. At that time, it is necessary to comply with various constraints (e.g., the required number of staff and ability level by workplace, and the continuous working hours of staff). The store manager plans this staff scheduling, which is often planned without the support of a computer. Therefore, their workload is high. In the following, a typical staff schedule problem example is modeled based on some research results (Tanizaki et al. 2017; Nobutada et al. 2015).

The following is a viewpoint of modeling the work contents of the staff of the restaurant with generality.

  1. (1)

    Components of the restaurant hall work are the workplace and work content.

  2. (2)

    Attributes of the restaurant staff include wages, ability, desired degree for working day/time, and desired degree for workplace/content. The job position, which is an attribute of the staff member, is modeled as the ability and wages are its essential element.

  3. (3)

    Staff member’s ability is defined as “Possible” or “Impossible” for each workplace and work content.

  4. (4)

    The desired degree for each time slot on each day of the staff member is “Permitted,” “Not permitted,” and “Desirable not to work.” In addition, the working hours of staff members in a day shall be continuous.

  5. (5)

    Set the minimum number of staff members to respond to customers according to work location and work contents in each time slot.

The objective function is generally set as the improvement of customer satisfaction. From the research point of gastronomy service process, the objective function is to improve customer satisfaction (CS), employee satisfaction (ES) and management satisfaction (MS). These three objective functions are modeled as described below.

  1. (1)

    CS is modeled such that it improves by increasing the customer contact time of staff. Because CS will be improved further if staff members work for high-value work for customers, set a customer satisfaction factor for the workplace and work contents of staff members.

  2. (2)

    ES is modeled such that it improves by increasing the working hours, workplace and work contents that desired by the staff members.

  3. (3)

    MS is modeled such that it deteriorates by increasing staff working time because labor cost increases.

As one might expect, CS and ES, ES and MS are closely related. Many studies have been conducted on their relevance. (e.g. Heskett et al. 1997; Ugboro and Obeng 2000). This relation is discussed in another section. In this section, it is modeled as the three objective functions having a tradeoff relation. One must enter the desired working time for each staff member and decide their working time, places, and contents such that CS, ES, and MS become the highest. At that time, they must satisfy the minimum required number of staff and restrictions on the ability level of the workplaces and work contents where staff member can work and also satisfy the staff member’s continuous working hours.

4.3 Formulation of a Staff Scheduling Problem

The staff scheduling problem can be formulated according to the following process. Prepare a working pattern set consisting of consecutive working hours of work desired degree 1 (= Permitted) and −1 (= Desirable not to work) for each staff member from each staff member’s desired working time. At that time, ensure that the staff member’s continuous working hour constraints are kept. From the working pattern set, decide the working pattern with the highest CS, ES, and MS under the condition that satisfies the constraints described above (Fig. 3.12). This problem can be formulated as a 0–1 integer programming problem by using 0–1 variables for the decision of the working pattern.

Fig. 3.12
figure 12

Formulation of a staff scheduling problem

  1. (1)

    Notation

  • \(m:\:{\text{staff member}}\left( m\: =\: 1,\: \cdots ,\:M \right)\).

  • \(d:\:{\text{time slot}}\left( {\text{day}} \right)\: \left( {d\: =\: 1,\: \cdots ,\:D} \right)\).

  • \(t:\:{\text{time slot}}\left( {\text{time}} \right)\: \left( {t\: =\: 1,\: \cdots ,\:T} \right)\).

  • \(p:{\text{workplace }}\left( {p = 1, \cdots ,P} \right)\).

  • \(v:\:{\text{work content}}\:\left( {v\:\: = 1,\: \cdots ,\:V} \right)\).

  • \(T_{max} :\:{\text{upper limit for working hours per day}}\).

  • \(T_{min} :\:{\text{lower limit for working hours per day}}\).

  • \(k_{m,d} :\:{\text{number of working patterns of staff member}}\: m\: {\text{on day}}\: d\).

  • \(K_{m,d} :\:{\text{working pattern set of hall staff member}}\: m\: {\text{on day}}\: d\)

    $$K_{m,d}\: =\: \left\{ {1,\: \cdots ,\:k_{m,d} } \right\}$$
  • \(g_{m,d} :\:{\text{working pattern}}\: \left( {g_{m,d}\: \in\: K_{m,d} } \right)\).

  • \(a_{{m,d,g_{m,d} ,t}} :\begin{array}{*{20}{l}} {{\rm{desired degree of staff member }}\, m {\rm{on day}}\, d, {\rm{time}}\, t {\rm{ and }}}\\ {{\rm{working pattern}}\,g_{m,d}.} \end{array}\)

  • \(a_{{m.d.g_{m,d} ,t}} = \left\{ {\begin{array}{*{20}c} 1 &:&\text{Permitted} \\ 0 &:&\text{Not permitted} \\ - 1 &:&\text{Desirable not to work.} \\ \end{array} } \right.\)

  • \(q_{m,p,v} :\:\text{desired degree of staff member }m\:\text{in workplace }p\: \text{and work content }v\).

  • \(L_{d,t,p,v}^{\min }:\begin{array}{*{20}{l}} {{\rm{minimum number of staff members on day }}\, d{\rm{, time }}\, t,{\rm{ workplace }}\, p{\rm{ and }}}\\ {{\rm{work content}}\,v.} \end{array} \)

  • \(e_{m} :\:{\text{cost per unit time of staff member }}m\).

  • \(u_{p,v} :\: {\text{customer satisfaction factor for the workplace }}p\:{\text{and work content }}v\).

  • \( x_{m,d,t,p,v} : \begin{array}{*{20}{l}} {0 - 1{\rm{ integer variable denoting whether staff memer}}\, m {\rm{ works}}}\\ {{\rm{ or not on day}}\,d, {\rm{time}}\, t, {\rm{ workplace}}\, p {\rm{ and work content}}\, v} \end{array}\)

  • \(x_{m,d,r,p,v}\: =\: \left\{ {\begin{array}{*{20}c} 1&:&\text{Work} \\ 0&:&\text{Not work.} \\ \end{array} } \right.\)

  • \( z_{{m,d,g_{m,d} }} :\begin{array}{*{20}{l}} {0 - 1{\rm{integer variable denoting whether working pattern}}\, g_{m,d}}\\ {{\rm{of staff member}}\,m, {\rm{on day}}\, d, {\rm{ is selected or not}}} \end{array}\)

  1. (2)

    Formulation

<Objective function>

$${\text{Maximize }}\:\alpha CS + \beta ES + \gamma MS \qquad\left( {\alpha + \beta + \gamma\: =\: 1} \right)$$
(3.7)

Equation (3.7) shows the weighted sum of CS, ES, and MS presented as

$$\begin{aligned} CS\: =\: \mathop \sum \limits_{m = 1}^{M} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{t = s.b.}^{c.b.} \mathop \sum \limits_{p = 1}^{P} \mathop \sum \limits_{v = 1}^{V} u_{p,v} x_{m,d,t,p,v}\qquad\qquad\qquad\qquad\\ \left({\text{where }}s.b.\:{\text{is the starting time and }}c.b.\:{\text{is the closing time of business hours}}\right) \end{aligned}$$
(3.8)
$${\text{ES}}\:=\:\mathop \sum \limits_{m = 1}^{M} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{{g_{m,d} = 1}}^{{G_{m,d} }} \mathop \sum \limits_{t = 1}^{T} a_{{m,d,g_{m,d} ,t}} z_{{m,d,g_{m,d} }}\: +\: \mathop \sum \limits_{m = 1}^{M} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{p = 1}^{P} \mathop \sum \limits_{p = 1}^{P} \mathop \sum \limits_{v = 1}^{V} q_{m,p,v} x_{m,d,t,p,v}$$
(3.9)
$${\text{MS}}\: =\: - \mathop \sum \limits_{m = 1}^{M} \mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{t = 1}^{T} \mathop \sum \limits_{p = 1}^{P} \mathop \sum \limits_{v = 1}^{V} e_{m} x_{m,d,t,p,v}$$
(3.10)

Equation (3.8) defines the CS value, which increases by \(u_{p,v}\) if a staff member works at workplace p and work content v. Equation (3.9) defines the ES value, which increases by \(a_{{m,d,g_{m,d} ,t}}\) if the hall staff member works in the “Permitted” time slot and decreases by \(a_{{m,d,g_{{m,d}} ,t}}\) if the hall staff member works in the “Desirable not to work” time slot. Furthermore, it increases or decreases by \(q_{m,p,v}\) depending on the desired degree of workplace p and work content v for staff member m. Equation (3.10) defines the MS value that decreases by \(e_{m}\) when staff member m works.

<Constraints>

$$\mathop \sum \limits_{{g_{m,d} = 1}}^{{k_{m,d} }} z_{{m,d,g_{m,d} }}\: \le\: 1 \left( {\forall m,\: \forall d} \right)$$
(3.11)
$$\mathop \sum \limits_{p = 1}^{P} \mathop \sum \limits_{v = 1}^{V} x_{m,d,t,p,v}\: =\: \mathop \sum \limits_{{g_{m,d} = 1}}^{{k_{m,d} }} a_{{m,d,g_{m,d} ,t}}^{2} z_{{m,d,g_{m,d} }} \left( {\forall m,\: \forall d, \:\forall t} \right)$$
(3.12)
$$\mathop \sum \limits_{m = 1}^{M} x_{m,d,t,p,v}\: \ge\: L_{d,t,p,v}^{min} \left( {\forall d,\: \forall t,\: \forall p,\: \forall v} \right)$$
(3.13)
$$\mathop \sum \limits_{d = 1}^{D} \mathop \sum \limits_{t = 1}^{T} x_{m,d,t,p,v}\: =\: 0\qquad \left( {if\: C_{m,p,v} \:=\: 0} \right) \left( {\forall m,\: \forall d,\: \forall t} \right)$$
(3.14)
$$T_{min}\: \le\: \mathop \sum \limits_{t = 1}^{T} a_{{m,d,g_{m,t} ,t}}^{2}\: \le\: T_{max} \left( {\forall m,\: \forall d,\: \forall g_{m,d} } \right)$$
(3.15)

Equation (3.11) shows that each staff member’s working pattern for each day is the maximum one. Equation (3.12) shows that the staff member works in the desired time slot of the selected working pattern. Furthermore, the staff member works in one workplace and with the work contents in the time slot. Equation (3.13) shows that it is necessary to allocate staff member more than the minimum required number of staff members for the workplace and work content. Equation (3.14) shows that the staff member cannot work in workplaces and contents where there is no workmanship. Equation (3.15) defines the upper and lower limits of the staff member’s working hours per day.