HW9 Solution
docx
keyboard_arrow_up
School
Georgia Institute Of Technology *
*We aren’t endorsed by this school
Course
6501
Subject
Industrial Engineering
Date
Feb 20, 2024
Type
docx
Pages
7
Uploaded by prakshipayal
Question 12.1 Describe a situation or problem from your job, everyday life, current events, etc., for which a design of experiments approach would be appropriate. Answer 12.1: In my role as an analytics manager for a software and services company, I might encounter
various situations where a design of experiments (DOE) approach can be highly beneficial. One such scenario is optimizing the customer support process to improve customer experience, service quality, and
ultimately, customer retention. Here's how I can use a DOE approach for this:
Scenario: Optimizing Customer Support
Problem: My company has been experiencing challenges with customer retention, and customer complaints about the support process have been increasing. The service team is overwhelmed, and there's
a need to enhance the customer support process to improve satisfaction and retain customers. However, I’m not sure which specific changes will yield the best results.
How to Apply Design of Experiments (DOE):
Identify Factors
: Begin by identifying the critical factors that could affect the customer support process. These factors could include response time, the knowledge of support agents, communication channels, and the effectiveness of self-service resources.
Select Levels: For each factor, choose different levels or variations that I want to test. For instance, response time levels could be "24 hours," "12 hours," and "6 hours." The knowledge of support agents could have levels like "basic," "intermediate," and "advanced."
Create a Matrix: Create a matrix of experiments where I systematically combine the different levels of these factors. For example, one experiment could involve using "12 hours response time" with "intermediate agent knowledge," and another could involve "24 hours response time" with "advanced agent knowledge."
Conduct Experiments: Implement these combinations in my customer support process. Ensure that I have a controlled and random approach to assigning customer support requests to these experimental groups to minimize bias.
Collect Data: Gather data on key metrics such as customer satisfaction scores, resolution time, and customer retention rates for each experiment.
Analyze Results: Use statistical analysis to determine which combination of factors leads to the most significant improvements in customer experience, service quality, and customer retention.
Optimize: Based on the analysis, I can identify the optimal combination of factors. Implement these changes in my customer support process and continuously monitor the impact on customer retention and satisfaction.
By applying a DOE approach in this scenario, I can systematically test and identify the most effective changes to my customer support process, leading to improved customer experience, higher retention rates, and potentially justifying higher charges for the enhanced service quality. This approach allows me to make data-driven decisions to optimize your operations.
Question 12.2 To determine the value of 10 different yes/no features to the market value of a house (large yard, solar roof, etc.), a real estate agent plans to survey 50 potential buyers, showing a fictitious house with different combinations of features. To reduce the survey size, the agent wants to show just 16 fictitious houses. Use R’s FrF2 function (in the FrF2 package) to find a fractional factorial design for this experiment: what set of features should each of the 16 fictitious houses have? Note: the output of FrF2 is “1” (include) or “-1” (don’t include) for each feature. Answer 12.2: A fractional factorial design is a structured approach to experimentation where you systematically study a subset of possible combinations of factors or variables to understand their effects. In my case, I have 11 fictitious features (variables) that could potentially impact the market value of a house, and I want to identify which features have the most significant impact on this need. But instead of conducting a larger survey we are using fractional factorial design to identify a subset of fictitious houses for the survey.
In my code R's FrF2 function is used to generate a fractional factorial design for an experiment aimed at determining the set of features from a list of 16 fictitious features that should be included or excluded from each house. The objective is to reduce the number of surveys that a real estate agent needs to conduct.
For ex: in our output row 1 for house 1 The combination of features is represented as
property_
size
number_of_
bedrooms
number_of_
bathrooms
garage_size
backyard_
space
kitchen
_size
living_room_
size
solar_panel
_installed
electric_car
_charging
corner_lot
lot_size
1
-1
-1
1
-1
-1
1
1
-1
-1
1
which suggests that this combination:
1.
includes the features property_size, garage_size, living_room_size, solar_panel_installed, lot_size , and 2.
excudes the following features: number_of_bedrooms, number_of_bathrooms, backyard_space, kitchen_size, electric_car_charging, corner_lot.
property_
size
number_of_
bedrooms
number_of_
bathrooms
garage_size
backyard_
space
kitchen
_size
living_room_
size
solar_panel
_installed
electric_car
_charging
corner_lot
lot_size
1
1
-1
-1
1
-1
-1
1
1
-1
-1
1
2
-1
1
1
-1
-1
-1
1
1
-1
1
-1
3
-1
-1
-1
1
1
1
1
-1
-1
1
1
4
-1
-1
1
-1
1
-1
-1
1
1
1
1
5
-1
-1
1
1
1
-1
-1
-1
-1
-1
-1
6
1
-1
1
1
-1
1
-1
1
-1
1
-1
7
-1
1
-1
1
-1
1
-1
-1
1
1
-1
8
1
1
-1
1
1
-1
-1
1
1
-1
-1
9
1
1
1
1
1
1
1
1
1
1
1
10
1
-1
-1
-1
-1
-1
1
-1
1
1
-1
11
-1
1
1
1
-1
-1
1
-1
1
-1
1
12
-1
-1
-1
-1
1
1
1
1
1
-1
-1
13
1
1
-1
-1
1
-1
-1
-1
-1
1
1
14
-1
1
-1
-1
-1
1
-1
1
-1
-1
1
15
1
1
1
-1
1
1
1
-1
-1
-1
-1
16
1
-1
1
-1
-1
1
-1
-1
1
-1
1
10 different yes/no features House no.
Below you can find the code for the question. You can also find the code file and excel file attached
Question 13.1 For each of the following distributions, give an example of data that you would expect to follow this
distribution (besides the examples already discussed in class). a. Binomial b. Geometric c. Poisson d. Exponential e. Weibull Answer 13.1: As an analytics manager focused on customer service, happiness, and retention, I can provide examples of data that might follow each of these distributions:
a. Binomial Distribution:
Example: The number of customers who purchased a software subscription (success) out of a fixed number of potential customers who were approached with a promotional email. This could be modeled as
a binomial distribution with parameters such as the success rate and the total number of attempts.
b. Geometric Distribution:
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
Example: The number of customer service interactions (such as phone calls or chats) needed before a customer is satisfied and their issue is resolved. The geometric distribution would model the probability of the first success (i.e., customer satisfaction) occurring on the nth interaction.
c. Poisson Distribution:
Example: The number of customer support tickets submitted in a given time period (e.g., per hour or per day). The Poisson distribution is often used to model rare and unpredictable events, such as customer complaints or service requests.
d. Exponential Distribution:
Example: The time between consecutive customer interactions or purchases. Exponential distribution is commonly used to model the time it takes for customers to make repeat purchases or the time between customer service calls.
e. Weibull Distribution:
Example: The lifetime of a product or the duration of a customer's subscription to a software service. The
Weibull distribution is versatile and can be used to model a variety of phenomena, including product lifetimes and customer retention periods.
Question 13.2 In this problem you, can simulate a simplified airport security system at a busy airport. Passengers arrive according to a Poisson distribution with λ
1
= 5 per minute (i.e., mean interarrival rate 1
= 0.2 minutes) to the ID/boarding-pass check queue, where there are several servers who each have exponential service time with mean rate 2
= 0.75 minutes. [Hint: model them as one block that has
more than one resource.] After that, the passengers are assigned to the shortest of the several personal-check queues, where they go through the personal scanner (time is uniformly distributed between 0.5 minutes and 1 minute). Use the Arena software (PC users) or Python with SimPy (PC or Mac users) to build a simulation of the system, and then vary the number of ID/boarding-pass checkers and personal-check queues to determine how many are needed to keep average wait times below 15 minutes. [If you’re using SimPy, or if you have access to a non-student version of Arena, you can use λ
1
= 50 to simulate a busier airport.] Answer 13.2: I developed a Python simulation of an airport security system using the SimPy library. It models the process of passengers arriving at an airport security checkpoint, going through ID/boarding-
pass checks, and then through personal checks. The simulation is used to determine the average wait time
for passengers in the system and assess whether it meets a specific performance target.
This code is like a computer game that pretends to be an airport security system. It imagines a bunch of people going through security checks at an airport, and it's designed to see how long they have to wait. Let's break it down:
The process followed for simulation is as follows:
1. Setting up the Game Rules: The code starts by setting up the rules for this game. It specifies things like
how fast people arrive at the airport (5 people per minute), how quickly the security checkers do their job
(0.75 minutes per person), and how long it takes for personal checks (between 0.5 to 1 minute). It also decides there are 2 ID/boarding-pass checkers and 3 personal check queues. The game will run for 180 minutes.
2.Getting Ready to Track Things: The code creates a blank list called wait_times to keep track of how long people have to wait.
3.The Airport Security Game: Here's where the actual game begins. It's like a make-believe world where people arrive at the airport security checkpoint and have to go through different steps. This part tells the game what happens when people arrive.
4.The Passenger's Journey: In this part, the game follows a passenger's journey. First, the passenger stands in line for an ID/boarding-pass checker. Then, they wait their turn and get checked (this part takes time, and the time is random to make it more realistic). After that, they need to choose the shortest line for personal checks (just like in a real airport). They again wait their turn and go through a personal check, and the game keeps track of how long they had to wait during this journey.
5.Running the Game: The game environment is set up, and the "airport_security" process (the imaginary airport security) is started. The game then runs for 180 minutes (or however long you set).
6.Checking the Results: After the game is over, the code calculates the average wait time for all the passengers. It's like finding out how long people had to wait on average. Then, it prints some statistics like the number of checkers and queues and the average wait time.
7.Final Assessment: Finally, it checks if the average wait time is less than or equal to 15 minutes. If it is, it says the wait time is okay. If it's more than 15 minutes, it suggests that maybe the airport should think about having more checkers or queues to speed things up.
In simple terms, this code is like playing a game where you pretend to be at an airport security checkpoint. It figures out how long people have to wait and tells you if the wait time is too long.
Explanation
: In this part, you're setting up the parameters for your airport security simulation game. You
define things like how fast passengers arrive (lambda1), how quickly ID/boarding-pass checkers work (mu2), the minimum and maximum time it takes for personal checks, the number of ID checkers, the
number of personal check queues, and how long the game should run (simulation_time). You also create an empty list called wait_times to keep track of how long passengers have to wait.
Explanation
: This is like the heart of your airport security game. You create a simulation environment using SimPy. You define resources for ID checkers and personal check queues. The while True loop is like the game's clock, constantly checking when passengers arrive.
When a passenger arrives, they go through an ID checker. The expovariate function is used to simulate random arrival times. Then, the passenger's journey (defined in the passenger function) is started as a new process within the game.
Explanation
: This is where you follow the journey of a passenger. The passenger requests an ID checker and waits their turn. The time it takes for ID checking is random (simulating realistic variations).
Next, the passenger chooses the shortest personal check queue. They request access to that queue and again, the time it takes for the personal check is random.
The wait_time is calculated, which is the total time a passenger had to wait in the game, and it's added to the wait_times list.
Explanation
: This is where you set up the game environment using SimPy. You create the environment (env), start the airport security process you defined earlier, and let the game run until the specified simulation_time.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
Explanation
: After the game is done running, you calculate some statistics. You find the average wait time for all the passengers. You also print the number of ID checkers, the number of personal check queues, and the average wait time.
Then, you check if the average wait time is less than or equal to 15 minutes. If it is, you say the wait time
is okay. If it's more than 15 minutes, you suggest that the airport might need more checkers or queues to speed things up.