linqs / pacman

Undergraduate AI assignments disguised as Pac-Man!
https://linqs.github.io/pacman/
Other
11 stars 44 forks source link

Include Timeout Utilities #13

Closed eriq-augustine closed 5 years ago

eriq-augustine commented 5 years ago

The grading code has a fairly robust timeout implementation. When the package reorganization happens, we should bring it over.

eriq-augustine commented 5 years ago

I implemented this: bb61df406fc62e8e49c69490f73c7e87d0d6d6a6

However, there is a problem. Because we are creating processes that we can accurately time, the random number generators are out-of-sync. I am also concerned about performance. A possible solution is to just not use timeout functions. We already watch the time an agent uses (and the autograder uses a process-based timeout), so maybe we can just wait for the full duration and raise an exception after. Because of the multi-process nature of the tournament, this shouldn't have too great an impact (and the agents have to first get pass the autograder).

eriq-augustine commented 5 years ago

All timeouts removed in 94242f044a8cc4ec2816a9baaa2b17f672d2a0b9 as per the last comment.