Форум программистов, компьютерный форум, киберфорум
AnyLogic
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
1

Агент или массив?

08.04.2020, 00:32. Показов 906. Ответов 10

Author24 — интернет-сервис помощи студентам
Есть не маленькая моделька на системной динамике в эни лоджик. Агент или массив? модель описывает, как гриб разлагает опилки. но раньше в ней был один вид гриба, теперь их нужно сделать три. Сколько при этом нужно всего менять? не так много. Внутри модели около 40 параметров и переменных, 30 из них для этих трех грибов не меняются, но пяток меняется. Встает вопрос. надо делать эти 5 меняющихся перменных "тройными", то есть вводить массивы внутри параметров, или же лучше сделать три агента? И можно ли делать три агента, собрав их из листов системной динамики?

Просто сейчас, если я сделаю новую размерность, новый массив, мне практически ВО ВСЕ переменные и константы внутри системной динамики нужно вводить этот массив. Это 50 раз ввести массив. А если я сделаю Агента с пятью изменяемыми полями, то надо будет менять пять полей в каждом агенте. а не 50 параметров.

Или делать ява класс?
Вложения
Тип файла: docx Ошметки инфы для будущей статьи 2.docx (28.7 Кб, 4 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.04.2020, 00:32
Ответы с готовыми решениями:

Трабла, агент неправильно изменяет другой агент
Ситуация: есть у меня мега агент, который занимается настройкой сервера, проверяет что в системе...

Java-агент Vs Ls-агент — кто быстрее?
Бэк-агента можно написать как на лс, так и на яве. Кто-нибудь обладает достоверной информацией,...

Проверить, является ли заданный массив упорядоченным по возрастанию, или убыванию, или вообще не отсортирован
Проверить, является ли заданный массив упорядоченным по возрастанию, или убыванию, или вообще не...

Массив: Определить, является ли массив чисел строго убывающим или возрастающим
В зависимости от того, образуют элементы заданного массива целых чисел из n элементов строго...

10
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
08.04.2020, 00:37  [ТС] 2
вот предыдущие работы и сама модель . сделано на версии эни лоджик 8.5.1 ( актуальна на январь 2020)





Вложения
Тип файла: rar integralModel_base.rar (19.3 Кб, 0 просмотров)
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
08.04.2020, 01:18  [ТС] 3
Почему то верхнее видео не воспроивзодится. вот ссылка. звук при записи почему то очень тихий был, но в наушниках должно быть слышно
https://www.youtube.com/watch?v=l1cOPZ4w0Ko&t=11s

Добавлено через 11 минут
надо новый ролик делать звук там подымать и добавки делать текстом кое где уффффффф

Добавлено через 22 минуты

https://youtu.be/uNYMzw4Bchw

Добавлено через 3 минуты
почему то штатный проигрыватель форума не играет видео, пришлось его привести в качестве ссылки
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
08.04.2020, 10:56  [ТС] 4
параметров всего 50, единомоментно у двух грибов могут отличаться 3-5 параметров. Но у других грибов это будут другие 5 параметров. А у третьих грибов третьи 5 параметров
В итоге можно сделать :
1. все 50 параметров будут массивами по три члена в массиве, а кое где эти три члена будут разделены еще на три значения
2. есть три (или больше) агента, любые параметры которых можно менять, и то, что происходит внутри этих агентов, описывается системной динамикой
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
08.04.2020, 23:58  [ТС] 5
Попробовал реализовать второй вариант, ничего не вышло. Ошибка Описание: Harvested_Mushroom невозможно привести к типу. Местоположение: integralModel_base/NutritionBox/harvesting - Событие

https://youtu.be/-K_kS-b_8Ik


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
List<Mushroom> harvested = new ArrayList<Mushroom>();
for (Mushroom mush : mushroom) {
    if (mush.matured>0.5)
    harvested.add(mush);
}
for (Mushroom mush : harvested) {
    remove_mushroom(mush);
    Harvested_Mushroom mush1 = add_harvested_Mushroom();
    mush1.ws = mush.ws;
    double x = basket.getX() + basket.getWidth()*random();
    double y = basket.getY() + basket.getHeight()*random();
    mush1.setXY(x,y);   
}
Вложения
Тип файла: rar integralModel_base.rar (20.0 Кб, 2 просмотров)
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
09.04.2020, 00:48  [ТС] 6
удалось вроде исправить ошибку. просто я случайно в Harvested_Mushroom удалил первую букву названия. это происходит у меня часто, так как крайне неудоба система двухкратных кликов на переменные для работы с ними. в итоге ты кликаешь, удаляешь, как думаешь, переменную, а на деле удаляешь первую букву. в итоге сейчас новые классы и агенты я вроде начал вводить, но непонятно, как это будет работать.
Вложения
Тип файла: rar integralModel_base.rar (20.0 Кб, 3 просмотров)
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
09.04.2020, 17:57  [ТС] 7
Сам по себе агент я понял, как создать из уже имеюшегося в программе. Проблема в том, что не я её создавал. Проблема в том, что непнятно, как он будет взаимодейстовать со всем так как не понятна архитектура связей. например, непонятно, что в модели делает страница- агент Harvested_Mushroom
Зачем он, чё он делает?

Добавлено через 4 часа 30 минут
проблема в статических и не статических полях. ох.
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
09.04.2020, 18:02  [ТС] 8
мне нужно брать из агента Enviroment параметр pH и класть внутрь триходермы, бацилы и фунги.
как это сделать?
Миниатюры
Агент или массив?  
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
09.04.2020, 19:26  [ТС] 9
мне нужно брать из агента Enviroment параметр pH и класть внутрь триходермы, бацилы и фунги.
как это сделать?

Добавлено через 19 минут
https://youtu.be/94t0w-HSzY4

Добавлено через 57 минут
https://youtu.be/0ONXLTzX60k

Добавлено через 6 минут
в рамках, когда агент в агенте, могу разобраться, как параметры использовать. когда агент в агенте в агенте, уже не могу разобраться
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
10.04.2020, 21:23  [ТС] 10
Вот тут нормальный вариант видео уже всё более понятно
https://youtu.be/HfFKtTjI59U
0
4 / 12 / 1
Регистрация: 28.11.2015
Сообщений: 528
24.04.2020, 14:50  [ТС] 11
Вот тут в книжке чё т похожее:
"Для того чтобы воспользоваться членом типа static за пределами класса, достаточ­
но дополнить имя данного члена именем класса, используя точечную нотацию. Но соз­
давать объект для этого не нужно. В действительности член типа static оказывается
доступным не по ссылке на объект, а по имени своего класса. Так, если требуется при­
своить значение 10 переменной count типа static, являющейся членом класса Timer,
то для этой цели можно воспользоваться следующей строкой кода:
Timer.count = 10; "

Добавлено через 6 минут
То есть ответ на мой вопрос такой- надо просто использовать статические переменные. я делаю Ph, T, Wc статическими и они будут одинаковые у всех обьектов класса. правда, тут непонятно вот что. если у одного обьекта класса Wc уменьшается, уменьшится ли он у другого обьекта? они имеют только изначальные значения одинаковые или то, что ты делаешь со статическим полем, переносится на него для всех обьектов? надо подумать пощупать

Добавлено через 11 минут
На применение методов типа static накладывается ряд следующих ограничений:
$ в методе типа static допускается непосредственный вызов только других мето­
дов типа static;
� для метода типа static непосредственно доступными оказываются только друтие
данные типа static, определенные в его классе;
,, в методе типа static должна отсутствовать ссылка this.
0
24.04.2020, 14:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.04.2020, 14:50
Помогаю со студенческими работами здесь

Одномерный массив: является ли данный массив геометрической или же арифметической прогрессией
Всем привет,перерыл уже наверно тонну информации на сайтах,но так толком и не понял некоторые вещи....

Массив: упорядочить массив по желанию пользователя по возрастанию или убыванию
Одномерный массив, заполненый целыми случайными числами упорядочить по желанию пользователя по...

Массив. Заполнить массив числами, делящимися нацело на 13 или на 17 и большими 30
Помогите пожалуйста с задачей Заполнить массив: а) двадцатью первыми натуральными числами,...

Что легче обрабатывать, массив или объект (ассоциативный массив)?
вопрос такой сейчас мне надо узнать что легче обрабатывать массив или объект? или &quot;что короче?&quot;

Что быстрее использовать, массив э-в, или указатель на массив э-в?
уважаемые, что быстрее использовать, массив э-в, или указатель на массив э-в? или без разницы? С...

Записать в массив А первые N простых чисел, которые меньше или равны Х. Вывести на экран массив А.
Помогите пожалуйста решить задания : 1) Дано натуральное число X. Записать в массив А первые N...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru