# Find a set of k non-negative vectors that explain most of the variance of the dataset?

I have a set of securities and I am looking for long-only portfolios that explain most of the variance of the set of securities. If it weren't for the long-only requirement, I could have used Principal Component Analysis. However, I need to find vectors with non-negative coefficients. Hence, I am no longer looking for orthogonality on this resulting set of vectors. I think a reasonable optimization criteria might be to maximize the variance explained of the given set of securities.