AnyLogic é uma ferramenta de modelagem de simulação multi-método desenvolvida pela The AnyLogic Company (antiga XJ Technologies). Ele suporta metodologias de simulação baseada em agentes, eventos discretos, e dinâmica de sistemas. A Edição AnyLogic PLE (Personal Learning Edition) está disponível gratuitamente para fins de auto aprendizado e educacionais.

A História do AnyLogic No início da década de 1990, houve um grande interesse na abordagem matemática para modelagem e simulação de processos paralelos. Esta abordagem pode ser aplicada à análise de exatidão de programas paralelos e distribuídos. Um grupo de pesquisa na Saint Petersburg Technical University chamado The Distributed Computer Network (DCN) desenvolveram um software para a análise de exatidão de programas; essa nova ferramenta foi batizada de COVERS (Concurrent Verification and Simulation). Este sistema permitiu notação de modelagem gráfica para estrutura e comportamento do sistema. A ferramenta foi aplicada para a pesquisa financiada pela Hewlett Packard.

Em 1998, o sucesso desta pesquisa inspirou o laboratório DCN a organizar uma empresa com a missão de desenvolver um inovador software de simulação. A ênfase no desenvolvimento foi focada em métodos aplicados: simulação, análise de desempenho, comportamento de sistemas estocásticos, otimização e visualização. Novo software lançado em 2000, usufruiu das mais atuais vantagens competitivas das tecnologias de informação: abordagem orientada a objetos, elementos no padrão UML, uso de Java, interface gráfica moderna, etc.

A ferramenta se chama AnyLogic (QualquerLógica traduzindo ao pé da letra), pois ela suporta muito bem todos os três tipos de abordagem de modelagem: Dinâmica de Sistemas, Eventos Discretos, Modelagem Baseada em Agentes.

Além dessas três, é possível realizar qualquer combinação desses métodos dentro de um mesmo modelo.

A primeira versão do AnyLogic foi a 4 pois o número da versão foi a continuação do COVERS 3.0. thumb | 500px|Três abordagens de simulaçãoUm grande passo foi dado em 2003 quando o AnyLogic 5 foi lançado. Ele foi focado em simulações de negócio nos seguintes domínios: Mercado e competição, Saúde, Manufatura, Supply Chain, Logística, Alugueis, Gestão de Processos, Dinâmica EcoSocial, Defesa, Gestão de Projetos e Ativos, Infraestrutura de TI, Dinâmica de Pedestres e Simulação de Tráfego, Aeroespaço, Fotovoltaicos.

AnyLogic 7 foi lançado em 2014, sendo sua maior revisão nos últimos 7 anos. Suas características foram significativamente atualizadas procurando a simplicidade de construção de um modelo, incluindo um suporte para modelagem multi-método, reduzindo a necessidade de programação, renovando bibliotecas e outras melhorias de usabilidade. AnyLogic 7.1, também lançado em 2014, incluiu a implementação de GIS no software. Em adição aos mapas shapefiles, AnyLogic começou o suporte aos mapas por camadas dos fornecedores gratuitos online, incluindo OpenStreetMap.

Em 2015 foi lançado ao mercado o AnyLogic 7.2 que incluía uma base de dados interna e uma nova biblioteca de Fluidos. A edição gratuita AnyLogic P.L.E. (Personal Learning Edition) também foi apresentada em 2015.

A Biblioteca de Trafego Urbano foi introduzida em 2016 com a versão AnyLogic 7.3.

A Plataforma do ambiente de desenvolvimento do AnyLogic 7 é o Eclipse. AnyLogic é um software de simulação multi-plataforma que funciona com o Windows, Mac OS e Linux.

O Anylogic 8 foi lançado em 2017. Partindo da versão 8.0, o ambiente de desenvolvimento Anylogic foi integrado com o Anylogic Cloud, um serviço web para análise de simulação.

AnyLogic e o Java AnyLogic inclui uma linguagem de modelagem gráfica de programação, mas também permite ao usuário refinar seus modelos de simulação utilizando código Java. A natureza do Java no AnyLogic permite ao usuário a criação de applets (mini aplicativos) Java de modo que a mesma possa ser aberta em qualquer web browser e inclusive permitindo que os applets sejam facilmente compartilhados ou colocados em websites. A edição AnyLogic Professional permite a exportação de modelos como aplicações Java para sua distribuição entre usuários. Essas aplicações podem servir de ferramenta de suporte para tomada de decisões.

Modelagem de Simulação Multi-métodos miniaturadaimagem|500x500px|Como abordagens de modelagem se correlacionam com os níveis de abstração? Modelos no AnyLogic podem se basear em qualquer um dos principais paradigmas de modelagem e simulação: eventos discretos ou centrado em processos (DE), dinâmica de sistemas (SD) e modelagem baseada em agentes (AB).

Dinâmica de sistemas e eventos discretos são os tradicionais paradigmas de simulação. Modelagem baseada em agentes é o mais recente paradigma. Tecnicamente, a abordagem de dinâmica de sistemas lida majoritariamente com processos contínuos, enquanto modelagem por eventos discretos e modelagem baseada em agentes funcionam majoritariamente por tempo discreto, por exemplo passando de um evento para o outro.

Dinâmica de sistemas e eventos discretos historicamente foram ensinados em universidades para diferentes grupos de estudantes como administradores e economistas, engenheiros industriais e de pesquisas operacionais. Como resultado temos duas comunidades praticantes distintas que não conversam entre si.

Modelagem baseada em agentes até recentemente tem sido aplicada puramente em tópicos acadêmicos. Contudo, com a demanda crescente por ferramentas de otimização de negócios global conduziu modeladores/modelistas a procurarem uma abordagem com paradigmas combinados a fim de ganhar uma visão profunda dos processos interdependentes de naturezas distintas.

Dinâmica de sistemas é utilizada para o entendimento do comportamento de sistemas complexos, é obviamente usado no nível de abstração mais elevado. Modelagem por eventos discretos é usada em baixa em baixa e médio nível de abstração. Quanto à modelagem baseada em de agentes, esta tecnologia é usada em todos os níveis de abstração. Um agente pode ser modelado como objetos de diversas naturezas e escalas. Os agentes de nível “baixo” podem ser, por exemplo, pedestres, carros ou robôs; no nível médio - os clientes e ao nível mais alto - as empresas concorrentes.

O Anylogic permite que o modelador combine essas abordagens de simulação dentro de um mesmo modelo. Não há hierarquia fixa. Assim, como exemplo, pode-se criar um modelo de indústria de transporte do pacote em que as transportadoras são modelados como agentes para agirem/reagirem de forma independente enquanto que o funcionamento interno de sua rede de transportes e de infraestrutura podem ser modelados com simulação de eventos discretos. Da mesma forma, pode-se modelar os consumidores como agentes cujo comportamento alimenta um modelo de dinâmica de sistemas capturando fluxos, tais como receitas ou despesas que não precisam ser vinculados a agentes individuais. Esta abordagem mista é diretamente aplicável a uma grande variedade de problemas de modelos complexos que podem ser modeladas por meio de qualquer uma abordagem.

Características

Linguagem de Simulação thumb|500px| right |Construções de Linguagem de Simulação fornecidos pelo AnyLogic A linguagem de simulação AnyLogic consiste nos seguintes itens: Diagrama de Fluxo e Estoque (Stock & Flow Diagrams) são usados para modelagem de dinâmica de sistemas.

Gráficos de estado (Statecharts) são usados principalmente em modelagem baseada em agentes para definir o comportamento do agente. Eles também são frequentemente utilizados nos modelos de eventos discretos, como por exemplo, para simular falha de uma máquina.

Gráficos de ação (Action charts) são usados para definir algoritmos. Eles podem ser utilizados nos modelos de eventos discretos, por exemplo, para o roteamento de chamadas, ou em modelagem baseada em agentes, por exemplo, para a lógica de decisão do agente.

Fluxogramas de processo (Process flowcharts) são a construção básica usada para definir processo de modelagem de eventos discretos. Olhando para este fluxograma que você pode ver por que o estilo de eventos discretos é muitas vezes chamado centrado em processos. A linguagem também inclui: baixos níveis de construções de modelagem (variáveis, equações, parâmetros, eventos etc.), formas de apresentação (linhas, polilinhas, ovais, etc.), ferramentas de análise (conjuntos de dados, histogramas, gráficos), ferramentas de conectividade, imagens e tela de experimentos.

Bibliotecas AnyLogic Anylogic inclui as seguintes bibliotecas padrão: Biblioteca de Modelagem e Processo (Process Modeling Library) é projetada para suportar simulação de eventos discretos em Manufatura, Supply Chain, Logística e áreas de saúde. Usando os objetos da Biblioteca de Modelagem e Processo você pode modelar sistemas do mundo real em termos de entidades (operações, clientes, produtos, peças, veículos, etc.), processos (sequências de operações que envolvem normalmente filas, atrasos, utilização de recursos) e recursos. Os processos são especificados na forma de fluxogramas. A Biblioteca de Modelagem e Processo é a sucessora da Biblioteca de Empresas (Enterprise Library) do AnyLogic 6, que também está disponível no AnyLogic 7. Biblioteca de Pedestres (Pedestrian Library) é dedicada à simulação do fluxo de pedestres em um ambiente físico. Ele permite que você crie modelos de intensa circulação de pedestres como estações de metrô, check de segurança em aeroportos, ou ruas com um grande número de pedestres. Os modelos suportam apuração de estatísticas sobre a densidade de pedestres em diferentes áreas, isso pode assegurar e definir um desempenho aceitável de pontos de serviço com uma carga hipotética, estimação de tempo de permanência em áreas específicas e detecção de possíveis problemas com a geometria espacial - como o efeito da adição de muitos obstáculos - e outras aplicações. Em modelos criados com a Biblioteca de Pedestres, os pedestres se movem no espaço contínuo, reagindo a diferentes tipos de obstáculos (paredes, diferentes tipos de áreas), bem com os outros pedestres. Os pedestres são simulados como agentes com comportamento complexo interagindo, mas a Biblioteca de Pedestres AnyLogic fornece uma interface de nível superior para a criação rápida de modelos de pedestres no estilo de fluxogramas. Biblioteca de Ferrovia (Rail Library) suporta modelagem, simulação e visualização de operações de um pátio ferroviário de qualquer escala e complexidade. Os modelos de pátio ferroviário podem ser combinados com eventos discretos ou modelagem baseada em agentes relacionados a: carregamento e descarregamento de cargas, alocação de recursos, manutenção, processos de negócios, transporte de passageiros e outras atividades de transportes. Biblioteca de Fluidos (Fluid Library) permite ao usuário modelar o armazenamento e transporte de fluidos, produtos à granel, ou grandes quantidades de itens discretos que não são desejáveis modelar como objetos separados. A biblioteca inclui blocos tais como o tanque, oleoduto, válvula, e objetos para o encaminhamento, mesclagem e divergentes o fluxo. Para melhorar a velocidade de execução do modelo, a Biblioteca de Fluidos usa um solver de programação linear. A biblioteca é projetada para melhorar o uso do AnyLogic em indústrias de manufatura, petróleo, gás e mineração. O usuário pode simular tubulações e tanques de petróleo, minerodutos, transportadores de correias, e processos de produção, onde líquidos ou materiais a granel estão envolvidos, por exemplo, na fabricação de concreto.