I like the idea of that ultrasonic cleaner. I am going to add that to my wish list.
As for the cleaning frequency, one thing I forgot to mention was that I also like to clean them because it also gives me a good closeup inspection of the internals during the process so that I can watch for abnormal wear, cracks, etc. I should also add that my ARs get way more attention than the AKs, which just get a quick pass of the bore snake after a prolonged range trip, or 2. Since ARs like to run wet, I usually break them down mainly to re-lube, so while "I'm in there" anyway, it just seems silly not to clean it up at the same time. I don't however do a full detail dis-assembly of the BCG every time, just wipe it down, or spray it with brake cleaner, clean any gunk out of the upper, run the bore snake through it, re-lube and it's done. Takes a total of maybe 5-10 minutes unless I'm doing a detail type cleaning.