skip to main content


Search for: All records

Creators/Authors contains: "Machi, Dustin"

Note: When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher. Some full text articles may not yet be available without a charge during the embargo (administrative interval).
What is a DOI Number?

Some links on this page may take you to non-federal websites. Their policies may differ from this site.

  1. Motivated by a wide range of applications, research on agent-based models of contagion propagation over networks has attracted a lot of attention in the literature. Many of the available software systems for simulating such agent-based models require users to download software, build the executable, and set up execution environments. Further, running the resulting executable may require access to high performance computing clusters. Our work describes an open access software system (NetSimS) that works under the “Modeling and Simulation as a Service” (MSaaS) paradigm. It enables users to run simulations by selecting models and parameter values, initial conditions, and networks through a web interface. The system supports a variety of models and networks with millions of nodes and edges. In addition to the simulator, the system includes components that enable users to choose initial conditions for simulations in a variety of ways, to analyze the data generated through simulations, and to produce plots from the data. We describe the components of NetSimS and carry out a performance evaluation of the system. We also discuss two case studies carried out on large networks using the system. NetSimS is a major component within net.science, a cyberinfrastructure for network science. 
    more » « less
  2. Networkrepresentationsofsocio-physicalsystemsareubiquitous,examplesbeingsocial(media)networks and infrastructurenetworkslikepowertransmissionandwatersystems.Themanysoftwaretoolsthatanalyze and visualizenetworks,andcarryoutsimulationsonthem,requiredifferentgraphformats.Consequently, it isimportanttodevelopsoftwareforconvertinggraphsthatarerepresentedinagivensourceformatintoa required representationinadestinationformat.Fornetwork-basedcomputations,graphconversionisakey capability thatfacilitatesinteroperabilityamongsoftwaretools.Thispaperdescribessuchasystemcalled GraphTrans to convertgraphsamongdifferentformats.Thissystemispartofanewcyberinfrastructure for networksciencecalled net.science. Wepresentthe GraphTrans system designandimplementation, results fromaperformanceevaluation,andacasestudytodemonstrateitsutility. 
    more » « less
  3. Wedescribeasoftwaresystemcalled ExecutionManager (abbreviated EM) thatcontrolstheexecutionof third-party software(TPS)foranalyzingnetworks.Basedonaconfigurationfilethatcontainsaspecification for theexecutionofeachTPS,thesystemlaunchesanynumberofstand-aloneTPScodes,iftheprojected executiontimeandthegraphsizearewithinuser-imposedlimits.Asystemcapabilityistoestimate the runningtimeofaTPScodeonagivennetworkthroughregressionanalysis,tosupportexecution decision-making by EM. Wedemonstratetheusefulnessof EM in generatingnetworkstructureparameters and distributions,andinextractingmeta-datainformationfromtheseresults.Weevaluateitsperformance on directedandundirected,simpleandmulti-edgegraphsthatrangeinsizeoversevenordersofmagnitude in numbersofedges,upto1.5billionedges.Thesoftwaresystemispartofacyberinfrastructurecalled net.science for networkscience. 
    more » « less
  4. Contagion dynamics on networks are used to study many problems, including disease and virus epidemics, incarceration, obesity, protests and rebellions, needle sharing in drug use, and hurricane and other natural disaster events. Simulators to study these problems range from smaller-scale serial codes to large-scale distributed systems. In recent years, Python-based simulation systems have been built. In this work, we describe a new Python-based agent-based simulator called CSonNet. It differs from codes such as Epidemics on Networks in that it performs discrete time simulations based on the graph dynamical systems formalism. CSonNet is a parallel code; it implements concurrency through an embarrassingly parallel approach of running multiple simulation instances on a user-specified number of forked processes. It has a modeling framework whereby agent models are composed using a set of pre-defined state transition rules. We provide strong-scaling performance results and case studies to illustrate its features. 
    more » « less
  5. Networks are pervasive in society: infrastructures (e.g., telephone), commercial sectors (e.g., banking), and biological and genomic systems can be represented as networks. Consequently, there are software libraries that analyze networks. Containers (e.g., Docker, Singularity), which hold both runnable codes and their execution environments, are increasingly utilized by analysts to run codes in a platform-independent fashion. Portability is further enhanced by not only providing software library methods, but also the driver code (i.e., main() method) for each library method. In this way, a user only has to know the invocation for the main() method that is in the container. In this work, we describe an automated approach for generating a main() method for each software library method. A single intermediate representation (IR) format is used for all library methods, and one IR instance is populated for one library method by parsing its comments and method signature. An IR for the main() method is generated from that for the library method. A source code generator uses the main() method IR and a set of small, hand-generated source code templates|with variables in the templates that are automatically customized for a particular library method|to produce the source code main() method. We apply our approach to two widely used software libraries, SNAP and NetworkX, as exemplars, which combined have over 400 library methods. 
    more » « less
  6. null (Ed.)
    Networks are readily identifiable in many aspects of society: cellular telephone networks and social networks are two common examples. Networks are studied within many academic disciplines. Consequently, a large body of (open-source) software is being produced to perform computations on networks. A cyberinfrastructure for network science, called net.science, is being built to provide a computational platform and resource for both producers and consumers of networks and software tools. This tutorial is a hands-on demonstration of some of net.science’s features. 
    more » « less
  7. null (Ed.)
    Many contagion processes evolving on populations do so simultaneously, interacting over time. Examples are co-evolution of human social processes and diseases, such as the uptake of mask wearing and disease spreading. Commensurately, multi-contagion agent-based simulations (ABSs) that represent populations as networks in order to capture interactions between pairs of nodes are becoming more popular. In this work, we present a new ABS system that simulates any number of contagions co-evolving on any number of networked populations. Individual (interacting) contagion models and individual networks are speci ed, and the system computes multi-contagion dynamics over time. This is a signi cant improvement over simulation frameworks that require union graphs to handle multiple networks, and/or additional code to orchestrate the computations of multiple contagions. We provide a formal model for the simulation system, an overview of the software, and case studies that illustrate applications of interacting contagions. 
    more » « less
  8. Many contagion processes evolving on populations do so simultaneously, interacting over time. Examples are co-evolution of human social processes and diseases, such as the uptake of mask wearing and disease spreading. Commensurately, multi-contagion agent-based simulations (ABSs) that represent populations as networks in order to capture interactions between pairs of nodes are becoming more popular. In this work, we present a new ABS system that simulates any number of contagions co-evolving on any number of networked populations. Individual (interacting) contagion models and individual networks are specified, and the system computes multi-contagion dynamics over time. This is a significant improvement over simulation frameworks that require union graphs to handle multiple networks, and/or additional code to orchestrate the computations of multiple contagions. We provide a formal model for the simulation system, an overview of the software, and case studies that illustrate applications of interacting contagions. 
    more » « less
  9. Network representations of socio-physical systems are ubiquitous, examples being social (media) networks and infrastructure networks like power transmission andwater systems. The many software tools that analyze and visualize networks, and carry out simulations on them, require different graph formats. Consequently, it is important to develop software for converting graphs that are represented in a given source format into a required representation in a destination format. For network-based computations, graph conversion is a key capability that facilitates interoperability among software tools. This paper describes such a system called GraphTrans to convert graphs among different formats. This system is part of a new cyberinfrastructure for network science called net.science. We present the GraphTrans system design and implementation, results from a performance evaluation, and a case study to demonstrate its utility. 
    more » « less