2017-10-16 12 views
5

Dla projektu musimy zdecydować pomiędzy NetLogo i RepastS.Czy NetLogo może obsłużyć miliony agentów?

Będziemy modelować sieć instytucji z osobami przemieszczającymi się między nimi. Ludzie wchodzą i wychodzą z tych instytucji, które są zaimplementowane jako czarne skrzynki. Nie widzimy problemu z korzystaniem z NetLogo. Rozszerzenie tego projektu będzie miało wyraźne implementacje instytucji z agentami interakcyjnymi. Te interakcje występują w innej skali czasowej niż aktualizacje na poziomie makro (przemieszczanie między instytucjami).

1) Czy NetLogo może obsługiwać potencjalnie miliony agentów (przechodzenie między instytucjami i interakcję z nimi) i 2) czy NetLogo może obsługiwać agentów działających w różnych skalach czasu i szczegółowości?

Odpowiedz

5

1) Patrz: NetLogo FAQ on how big models can be i jak zwiększyć jego możliwości pamięci.

Miliony agentów są zdecydowanie możliwe, ale nie są powszechne. Słyszałem o laboratorium, które używa około 7 milionów agentów w swojej symulacji (działa w klastrze).

Na moim laptopie, po zwiększeniu limitu pamięci (zobacz FAQ), udało mi się łatwo stworzyć kilka milionów agentów i poprosić ich o zrobienie drobiazgów. Każdy ask na 3-4 milionów też około 1-1.5 sekund.

2) Absolutnie! Zapoznaj się z LevelSpace extension (w pakiecie z NetLogo). Pozwala to na otwieranie modeli NetLogo i współdziałanie z innymi modelami NetLogo. W twoim przypadku utworzysz model interakcji wewnątrzinstytucjonalnej, a następnie kolejny model podróżowania między instytucjami, w którym istnieje wiele modeli instytucji, do których dodaje agentów i usuwa agentów. Następnie możesz uruchamiać modele wewnątrz instytucji w dowolnej skali w stosunku do swojego głównego modelu.

Również dystrybucja agentów między modelami za pośrednictwem platformy LevelSpace powinna przebiegać nieco szybciej. LevelSpace będzie automatycznie porównywać operacje podczas wywoływania do wielu modeli.

+0

Jestem naprawdę zdziwiony przez pochmurne strony, zarówno pytanie, a zwłaszcza odpowiedź. Pytanie może być nieco niejasne, ale na temat. Odpowiedź jest dobrą odpowiedzią na to pytanie. Mam nadzieję, że takim głosom zazwyczaj towarzyszyłyby wyjaśnienia (np. "Jest to oczywiste ze względu na FAQ"), ale w tym przypadku najczęściej zadawane pytania dają tylko częściową odpowiedź, odpowiedź odnosi się do FAQ i dostarcza więcej informacji . – Alan

+0

Dzięki Alan. Jeśli ktoś ma sugestie dotyczące poprawy mojej odpowiedzi, chętnie go zmienię. Biorąc pod uwagę wysoki poziom pytania, nie sądziłem, że będzie można znaleźć przykłady kodu i takie były odpowiednie. @Rainer, jeśli masz pytania dotyczące implementacji, chętnie odpowiem na dalsze pytania. –

Powiązane problemy