Johnathan Koch

GitHubEmailLinkLink

Pronouns: He / Him

Personal Statement

I specialize in efficiently applying computational resources and distributed compute methodologies to problems in pure mathematics. Many of these involve "combinatorial explosion" and lay definitively in the realm of NP-complete questions.


Researching at the Air Force Research Lab afforded me the opportunity to develop the Power Domination Toolbox, a drop-in replacement for current Python/SageMath libraries used in scientific computing. The Power Domination Toolbox was able to show a 27 times improvement over conventional methods that are cited in at least 13 published papers.

 

I am currently investigating the application of MPI and GPU computing in Python to accelerate research into graph Ramsey theory. This extension to my master's thesis will lead to a classification of graph diagonal Ramsey numbers, often seen as one of the hardest computational problems. My willingness to listen to diverse perspectives, be it from mathematicians or computer scientists, gives me unique insights into these difficult problems.


Ultimately, I want to learn, and I want to hear passionate people describe their understanding of the world around us. I love research for research's sake, and expanding humanity's understanding of mathematics by leveraging computers has become my bailiwick. After graduating from Youngstown State University with my Master of Science in mathematics, I am excited to explore opportunities in both academic and public research settings.

Masters Thesis: Applying Computational Resources to the Down-Arrow Problem

BLUF (Bottom line up front): A novel method for investigating graph-theoretic Ramsey theory proposed by my thesis advisor, Dr. Alexis Byers, is investigated with scientific computing. A Python script was written that provided novel results, as well as confirming previous results that were not fully proven to be correct.


Abstract: A graph G is said to arrow a graph H if every red-blue edge coloring of G presents a monochromatic H, and is written G → H. The down-arrow Ramsey set reports all subgraphs H of a graph G for which G → H. Formally, the down-arrow Ramsey set is a graph G is ↓G:= {H ⊆ G: G → H}. Calculating this set by way of scientific computing is computationally prohibitive with the resources commonly available to graph theorists and other academics. Using existing research into complete graphs, the down-arrow Ramsey sets for small complete graphs (K_n for 2 ≤ n ≤ 7) can be generated quickly. For larger complete graphs (K_n for 8 ≤ n ≤ 11) specific pre-processing steps are leveraged to speed up calculations in addition to the existing research. Presented is work on the development of a Python script to generate the down-arrow Ramsey set of a graph through efficient memory management and parallel computing methodologies. The down-arrow generator is used to report new results on complete graphs as well as complete bipartite graphs, and assorted other graphs.


Full Page

Air Force Research Lab Intern: The Power Domination Toolbox

BLUF (Bottom line up front): Computational resources have proven difficult to apply efficiently to problems in power systems planning from a graph-theoretic approach. The Power Domination Toolbox is up to 27 times faster than conventional methods by implementing strategies in the literature.


Abstract: Phasor Measurement Units (PMUs) are placed at strategic nodes in an electrical power network to directly monitor nearby transmission lines and monitor further parts of the network through conservation of energy laws.Efficient placement of PMUs is modeled by the graph theoretic process called Power Domination (PD). This paper describes a Power Domination Toolbox (PDT) that efficiently identifies potential PMU locations. The PDT leverages the graph theoretic literature to reduce the complexity of determining optimal PMU placements by: reducing the size of the network (contraction), identification of preferred nodes, elimination of redundant nodes, assignment of a qualitative score to the remaining nodes, and parallel processing techniques. After pre-processing steps to reduce network size, current state-of-the-art PD techniques based on the minimum rank sage library (MRZG) are used to analyze the network. The PDT is an extension of MRZG in Python and maintains the compatibility of MRZG with SageMath. The PDT can identify minimum PMU placements for networks with hundreds of nodes on personal computers and can analyze larger networks on high performance computers. The PDT affords users the ability to investigate power domination on networks previously considered infeasible due to the number of nodes resulting in a prohibitively long run-time. 


Full Page

π-Harmonious Labelings of graphs

BLUF (Bottom line up front): Harmonious labelings of graphs have been of interest to mathematicians since Graham and Sloane introduced it. This research introduces a related labeling scheme based off of an acyclic, Abelian group of interest to algebraists.


Abstract: Based on harmonious labelings, we introduce a new graph labeling: A multiplicative harmonious (M-harmonious) labeling is an injective function f:V(G) → U(n) that induces an injective function f′:E(G) → U(n) defined by f′(uv) = f(u)∗f(v), where U(n) is the group under modular multiplication made of integers relatively prime to n and * is the group operation. We present results in this area, including a comparison to harmonious labelings, a description of the Java program we wrote to find multiplicative harmonious labelings for a given graph, and an investigation of graphs that fail to be multiplicative harmonious.


Full Page

Invidence Algebra Visualizer

BLUF (Bottom line up front): To demonstrate the capabilities of Python as a standalone, GUI based program, a lightweight application to visualize induced incidence algebras is created.


Full Page

Undergraduate Research Project: Defining the Cycle

BLUF (bottom line up front): Many undergraduate textbooks in algebra fail to be rigorous in defining the base elements in the permutation group. This project provides two equivalent criterion for a rigorous definition while proving some contemporary results with these proposed definitions.


Abstract: Within Group Theory, there is often a lack of rigour when defining the fundamental element of the permutation group. Definitions by example and explanation are prevalent yet lacking. This project seeks to define the cycle with the same level of mathematical rigour as other constructs. In exploring possible definitions, two equivalent statements are discovered and proved equivalent. Having these two definitions allow certain theorems to be proved more easily as it's been shown that:

σ ∈ S_n is an m-cycle ⇔ X_σ = {σ(a)^i | 0 ≤ i < m} ∀a ∈ X_σ


Full Page

Undergraduate Research: U(n) Generator

BLUF (bottom line up front): This Java application demonstrates parallel compute methodologies to generate large data sets used in abstract algebra.


Abstract: U(n) as a group is not necessarily cyclic. The automatic generation of these U(n) and explicit creation of the Cayley tables for U(n) will greatly ease the burden of computation for researchers using U(n) as a group. This Java application uses parallel computing methodologies to speed up the computation of separate U(n)s with load-leveling being done between the threads to ensure relatively even spread of work. 


Full Page

Coffee / Tea Selection Tool

BLUF (bottom line up front): With subscriptions to Coffee and Tea coming in monthly, the choice of what to drink and how to make it becomes a bit of a hastle. This application will be loaded onto a Raspberry Pi with a touchscreen at a coffee station to allow users to select and view how to brew each of the available drinks. Inventory will be kept in a database on the device, and can be updated remotely through a web interface.  


Purpose: Allowing edge computing and database storage on an off-the-shelf device is paramount in the internet of things. This raspberry pi project was a perfect use-case to learn the Java swing API to generate GUIs for lightweight applications.


Full Page

Profit Analysis

BLUF (bottom line up front): Leveraging R, forcasting methods and other statistical tools can be used to allow better market decisions for a particular small business focussing on niche products. Being in the market where only a handful of specialty stores exist, this may offer some advantage over the competition.


Purpose: To demonstrate the principles of data analytics and data visualizations.


Full Page

Penguin Preparation Program (P3)

BLUF (bottom line up front): Due to the corona virus epidemic, students' learning was impacted and social networks were harmed in ways that college needs to understand and adapt to. P3 was designed to educate incoming college students of the resources available to them for mathematics and English/writing at the college level.


Full Page

I was raised in Colorado, where I learned to appreciate the power computers have. Through highschool I grew a love for mathematics and writing TI-BASIC programs to upload on my friends' graphing calculators. 


I began attending college in 2013 at the University of Colorado at Colorado Springs for Computer Science, to switch into Mathematics with the intent to get certifications to teach highschool. 


In 2018 I moved to Western Pennsylvania to focus on my mental wellbeing and be closer to the family that lived there. 


I continued my academics at Youngstown State University in 2019, completing my BS in Mathematics with a Minor in Information Systems Programming. I then furthered my education through my Masters of Science in mathematics at Youngstown State University

Positions include:


Skills learned: