11.7 Ferramentas de Modelação
Na aquapônica, fluxogramas ou diagramas de estoque e fluxo (SFD) e diagramas de loop causal (CLDs) são comumente usados para ilustrar a funcionalidade do sistema aquapônico. A seguir, fluxograma e CLDs serão descritos.
11.7.1 Fluxogramas
Para obter uma compreensão sistêmica da aquapônica, os fluxogramas com os componentes mais importantes da aquapônica são uma boa ferramenta para mostrar como o material flui no sistema. Isso pode ajudar, por exemplo, a encontrar componentes ausentes e fluxos desequilibrados e influenciar principalmente os determinantes dos subprocessos. A Figura 11.18 mostra um fluxograma simples em aquapônica. No fluxograma, alimentos e água para peixes são adicionados ao tanque de peixes, onde a alimentação é tomada pelos peixes para crescimento, a água é enriquecida com os resíduos de peixe e a água enriquecida com nutrientes é adicionada ao sistema hidropônico para produzir biomassa vegetal. A partir do fluxograma, um CLD mostrado na Fig. 11.19 pode ser facilmente construído.
Fig. 11.18 Exemplo de um fluxograma em aquapônica (apenas RAS e troca HP)
Fig. 11.19 Diagrama de loop causal (CLD) ilustrando exemplos de um reforço e um loop equilibrado dentro de sistemas aquapônicos. O loop de reforço (R) é aquele em que uma ação produz um resultado que influencia mais da mesma ação e, consequentemente, resultando em crescimento ou declínio, onde como um loop de equilíbrio (B) tenta trazer as coisas para um estado desejado e mantê-las lá (por exemplo, regulação da temperatura na casa)
11.7.2 Diagramas de loop causal
Diagramas de loop causal (CLDs) são uma ferramenta para mostrar a estrutura de feedback de um sistema (Sterman 2000). Esses diagramas podem criar uma base para a compreensão de sistemas complexos, visualizando a interconexão de diferentes variáveis dentro de um sistema. Ao desenhar um CLD, as variáveis são representadas como nós. Esses nós são conectados por bordas, que formam uma conexão entre duas variáveis de acordo. A Figura 11.19 mostra que tais arestas podem ser marcadas como positivas ou negativas. Isso depende da relação das variáveis umas com as outras. Quando ambas as variáveis mudam para a mesma direção, então pode-se falar de um elo causal positivo. Um nexo causal negativo causa assim uma mudança em direções opostas. Ao conectar dois nós de ambos os lados, um cria um ciclo fechado que pode ter duas características: (1) um loop reforçador que descreve uma relação causal, criando crescimento exponencial ou colapso dentro do loop ou (2) um loop _balanceamento em que as influências causais mantêm o sistema em um equilíbrio . A Figura 11.19 mostra um exemplo de ambos os tipos de loops.
Vamos ilustrar isso (Fig. 11.20) para o fluxograma da Fig. 11.18.
É óbvio que CLD e SFD são muito úteis para a compreensão do sistema, quando o modelo não requer precisão numérica. Se a precisão numérica for necessária, o processo deve ser estudado mais com um diagrama de ferramentas dinâmicas do sistema (SDTD) e modelado em software de simulação dinâmica do sistema. Por exemplo, o CLD na Fig. 11.20 pode ser aumentado com equações diferenciais para um SDTD (Fig. 11.21).
Fig. 11.20 Exemplo CLD para troca de RAS e HP
A partir do SDTD, podemos agora ver como as equações diferenciais para o equilíbrio de nutrientes no tanque se parecem. Sabemos que o fluxo de nutrientes para fora do tanque de peixes (mSubxFout/Sub) deve ser o fluxo de água (QSubFout/Sub) vezes a concentração no fluxo de saída (CSubxF/Sub):
$ M_ {xfout} == C_ {xf} Q_ {fout} $
Assumindo que um tanque agitado dá a concentração de nutrientes do tanque fink para:
$ C_ {xf} = M_ {xf} /V_F $
As equações diferenciais da parte RAS podem ser derivadas para:
$XV_f/dt=Q_ {fin} -Q_ {fout} $
$dm_ {xf} /dt=m_ {xfin} -M_ {xfout} $,
Fig. 11.21 Exemplo de SDTD para troca de RAS e HP
e para a concentração
$dc/dt= (Q_ {fin} C_ {xfin} -Q_ {fout} C_ {xf} /v_f) $
11.7.3 Software
Além de linguagens básicas de computador, como Fortran, C++ e Python, para computação rápida e implementação totalmente específica do usuário, todos os tipos de ferramentas avançadas de software estão disponíveis. Essas ferramentas avançadas de software oferecem uma variedade de ambientes, conceitos e opções. Podemos modelar variáveis de estado, equações diferenciais, conexões e loops. Além disso, podemos usar o modelo para simulações, análise de estabilidade, otimização e controle.
As principais razões para modelar um sistema são compreendê-lo e controlá-lo. Portanto, o modelo ajuda a prever a dinâmica ou o comportamento do sistema. As aplicações de software poderiam permitir-nos realizar três tarefas consequentes: (a) a própria modelação, (b) as simulações do (s) modelo (s) e (c) otimização do modelo e/ou simulação.
O software Mathematica é para análise funcional de problemas matematicamente descritos (Wolfram 1991). O conceito é baseado na abordagem LISP (McCarthy e Levin 1965.), uma linguagem de programação funcional muito eficaz. A sintaxe é razoavelmente simples, e este software é popular em matemática, física e biologia de sistemas. Especialmente, o módulo Ndsolve ajuda a resolver equações diferenciais comuns, traçar a solução e encontrar valores específicos.
Ferramentas muito semelhantes para resolver ODEs são oferecidas pelo Maple. Este software é muito poderoso; entre suas características pertencem solução de problemas de fronteira, soluções exatas e aproximações matemáticas. Copasi (simulador de vias complexas) é uma ferramenta de software para simulação e análise de redes bioquímicas através de equações diferenciais comuns.
SageMath é um sistema livre de software de matemática de código aberto. O software é baseado em Python e facilita a simulação de modelos ODE. Data2Dynamics software é uma coleção de métodos numéricos para modelagem dinâmica quantitativa e é um modelo abrangente e linguagem de descrição de dados. O software permite a análise de previsões de ruído, calibração e incerteza e possui bibliotecas de modelos biológicos.
Provavelmente a melhor linguagem de simulação é Simula (provavelmente não está mais em uso) e Simula 67, considerada no início como um pacote para Algol 60. Estas foram as primeiras linguagens totalmente orientadas a objetos, introduzindo classes, herança, subclasses, coletor de lixo e outros. No início do século XXI, os criadores Ole-Johan Dahl e Kristen Nygaard receberam a Medalha IEEE John von Neumann e o Prêmio A. M. Turing (Dahl e Nygaard 1966).
A idéia por trás de Simula era que os objetos têm vida; eles começam a existir, fazem o seu ser e cessam. Os objetos são definidos como classes gerais (código de modelo), e cada instância de tal objeto tem uma ‘vida’ na simulação. A língua era muito difícil de aprender. No entanto, ofereceu a possibilidade de modelar processos objeto a objeto e executar simulação de suas vidas. A simulação é executada com base em eventos discretos, e é possível simular objetos em co-rotina. Mais tarefas podem iniciar, executar, desanexar, retomar e concluir em períodos de tempo sobrepostos em processos quase paralelos. O hardware de hoje nos permite modelar e simular em threads totalmente paralelos. No entanto, muitos dos conceitos do Simula já foram usados para o desenvolvimento de outras linguagens, a saber, Java, C/C++/CC\ # e bibliotecas de objetos persistentes como DOL (Soukup e Machacek 2014). O sucessor atual do Simula é BETA, estendendo e apresentando as possibilidades de herança em conceitos de (sub) classes aninhadas (com hora local aninhada) e padrões (Madsen et al. 1993).
É sempre uma opção para usar qualquer uma das linguagens orientadas a objetos e bibliotecas específicas e programar todo o código necessário para um modelo específico. Por outro lado, ambientes de programação gráfica já existentes permitem projetar e vincular a estrutura do sistema modelado a partir de bibliotecas de objetos (gerador de sinais, soma, integrador, etc.), parametrizá-los e executar a simulação em tempo virtual.
Outro software popular para simulação é o MathWorks Simulink, descrevendo-se como uma ferramenta de design baseada em modelos. O ambiente permite combinar e parametrizar blocos predefinidos (de uma ampla gama de bibliotecas) e diagramas em subsistemas. A programação é feita usando blocos gráficos e suas conexões em partes funcionais com loops de feedback. O ambiente é amplamente utilizado para controle, automação e processamento de sinais. Outra possibilidade é integrar o próprio código da linguagem MathWorks Matlab ou usar várias caixas de ferramentas (Jablonsky et al. 2016). Um deles, SensSB, está focado na análise de sensibilidade e permite importar outros modelos usando a Systems Biology Markup Language. Para apenas a visualização de modelos existentes no Simulink, também é possível usar o visualizador de modelos muito rápidos DiffPlug. PottersWheel suporta a modelagem de sistemas dinâmicos dependentes do tempo, calibração de parâmetros, análise e previsão. Ferramenta interessante é o projeto experimental para verificação do modelo.
Para a modelagem e análise da dinâmica do sistema, uma estratégia semelhante é usada pela aplicação de software Stella Architect isee, onde o modelo é composto de blocos, que são conectados por relações. Stella permite modelar e simular diferentes tipos de aplicações, desde as necessidades médicas até a construção de edifícios até os aviões. Stella às vezes é comercializado como software IThink. O software Powersim foi projetado originalmente para fins econômicos. No entanto, desenvolveu-se em uma ferramenta mais sofisticada, incluindo simulações eletrônicas, de energia solar ou de tratamento medicamentoso. O ex-desenvolvedor do Powersim está atualmente produzindo um software semelhante para tarefas mais complexas Dynaplan Smia. Vensim é um sistema para modelar relações de big data de sistemas reais. O poder de Vensim é que ele permite rastreamento causal, análise de sensibilidade, calibração e simulação intensiva. No entanto, o software também é capaz de lidar com uma ampla gama de sistemas reais simples e complexos (Hassan et al. 2016). O software de dinâmica do sistema True-World facilita simulações dinâmicas complexas de múltiplos corpos em tempo discreto e contínuo. A modelagem basicamente começa a partir de balanças.
Abordagens completamente diferentes para modelagem e simulação são autômatos celulares ou abordagens de modelação baseadas em agentes, popularizadas por Stephen Wolfram (Wolfram 1991) como um novo tipo de ciência. A abordagem às vezes também é chamada de jogo da vida. A modelagem é implementada através de interações de indivíduos autônomos (Macal e Norte 2005). As simulações mostram comportamentos emergentes e, portanto, são muito populares na biologia de sistemas para a dinâmica populacional. Uma ferramenta simples para modelagem e simulação baseada em agentes básicos (e avançados, também) é o software NetLogo, onde descrições simples e parametrização criam modelos poderosos. O software permite a visualização do desenvolvimento do tempo e da indução de ruído (Stys et al. 2015). O aplicativo é escrito em Java, que às vezes limita a memória disponível. Provavelmente o maior esforço na modelagem multi-agente foi feito pelo desenvolvimento do software Wolfram, que é a continuação do popular Mathematica, com ferramentas estendidas para modelagem e simulação. Ele colocou a modelagem semelhante ao Simulink em um terno mais atraente e também cria possibilidades de modelagem baseada em agentes e muito mais ferramentas para outras disciplinas matemáticas (estatísticas multivariadas, mineração de dados, otimização global).
AnyLogic é um software muito interessante para problemas de fluxo — informação, dinheiro, tráfego, logística e mineração. A simulação resolve o problema do fluxo ideal no sistema projetado com esforço mínimo e eficiência máxima. Os conceitos utilizados são a dinâmica do sistema e a modelagem de eventos discretos e baseados em agentes. Ele também oferece híbridos entre diferentes conceitos de modelação. O software é útil, por exemplo, nas simulações de propagação epidêmica (Emrich et al. 2007).
Outra ferramenta de modelagem baseada em agente é Insight Maker, para simulação da população interagindo em espaço geográfico ou de rede. O software suporta construção de modelos gráficos, uso de vários paradigmas, script incorporado e conjunto de ferramentas de otimização (Fortmann-Roe 2014).
Para a modelagem propriamente dita, descrição das variáveis de estado, solução dos ODE, parametrização e análise de dependência de tempo, o primeiro grupo de software, de Mathematica a Matlab, poderia ser utilizado sem hesitação. Eles representam ferramentas poderosas para fins de modelagem. No caso de análises mais complexas, como relacionadas com big data, simulação, indução de ruído, otimização, sensibilidade e estocástica, são necessárias ferramentas mais avançadas, com abordagem orientada a objetos, envolvendo também maior indução na sintaxe das linguagens de programação.