您当前的位置 : > 科技

代写Scheduling Operators at Lancaster 

日期: 2024-05-08


Scheduling Operators at Lancaster 
 
Lancaster University employs a powerful mainframe computer dedicated to supporting research 
activities for its students and staff. This computer is managed by the director of the computer facility, 
Eleanor Mitchell, who is in charge of making sure everything runs smoothly. 
 
As the new academic year begins, Eleanor has a big job on her hands. She needs to figure out when her 
team of student operators can work. These student operators serve as the guardians of the computer, 
ensuring its smooth operation and assisting with programming tasks. 
 
Now, these student operators have different availabilities and abilities, and Eleanor has to juggle all of 
that to make sure the computer is always taken care of. Some student operators can only work on 
certain days, and they have different levels of experience, so they get paid different amounts. 
 
As Eleanor embarks on the task of planning the schedule, she plays the role of a puzzle solver, ensuring 
everyone’s time fits together without causing any conflicts. 
 
In this endeavour, you, a business analytics expert, have been brought in by Eleanor to assist in 
planning the schedule for the student operators. This involves examining each student’s schedule, 
taking into account their experience, and ensuring they work enough hours to stay on top of things. 
You will dig into the details of each student’s schedule, their pay rates, and the challenges Eleanor 
faces in creating a schedule that keeps everyone happy and the computer running smoothly 
throughout the academic year. You will provide Eleanor with your code and report the findings of your 
analyses to make sure the schedule works well for everyone involved. 
 
There are four student operators who are still studying for their bachelor’s degree (E. Khan, Y. Chen, A. 
Taylor, and R. Zidane) and two who are doing their master’s degree (R. Perez and C. Santos). Each 
student operator has to work a minimum number of hours per week. 
 
Eleanor is sharing the data and model used to optimise the schedule for the student operators. Until 
now, they have relied on Excel for modelling and optimisation. However, they aim to employ more 
advanced and easily generalisable tools. Your role is to implement their existing model using Python 
and then compare the resulting schedules with the current one. 
 
As part of the analysis, Eleanor tasks you with modelling and optimising the schedule to minimise 
overall costs while achieving a more equitable distribution of hours. The model will allow you to 
evaluate the trade-offs between fairness and cost-effectiveness. 
 
Finally, Eleanor proposes the introduction of two distinct skills, with each operator possessing at least 
one of these skills. The challenge involves optimising the schedule not only based on minimum 
commitments and availability, but also on skill distribution. 
 Data and model 
All operators are current university students, including four bachelor’s students (E. Khan, Y. Chen, A. 
Taylor, and R. Zidane) and two master’s students (R. Perez and C. Santos). They have limited daily 
availability, as outlined in the table below: 
Operator Mon Tue Wed Thu Fri 
E. Khan 6 0 6 0 6 
Y. Chen 0 6 0 6 0 
A. Taylor 4 8 4 0 4 
R. Zidane 5 5 5 0 5 
R. Perez 3 0 3 8 0 
C. Santos 0 0 0 6 2 
 
The operators have different wage rates based on their computer experience and programming ability. 
Below is a summary of the operators’ wage rates: 
Operator Wage Rate 
E. Khan £25/hour 
Y. Chen £26/hour 
A. Taylor £24/hour 
R. Zidane £23/hour 
R. Perez £28/hour 
C. Santos £30/hour 
 
The operators have a minimum weekly commitment set at 8 hours for bachelor’s students and 7 hours 
for master’s students to ensure a solid understanding of the operation. 
The mainframe operates from 8am to 10pm, Monday through Friday, with one operator on duty 
during these hours. On Saturdays and Sundays, operational shift changes occur, and the computer is to 
be operated by other staff. 
The challenge lies in optimising operator schedules to meet weekly minimum commitments, 
considering their availability, wage rates, and operational hours. 
Due to budget constraints, Eleanor employs the model provided below to minimise costs by 
determining the number of hours she should assign to each operator on each day. Here, ‘XD’ 
represents the number of hours operator ‘X’ is assigned to work on day ‘D’, where ‘X’ corresponds to 
the initials of the student operators (EK, YC, AT, RZ, RP, CS), and ‘D’ corresponds to the days (Mo, Tu, 
We, Th, Fr, i.e., Monday-Friday). 
Minimise: 
25 * (EKMo + EKWe + EKFr) + 26 * (YCTu + YCTh) + 24 * (ATMo + ATTu + ATWe + ATFr) + 
23 * (RZMo + RZTu + RZWe + RZFr) + 28 * (RPMo + RPWe + RPTh) + 30 * (CSTh + CSFr) Subject to: 
EKMo ≤ 6 (EK availability on Monday) 
EKWe ≤ 6 (EK availability on Wednesday) 
EKFr ≤ 6 (EK availability on Friday) 
EKMo + EKWe + EKFr ≥ 8 (Weekly minimum for EK) 
YCTu ≤ 6 (YC availability on Tuesday) 
YCTh ≤ 6 (YC availability on Thursday) 
YCTu + YCTh ≥ 8 (Weekly minimum for YC) 
. . . (Repeat similar constraints for AT, RZ, RP and CS for their respective weekly minimums and 
availability constraints) 
EKMo + ATMo + RZMo + RPMo = 14 (Constraint for Monday) 
YCTu + ATTu + RZTu = 14 (Constraint for Tuesday) 
. . . (Repeat the same pattern for the remaining days) 
EKMo ≥ 0 (Non-negativity constraint) 
EKTu ≥ 0 (Non-negativity constraint) 
. . . (Repeat the same for all other decision variables) 
Analysis requirements (60 Marks) 
This model aims to create efficient schedules that meet the weekly commitments for each student while 
minimising costs, considering their availability and the operational hours of the mainframe. 
Analysis requirement 1: Eleanor would like you to implement their model in Python. (Ideally, all of the 
analyses should be conducted in Python.) You should compare your results from Python to the solution 
produced by Eleanor who used Excel for their analyses. They expect any differences between the two 
solutions to be minor. The table below presents the number of hours assigned to each operator. 
Operator Number of hours 
E. Khan 9 
Y. Chen 8 
A. Taylor 19 
R. Zidane 20 
R. Perez 7 
C. Santos 7 
Overall cost = £1755 
 The table below shows the overall schedule (note that there could be more than one optimal schedule): 
Operator Mon Tue Wed Thu Fri 
E. Khan 2 hours 4 hours 3 hours 
Y. Chen 2 hours 6 hours 
A. Taylor 4 hours 7 hours 4 hours 4 hours 
R. Zidane 5 hours 5 hours 5 hours 5 hours 
R. Perez 3 hours 1 hour 3 hours 
C. Santos 5 hours 2 hours 
Conduct a sensitivity analysis to measure the impact of variations in operator availability on the 
overall cost. 
Analysis requirement 2: In the context of the optimal schedule generated, it becomes evident that the 
allocation of hours is not entirely equitable. For instance, some operators, like R. Zidane, are assigned 
significantly more hours (20) compared to others who are allocated only 7 hours. To address this 
fairness issue, Eleanor would like you to re-model and optimise the schedule that will achieve a more 
equitable distribution of hours while keeping the wage rates unchanged. Provide answers in the 
following two scenarios with detailed explanations: 
i. Eleanor is only willing to increase up to 1.8% in the overall cost to achieve this fairer 
distribution. 
ii. Eleanor aims to achieve the fairest possible distribution of hours and wants to 
determine the minimum overall cost increase required to achieve this distribution. 
Analysis requirement 3: Eleanor suggests incorporating a skill-based dimension to the optimisation 
process. Specifically, Eleanor aims to ensure that on any given day, there are at least 6 hours of operation 
contributed by operators with each skill. Each operator is now associated with at least one of two 
distinct skills, categorised as “Programming” or “Troubleshooting” as illustrated in the table below. In 
the table, a ✔ indicates that the corresponding operator possesses the specified skill. 
Operator Programming Troubleshooting 
E. Khan ✔ 
 
Y. Chen ✔ 
 
A. Taylor ✔ 
R. Zidane ✔ 
R. Perez ✔ 
 
C. Santos ✔ ✔ 
 
Reformulate the problem to meet the minimum requirements of these skills throughout the operational 
days as a linear program and explain it. 
Eleanor wants to determine the necessary increase in the total cost to achieve a schedule with a more 
balanced distribution of skills on operational days. If it is not feasible, provide an explanation. Management Report (20 Marks) 
The maximum length of the report is 10 pages (not counting the title page or the appendix). You can use 
any readable font (i.e., not too small) and use single spacing. There is no penalty for a shorter report, 
although it is unlikely that you would be able to address all the issues properly in a very short report. 
You need to provide the information requested and explain the analysis you have done. 
The report should follow the guidelines set out in the recorded lecture on Report Writing. However, 
since this is a short report: 
• You do not need to start different sections of the main body on separate pages; 
• A contents page is not required. If you include a contents page it will count towards the total 
page limit; 
• For the appendix, state which analyses tasks have been completed in Python. You then need to 
copy and paste the Python code (as a text, not screenshot) into the appendix. 
• No other details should be entered in the appendix. Anything relevant to the report should be in 
the main body of the report. Any additional details in the appendix that have not been requested 
will be ignored and will not contribute to your overall mark. 
Python Code (20 Marks) 
These marks will go to programs that are: 
• Well-structured and well-commented 
• Intuitive to use (i.e., straightforward for us to run the code) 
• Generalisable (i.e., your code can be used with any parameter values) 
• Flexible (i.e., provide user options via a user interface, covering all the analysis performed) 
An example of a user interface is as follows: 
> Choose one of the following options: 
> 1: Show the overall cost 
> 2: Show the number of hours assigned to an operator 
> 3: Show the schedule on a particular day 
> 4: Show the schedule of an operator 
> 5: Show the overall schedule 
> . . . 
> Q: Quit the program 

> The overall cost is £1755 
> Do you want to continue (Y/N)? 

> Choose one of the following options: 
> 1: Show the overall cost 
> 2: Show the number of hours assigned to an operator 
> 3: Show the schedule on a particular day 
> 4: Show the schedule of an operator 
> 5: Show the overall schedule 
> . . . 
> Q: Quit the program 

> Enter the name of the operator: 
E. Khan 
> The number of hours assigned to E. Khan is 9 hours 
> Do you want to continue (Y/N)? 

> Good bye! The program should run without errors and sensibly uses programming techniques developed on the 
module. The source code should be programmed with Jupyter Notebook as an Editor. It is important to 
break your code into small, meaningful functions and appropriately comment your code. 
Note: If you are unable to use Python for all of the analyses, you may use Excel in order to gain marks 
for that element of the coursework instead. However, your mark for the Python code will be negatively 
affected. 
Academic Malpractice 
This coursework is to be done as an individual piece of work. All of your analyses and the whole of your 
report must be your own work alone. Collusion between students and plagiarism are regarded as very 
serious offences and will be penalised severely. Please note that software to detect plagiarism and 
collusion will be used. 
Submission Instructions 
• Your coursework should be submitted to the MSCI151 Moodle site as two documents. Your 
python code and a Word or PDF document containing the management report. 
• If possible, please submit your report as a PDF file (you should be able to save it in PDF format 
from Word). Alternatively, submit it as a Word file if that is not possible. 
• Your python code should be submitted as a single Python file (.ipynb) that contains the Python 
code used to create the output/results for the analysis. If the Python file is not submitted, you 
will receive zero marks allocated for Python. Please ensure to submit the file with the .ipynb 
extension. 
• The name of the Python file should be your Library Card/Student Number. E.g., 
12345678.ipynb, where 12345678 is an example Library Card/Student Number. 
• The place to submit your files is in the MSCI151 Moodle site in the Methex 2 (individual) 
submission link under the “Individual Methex (Summer term)” section. 
• You are required to provide both the Python file and the relevant Python code segments in the 
appendix to the report. 
• Do not submit any other files. 
• The deadline for submission is 4pm on Thursday 9th May 2024. 
Remember to give yourself the opportunity to complete the task with time to spare. Leaving it to the last 
minute often results in a poor submission and a low mark. Late work without an agreed extension will 
be penalised according to the University rules (deduction of marks as shown in the assessment rules 
table for work up to 3 days late; a mark of 0 for work more than 3 days late). Extensions may, in certain 
rare circumstances, be given but to obtain an extension you must download the extension request form 
from the Management Science FAQ Moodle site. You are very strongly advised to make back-up copies 
of your work during the project, e.g., on your hard drive, a USB and/or on a cloud storage service – loss 
of work due to computer problems will not be accepted as a reason for an extension. 

 

请加QQ:99515681  邮箱:99515681@qq.com   WX:codinghelp