Software

Un conjunto de logotipos hexagonales del software en el que estoy trabajando

Estoy profundamente comprometido con el software de código abierto y he estado construyendo herramientas de nivel profesional durante más de 15 años—remontándose a los días de Google Code aquí. Mi trabajo combina métodos estadísticos rigurosos con prácticas modernas de ingeniería de software, incluyendo control de versiones (Git/GitHub), integración continua, IA agéntica, tecnologías de contenedores y metodologías ágiles. He liderado equipos de desarrollo de software científico para entregar herramientas de alto rendimiento, confiables y fáciles de usar que son ampliamente adoptadas por investigadores y profesionales. La mayor parte de mi trabajo está construido en C++ con wrappers para R y Python, optimizado para su uso en entornos de computación de alto rendimiento. En todos los proyectos, diseño con el rendimiento y la usabilidad en mente, asegurando que los métodos complejos puedan ser tanto escalables como accesibles.

Recientemente, durante los últimos años, he incorporado IA en mi trabajo, influyendo en el desarrollo e innovación (vea aquí algunos ejemplos).

Un par de proyectos a destacar incluyen:

El framework epiworld es un framework avanzado de modelado basado en agentes escrito en C++ que fue diseñado para la creación rápida de prototipos de modelos de simulación enfocados en modelado epidemiológico. La biblioteca está disponible en R, Python, así como en un paquete shiny.
La aplicación más notable de epiworld es con el modelado del sarampión durante los recientes brotes en EE. UU. Puede ver una versión de la aplicación shiny que se desarrolló aquí.

El paquete rgexf. Crea, lee y escribe archivos de grafos ‘GEXF’ (Graph Exchange ‘XML’ Format) (utilizados en ‘Gephi’ y otros). Usando el paquete ‘XML’, rgexf permite leer y escribir archivos GEXF, incluyendo atributos, atributos visuales ‘GEXF’ (como color, tamaño y posición), dinámica de redes (tanto para aristas como nodos) y pesos de aristas. Los usuarios pueden construir/manejar grafos elemento por elemento o masivamente a través de data frames, visualizar el grafo en un navegador web a través de ‘gexf-js’ (una biblioteca ‘javascript’), e interactuar con el paquete ‘igraph’.
Puede ver una versión en vivo de la biblioteca gexf-js en acción aquí.

El paquete ergmito de R. Simulación y estimación de Modelos de Grafos Aleatorios Exponenciales (ERGMs) para redes pequeñas usando estadísticas exactas como se muestra en Vega Yon et al. (2020) https://doi.org/10.1016/j.socnet.2020.07.005. A diferencia del paquete ‘ergm’, ‘ergmito’ evita usar el Estimador de Máxima Verosimilitud de Cadena de Markov (MC-MLE) y en su lugar usa el Estimador de Máxima Verosimilitud (MLE) para ajustar ERGMs para redes pequeñas. Como la enumeración exhaustiva es computacionalmente factible para redes pequeñas, este paquete de R aprovecha esto y proporciona herramientas para calcular funciones de verosimilitud y otras funciones relevantes directamente, lo que significa que en muchos casos tanto la estimación como la simulación de ERGMs para redes pequeñas pueden ser más rápidas y precisas que los algoritmos basados en simulación.

La siguiente es una lista exhaustiva de los paquetes de software que he construido o a los que he contribuido. Puede echar un vistazo a mis contribuciones más recientes y proyectos de código abierto en curso en mi GitHub

Citas de OpenAlex; descargas de CRAN. Actualizado el 2026-08-15.

  • PaqueteActivo2026

    rgexf

    Build, Import and Export GEXF Graph Files

    Vega Yon, G. G.

    CRAN0.17.0downloads653kstars32Citado por5

    networksvisualizationdata formats

    Acerca de

    Create, read, and write 'GEXF' (Graph Exchange 'XML' Format) graph files, used in 'Gephi' and others. Using the 'XML' package, rgexf allows reading and writing GEXF files, including attributes, 'GEXF' visual attributes (such as color, size, and position), network dynamics (for both edges and nodes), and edges' weights. Users can build and handle graphs element-by-element or massively through data frames, visualize the graph on a web browser through 'gexf-js' (a 'javascript' library), and interact with the 'igraph' package.

  • PaqueteActivo2026

    netdiffuseR

    Analysis of Diffusion and Contagion Processes on Networks

    Vega Yon, G. G., & Valente, T.

    CRAN1.25.0downloads58kstars92

    networksdiffusion

    Acerca de

    Empirical statistical analysis, visualization, and simulation of diffusion and contagion processes on networks. The package implements algorithms for calculating network diffusion statistics such as transmission rate, hazard rates, exposure models, network threshold levels, infectiousness (contagion), and susceptibility. The package is inspired by work published in Valente et al. (2015), Valente (1995), Myers (2000), Iyengar and others (2011), Burt (1987), among others.

  • PaqueteActivo2026

    aphylo

    Statistical Inference of Annotated Phylogenetic Trees

    Vega Yon, G. G.

    CRAN0.3-6downloads19kstars6Citado por1

    phylogeneticsbayesiangenomics

    Acerca de

    Implements a parsimonious evolutionary model to analyze and predict gene-functional annotations in phylogenetic trees, as described in Vega Yon et al. (2021). Focusing on computational efficiency, 'aphylo' makes it possible to estimate pooled phylogenetic models, including thousands (hundreds) of annotations (trees) in the same run. The package also provides tools for visualization of annotated phylogenies, calculation of posterior probabilities (prediction), and goodness-of-fit assessment.

  • PaqueteActivo2026

    netplot

    Beautiful graph drawing

    Vega Yon, G. G.

    CRAN0.4-0downloads22kstars53

    networksvisualization

    Acerca de

    A graph visualization engine that emphasizes aesthetics while providing default parameters that yield out-of-the-box, nice visualizations. The package is built on top of 'The Grid Graphics Package' and works seamlessly with 'igraph' and 'network' objects.

  • PaqueteActivo2026

    barry

    your to-go motif accountant

    Vega Yon, G. G.

    CRAN0.2.2downloads2.5k

    networksstatistical models

    Acerca de

    Provides the 'C++' header-only library 'barry' for use in R packages. 'barry' is a 'C++' template library for counting sufficient statistics on binary arrays and building discrete exponential-family models. It provides tools for sparse arrays, user-defined count statistics, support set constraints, power set generation, and includes modules for Discrete Exponential Family Models (DEFMs) and network statistics. By placing these headers in this package, it offers an efficient distribution system for CRAN, avoiding replication of this code across the sources of other packages. This package follows the same approach as the 'BH' package, which provides 'Boost' headers for R packages.

  • PaqueteActivo2026

    defm

    Estimation and simulation of Multi-binary response models

    Vega Yon, G. G.

    CRAN0.2.1.0downloads2.8kstars1

    statistical modelsnetworks

    Acerca de

    Multi-binary response models are a class of models that allow for the estimation of multiple binary outcomes simultaneously. This package provides functions to estimate and simulate these models using the Discrete Exponential-Family Models (DEFM) framework, implementing the models described in Vega Yon, Valente, and Pugh (2023). DEFMs include Exponential-Family Random Graph Models (ERGMs), which characterize graphs using sufficient statistics, also the core of DEFMs. Using sufficient statistics, the package describes data through meaningful motifs, such as transitions between different states and the joint distribution of the outcomes.

  • PaqueteActivo2026

    epiworldR

    Fast Agent-Based Epi Models

    Meyer, D., & Vega Yon, G. G.

    CRAN0.14.0.0downloads15kstars14Citado por2

    epidemiologyagent-based models

    Acerca de

    A flexible framework for Agent-Based Models (ABM), the 'epiworldR' package provides methods for prototyping disease outbreaks and transmission models using a 'C++' backend, making it very fast. It supports multiple epidemiological models, including the Susceptible-Infected-Susceptible (SIS), Susceptible-Infected-Removed (SIR), Susceptible-Exposed-Infected-Removed (SEIR), and others, involving arbitrary mitigation policies and multiple-disease models. Users can specify infectiousness/susceptibility rates as a function of agents' features, providing great complexity for the model dynamics. 'epiworldR' is ideal for simulation studies featuring large populations.

  • PaqueteActivo2026

    multigroup.vaccine

    Analyze Outbreak Models of Multi-Group Populations with Vaccination

    Toth, D., Wagoner, J., Ray, W., & Vega Yon, G. G.

    version0.1.1stars2

    epidemiology

    Acerca de

    Models infectious disease dynamics in populations with multiple subgroups having different vaccination rates, transmission characteristics, and contact patterns. Calculates final and intermediate outbreak sizes, forms age-structured contact models with automatic fetching of U.S. census data, and explores vaccination scenarios with an interactive 'shiny' dashboard for a model with two subgroups, as described in Nguyen et al. (2024) and Duong et al. (2026).

  • PaqueteActivo2026

    measles

    Measles Epidemiological Models

    Vega Yon, G. G.

    CRAN0.2.0downloads2.2kstars4

    epidemiologyagent-based models

    Acerca de

    A specialized collection of measles epidemiological models built on the 'epiworldR' framework. This package is a spinoff from 'epiworldR' focusing specifically on measles transmission dynamics. It includes models for school settings with quarantine and isolation policies, mixing models with population groups, and risk-based quarantine strategies. The models use Agent-Based Models (ABM) with a fast 'C++' backend from the 'epiworld' library, making it ideal for studying measles outbreaks, vaccination strategies, and intervention policies.

  • PaqueteActivo2026

    epiworldRcalibrate

    Fast and Effortless Calibration of Agent-Based Models using Machine Learning

    Najafzadehkhoei, S., Vega Yon, G. G., & Modenesi, B.

    CRAN0.1.4downloads1.3kstars1

    epidemiologyagent-based modelsmachine learning

    Acerca de

    Provides tools and pre-trained Machine Learning (ML) models for calibration of Agent-Based Models (ABMs) built with the R package 'epiworldR', implementing methods described in Najafzadehkhoei, Vega Yon, Modenesi, and Meyer (2025). Users can automatically calibrate ABMs in seconds with pre-trained ML models, effectively focusing on simulation rather than calibration, bridging a gap that allows public health practitioners to run their own ABMs without the advanced technical expertise often required by calibration.

  • PaqueteArchivado2026

    imaginarycss

    Tools for Studying Imaginary Cognitive Social Structure

    Najafzadehkhoei, S., Vega Yon, G. G., & Tanaka, K.

    CRAN0.1.0downloads2.3kstars1Citado por3

    networkscognition

    Acerca de

    Tools for measuring and testing imaginary cognitive social structure (CSS) motifs — patterns of false positives and negatives in cognitively perceived social networks relative to the actual network, categorized as partially false, completely false, and mixed false imaginary motifs, as described in Tanaka and Vega Yon (2024).

  • dashboardActivo2026

    Agent-Based Modeling of Measles in US cities hosting the 2026 FIFA World Cup

    Agent-Based Modeling of Measles in US cities hosting the 2026 FIFA World Cup

    Vega Yon, G. G.

    epidemiologyagent-based modelsvisualization

    Acerca de

    Agent-based measles outbreak simulations across the 11 major U.S. cities hosting the 2026 FIFA World Cup. Built on the 'epiworldR' and 'measles' R packages, and using census-derived age structure and MMR vaccination coverage, the project provides baseline scenario dashboards summarizing simulated outbreak size over time and the probability that outbreaks exceed given case-count thresholds for each host city. With large international crowds expected, the dashboard supports public-health preparedness by helping to understand measles transmission risk around the tournament.

  • dashboardActivo2026

    AI-powered Dashboard to Explore the InsighNet community

    AI-powered Dashboard to Explore the InsighNet community

    Vega Yon, G. G.

    text analysis

    Acerca de

    An AI-powered dashboard exploring the InsightNet research community: academic profiles and publications for researchers affiliated with InsightNet's centers. A scheduled pipeline collects papers and preprints from ORCID, Europe PMC, PubMed, arXiv, medRxiv/bioRxiv, and Crossref, and daily activity from public web pages, RSS/Atom, Bluesky, and GitHub, normalizing it into a static snapshot. The standalone site includes an AI-assisted expert-finder that answers questions from the collected publications and profiles, citing the underlying record, a browser-side keyword search, and a browsable, filterable publication list, with no runtime server or frontend dependencies.

  • PaqueteActivo2025

    ergmito

    Exponential Random Graph Models for Small Networks

    Vega Yon, G. G., & de la Haye, K.

    CRAN0.3-2downloads28kstars9Citado por47

    networksstatistical models

    Acerca de

    Simulation and estimation of Exponential Random Graph Models (ERGMs) for small networks using exact statistics, as shown in Vega Yon et al. (2020). As a difference from the 'ergm' package, 'ergmito' circumvents using a Markov-Chain Maximum Likelihood Estimator (MC-MLE) and instead uses a Maximum Likelihood Estimator (MLE) to fit ERGMs for small networks. As exhaustive enumeration is computationally feasible for small networks, this R package takes advantage of this and provides tools for calculating likelihood functions and other relevant functions directly, meaning that in many cases both estimation and simulation of ERGMs for small networks can be faster and more accurate than simulation-based algorithms.

  • AplicaciónActivo2025

    epiworldRShiny

    Shiny interface for epiworldR

    Meyer, D., & Vega Yon, G. G.

    CRAN0.2.3downloads14kstars3

    epidemiologyagent-based modelsvisualization

    Acerca de

    R 'shiny' web apps for epidemiological Agent-Based Models. It provides a user-friendly interface to the Agent-Based Modeling (ABM) R package 'epiworldR', with support for the Susceptible-Infected-Susceptible (SIS), Susceptible-Infected-Recovered (SIR), and Susceptible-Exposed-Infected-Recovered (SEIR) models. 'epiworldRShiny' provides a web-based user interface for running various epidemiological ABMs, simulating interventions, and visualizing results interactively.

  • PaqueteActivo2024

    PyRenew

    A Package for Bayesian Renewal Modeling with JAX and NumPyro

    Bayer, D., Morris, D. H., Vega Yon, G. G., Martin, T., & Bidari, S.

    version0.1.0stars29

    epidemiologybayesian

    Acerca de

    A flexible tool for simulation and statistical inference of epidemiological models, emphasizing hierarchical multi-signal renewal models. Built on top of the 'numpyro' Python library, 'PyRenew' provides core components for model building. A renewal model estimates new infections from recent past infections using a generation interval, from which it infers the time-varying reproduction number R(t). PyRenew's strength lies in multi-signal integration for pooling information across diverse observed data streams, such as hospital admissions, wastewater concentrations, and emergency department visits, each with distinct observation delays, noise characteristics, and spatial resolutions.

  • PaqueteActivo2024

    wwinference

    Jointly infers infection dynamics from wastewater data and epidemiological indicators

    Johnson, K., Morris, D., Abbott, S., Bernal Zelaya, C., Vega Yon, G. G., Bayer, D., Magee, A., & Olesen, S.

    version0.1.1.99stars31

    epidemiologybayesian

    Acerca de

    An implementation of a hierarchical semi-mechanistic renewal approach jointly calibrating to multiple wastewater concentration datasets from subsets of a specified population and epidemiological indicators, such as cases or hospital admissions, from the whole population. The framework extends the widely used semi-mechanistic renewal framework 'EpiNow2', using a Bayesian latent variable approach implemented in the probabilistic programming language 'Stan'. The package fits these two data sources and produces estimated and forecasted hospital admissions, estimated and forecasted wastewater concentrations, and global and local R(t) estimates for the subpopulations represented by each wastewater catchment area.

  • PaqueteActivo2023

    slurmR

    A Lightweight Wrapper for 'Slurm'

    Vega Yon, G. G.

    CRAN0.5-4downloads37kstars61Citado por3

    hpcparallel computing

    Acerca de

    'Slurm', Simple Linux Utility for Resource Management, is a popular 'Linux'-based software used to schedule jobs in 'HPC' (High Performance Computing) clusters. This R package provides a specialized lightweight wrapper of 'Slurm' with a syntax similar to that found in the 'parallel' R package. The package also includes a method for creating socket cluster objects spanning multiple nodes that can be used with the 'parallel' package.

  • PaqueteActivo2023

    fmcmc

    A friendly MCMC framework

    Vega Yon, G. G.

    CRAN0.5-2downloads35kstars16Citado por8

    bayesianmcmc

    Acerca de

    Provides a friendly (flexible) Markov Chain Monte Carlo (MCMC) framework for implementing the Metropolis-Hastings algorithm in a modular way, allowing users to specify an automatic convergence checker, personalized transition kernels, and out-of-the-box multiple MCMC chains using parallel computing. Among the methods included are Haario (2001) Adaptive Metropolis, Vihola (2012) Robust Adaptive Metropolis, and Thawornwattana et al. (2018) Mirror transition kernels.

  • BibliotecaActivo2022

    epiworld

    A Flexible and General Agent Based Model Engine

    Vega Yon, G. G.

    version0.0-1stars10

    epidemiologyagent-based modelshpc

    Acerca de

    A general framework for epidemiologic simulation implemented as a header-only 'C++' template library. The core principle of 'epiworld' is fast epidemiological prototyping for building complex models quickly: models can have an arbitrary set of states, viruses and tools (e.g., vaccines, mask-wearing) can be designed with arbitrary features, and multiple tools and viruses can coexist in the same simulation. It depends only on the standard library and is capable of over 150 million person-day simulations per second.

  • BibliotecaArchivado2020

    pruner

    Implementing the Felsenstein's Tree Pruning algorithm

    Vega Yon, G. G.

    version0.0-1stars1

    phylogeneticsalgorithms

    Acerca de

    A C++ template library implementing Felsenstein's tree-pruning algorithm for efficiently computing likelihood functions on phylogenies. The library reads a tree object as a list of source-target dyads (edges) and allows users to store arbitrary arguments via memory pointers and 'std::function' callbacks invoked with those arguments and the tree structure data. Trees are stored as offspring and parent lists, accessible through a 'TreeIterator' class implementing pre- and post-order traversals for pruning.

  • PaqueteActivo2019

    parallel

    Stata Module for Parallel Computing

    Vega Yon, G. G., & Quistorff, B.

    version1.20.0stars134

    hpcparallel computing

    Acerca de

    A Stata module for parallel computing. By organizing a job into several Stata instances, parallel provides out-of-the-box parallel computing for faster simulations, bootstrapping, reshaping big data, and more, without requiring any knowledge of parallel computing or a Stata/MP license. Depending on the number of available processors, parallel has shown to dramatically speed up computations, sometimes outperforming Stata/MP itself.

  • PaqueteActivo2017

    googlePublicData

    Working with Google's 'Public Data Explorer' DSPL Metadata Files

    Vega Yon, G. G.

    CRAN0.16.1downloads62kstars8

    data formats

    Acerca de

    Provides a collection of functions to set up 'Google Public Data Explorer' data visualization tool with your own data, building automatically the corresponding DataSet Publishing Language file, or DSPL (XML), metadata file jointly with the CSV files. All zip-up and ready to be published in 'Public Data Explorer'.

  • PaqueteActivo2017

    ABCoptim

    Implementation of Artificial Bee Colony (ABC) Optimization

    Vega Yon, G. G., & Muñoz, E.

    CRAN0.15.0downloads94kstars32

    optimization

    Acerca de

    An implementation of Karaboga's (2005) Artificial Bee Colony Optimization algorithm. This was developed upon the basic version programmed in C and available at the algorithm's official website.

  • PaqueteArchivado2016

    twitterreport

    Out-of-the-box analysis and reporting tools for twitter

    Vega Yon, G. G.

    version0.16stars38

    text analysisnetworks

    Acerca de

    A set of tools to download, process, and analyze tweets, including methods for exporting the outputs through 'D3js'.


Esta versión del sitio web fue traducida automáticamente de la versión original en inglés usando GitHub Copilot y aún no ha sido verificada por un humano.