From Idea to Bookshelf: A Shallow Dive into Scheduling Algorithms

When I first set out to tackle the problem of optimizing my wife’s writing output, I knew it would be a challenging task. As her project manager, I wanted to help her make the most of her time and energy, and ensure that her books were completed in a timely manner. After some research, I realized that this problem could be approached as a scheduling problem, and that there were a number of algorithms I could use to tackle it.

One of the first algorithms I looked into was the Job Shop Scheduling Problem. This algorithm is often used in manufacturing environments, where there are a number of machines that can perform different tasks, and a number of jobs that need to be completed. The goal is to schedule the jobs in such a way that the overall makespan (the time it takes to complete all the jobs) is as short as possible.

Another algorithm I considered was the Multi-Agent Scheduling Problem. This algorithm is similar to the Job Shop Scheduling Problem, but in this case, the machines are replaced by agents. Each agent has its own set of goals, and the goal of the algorithm is to find a schedule that satisfies all of the agents’ goals.

After considering these two algorithms, I ultimately chose the NEH algorithm. The NEH algorithm, or the Nondominated Sorting Genetic Algorithm II, is a genetic algorithm that is specifically designed for solving scheduling problems. One of the main reasons I chose this algorithm is that it is able to handle a large number of constraints and objectives.

Another reason I chose the NEH algorithm is that it is able to find the global optimum, rather than just a local optimum. This means that it will always find the best possible schedule, rather than just a schedule that is good enough.

Finally, I chose the NEH algorithm because it is able to handle the unique constraints of my wife’s writing schedule. For example, it takes into account the cool-down period between different writing tasks, and ensures that certain tasks aren’t scheduled consecutively. This ensures that each book is completed in a timely and efficient manner, while still allowing my wife to take appropriate breaks between different writing tasks.

In conclusion, I chose the NEH algorithm because it is able to handle a large number of constraints and objectives, is able to find the global optimum and is able to handle the unique constraints of my wife’s writing schedule. I am excited to implement this algorithm and see the results it produces in optimizing my wife’s writing output.

--

--