(i) Step : Initialization
(ii) Step : Subcarrier Allocation
while :
(updated with water filling policy),
end
Algorithm 2