Этот проект реализует алгоритм Echo Wave для неправенных сетей. Чтобы имитировать реалистичное выполнение в каждом повторении алгоритма, узлы, способные выполнять протокол, генерируются случайным образом.
В зависимости от цели сети необходимо выбрать соответствующую сетевую структуру, поскольку существует корреляция между шаблоном соединения сети, стоимостью сети и временем. Следовательно, время выполнения сокращается, когда сетевое подключение является сильным, но это увеличивает затраты (общие отправленные сообщения) и производит мелкие деревья. С другой стороны, если сеть не очень хорошо подключена, стоимость уменьшается, но время увеличивается и глубина дерева.
Ввод считывается файлом .txt, который должен быть расположен в SRC/ Resources/ Polder. Этот файл должен иметь уникальный шаблон, который необходимо соблюдать, чтобы программа работала правильно. На правилах, которые описаны, должны соблюдаться:
Первой строкой файла должна быть размер графа. (Чтобы не читать файл дважды)
Каждая из линий отдыха должна представлять край со следующим форматом: «$ integer + space || tab + $ integer '(например, строка« 3 2 »или« 3 2 »означает, что узлы со значением 3 и 2 подключены).
Каждое значение узла (val) должно быть целым числом и удовлетворять следующее неравенство: 0> = val> Graphsize. Настоятельно рекомендуется, поскольку статические структуры использовались,
что значения всех узлов в диапазоне [0, графики) используются, чтобы избежать ненужного распределения памяти, также убедившись, что график подключен, иначе алгоритм не завершится, поскольку выполнение алгоритма в подключенных компонентах графика еще не реализовано.
@src.uk.ac.ncl.echo.usealgorithm#main: если вы хотите проверить свой файл. Добавьте имя файла в массиве строковых входных данных и самого файла в SRC/ Resources/ Polder.
@src.uk.ac.ncl.echo.usealgorithm: две константы объявлены для помощи выводам отчета. Если вы измените Test = true, режим тестирования включен, и каждый график будет запускать время Algorithm test_runs. Затем создается Result.txt, содержащий результаты теста.
@src.uk.ac.ncl.echo.echowavealgorithm: k установлен на 2 по умолчанию.