The simplest way to get your code working is to make the following changes.
1. Change the declaration of two sets:
set <str> GUARDS;
set <str> SHIFTS;
2. Replace the READ DATA statement:
read data guard_availability into GUARDS=[Guard];
read data guard_availability into SHIFTS=[Shift];
read data guard_availability into DATES=[Date];
read data guard_availability into [Guard Shift Date]
Available Hours;
3. Change the CREATE DATA statement:
create data schedule from [Guard Shift Date] Assigned=x;
You might find this book of examples useful:
SAS Help Center: SAS/OR® User's Guide: Mathematical Programming Examples