Network Learning Algorithm