I am looking to see if there is a specific formula that can predict the amount of time it will take to accomplish a set number of tasks if I can do a certain number of tasks concurrently, based on an average length of time for each task.

My specific example:

I have about 80,000 tasks that need to be completed by an automated system. The maximum time limit for each task is 15 minutes, at which point the task is expired and not completed.

I can run 25 of these tasks concurrently.

I also have a limit of attempting 100 tasks per hour.

Each task could potentially take between 1 second and the full 15 minutes, though at this point the average is closer to 10 minutes for tasks which are completed.

I can decrease the maximum time limit for each task as necessary.

I would like to find a formula to predict the amount of tasks completed based on adjusting my variables.

Example: If I reduce the maximum time limit for completion down to 13 minutes, with an average completion time of 10 minutes, how many tasks can I attempt per hour? What about 13.5 minutes and an average of 11 minutes?

I have searched as best I can, without knowing if there exists a theorem to predict such a thing.

I have found this: Probability which doesn't have a solid answer, and is not applicable because my scenario does not require sequential completion of tasks.

I have also found myriad sites such as this: Calculate Averages Which again doesn't solve my problem because this is simply how to average time spent on a task.

Thank you.

  • $\begingroup$ Knowing the average of $10$ minutes is not sufficient to specify the problem. You need to know the distribution. E.g. is it normally distributed around $10$, and with what standard deviation? Or is it uniformly distributed in the range $(0, 20)$? Or exponential? Or any other distribution? A key will be the probability $p$ of finishing the task within the limit. If you want just a rough model, knowing $p$ and the average might give you a decent one. $\endgroup$ – antkam Apr 9 at 14:57
  • $\begingroup$ Also, you said "I also have a limit of attempting $100$ tasks per hour." But if so, and you can only run $25$ concurrently, then there is no point in lowering the limit below $1/4$ of an hour (i.e. $15$ minutes), right? Finally, are you trying to predict (maximize) how many you can attempt per hour, or how many you can finish per hour? $\endgroup$ – antkam Apr 9 at 14:59
  • $\begingroup$ Thank you, I had my head wrapped around the numbers I didn't realize the limit could be reached within the set time. So I guess I can mark the question answered, since there really is no equation because I had blinders on. $\endgroup$ – Puma Apr 10 at 23:34
  • $\begingroup$ haha, oh well, glad i helped you clarify the situation! :) $\endgroup$ – antkam Apr 11 at 0:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.