Homework-9

pdf

School

Georgia Institute Of Technology *

*We aren’t endorsed by this school

Course

6501

Subject

Industrial Engineering

Date

Dec 6, 2023

Type

pdf

Pages

6

Uploaded by EarlKnowledge12611

Report
Homework 9 2023-10-25 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 for Q 12.1 A Design of Experiments (DOE) approach can indeed be adapted to optimize my purchase of a second-hand Mazda car, ensuring that I get the best value for my money within my budget. This approach will help me find the right balance among various factors that influence the car’s age, trim, technology, location, mileage, and price. Here’s a structured plan to achieve this: 1. Define the Factors (Variables): Age of the car (in years) Trim level (e.g., base, touring, grand touring) Technology features (e.g., infotainment, safety, navigation) Location of the dealer (e.g., urban, suburban, rural) Mileage of the car (in miles) Price of the car (in dollars) 2. Set the Levels for Each Factor: Age: 1 year, 2 years, 3 years, etc. Trim: Base, Touring, Grand Touring Technology: Basic, Navigation, Premium Sound System Location: NY, NJ Mileage: Low, Medium, High Price: My budget constraint (e.g., $10,000, $15,000, $20,000, etc.) 3. Create a Full Factorial Design - Generate a matrix that combines different levels of each factor to create a set of combinations. Each combination represents a potential car. 4. Define Response Variables: Reliability (based on my car age and mileage) Value for my money (based on my price and features) Overall condition (based on my car age and dealer location) Estimated resale value (based on my trim level and technology) 5. Collect Data and Evaluate Cars: 1
For each combination from the factorial design, assess cars available in my area or within a reasonable travel distance. Collect data on my car age, mileage, price, trim, technology features, dealer location, and overall condition. Evaluate each car based on the response variables I defined. 6. Analyze the Results: Use statistical analysis to determine which combination of factors leads to the best trade-off between my car age, trim, technology, location, mileage, and price to meet my criteria for reliability, value, condition, and resale value. Consider other factors, such as vehicle history reports, accident records, and maintenance history, in my analysis. 7. Make an Informed Decision: Based on the results of my DOE analysis, I can make an informed decision on which second-hand Mazda car to purchase. Select the car that offers the best value for my money while meeting my budget constraints and preferences. 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 for Q 12.2 rm ( list= ls ()) library (FrF2) ## Loading required package: DoE.base ## Loading required package: grid ## Loading required package: conf.design ## Registered S3 method overwritten by ’DoE.base’: ## method from ## factorize.factor conf.design ## ## Attaching package: ’DoE.base’ ## The following objects are masked from ’package:stats’: ## ## aov, lm 2
## The following object is masked from ’package:graphics’: ## ## plot.design ## The following object is masked from ’package:base’: ## ## lengths set.seed ( 1 ) fractional.factorial = FrF2 ( nruns = 16 , nfactors = 10 ) fractional.factorial ## A B C D E F G H J K ## 1 -1 -1 -1 1 1 1 1 -1 1 -1 ## 2 1 1 -1 -1 1 -1 -1 -1 1 1 ## 3 -1 1 1 -1 -1 -1 1 1 -1 1 ## 4 -1 -1 -1 -1 1 1 1 1 -1 1 ## 5 1 -1 -1 -1 -1 -1 1 -1 -1 -1 ## 6 1 -1 1 1 -1 1 -1 1 -1 -1 ## 7 1 1 -1 1 1 -1 -1 1 -1 -1 ## 8 -1 1 -1 -1 -1 1 -1 1 1 -1 ## 9 -1 -1 1 1 1 -1 -1 -1 -1 1 ## 10 -1 -1 1 -1 1 -1 -1 1 1 -1 ## 11 -1 1 -1 1 -1 1 -1 -1 -1 1 ## 12 1 -1 -1 1 -1 -1 1 1 1 1 ## 13 1 -1 1 -1 -1 1 -1 -1 1 1 ## 14 -1 1 1 1 -1 -1 1 -1 1 -1 ## 15 1 1 1 1 1 1 1 1 1 1 ## 16 1 1 1 -1 1 1 1 -1 -1 -1 ## class=design, type= FrF2 Above shows the 16 fictitious houses with and without features. Question 13.1 For each of the following distributions, give an example of data that you would expect to follow this distri- bution (besides the examples already discussed in class). Answer for Q 13.1 a. Binomial - The number of successful free throw shots made by a basketball player in a fixed number of attempts. If we observe a basketball player making shots with a known success rate (probability ‘p’) in a fixed number of attempts (‘n’), this data might follow a binomial distribution. b. Geometric - The number of coin flips needed to get heads for the first time. In this case, each flip of the coin has a constant probability ‘p’ of success (getting heads), and we are interested in the number of attempts required until the first success. c. Poisson - The number of phone calls received at a call center in a given hour. If phone calls arrive randomly, with a known average rate of calls per hour, the distribution of calls per hour might be modeled using a Poisson distribution. 3
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
d. Exponential - The time between arrivals of customers at a service center or the time it takes for a light bulb to burn out. The exponential distribution is commonly used to model the time between events occurring at a constant rate, such as arrivals, failures, or decay. e. Weibull - The time until a piece of equipment in a manufacturing plant fails. The Weibull distribution is often used in reliability engineering to model the distribution of lifetimes for items that may have different failure modes over time. 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 lambda_1 = 5 per minute (i.e., mean inter-arrival rate mu_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 mu_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 lambda_1 = 50 to simulate a busier airport.] Answer for Q 13.2 I attached my code here: import simpy import random from statistics import mean # Define simulation parameters lambda_1 = 50 # Arrival rate (passengers per minute) lambda_2 = 0.75 # Service rate at ID/boarding-pass check (1/minutes) min_personal_check_time = 0.5 # Minimum time for personal check (minutes) max_personal_check_time = 1 # Maximum time for personal check (minutes) simulation_time = 60 * 12 # Total simulation time (minutes) total_passenger = 0 # Create a class to represent the airport security system class AirportSecuritySystem: def __init__ (self, env, num_checkers, num_personal_check_queues): self.env = env self.id_checkers = simpy.Resource(env, capacity = num_checkers) self.personal_check_queues = [simpy.Resource(env) for _ in range(num_personal_check_queues)] self.waiting_times = [] def id_boarding_pass_check(self, passenger): with self.id_checkers.request() as request: yield request yield self.env.timeout( 1 / lambda_2) # Exponential service time def personal_check(self, passenger): queue_choice = min(enumerate(self.personal_check_queues), key = lambda q: len(q[ 1 ].users)) 4
with queue_choice[ 1 ].request() as request: yield request yield self.env.timeout(random.uniform(min_personal_check_time, max_personal_check_time)) # Define the passenger arrival process def passenger_arrival(env, airport_security): global total_passenger passenger_id = 0 while True: yield env.timeout(random.expovariate(lambda_1)) passenger_id += 1 total_passenger += 1 env.process(passenger_processing(env, airport_security, passenger_id)) # Define the passenger processing (ID/boarding-pass check and personal check) def passenger_processing(env, airport_security, passenger_id): env.timeout( 0 ) # Time spent in the ID/boarding-pass check # Record the time when the passenger enters the personal check queue start_time = env.now yield env.process(airport_security.personal_check(passenger_id)) # Calculate the waiting time for this passenger and store it waiting_time = env.now - start_time airport_security.waiting_times.append(waiting_time) Figure 1: Result By running different combinations of the number of checkers and number of queues, under the current settings, the optimal number of checker is 15 AND optimal number of check queues is 21, with minimal waiting time of 0.62 min. However, this result cannot hold for every time due to the uncertainty. Yet, we can observe that there are many reasons why the average time may not decease when adding more checkers, which can be: Bottleneck in Personal Check Queues: The most significant bottleneck in the process might be the personal check queues rather than the ID/boarding-pass check. If you have 20 personal check queues but a small number of passengers, this can lead to inefficient resource usage. 5
Low Arrival Rate: If the arrival rate of passengers (lambda_1) is low, increasing the number of checkers might not have a substantial impact on wait times because there aren’t enough passengers to keep all the checkers busy. Service Rate (lambda_2): The service rate at the ID/boarding-pass check (lambda_2) might be too low. Increasing the number of checkers won’t help if they are not utilized efficiently. To improve or optimize the number of checkers and queues, we should also consider the cost of operating the airport and the following options: Dynamic Queue Management: Implement a system where the number of open personal check queues can dynamically adjust based on the number of arriving passengers. For example, if there are only a few passengers, we might not need all 20 queues open. Adjust Arrival Rate: Arrange flights within a certain interval to increase the passenger arrival rate (lambda_1) to better match the capacity of the security system. This will help keep all the checkers busy and reduce wait times. Optimize Service Rates: Ensure that the service rates at both the ID/boarding-pass check and personal check are reasonable. If the service rate at the ID check is much slower than the personal check, it might still create a bottleneck. Collect More Data: Since 50 for the arrival rate may not be correct, probably a guess just for homework, we can collect more data from the simulation, such as the number of passengers waiting in the personal check queues and the utilization of the checkers, to better understand where the bottleneck is occurring. 6
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