[FYI - my car is now fine. I am posting this in case someone in the future has a similar issue and can make use of this information.]
I got the Adaptive Headlamps error in my dash display and on idrive a few days back. Usually errors go away after a while leaving the /!\ triangle in the dash display but in this particular case, the error would not go away. Pushing the 'check' button on the stalk removed the message but it would come back immediately after about 5-10 seconds. So basically it was retriggering constantly.
I had someone stand in front of my car when I started it and they saw that both sides were no longer exhibiting the normal movements that are a signature of the adaptive headlight system.
I took it into Sonic and had them check the codes and basically the system could not communicate with either of the ALC adaptive headlamp modules in the car.
After getting home, I took out the ALC modules. They are found under the main headlights (you have to remove your headlight cluster on each side). I unplugged the battery first. The modules are held in by 3 torx screws and plug in under the light. The right side looked fine. The left side was in bad shape. The connector had corrosion and one of the pins was loose.
The BMW master tech at Sonic had told me that he's seen corrosion issues with the ALCs many times on E60s. Any moisture that gets into your headlights (for whatever reason) always makes its way onto the ALC connector because of where the ALC is situated.
So I bought a replacement ALC at my local dealer. The part online costs $120 + shipping:
BMW E60 M5 S85 5.0L > Search > 63127189312 > ES#173012 Control Unit For Adaptive Curve Lighting - Priced Each - 63127189312
The dealer wanted $152 after a 15% BMWCCA discount ($180 normally). I decided to take the local option as online it's a special order item that could take a few days to acquire and I didn't feel very patient.
I popped the new unit into the left side, put the headlights back in, reconnected the battery, and started the car. Both headlights were working fine again and the error was gone from my display. I believe these ALC units need to be coded but I have not had an issue after popping this new unit into the car. Not sure if the coding is only necessary if there's a new revision of the module .. but no coding was necessary for now. I'm going to take the car to Sonic again to have them rerun diagnostics to see if any coding is needed. But so far so good.
Hope this helps anyone running into this issue in the future.