Przemysław Szufel

Przemysław Szufel is an Assistant Professor in Decision Support and Analysis Unit at SGH Warsaw School of Economics, he also a visiting researcher in Ryerson University (Toronto) and a member of Computational Methods in Industrial Mathematics Lab in The Fields Institute for Research in Mathematical Sciences in Toronto.

His current research focuses on practical application and methods for execution of large-scale simulations for numerical experiments and optimization. He is an author or a co-author of several Open Source tools for high performance and numerical simulation as well as papers on simulation-optimization algorithms. Przemysław is also a co-author of the book "Julia 1.0 Programming Cookbook: Over 100 numerical and distributed computing recipes for your daily data science workflow", Packt Publishing, 2018.


Session

07-23
11:40
10min
Analyzing social networks with SimpleHypergraphs.jl
Bogumił Kamiński, Przemysław Szufel

A hypergraph is a generalization of a graph where a single edge can connect more than two vertices. Typical applications are related to social data analysis and include situations such as sending a single email to several recipients, a customer giving reviews to several restaurants or analyzing security vulnerabilities of information networks. In many situations the usage of a hypergraph rather than a classical graph allows to better capture and analyze dependencies within the network.

We will start by presenting the library and its functionality. As an example a use case with analysis of Yelp reviews will be shown. The presentation will be based on Jupyter notebook and will be very illustrative for researchers planning to do social network modelling in Julia.

In the second part of presentation we will show how we made use of typical Julia programming patterns to build the library. This includes overloading Array operators to provide a user an Array-like access to the hypegraphs data, using object composition as a standard inheritance mechanism for generating various representations (views) of a hypergraph and finally, making the hypegraph data structures compatible with LightGraphs.jl by providing new method implementations. This should give the participants an overview of typical patterns used when extending the package ecosystem of the Julia language.

Acknowledgement: The project is financed by the Polish National Agency for Academic Exchange.

Elm B