33 research outputs found
Executable Pseudocode for Graph Algorithms
Algorithms are written in pseudocode. However the implementation of an
algorithm in a conventional, imperative programming language can often be
scattered over hundreds of lines of code thus obscuring its essence. This can
lead to difficulties in understanding or verifying the code. Adapting or
varying the original algorithm can be laborious.
We present a case study showing the use of Common Lisp macros to provide an
embedded, domain-specific language for graph algorithms. This allows these
algorithms to be presented in Lisp in a form directly comparable to their
pseudocode, allowing rapid prototyping at the algorithm level.
As a proof of concept, we implement Brandes' algorithm for computing the
betweenness centrality of a graph and see how our implementation compares
favourably with state-of-the-art implementations in imperative programming
languages, not only in terms of clarity and verisimilitude to the pseudocode,
but also execution speed
Discovering Motifs in Real-World Social Networks
We built a framework for analyzing the contents of large social
networks, based on the approximate counting technique developed
by Gonen and Shavitt. Our toolbox was used on data from a large
forum---\texttt{boards.ie}---the
most prominent community website in Ireland.
For the purpose of this experiment, we were granted access to 10 years of
forum data. This is the first time the approximate counting
technique is tested on
real-world, social network data
Comparison of HIV-1 Genotypic Resistance Test Interpretation Systems in Predicting Virological Outcomes Over Time
Background: Several decision support systems have been developed to interpret HIV-1 drug resistance genotyping results. This study compares the ability of the most commonly used systems (ANRS, Rega, and Stanford's HIVdb) to predict virological outcome at 12, 24, and 48 weeks. Methodology/Principal Findings: Included were 3763 treatment-change episodes (TCEs) for which a HIV-1 genotype was available at the time of changing treatment with at least one follow-up viral load measurement. Genotypic susceptibility scores for the active regimens were calculated using scores defined by each interpretation system. Using logistic regression, we determined the association between the genotypic susceptibility score and proportion of TCEs having an undetectable viral load (<50 copies/ml) at 12 (8-16) weeks (2152 TCEs), 24 (16-32) weeks (2570 TCEs), and 48 (44-52) weeks (1083 TCEs). The Area under the ROC curve was calculated using a 10-fold cross-validation to compare the different interpretation systems regarding the sensitivity and specificity for predicting undetectable viral load. The mean genotypic susceptibility score of the systems was slightly smaller for HIVdb, with 1.92±1.17, compared to Rega and ANRS, with 2.22±1.09 and 2.23±1.05, respectively. However, similar odds ratio's were found for the association between each-unit increase in genotypic susceptibility score and undetectable viral load at week 12; 1.6 [95% confidence interval 1.5-1.7] for HIVdb, 1.7 [1.5-1.8] for ANRS, and 1.7 [1.9-1.6] for Rega. Odds ratio's increased over time, but remained comparable (odds ratio's ranging between 1.9-2.1 at 24 weeks and 1.9-2.