Я совершенно новый с Java & AnyLogic, поэтому, пожалуйста, зайдите на мой уровень для этого.AnyLogic Agent-based симуляторы передачи значений
Есть ли способ для агентов получить переменную ценность от другого агента? В этом случае агенты будут одного типа. Таким образом, все они имеют одинаковые переменные, но поскольку это переменные со случайными начальными значениями, а не с параметрами, значения не совпадают.
Агенты также первоначально подключены через соединения Small-World, и эти соединения не изменяются во время прогонов.
Как агенты, происходящие в событии, например, собирают значение переменной от другого агента (например, агент i получает переменное значение X агента j). Это значение будет помещено в небольшое уравнение, чтобы изменить значение переменной X агента i. Другими словами, агент i будет подвержен влиянию связанного с ним агента j, следовательно, изменив его значение X.
Я пробовал несколько комбинаций .getConnectedAgent()
и .get
без каких-либо успехов. Теперь я пытаюсь извлечь значения X для каждого агента в базу данных, а затем использовать эту базу данных для сбора значения X агента j агентом i, но я не делаю никакого прогресса там.
Значения, которые необходимо извлечь, - double
s, но я мог бы изменить переменные на целые числа, если было бы проще.
Для того, чтобы Вениамина (хорошо) ответить более четко, если вы хотите, чтобы получить значение в AnyLogic переменной х из первого агента вы подключаетесь, вы будете использовать 'getConnectedAgent (0). x'. (Нуль в скобках указывает AnyLogic *, который * подключен агент, который вы хотите использовать, где ноль является первым. Если вы использовали сетевую среду малого мира, AnyLogic установил для вас нуль или более соединений, где порядок в этом случае равен немного нерелевантно.) –
Вам также нужно было бы проверить, что * было * действительно соединение для текущего Агента, которого может не быть, например, вы бы поместили код внутри 'if (connectedNumber()> 0) 'block. –