У меня есть три модели: Parent, Child1, Child2.
Child1 генерирует строки, которые затем должны быть переданы Child2 для дальнейшей обработки. Строки генерируются на лету, когда выполняется Child1. Всякий раз, когда генерируется новая строка, она должна быть немедленно отправлена в Child2. Иногда 2 или более строк генерируются одновременно (разными агентами), и тогда эти 2 или более строк должны быть отправлены одновременно (т.е. в пределах одного тика).
Одно из решений состоит в том, чтобы пропустить родительскую модель и позволить Child1 стать Parent-моделью, которая затем имеет доступ к Child 2. Однако это усложнит Child1, поскольку тогда он будет включать весь необходимый код LevelSpace. Кроме того, две дочерние модели должны использоваться сами по себе. Две модели используются в образовательных целях, и учащиеся не должны видеть код LevelSpace. Отсюда и Родительская модель.
Другое решение — позволить родительской модели постоянно опрашивать дочернюю модель 1, чтобы запрашивать новые строки. Не очень красиво. Не очень эффективно.
Так что в основном я ищу какую-то общую память и/или функциональность событий в LevelSpace :-)
Кстати, строки представляют собой ДНК, РНК и т. д., а мы иллюстрируем транскрипцию и трансляцию строк и т. д.
Любые идеи?
Спасибо, Палле.
random-seed
). Обычно это нормально, так как дочерние модели не могут напрямую влиять друг на друга. Но передача процедур в среднем порядке имеет большое значение, поэтому результаты приведенного выше кода будут непредсказуемыми. Я создал задачу для обсуждения github.com/NetLogo/LevelSpace/issues/133 26.01.2019