このプロジェクトは、無向ネットワークのエコーウェーブアルゴリズムを実装しています。アルゴリズムの各繰り返しで現実的な実行をシミュレートするために、プロトコルを実行できるノードはランダムに生成されます。
ネットワークの目的に応じて、ネットワークの接続パターン、ネットワークのコスト、および時間の間に相関関係があるため、適切なネットワーク構造を選択する必要があります。したがって、ネットワーク接続が強いときに実行時間が低下しますが、これによりコスト(送信される合計メッセージ)が増加し、浅い木が生成されます。一方、ネットワークが十分に接続されていない場合、コストは減少しますが、時間が増加し、木の深さが増加します。
入力は、SRC/リソース/フォルダーに配置する必要がある.txtファイルによって読み取られます。このファイルには、プログラムを正しく実行するために従う必要がある一意のパターンが必要です。 Bellowに記載されているルールに従う必要があります。
ファイルの最初の行はグラフサイズでなければなりません。 (ファイルを2回読み取らないように)
残りの各行は、次の形式でエッジを表す必要があります: '$ integer +スペース||タブ + $ integer'(例:3&2のノードが接続されていることを意味します)。
各ノード値(VAL)は整数であり、次の不平等を満たす必要があります:0> = val> graphsize。静的構造が使用されているため、強くお勧めします。
[0、graphsize)の範囲でのすべてのノードの値が不必要なメモリ割り当てを回避するために使用されていることも、グラフの接続コンポーネントのアルゴリズムを実行していないため、グラフが接続されていないことを確認してください。
@src.uk.ac.ncl.echo.usealgorithm#main:ファイルをテストする場合は、inputFileName文字列配列にファイルの名前を追加し、ファイル自体をSRC/リソース/フォルダーに追加します。
@src.uk.ac.ncl.echo.usealgorithm:レポートの結論の描画を支援するために、2つの定数が宣言されています。 test = trueを変更すると、テストモードが有効になり、各グラフがアルゴリズムTEST_RUNSタイムを実行します。次に、TESTS.TXTが作成され、テスト結果が作成されます。
@src.uk.ac.ncl.echo.echowavealgorithm:kはデフォルトで2に設定されています。