私は次のような状況にあります。一連のベクトルあり、それぞれ、が最初に固定されている積を計算します。の構造に関する情報はありませんが、には通常、多くの値が繰り返される特定のパターンがあり、これらの積をできるだけ高速に計算したいと考えています。
1つの例は次のようになります。
ここで白い領域は0です。
に関する情報を格納する方法、または何らかの方法でそれを変更して、各製品の操作の数を減らすことができる方法があるのでしょうか。すべて0の行の場合、これは簡単です。そのような行を示す行インデックスを格納するだけです。行の計算を再利用するために、複製された行に関する情報を保存することもできます。また、各行の平均差を最小化し、各行の差だけを計算するなど、行列の行の順序付けも検討しました。しかし、これはより複雑なパターンの問題にぶつかるようです。
この種の問題に対する既知の方法があるのかと思っていました。
編集:私が持っていたもう一つのアイデアは、それ以来ないということです。マトリックス内の一意の値の数はかなり少ないため、として製品を分解できます。ここで、は一意の値が1つしか含まれていませんが、これがこの問題に何らかの利点をもたらすかどうかはまだません。