We've had to deal with this on many occasion (even now) and wish JDE did this out of the shoot for us. If there is a solution (easy) I'll be watching the thread.
In the meantime, you might want to make sure your system is using the "inactivity timer" so that it logs users off after a period of inactivity. (be sure to use *ENDJOB, not *DSCJOB becuase it doesn't log them off with the second choice) We have ours set to about 90 minutes because we were finding users were logging in "for the day" and not really using the system, hence using up a license. Once we invoked this procedure and let the users know it would be happening, it seems the user count went down a bit and users only get on as needed.