- #1
- 2
- 0
When I have a matrix like this:
0 0 1 0
0 1 0 0
1 0 0 1
0 0 1 1
0 0 0 1
I can get most non zero values in the centre changing only the order of rows
1 0 0 1
0 1 0 0
0 0 1 0
0 0 1 1
0 0 0 1
Probably when I am allowed to change the order of columns and rows at the same time I will even get a better result, getting rid of the 1 in the top-right corner.
Is there an algorithm that can be used to optimise a n by m matrix, having most of its non zero values near its diagonal?
Background:
The columns are the different client orders, the rows the different articles. I like to divide the clients that require a simular set of articles in different groups. The real amount of clients is about 500, articles about 2500, so I need an algorithm that also works for larger matrices (calculation has to be made each day upfront).
Thanks,
Nasko
0 0 1 0
0 1 0 0
1 0 0 1
0 0 1 1
0 0 0 1
I can get most non zero values in the centre changing only the order of rows
1 0 0 1
0 1 0 0
0 0 1 0
0 0 1 1
0 0 0 1
Probably when I am allowed to change the order of columns and rows at the same time I will even get a better result, getting rid of the 1 in the top-right corner.
Is there an algorithm that can be used to optimise a n by m matrix, having most of its non zero values near its diagonal?
Background:
The columns are the different client orders, the rows the different articles. I like to divide the clients that require a simular set of articles in different groups. The real amount of clients is about 500, articles about 2500, so I need an algorithm that also works for larger matrices (calculation has to be made each day upfront).
Thanks,
Nasko