It sounds like your lease times are very short. If these are labs and the computers do not move around much, then lease times can be longer than if the devices are mobile and move around much. For a static lab you could use lease times of 7 days without issue. This means that computers will attempt to renew their leases 1/2 way through at about 3.5 days. If they cannot renew their leases, they will wait 50% of the remaining time and then try again – over and over until the lease time expires and then depending on the client will either keep their current address or attempt to use the locally assigned address (169.254.x.x).
I would recommend using a tool like Wireshark and running some DHCP testing using a client with ipconfig /release and ipconfig /renew. Watch the traffic at both the server (filtering by client MAC address) and on the client to see what traffic is traversing during these transactions.
Let us know if you need additional assistance.