私は1つの問題で髪を引っ張ってきました...全体的な問題は複雑です...しかし、本当に重要な部分を説明するために最善を尽くします...
各エッジが接続された2つのノード間の相関を表すグラフがあります。各ノードはタイムコース(TC)(つまり、400の時点)であり、イベントはさまざまな時点で発生します。2つのノード間の相関は、重複するイベントのパーセンテージとして定義されます。この例を簡単にするために、各ノードで発生するイベントの総数が$tn$と同じであると仮定します。また、2つのTC(ノード)に$ on $のオーバーラップイベント(つまり、まったく同じ時点で発生したイベント)がある場合。次に、相関は単純に$ on $ / $tn$として定義できます。
今、私は11ノードのネットワークを持っています。そして私は2つのノードごとの相関関係を知っています。相関制約を満たす11ノードすべてのTCを生成するにはどうすればよいですか?
2つのノード間の相関関係がわかっている場合、2つのノードに対してこれを行うのは簡単です。TC_1とTC_2の相関値が0.6であると想定します。これは、2つのTCで60%の重複イベントがあることを意味します。また、イベントの総数は、TC_1とTC_2の両方で$tn$と同じであると想定します。2つのTCにイベントを配置する簡単なアルゴリズムは、最初に0.6 * $ tn $の時点をランダムに選択し、それらを両方のTCで重複したイベントが発生したタイムスロットと見なします。次に、TC_1で(1-0.6)* $ tn $の時点をランダムに選択して、TC_1の残りのイベントを配置します。最後に、TC_2の対応する時点でイベントが発生しなかったTC_2の(1-0.6)* $tn$時点をランダムに選択します。
ただし、生成された3つのTCが3つの相関制約すべて(つまり、3つのエッジ)を満たす必要がある3ノードネットワークを考えると、難しくなり始めます...11ノードネットワークではこれを行うことはほとんど不可能です。 ..。。
これはあなたにとって意味がありますか?そうでない場合はお知らせください...
これは単なる計算機科学のプログラミングの問題だと思っていましたが、考えれば考えるほど線形計画問題のようですね。
誰かが合理的な解決策を持っていますか?私はこれをRで行っていますが、どのコードでも問題ありません...