I have seen that FastICA is the only ICA algorithm implemented in many packages. What are the advantages of FastICA compared to other algorithms? What are its disadvantages?
The fastICA algorithm is most widely used method for blind source separation problems, it is computationally efficient and requires less memory over other blind source separation algorithm for example infomax. The other advantage is that independent components can be estimated one by one which again decreases the computational load. The only disadvantage I see is this method can not extract sources properly if the noise is nonuniform and correlated noise vectors. However, its efficiency to date is quite promising.