Keeping Current Seminars

Faculty and students are encouraged to attend; these talks are like department colloquia. The seminar is at 12pm-1pm (Eastern time) on Wednesdays. We meet in the first-floor theater of the Davis-Marksbury Building (DMB). Pizza will be served, courtesy of the Industrial Affiliates Program. Each session has a 50-minute or two half-hour talks. Past talks are posted after last semester and this semester's talks.

SpeakerAffiliationDateTitle
Scheduled Talks
Past Talks
Brent SealesChair, CSAugust 28, 2013Uncomfortably Exciting
Abstract: I will review a few projects that I had a chance to explore this past year that stand a chance at failing big ― or changing the world. Come to hear some first-hand details about project launches, spectacular success, and how our biggest failures can sometimes become our best experiences.
Raphael FinkelFaculty, CSAugust 28, 2013The SUDA on line: using XSL and FO
Abstract: The SUDA is is a massive 10th century Byzantine Greek historical encyclopedia of the ancient Mediterranean world. The purpose of the Suda On Line is to open up this stronghold of information by means of a freely accessible, keyword-searchable, database with translations, annotations, bibliography, and automatically generated links to a number of other important electronic resources. As the project nears completion, we have begun to look at XML, XSL, and XSL-FO formatting of the results; I will introduce you to these useful tools.
Navjeet SandhuMS Student, CS (Finkel)September 4, 2013Getting started with HUBzero
Abstract: While working on creating a new website for dissemination of tools, data and other resources generated by our project group, we were facing an important question, "Is there a platform we can use to jump-start our website development instead of starting from scratch?" The answer was HUBzero, an open-source software platform for creating websites for scientific research and education. I will give a short introduction on HUBzero followed by a demo on how to start using HUBzero for creating your own website.
Ahmed IbrahimPhD Student, CS (Manivannan)September 4, 2013Challenges of sharing electronic health record across different healthcare providers
Abstract: The electronic health record (EHR) is a longitudinal collection of electronic health information about individual patients and populations. It provides an opportunity for healthcare organizations to integrate health care information, currently collected in both paper and electronic medical records (EMR), to improve quality of care and patient safety. EHR systems are widely used by healthcare providers. EHRs requires long-term preservation and storage. Developing a secure framework for EHR that facilitates sharing of information among different healthcare providers is a challenging problem.
Greg WasilkowskiFaculty, CSSeptember 11, 2013Multivariate and ∞-variate integration
Abstract: We will introduce basic notions of Information-Based Complexity and illustrate them by recent results on the complexity of numerical integration for functions with many or infinitely many variables.
Ping YiPhD Student, CS (Fei)September 11, 2013Responsive Web Design
Abstract: Every day more smartphones are activated, and more websites produce smartphone-optimized content. It’s impractical to create a website version for each resolution and new device. This talk introduces Responsive Web Design, a design approach aimed at crafting sites to provide an optimal viewing experience ― easy reading and navigation with a minimum of resizing, panning, and scrolling ― across a wide range of devices. The talk also introduces related technologies and frameworks.
Victor MarekFaculty, CSSeptember 25, 2013Some applications of Victorian science to modern Constraint Solving
Abstract: We discuss one of the discoveries of Victorian science (during the reign of Queen Victoria of Britain) and its application in modern Constraint Solving over finite domains. This discovery and modern consequences of thereof play an important role in Computer Engineering.
Hui Lin and Jizhou GaoPhD students, CS (Yang)September 25, 2013Semantic Decomposition and Reconstruction of Residential Scenes from LiDAR Data
Abstract: We present our recent work to build a complete software system to semantically decompose and reconstruct 3D models from point clouds. Unlike previous urban-modeling approaches, our algorithms are designed for residential scenes consisting mainly of low-rise buildings that do not exhibit the regularity and repetitiveness of high-rise buildings in downtown areas. We present a novel building model decomposes and fits the building point cloud into basic blocks that are blockwise symmetric and convex. We demonstrate the effectiveness of our algorithms on various datasets and compare our building modeling scheme with other state-of-the-art reconstruction algorithms to show its advantage in terms of both quality and speed.
Dinesh ManochaCS Professor, UNC-Chapel HillOctober 2, 2013Velocity-space planning techniques
Abstract: This is a department colloquium, not a Keeping Current seminar. I will give an overview of how to use velocity-space planning techniques to compute cooperative motion paths for a group of independent entities sharing the same physical space. I will focus on the special case of simulating human-like crowds, with applications to computer animation and architectural analysis. Specific topics will include optimization-based strategies for distributed collision avoidance, uses of the principle of least effort for simulating crowds, and data-driven strategies for modeling differences in personalities. The talk will also cover related techniques needed to achieve accurate simulations of large-scale crowds such as efficient parallel/SIMD compute models and methods of validating simulations against real world data and will discuss how velocity-space motion planning can be applied to collision avoidance for distributed robotic systems.
Xuzi ZhouPhD student, CS (Griffioen)October 9, 2013Cyber Infrastructure for the VOEIS Project
Abstract: The goal of the Virtual Observatory and Ecological Informatics System (VOEIS) project is to improve our understanding of lakes, rivers and streams. Our team has developed the cyber infrastructure, the Data Spoke, for two biological stations, Hancock Biological Station (HBS) on Kentucky Lake and Flathead Lake Biological Station (FLBS) in northwest Montana, that significantly expands their ability to collect, store, monitor and visualize the deluge of data being collected on nearby water bodies.
Robert CassUndergrad, CS (Wasilkowski)October 9, 2013Implementing a randomized method for approximating a class of multivariate integrals
Abstract: We provide an analytic formula for a randomized method of approximating multivariate integrals of a certain class of functions over the n-dimensional unit cube. We discuss the error associated with this method, and we describe how to generate the random numbers required to implement this method. Finally, we compare numerical results for this method and the classical Monte Carlo method.
Shufeng HuangPhD student CS (Griffioen)October 16, 2013Software-Defined Networking
Abstract: Software-Defined Networking (SDN) is a promising way to deploy new services and protocols in networks. SDN networks enable users and applications to define every aspect of the network architecture, but at a cost that might significantly limit their adoption. First, SDN networks provide low-level APIs on which almost any type of service can be written, which can make it more difficult to implement the higher-level services needed by future networks. Second, SDN networks exhibit too much heterogeneity, limiting the ability to piece together various SDN platforms. In this talk I present a way to construct networks consisting of multiple SDN providers offering virtualizable networking resources across the Internet. Our approach introduces a Network Hypervisor service capable of internetworking various SDN providers. The Network Hypervisor builds on the low-level APIs to create a unified set of high-level APIs to simplify building and deploying complex network services.
Frank RobertsCS MS grad, 2013 (Finkel)October 16, 2013Useful web sites for technology and news (PDF)
Abstract: I discuss the motivation for leveraging the Internet to follow events in Computer Science and Technology. I present methods to effectively find and follow new sources of information, as well as methods to filter the most valuable items from the voluminous streams these sources produce. I present and discuss several of the sources that I follow.
Tom AllenPhD student, CS (Goldsmith)October 23, 2013CP-nets with Indifference
Abstract: Conditional-preference networks (CP nets) can represent qualitative preferences in a compact way. Much of the research on CP nets is limited to strict preferences over binary variables. I will discuss how CP nets can model preferences over multi-valued variables over some of which the preference holder may be indifferent. I will show how to employ SAT solvers to learn and reason with such CP nets. Finally, I will discuss the worry about exponentially long flipping sequences and show why in practice they are unlikely to be problematic.
Ramakanth KavuluruFaculty, CS and BioStatisticsOctober 23, 2013Supervised Extraction of Diagnosis Codes from Electronic Medical Records
Abstract: We will introduce the problem of extracting diagnosis codes from EMRs, an indispensable task in all healthcare facilities. Using two different datasets with contrasting characteristics, we map the problem into multi-label text classification and explore different approaches that involve feature selection, training data selection, and probabilistic thresholding for assign codes to EMRs.
Mark HaysPhD student, CS (Hayes)October 30, 2013Statistical Analysis for Traceability or Other Experiments
Abstract: An important aspect of research into traceability is the ability to compare techniques. In order to assure proper comparison, it is necessary to perform statistical analysis of the dependent variables collected from technique application. Currently, TraceLab lacks components to support such analysis. The Software Verification and Validation Research Laboratory (SVVRL) and the Statistics Department of the University of Kentucky have developed a collection of such components as well as a workflow for determining what type of analysis to apply (parametric, non-parametric). The components use industry-accepted R algorithms. The components have been validated using independent standard statistical algorithms applied to publicly available datasets.
Fuhua ChengFaculty, CSOctober 30, 2013New 3D pointing technology with applications in remote control, presenting, and 3D mouse
Abstract: This talk presents technology for the post-touch-panel era: a 3D human-computer interaction system that performs 3D pointing based on passive light detection using only one camera. This technology has many applications. This presentation will present and discuss applications in remote control, presenting, and 3D mice.
Mirek TruszczyńskiFaculty, CSNovember 6, 2013Preferences in AI and Social Choice
Abstract: Representing and reasoning about preferences in qualitative settings is an important research area for social choice, knowledge representation and decision making. The main objectives are to design expressive yet intuitive languages to model preferences and to develop automated methods to reason about formal representations of preferences in these languages. This talk introduces material discussed further in talks by Xudong Liu (today) and Ying Zhu (Spring 2014). I will define basic concepts and formulate the main problems. I will also briefly mention some recent results on the equivalence of preference theories obtained with my Austrian collaborators, Wolfgang Faber and Stefan Woltran.
Xudong LiuPhD Student, CS (Truszczyński)November 6, 2013Aggregating Lexicographic Preferences Over Combinatorial Domains
Abstract: When alternatives are combinations of values from domains, the space of alternatives is often too large for agents to express their preferences as strict total orders (or votes) over all alternatives. I will discuss a preference formalism, lexicographic preference trees (LP trees), that is an intuitive and compact representation of preferences over combinatorial domains. I will define two preference-aggregation problems based on positional scoring rules (such as k-approval and Borda) when preferences are represented as LP trees. I will show computational complexity results as well as experimental results using Answer-Set Programming and Weighted MAXSAT tools.
Daniel HarrisPhD student, CS (Jaromczyk, Todd Johnson)November 13, 2013An Introduction to DELVE: Document ExpLoration and Visualization Engine
Abstract: We present DELVE, a prototype for performing literature-based searches with the aid of interactive visualizations and a framework for quickly implementing such visualizations as modular web applications. Linked, interactive visualizations help satisfy the diverse information needs of researchers. I will demonstrate our DELVE prototype, currently implemented with two years of biomedical literature, targeting biomedical researchers.
Paul MihailPhD student, CS (Goldsmith)November 13, 2013A CRF Approach to Fitting a Generalized Hand Skeleton Model
Abstract: I will present a new point distribution model capable of modeling joint subluxation (shifting) in rheumatoid arthritis (RA) patients and an approach to fitting this model to posteroanterior view radiographs. We formulate this shape-fitting problem as inference in a conditional random field. This model combines potential functions that focus on specific anatomical structures and a learned shape prior. We evaluate our approach on two datasets: one containing relatively healthy hands and one containing hands of rheumatoid arthritis patients. We provide an empirical analysis of the relative value of different potential functions. We also show how to use the fitted hand skeleton to initialize a process for automatically estimating bone contours, which is a challenging, but important, problem in RA disease-progression assessment.
Ken CalvertFaculty, CSNovember 20, 2013Should you trust the padlock? Web Security and the HTTPS Value Chain (PDF)
Abstract: The Web is a critical component of the global economy, with millions of transactions each day carried out using the standard security protocols (SSL/TLS). When you're buying something on the web and your browser displays a padlock, what does it really mean? More importantly, who has an interest in getting you to rely on that signal, and who is at risk if something goes wrong? This talk will present an overview of the SSL/TLS ecosystem and highlight some interesting recent results from an wide-ranging analysis of certificate authorities (CAs).
Raphael FinkelFaculty, CSNovember 20, 2013Successors to TeX (PDF)
Abstract: Since TeX was finalized around 1989, various improvements have been made to the underlying engine, in addition to packages such as LaTeX. I will present some of those newer versions, such as pdfTeX, luaTeX, and XeTeX. I will also discuss some of the remaining problems with the TeX-like implementations.
Matthew SpradlingPhD student, CS (Goldsmith)January 15, 2014Roles and Teams Hedonic Games
Abstract: In hedonic coalition formation games, an agent's utility for a partitioning is based upon utility for her own coalition and not the coalitions of others. In this talk, I will present a brief overview of coalition formation games and the sub-category of hedonic coalition formation games. I will present a new variant of hedonic coalition formation games in which agents have two levels of preference on their own coalitions: preference on the set of "roles" that makes up the coalition, and preference on their own role within the coalition. This new work has previously been presented at M-PREF'13 and ADT'13. I will provide an overview of several stability notions and optimization problems for this model. I will present the results of a heuristic optimizer we developed for coalition formation in this setting.
Paul LintonStaff, CSJanuary 15, 2014Unix setup and administration tools
Abstract: I will discuss the methods and applications (including SAT and Pulsar) we use to maintain computer systems in the cs.uky.edu and csr.uky.edu domains. The methods cover system installation and configuration as well as day-to-day handling of users, hosts, and printers. Next I will discuss the potential use of Puppet to further automate common tasks.
Ken CalvertFaculty, CSJanuary 22, 2014What's all the fuss about Bitcoin? (Video) (PDF)
Abstract: Bitcoin is a peer-to-peer payment system and "cryptocurrency" that has been in the news a good deal recently. After a brief introduction to digital payment systems, I will describe the history of bitcoin and the salient aspects of its open-source protocol. I will also present some considerations regarding the valuation of bitcoin and its suitability as a vehicle for commerce.
Dave MobleyPhD student, CS; IBMJanuary 22, 2014How Watson Works (Video) (PDF)
Abstract: Nearly 3 years ago, IBM unveiled Watson, a computer capable of answering challenging questions that were thought to only be possible for humans on the game show Jeopardy!. IBM called this new way of using computers for business "Cognitive Computing" and is now pushing it forward into a multitude of fields. In this presentation you will see and discuss what makes up Watson and why it is different, understand the types of questions it was designed to handle, and hear about the progress of Watson technology from the time since Jeopardy!
Julia RubinPhD student, University of Toronto; IBM research
Faculty candidate
January 29, 2014To Merge or Not to Merge: Managing Software Families
Abstract: Software surrounds us and drives our lives. A demand for highly customized products leads to the creation of software product lines ― families of software variants with similar, yet not identical functionality. For example, Samsung's Galaxy S line includes over two dozen smartphone models, each with its own variation of software. Developing and maintaining such a large set of software variants is a challenging task. In the last two decades, numerous approaches have been proposed to help develop product lines in an efficient manner. Surprisingly, they are rarely used in practice. In this talk, we investigate reasons for this lack of adoption. Focusing on the technical perspective, we identify and organize the support required for improving existing product line management practices in real-life organizations. We map the identified support to software analysis and transformation tasks. We show that some of the identified tasks are barely studied by existing works and look in detail into one of them: merging artifacts of multiple products (also known as n-way merge). We explain why the n-way problem is NP-hard, explore possible approximate solutions, and propose our own heuristic n-way merge algorithm that is superior to other practical approaches in terms of its accuracy. We conclude the talk by outlining future research agenda.
J. David SmithCS JuniorFebruary 5, 2014Clojure: Lisp on ALL the Things! (PDF) (Video)
Abstract: Clojure is a dialect of Lisp designed and implemented by Rich Hickey beginning around 2005. The original implementation was released in 2007 and ran on the JVM, but it has since been extended to run in web browsers and on the .NET platform. It allows the usage of Lisp-ish ideas of code-as-data, and functional programming with the bulk of libraries and compatible devices that the JVM, .NET and web platforms provide. I present some advantages of using Clojure over the native languages of its respective platforms.
Blake HallCS undergraduateFebruary 5, 2014GitHub (Video)
Abstract: GitHub has become the go-to service for hosting and managing open-source software. Plenty of companies depend on it for code hosting and organize their workflows around it. Come see why it has taken off and how you can use it to get involved in the open source community.
Ken CalvertFaculty, CSFebruary 12, 2014Bitcoin, part two (Video) (PDF)
Abstract: After a brief recap of how the shared public ledger (the guts of the system) works, we'll talk about the Bitcoin ecosystem, valuation of Bitcoin, some issues both technical and otherwise, and some interesting possible futures.
Pengpeng LinPhD student, CS (Zhang)February 12, 2014Basic usage of Dreamweaver (Video)
Abstract: Dreamweaver is a popular and common tool for designing web pages as well as for maintaining websites. Many advanced web designers use it on a daily basis. This talk will demonstrate Dreamweaver and discuss some of its basic usage, including "workspace", layout with AP div or div tags, tracing images, defining or linking an external css sheet, and finally uploading a web page to a server for testing.
Gregory GayPhD student, University of Minnesota
Faculty candidate
February 19, 2014Improving the Effectiveness of Testing by Leveraging Artifact Relationships
Abstract: A typical software testing framework consists of four artifacts: the specification, system, test suite, and test oracle. The specification is the blueprint from which the system is built, the test suite is a set of stimuli to the system, and the test oracle is a judge on the resulting execution of the system. Typically, testing research focuses on one of these artifacts, and treats the other artifacts as though they are independent. Such an assumption limits the potential effectiveness of the testing process. In fact, the artifacts of the testing process are often highly coupled. For example, an effective test suite has been found to be one where the tests have been built to account for the structure of the system and the execution points monitored by the test oracle. In this talk, I will discuss two projects that improve the cost, time to complete, and fault-finding effectiveness of the software testing process by leveraging the connections between artifacts and using the information learned to improve test suite and oracle composition.
Tingting YuPhD student, University of Nebraska-Lincoln
Faculty candidate
February 26, 2014An Observable and Controllable Testing Framework for Modern Software Systems
Abstract: Modern computer software systems are prone to various classes of elusive faults due to their reliance on features such as multi-core processors and peripheral devices such as sensors. Testing remains a common method for uncovering faults in these systems. However, commonly used testing techniques that execute the program with test inputs and inspect program outputs to detect failures are often ineffective on these systems. In addition, existing testing techniques focus primarily on single applications, neglecting elusive faults occur at the whole-system level due to complex system events interactions. In this talk, I present an approach that allows engineers to effectively test for elusive faults in modern software systems by providing them with deep observability and controllability. I propose a testing framework that first employs dynamic analysis techniques to observe system execution and identify program locations of interest. Next, the framework employs virtualization to achieve fine-grained controllability, allowing it to exercise event interleavings that are likely to expose faults. The ultimate benefit of this approach is its ability to test entire systems for broad classes of elusive faults. I illustrate the generality of the framework by discussing two of its instantiations: detecting process-level races and estimating worst-case interrupt latencies. I conclude by sharing my vision for new research directions related to the approach and to other aspects of software reliability and software security.
David KnoesterPostdoctoral Fellow, Michigan State University
Faculty candidate
March 5, 2014Engineering by Natural Selection: Automatically building software and shedding light on collective behavior
Abstract: Engineering large-scale distributed computing systems that are fault-tolerant, self-healing, self-organizing, and self-adaptive is a challenging problem. While difficult to build, many biological systems already exhibit these behaviors, even when faced with a dynamic (and often hostile) environment. In this talk, I will present an approach to building distributed systems that takes inspiration from evolution, the process that produced these behaviors in nature. In particular, I will show how a combination of high performance computing and evolutionary algorithms can be used to automatically engineer software for distributed systems. Compared to traditional techniques, this approach enables us to specify the desired global behavior directly, and leverage evolutionary search to discover the mechanisms by which that behavior can be realized. Additionally, I will show how evolutionary algorithms form a foundation for digital environments that recreate the conditions under which biological collective behaviors may have evolved. Such computational systems enable us to study foundational questions in biology related to swarming, cooperation, altruism, and self-organization--how they function, under what conditions they evolve, how hazardous environments are dealt with, and when they fail. Ultimately, this combination of techniques will help us to engineer the next generation of distributed computing systems while simultaneously granting insight into the biological process that shaped the world around us.
Hunter MoseleyFaculty, Molecular & Cellular BiochemistryMarch 12, 2014Informatics and Modeling Platform for Stable Isotope-Resolve Metabolomics (Video)
Abstract: Recent advances in stable isotope-resolved metabolomics (SIRM) are enabling orders-of-magnitude increase in the number of observable metabolic traits (a metabolic phenotype) for a given organism or community of organisms. Analytical experiments that take only a few minutes to perform can detect stable isotope-labeled variants of thousands of metabolites. Thus, unique metabolic phenotypes may be observable for almost all significant biological states, biological processes, and perturbations. Currently, the major bottleneck is the lack of data analysis that can properly organize and interpret this mountain of phenotypic data as highly insightful biochemical and biological information for a wide range of biological research applications. To address this limitation, we are developing bioinformatic, biostatistical, and systems biochemical tools, implemented in an integrated data analysis platform, that will directly model metabolic networks as complex inverse problems that are optimized and verified by experimental metabolomics data. This integrated data analysis platform will enable a broad application of SIRM from the discovery of specific metabolic phenotypes representing biological states of interest to a mechanism-based understanding of a wide range of biological processes with particular metabolic phenotypes.
Spring BreakMarch 19, 2014
Anthony RiosPhD Student, CS (Kavuluru)March 26, 2014Multi-Label Collective Classification (Video)
Abstract: I will present a paper on multi-label collective classification (Kong, Shi, & Yu 2011). Collective classification allows us to take advantage of groups of linked instances that need to be predicted simultaneously. Collective classification has been explored in the single-label setting, including binary and multi-class problems. This paper proposes a novel method to classify instances with a set of labels that can take advantage of instance and label based correlations.
Jim GriffioenFaculty, CSMarch 26, 2014What can GENI do for you? (Video)
Abstract: The Global Environment for Networking Innovation (GENI) ― a national testbed network for experimenting with new network protocols and services ― has been in development for several years, and has now matured to the point of being a very useful platform for building radically new networked applications. This talk will describe the current status of the GENI network and present some of the tools/features that make it the unique testbed that it is. In particular, we will describe the GENI Desktop, an interface to the GENI network being developed here at UK.
Jeremy ReedPhD Student, CS (Finkel)April 2, 2014OCR magnitudes faster than usual (Video) (PDF)
Abstract: This presentation looks at utilizing commodity graphical processing unit (GPU) hardware and the CUDA C programming language extension to increase efficiency and throughput for optical character recognition (OCR), a precursor to efficient analysis of dead-tree data.  The current focus of this research is to complete the core functionality of an OCR engine as a proof of concept for further enhancement.  The core functionality of an OCR engine can be defined as the ability to find and isolate blocks of text, lines and, finally, the character glyphs on an image, and then to quickly and correctly identify those glyphs.  The research suggests the ability to sustain a rate of 1,000 pages of text per 3-4 seconds, per 1GB of memory on a GPU card, an speed-up to 500x when compared to current enterprise OCR solutions.
Wenbin LiPhD Student (Hayes, Truszczyński)April 2, 2014Answer set tools and temporal consistency (Video)
Abstract: The presentation is about the applicability and effectiveness of answer-set programming tools in the task of checking consistency of temporal software requirements. I present a translation from a formal language to the logic formalism that is accepted by the ASP solver, and the performance of the translation.
Tariq IslamPhD Student (Jacobs)April 9, 2014Geo-Dependence of Human Face Appearance (Video)
Abstract: The expected appearance of a human face depends strongly on age, ethnicity and gender. While these relationships are well-studied, our work explores the little-studied dependence of facial appearance on geographic location. To support this effort, we constructed GeoFaces, a large dataset of geo-tagged face images and applied different statistical tools to understand the geo-dependence of human faces.
Yajie ZhaoPhD Student (Yang)April 9, 2014Video face beautification (Video)
Abstract: This paper presents a novel framework for face beautification. Unlike prior work that deals with single images, the proposed new framework is designed for video. It is able to improve both the appearance and the shape of a face. It adopts a state-of-the-art algorithm to synthesize and track 3D face models using blendshapes. The personalized 3D model can be edited to satisfy personal preference. This interactive process is needed only once per subject. Based on the tracking result and the modified face model, we present an algorithm to beautify the face in the video efficiently and consistently. We also develop a variant of content-preserving warping to reduce warping distortions along the face boundary. Finally, we adopt real-time bilateral filtering to remove wrinkles, freckles, and blemishes. This framework is evaluated on a set of videos. The experiments demonstrate that our framework can generate consistent and pleasant results over video frames while the original expressions and features are preserved.
Ying ZhuPhD Student, CS (Truszczyński)April 16, 2014On Optimal Solutions of Answer Set Optimization Problems (Video)
Abstract: Answer set optimization problems consist of two components: a logic program and a set of preference rules. Answer sets of the program represent possible outcomes, preferences determine a preorder on them. Of interest are answer sets of the program that are optimal wrt the preferences. In this work, we consider computational problems concerning optimal answer sets. We implement and study several methods for the problems of computing an optimal answer set; computing another one, once the first one is found; and computing an optimal answer set that is similar to (respectively, dissimilar from) a given interpretation. For the problems of the existence of similar and dissimilar optimal answer set we establish their computational complexity.
Billy KidwellPhD student, CS (Hayes)April 16, 2014Clustering Software Fault Fixes: Toward Automated Fault Classification (Video)
Abstract: Software fault classification is a widely used tool in software process improvement. We aim to improve software fault classification by developing a decision support system. This research extends an existing source code change taxonomy that was designed to analyze change coupling. The extension expands change types related to statements in order to achieve more granular data about the type of statement that is changed. The extended taxonomy is evaluated to determine if it can be applied to software fault analysis and become the input to a decision support system. We found that the extended change types occur consistently and with high frequency in fault fixes for Eclipse 2.0 and 3.0. Faults were then clustered according to the source code changes and analyzed. We found that the types and sizes of clusters are highly correlated, indicating some consistency in the patterns of the fault fixes. Finally, we performed an initial investigation to determine whether faults in the same cluster have similar characteristics. Our results indicate that many of the change types can be used to characterize the type of fault that has been fixed. However, some of the change types obfuscate the true nature of the fix. Ideas for improving the taxonomy based on these findings are provided.
Beth WeeksEngineering Hall of Honor; ZilliantApril 23, 2014The Price is Right (Video)
Abstract: Solving complex pricing decisions in the cloud with big data, science and business intelligence. A Business trifecta which delivers 5-10% improvement to the top and bottom line!
Frank RobertsCS MS grad, 2013 (Finkel)April 23, 2014Concurrency model in Go (Video) (PDF)
Abstract: I present Go's concurrency model and the tools the language provides to support it. I also present and discuss several Go concurrency idioms. I provide code examples and explain why I believe Go's model is a step forward in concurrent programming practice. Go's concurrency primitives are language-level. "Share by communicating" concisely expresses Go's concurrency model, which encourages composition of independently executing processes. Go's concurrency primitives provide a level of abstraction above the details of concurrent execution, communication, and synchronization, allowing the programmer to focus on a high-level model of a system. Concurrent designs that employ these tools and adhere to Go's concurrency model are often correct by construction.
Brent SealesChair, CSAugust 27, 2014Welcome to the CS Department! (Video)
Onur AscigilPhD student (Calvert, Griffioen)August 27, 2014Balancing Accountability and Privacy in the Network (Video)
Abstract: This paper, by David Naylor et al, won the best-paper award at SigComm 2014. It introduces the Accountable and Private Internet Protocol (APIP), which splits source addresses into two separate fields — an accountability address and a return address — and introduces independent mechanisms for managing each. Accountability addresses, rather than pointing to hosts, point to accountability delegates, which agree to vouch for packets on their clients' behalf, taking appropriate action when misbehavior is reported. With accountability handled by delegates, senders are now free to mask their return addresses.
Jinze LiuFaculty, CSSeptember 3, 2014Algorithms, Big Data and Personalized Medicine (Video)
Abstract: The talk will present an example of a biomedical application on genomic biomarker discovery that ties together three areas of research: Algorithms, Big Data and Personalized Medicine.
Zachary MayCS MS studentSeptember 3, 2014Amazing aspects of the Haskell Programming Language (Video)
Abstract: I will introduce Haskell, a functional programming language with an emphasis on pure functions. I will discuss the concept of monads and show how Haskell uses this abstraction to implement I/O in a model where functions have no side effects by default.
Chris DotsonCS MS almunus; IBMSeptember 10, 2014Security in Cloud Computing (Video)
Abstract: I will discuss some security risks with the use of cloud computing, including "new" attacks made easier by cloud models as well as "old" attacks that are more prevalent due to unclear security responsibilities.
Raphael FinkelFaculty, CSSeptember 10, 2014Solving puzzles with ASP (Video)
Abstract: I will present a few puzzles, such as the minimal square-tiling puzzle, and demonstrate how answer-set programming (ASP) can solve these puzzles. A hands-on demonstration!
Raphael FinkelFaculty, CSSeptember 17, 2014How the CS department deals with computer security (Video)
Abstract: This talk presents the security risks our computers face and how we deal with them, including some live demonstrations.
Raphael FinkelFaculty, CSSeptember 17, 2014The Wolfram programming language (Video)
Abstract: This talk presents the Wolfram programming language, with some examples we can run without paying for the professional version.
nobodySeptember 24, 2014
nobodySeptember 24, 2014
Mirek TruszczyńskiFaculty, CSOctober 1, 2014Satisfiability Modulo Theories (Video)
Abstract: I will present the key ideas behind Satisfiability Modulo Theories (SMT), a significant extension of satisfiability as a problem solving tool. I will motivate the approach by showing shortcomings of propositional logic as a modeling tool, discuss the general design of SMT solvers, outline difference logic, one of the key "theories" in SMT, and mention several applications.
Raphael FinkelFaculty, CSOctober 1, 2014Using FontForge (Video)
Abstract: I'll show how to modify fonts using FontForge. A live demo.
Ye YuCS PhD student (Qian)October 8, 2014Space Shuffle: A Scalable, Flexible, and High-Bandwidth Data Center Network (Video)
Abstract: Data center applications require the network to be scalable, flexible and bandwidth-rich. Current high-bandwidth data center network architectures often use rigid topologies. Recent studies propose to use random interconnects to provide growth flexibility. However, none of the existing solutions satisfies all three requirements well. We present a novel flexible data center network architecture, Space Shuffle (S2), which applies greedy routing on multiple ring spaces to achieve high-throughput, scalability, and flexibility. The proposed greedy routing protocol of S2 effectively exploits the path diversity of densely connected topologies and enables key-based routing.
Ruigang YangFaculty, CSOctober 8, 2014Android and iOS programming (Video)
Abstract: This talk gives a cursory overview of programming apps for the two main types of smartphone.
Brent FarrAzure Solutions Specialist, MicrosoftOctober 15, 2014Microsoft Azure Cloud Overview (Video)
Abstract: Websites, virtual machines, remote apps, storage, machine learning, and SQL in the cloud are just a few of the services being offered up by Microsoft's Azure cloud service. This session will consist of a demonstration of Microsoft Azure components and how they will impact future developers and IT professionals as they build and manage apps for mobile first, cloud first users.
Mike LongAzure Technical Specialist, MicrosoftOctober 15, 2014An Historic View of High Performance Computing (Video)
Abstract: Take a brief stroll through time and see how HPC, High Performance Computing, has changed your life and will continue to change your life. Multi-million dollar single processor Cray supercomputers were first used to pioneer automotive crashworthiness, aircraft design, drug design, weather forecasting, and espionage. Many of these same applications are run today on high end servers and clusters in on-premises datacenters , but are finding their way onto servers/clusters hosted in the cloud. Come learn about how this latest shift in computing paradigms will again change your life, and possibly your career.
October 22, 2014
October 22, 2014
Jim Griffioen, Hussamuddin NasirFaculty, CS
Staff, CS
October 29, 2014Introduction to the ChoiceNet Future Internet Architecture (Video)
Abstract: This talk will provide a brief introduction to the ChoiceNet Internet Architecture. ChoiceNet is designed to incentivize ISPs to develop and offer new innovative network layer services, and to be compensated for offering such services. We will demonstrate an early implementation of ChoiceNet in the context of the GENI network, and will show how users can make their own cost/benefit decisions using ChoiceNet.
Ramakanth KavuluruFaculty, Biomedical informaticsOctober 29, 2014Algebraic classifiers (Video)
Abstract: This talk is based on a 2013 ICML paper that shows how to use abstract algebraic structures for machine learning.
Weihua LiuPhD Student (Klapper)November 5, 2014Rational approximation algorithms for analog feedback shift registers (Video)
Abstract: Pseudo-random sequences are ubiquitous in modern electronics and information technology. High-speed generators of such sequences play essential roles in various engineering applications, such as stream ciphers, radar systems, multiple access systems, and quasi-Monte-Carlo simulation. Given a short prefix of a sequence, it is undesirable to have an efficient algorithm that can synthesize a generator that can predict the whole sequence. Otherwise, a cryptanalytic attack can be launched against the system based on that given sequence. So finding such a synthesis algorithm is an interesting problem in cryptanalysis. Algebraic feedback shift registers (AFSRs) are pseudo-random sequence generators that generalize linear feedback shift registers (LFSRs) and feedback with carry shift registers (FCSRs). We describe an approximation algorithm that solves the AFSR synthesis problem based on low-dimensional lattice basis reduction. It works for AFSRs over quadratic integer rings with quadratic time complexity.
Tingting YuFaculty, CSNovember 5, 2014Debugging virtual machines (Video)
Abstract: Virtual machines are widely used for various kind of activities such as testing and malware analysis. However, little effort has been invested to test if the environment they provide is semantically equivalent to the environment found on real machines. This talk will present recent research on testing system virtual machines with specially crafted test cases.
Anthony RiosPhD student (Kavuluru)November 12, 2014Data Science Workflow with IPython Notebook
Abstract: IPython Notebook has become very popular in the data science community. It provides a web-based environment for editing/executing your code, displaying plots, and rich text editing. I will give an overview of IPython Notebook and discuss why you should use it for data science. I will also give a demo demonstrating many of the basic features of IPython Notebook.
J. David SmithUndergradNovember 12, 2014Programming Languages and Code Quality (slides)
Abstract: This talk describes a paper to be published in ACM SIGSOFT 2014. The paper uses a variety of statistical methods, including machine learning, to classify commit messages on GitHub in order to measure defect generation.
Haden Pike
Stanley Rosenbaum
Undergrad
Masters student
November 19, 2014Cocoa, Swift, and Playgrounds (Video)
Abstract: Swift is a new programming language designed by Apple to be the successor to Objective-C on MacOS and iOS. Playgrounds are a tool to allow one to experiment and visually observe the operation of an algorithm. Most interesting about these new technologies is how they interact with existing Objective-C code. This talk will give an overview of these tools and features. We also discuss why Objective-C is not going away just yet.
Xiongqi (Wesley) WuPhD student (Griffioen)November 19, 2014A Network-Path Advising Service (Video)
Abstract: Unlike the current Internet where applications have little control over the path that their data travels, emerging network architectures enable applications to control the path their packets/flows take. Although an application can select its paths, providing an application with the up-to-date information needed to make an informed decision is a difficult problem. To tackle this problem, we introduce a new network path advising service (NPAS) that helps applications choose network paths.
Radhakrishnan NagarajanFaculty, Biomedical InformaticsDecember 3, 2014Precision Medicine: Deciphering Patient-Specific Signatures (Video, Slides)
Abstract: Several studies have successfully demonstrated marked variation in critical molecules across distinct disease groups. However, a majority of these studies implicitly subscribe to a "one-size fits all" norm that assumes the members within each of the disease groups to be homogeneous. Heterogeneity is ubiquitous and manifests across multiple scales. This presentation will investigate the choice of an ensemble classification approach that incorporates two-dimensional projections (convex hulls) of the molecular expression profiles in deciphering patient-specific signatures. Network abstractions of the ensemble sets will also be discussed.
Hank DietzFaculty, ECEJanuary 14, 2015A little goes a long way (Video)
Abstract: Didn't receive enough toys during the giving season to keep you busy playing throughout the new year? Did you spend most of your money? Here are a bunch of cool computer things to play with that you probably can still afford.
Raphael FinkelFaculty, CSJanuary 14, 2015Quick guide to HTML (Video)
Abstract: This light talk shows you the rudiments of building and verifying web pages. We'll touch on HTML, CSS, JavaScript, online validators, and developer tools in the browser.
Judy GoldsmithFaculty, CSJanuary 21, 2015Using Science Fiction to Teach AI Ethics (Video)
Abstract: The cultural and political implications of modern AI research are not some far-off concern; they are things that affect the world in the here and now. From advanced control systems with advanced visualizations and image processing techniques that drive the machines of the modern military to the slow creep of a mechanized workforce, ethical questions surround us. Part of dealing with these ethical questions is not just speculating on what could be but teaching our students how to engage with these ethical questions. We explore the use of science fiction as an appropriate tool to enable AI researchers to help engage students and the public on the current state and potential impacts of AI.
Paul EberhartPhD Student, CSJanuary 21, 20153D printing for fun and profit (Video) (Slides)
Abstract: In the last decade, the cost and complexity of 3D printing has come down from the realm of exotic industrial prototyping to something any hobbyist or researcher can do on the desk. This talk presents a review of the available 3D printing technology and a primer on the tools adequate to start planning to make your own objects.
Zongming FeiFaculty, CSJanuary 28, 2015OpenFlow and Controller Programming (Video)
Abstract: OpenFlow is an open standard that allows a controller to communicate with OpenFlow-enabled switches. The OpenFlow protocol defines messages such as packet-received, sending-packet-out, modifying-forwarding-table and getting-stats. In this talk, we will give an introduction to the OpenFlow protocol and how to program an OpenFlow controller to process packets and modify the fowarding ruls at the switches. We will briefly touch the current efforts in Software-Defined Networking (SDN) research to develop higher-level programming languages for OpenFlow controllers.
Jacob ChappellCS JuniorJanuary 28, 2015JavaScript Minus the DOM (Video)
Abstract: The Document Object Model (DOM) is an API for accessing and modifying the underlying structure of a Web page. JavaScript is a programming language that implements the DOM API. Unfortunately, JavaScript and the DOM are often misconstrued as one and the same. As a result, developers often blame JavaScript for problems that really arise from the DOM. But what happens when we step away from the DOM and focus on JavaScript as a language? In this talk, I will present several simple examples highlighting various features of the JavaScript language.
Bill KidwellPhD student, CS (Hayes)February 4, 2015Toward a Learned Project-Specific Fault Taxonomy: Application of Software Analytics (Video)
Abstract: Software analytics is a data-driven approach to enable software developers and software project managers to explore and analyze data. The goal of such analysis is to improve software products and processes. In this talk, we discuss some decisions where software analytics can be applied, and demonstrate that fault classification data can aid in this analysis and decision making. In addition, we argue that fault classification should be automated. We provide anecdotal evidence from our research where we cluster faults by syntactical change data. Finally, we present possible areas of research for software analytics using classified fault data and for improving the automation of fault classification.
J. David SmithCS SeniorFebruary 4, 2015JavaScript and the Node.js runtime (Video)
Abstract: I will demonstrate using JavaScript as a general-purpose scripting language using the Node.js runtime. I will show two scripts: one that automates interaction with the UK Secure WiFi login portal, and one that transforms images using FFI bindings to OpenCV. This talk is a followup to Jacob Chappell's talk on January 28.
Jurek JaromczykCS FacultyFebruary 11, 2015What makes a good E-Day presentation (Video)
Abstract: E-Day is an annual event that comes at the end of Engineers Week, founded by the National Society of Professional Engineers in 1951. The purpose of the Engineers Week is to celebrate the engineering profession and its contributions, but more importantly the entire week and the E-day are dedicated to promoting engineering and technology careers and to increase the public understanding of the role engineering plays in today's society. Our Computer Science department has been a part of the E-Day since joining the College of Engineering in 1994, so it is our 20th year of promoting Computer Science this way. In this talk, I will present the general structure of the computer science E-Day showcase, describe a few of many successful demos, and discuss our preparations for February 28th, 2015, this year's E-Day.
Hamid HamrazPhD Student (Zhang)February 11, 2015Forest Modeling using Airborne Laser Scanning (Video)
Abstract: Performing forest management activities manually through field work and interpreting aerial imagery is costly and labor-intensive. Airborne lidar technology is capable of building a 3D point cloud from the top surface of the objects on the ground. Modeling urban areas from lidar data has been successfully accomplished. However, in a heterogeneous wild forest, unlike an urban landscape, tree formations do not conform to a predefined geometric shape and size, and their spatial distribution is not uniform. In order to build a model containing individual-tree-level information, segmentation of individual trees within the point cloud is the critical starting point. After that, we can build a model for each individual tree based on its canopy shape and structure. For performing tree segmentation, previous work has focused on special types of forests and/or terrain conditions; these approaches are neither sufficiently robust nor generalizable. The current work starts by a novel tree-segmentation approach: any two distinct objects on the ground, if distinguishable from above, are likely to have horizontal spacing in between. The proposed approach tries to detect the gaps and extend them in order to segment individual trees. It completes the segmentation by finding the local maximum (the tree apex) and following the local maximum down the hill to reach the tree canopy borders.
Wenbin LiPhD Student (Hayes, Truszczyński)February 18, 2015Towards More Efficient Requirements Formalization: A Study
Abstract: Validating natural-language requirements is an important but difficult task. Although there are techniques available for validating formalized requirements, the gap between natural language requirements and formalism is huge. As part of a larger piece of work on temporal requirements consistency checking, we have developed a front end to semi-automatically translate natural-language requirements into an formal language called Temporal Action Language or TeAL. This work is based on an underlying assumption that human analysts can assist us in filling in the missing pieces as we translate natural-language temporal requirements to TeAL. We performed a study to validate this assumption. We found that using the statements generated by our front-end tool appears to be more effective and efficient than a manual process.
Richard SouvenirCS Faculty, UNC/CharlotteFebruary 25, 2015Supporting Large-Scale Ethnography with Automated Human Activity Analysis
Abstract: This is a department colloquium, not a Keeping Current seminar. Current approaches to evaluating designed spaces are limited by the time and expense of manual observation. In collaboration with architects and ethnographers, we are developing a system for sensing, storing, and analyzing human activity data over long time scales using a network of indoor cameras. The system relies on automated methods for people tracking and action recognition. In this talk, I will describe our approach to human detection and action recognition in multi-camera networks, which is a hybrid between (efficient) single-camera approaches and (accurate) multi-view methods. Our work is motivated by the observation that not all viewpoints in a multi-camera network are equal for recognizing actions and introduces dynamic viewpoint selection to improve processing time without sacrificing accuracy.
Jeannette SuttonFaculty, CommunicationMarch 4, 2015Designing for disaster (Video)
Abstract: Technological innovation can be designed for disaster, or it can become a disaster due to its design. I will discuss recent advances in alerts and warnings addressing the question: How can emergency risk information be effectively relayed via short messaging or social-media channels? Two research projects will be highlighted that demonstrate the links between the social and behavioral sciences and technological innovation.
Chen QianFaculty, CSMarch 4, 2015A Customer Behavior Identification System using Passive RFID Tags (Video)
Abstract: Different from online shopping, in-store shopping has few ways to collect the customer behavior before purchase. In a recent project, we design and implement an on-site Customer Behavior IDentification (CBID) system based on passive RFID tags. By collecting and analyzing wireless signal features, CBID can detect and track tag movements and further infer corresponding customer behaviors. We model three main objectives of behavior identification by concrete problems and solve them using novel protocols and algorithms. The design innovations of this work include a Doppler-effect based protocol to detect tag movements, an accurate Doppler frequency estimation algorithm, an image-based human count estimation protocol and a tag clustering algorithm using cosine similarity. We have implemented a prototype of CBID in which all components are built out of off-the-shelf devices. We have deployed CBID in real environments and conducted extensive experiments to demonstrate the accuracy and efficiency of CBID in customer behavior identification.
Haden PikeUndergrad, CSMarch 11, 2015CAPTCHA and Accessibility (Video)
Abstract: Differentiating humans and computers is an important task for a web service to perform with high reliability. In this talk, I argue that the current methods for this task are flawed, firstly from a business perspective, but mainly from an accessibility viewpoint. This discussion also outlines a general framework for evaluating accessible applications and services.
Frank RichardsonPhD Student, CS (Finkel)March 11, 2015Picking a Perfect NCAA Bracket (Video)
Abstract: Every year, thousands of college basketball fans predict the outcome of the NCAA tournament in the hopes of obtaining bragging rights or even monetary gain. In recent history, Warren Buffet has offered one billion dollars to anyone who could predict the winner of every game of the NCAA tournament. So far, there have been no known instances of anyone accomplishing this task. In truth, the only "perfect" NCAA brackets are those created after the tournament is over. Using simulation software, a fan can "play" each game prior to the actual tournament and generate a bracket based on the results. This presentation will demonstrate the process that I followed in developing my own simulation software. The techniques I used can also be utilized in data mining, game development, sales forecasting, and other applications.
Ting GuPhD Student, CS (Klapper)March 25, 2015Distribution properties of FCSR sequences (Video)
Abstract: Pseudo-random sequences have a wide area of applications to spread-spectrum communication systems, radar systems, signal synchronization, simulation, and cryptography. The pseudo-random sequences in a good family should (a) be easy to generate (possibly with hardware or software), (b) have good distribution properties that make them appear (statistically) to be random, and (c) arise from some underlying algebraic structure so they can be analyzed using standard mathematical tools. (Of course other properties are desired as well, depending upon the application.) This talk introduces two types of sequences that enjoy the above properties. They are the maximum-period linear-feedback shift-register sequences (m-sequences) and the maximum-period feedback-with-carry shift-register sequences (l-sequences). At the end of the talk, I will briefly describe my paper on the distribution properties of half-l-sequences.
Raphael FinkelCS FacultyMarch 25, 2015Reasoning about Conditional Constraint Specifications (Video)
Abstract: Conditional constraint satisfaction problems (CCSPs) and feature models (FMs) have been developed to represent configuration problems in a natural way. CCSPs include potential variables, which might or might not exist in any given solution, as well as classical variables, which are required to take a value in every solution. CCSPs model, for example, options on a car, for which the style of sunroof (a variable) only makes sense if the car has a sunroof at all. FMs are directed acyclic graphs of features with constraints on edges. We show that existing techniques from formal methods and answer set programming can be used to naturally model CCSPs and FMs. Our configurators automatically reason about the model itself, enumerating all solutions and discovering several kinds of model flaws.
Sifei HanPhD Student, CS (Kavuluru)April 1, 2015On Assessing the Sentiment of General Tweets (Video)
Abstract: With the explosion of publicly accessible social data, sentiment analysis has emerged as an important task with applications in e-commerce, politics, and social sciences. Researchers have largely focused on sentiment analysis of texts involving entities such as products, persons, institutions, and events. A significant amount of chatter on microblogging websites may not be directed at a particular entity. On Twitter, users share information on their general state of mind, details about how their day went, their plans for the next day, or just conversational chatter. We look into assessing sentiment in the publicly available general stream of tweets. We can then assess the overall sentiment in a geographic location or for a set of users (scoped through some means), which has applications in social sciences, psychology, and health sciences. We first determine the proportion of positive/negative/neutral tweets from a set of 1000 randomly curated tweets. Next we use a combination of an existing dataset with our dataset and conduct experiments to achieve new state-of-the-art results using a large set of features. Our results demonstrate that methods that work best for tweets containing popular named entities may not work well for general tweets.
Maria Ramos-MoralesMS Student, CS (Kavuluru)April 1, 2015Identification of Useful User Comments in Social Media (Video)
Abstract: This talk presents a paper by Elaheh Momeni, K. Tao and B. Haslhofer that focuses on creating an automated approach for identifying useful user comments in a social media website. They use a machine learning classification algorithm (supervised learning) for this, and most of the paper talks about what features to pick for the algorithm. The authors focus on the website Flickr: The Commons, which is a website where people and organizations post historic photographs for which it is hoped that the website's users may comment useful information that they may know about the photo, such as the people in it, the place it was taken, and what event happened in it. In the paper it is stated that 'useful' comments will vary among websites. In their case study, a comment is useful if it adds supplemental information to an existing digital resource, which might be interesting for other users.
Jacob ChappellCS UndergraduateApril 8, 2015Middleboxes: Love 'em and Hate 'em (Video)
Abstract: The Internet has come a long way. Unfortunately, the model in which an end user connects to the Internet via an ISP still stands. ISP monopolies like Time Warner therefore hold all the keys to your traffic. In recent years, packet-inspecting and -modifying devices known as "middleboxes" have begun to pop up. Come learn about how middleboxes inhibit progress in the Internet and how users and protocol developers are fighting back.
Tingting YuCS FacultyApril 8, 2015Guided Test Generation for Finding Worst-Case Stack Usage in Embedded Systems (Video)
Abstract: Embedded systems are challenging to program correctly, because they use an interrupt-programming paradigm and run in resource-constrained environments. This situation leads to a class of faults for which we need customized verification techniques. One such class of faults, stack overflows, are caused when the combination of active methods and interrupt invocations on the stack grows too large, and these faults can lead to data loss and other significant device failures. Developers need to estimate the worst-case stack usage (WCSU) during system design, but determining the actual maximum value is known to be a hard problem. The state of the art for calculating WCSU uses static analysis; however this analysis has a tendency to over-approximate the potential stack, which can lead to wasted resources. Dynamic techniques such as random testing often under-approximate the WCSU. In this work, we present SimStack, a framework that utilizes a combination of static analysis and a genetic algorithm to search for WCSUs.
Xin LiPhD student, CS (Qian)April 15, 2015Low-Complexity Multi-Resource Packet Scheduling for Network Function Virtualization (Video)
Abstract: Network functions are widely deployed in modern networks. Various virtual network function instances can be consolidated into one physical middlebox. Packet processing for different flows consumes different hardware resources in the middlebox. Based on the fact that most Internet traffic is contributed by a small fraction of "elephant flows", a novel low-complexity and space-efficient packet-scheduling algorithm, Myopia, is proposed to support multi-resource fair sharing.
Sumaira ShamimMS student, CS (Griffioen)April 15, 2015Virtualization Technology and Docker (Video)
Abstract: This talk is an overview of different virtualization technologies and Docker. We describe how Docker works and how it differs from Virtual Machines.
Brian Asher, Jason Bishop, Mark Calchera, Taylor Mitchell, Ashley PoeCS499 studentsApril 22, 2015Measuring patient progress using a "Smart Chair"
Abstract: Over 330,000 THAs (hip replacements) and 710,000 TKAs (knee replacements) are performed each year. A difficult problem is finding objective measurements of progress or regression before and after these surgeries. The "Smart Chair" aims to solve this problem. The Smart Chair is a joint project sponsored by the University of Kentucky Hospital Center for Biomedical Engineering, split between two student teams. A team of five mechanical engineering students is responsible for designing the physical chair and sensors. This talk describes the work of the computer science team designing an embedded system to harvest the data and a front-end client system to process it.
Thomas Loy, Stephen Parsons, John WalkerCS499 studentsApril 22, 2015Visualizing layered image sets
Abstract: Inspired by a need to better understand how ancient manuscripts physically degrade over time, we are developing a tool to visualize layered sets of tiled images. Multiple layers, or photographs of the same object, can be viewed simultaneously. Previously when observing changes in between image layers, users had to flip between images. With only two layers, some side-by-side comparison is useful through a slider interface. However, such direct comparison is not possible with three or more layers. Our novel interface allows a user to visualize changes among any number of layers easily and without needing complex software tools such as Adobe Photoshop. The "flashlight" concept allows intuitive viewing of layered sets of tiled images.
Brent SealesChair, CSSeptember 2, 2015Welcome to the CS Department
Abstract: Dr. Seales will give a talk on the state of our department.
Anthony RiosPh.D. student (Kavuluru)Convolutional Neural Networks for Biomedical Text Classification: Application in Indexing Biomedical Articles
Abstract: Building high accuracy text classifiers is an important task in biomedicine given the wealth of information hidden in unstructured narratives such as research articles and clinical documents. In this presentation I will discuss how convolutional neural networks (CNNs) can outperform traditional approaches in biomedical text classification.
Jane HayesFaculty, CSSeptember 9, 2015Inherent Characteristics of Traceability Artifacts -- Less is More
Abstract: This paper describes ongoing work to characterize the inherent ease or “traceability” with which a textual artifact can be traced using an automated technique. Software traceability approaches use varied measures to build models that automatically recover links between pairs of natural language documents. Thus far, most of the approaches use a single-step model, such as logistic regression, to identify new trace links. However, such approaches require a large enough training set of both true and false trace links. Yet, the former are by far in the minority, which reduces the performance of such models. Therefore, this paper formulates the problem of identifying trace links as the problem of finding, for a given logistic regression model, the subsets of links in the training set giving the best accuracy (in terms of G-metric) on a test set. Using hill climbing with random restart for subset selection, we found that, for the ChangeStyle dataset, we can classify links with a precision of up to 40% and a recall of up to 66% using a training set as small as one true candidate link (out of 33) and 41 false links. To get better performance and learn the best possible logistic regression classifier, we must “discard” links in the trace dataset that increase noise to avoid learning with links that are not representative. This preliminary work is promising because it shows that few correct examples may perform better than several poor ones. It also shows which inherent characteristics of the artifacts make them good candidates to learn efficient traceability models automatically, i.e., it reveals their traceability.
Sergio Rivera P.Ph.D. student (Fei and Griffioen)Providing a High Level Abstraction for SDN Networks in GENI
Abstract: One problem in Software-Defined Networking (SDN) is that the end users need to map high level abstractions -- like the path a flow should take -- to a set of low level forwarding rules tailored to, and installed at, every switch along the path. Installing such rules manually is tedious and error prone, and writing a controller program to do it is equally, if not more, challenging. We propose a new set of tools that allow users (experimenters) to easily map their high level routing policies to low level OpenFlow rules, and to help users reverse engineer high level policies from the installed set of low level flow rules. The tools provide users with the abstraction of end-to-end flows that users can install, list, and delete. The tools automatically handle the details of computing and installing all the rules needed to implement end-to-end flows, and are also capable of identifying flows and, if desired, removing flows that already exist. The tools have been implemented as modules in the GENI Desktop providing users with a graphical interface to their flows. In addition, we have implemented a module to monitor the performance of flows that have been installed. We describe our prototype implementation and present performance numbers obtained via the service.
Brian PulitoIBM (hosted by Griffioen)September 16, 2015WebRTC: Real-Time Communications at Internet Speed
Abstract: What if real-time communications was born on the web? Would we use context instead of telephone numbers to initiate real-time interactions? Would quality and ubiquity be less important than flexibility and differentiation? WebRTC is changing the way people communicate in real-time. Whether it be Google Hangouts or a web startup, WebRTC is free, simple and coming to a web page near you. This discussion will focus on this emerging HTML5 standard, providing insights into how developers and businesses are using WebRTC to drive innovation in their Systems of Engagement.
Antonio CarzanigaUniv. of Southern Switzerland (hosted by Calvert)September 23, 2015Measuring the Mixing Time of a Network
Abstract: Mixing time is a global property of a network that indicates how fast a random walk gains independence from its starting point. Mixing time is an essential parameter for many distributed algorithms, but especially those based on gossip. In this talk I will present a completely decentralized algorithm to measure the mixing time of a network. The algorithm is based on an interesting application of a classic control-theoretic algorithm. In particular, the algorithm models the diffusion of information seen from each node in the network as the impulse response of a particular dynamic system. I will present the essential ideas behind the algorithm, as well as practical aspects of its design and implementation.
Frank A. RichardsonPh.D. studentDefense Strategies for Sybil Attacks on Social Networks
Abstract: Sybil defense schemes work by detecting local communities (i.e., clusters of nodes more tightly knit than the rest of the graph) around a trusted node. Networks with well-defined community structure, such as social networks, are inherently more vulnerable to Sybil attacks. Sybils can carefully target their social network links in order to make their attacks more effective. This presentation will briefly describe some recent tools for defending against Sybil Attacks.
Rama KavuluruFaculty, Biomedical Informatics & CSSeptember 30, 2015Analyzing the Moving Parts of a Large-Scale Multi-Label Text Classification Pipeline: Experiences in Indexing Biomedical Articles
Abstract: Multilabel classification deals with the problem of assigning multiple categories from a fixed label space to each input instance. In this talk I will discuss our experiences in configuring various components of a large scale multi-label text classification pipeline and the corresponding effects on its classification performance. Our final system came in 2nd place in one of the batches of the recently concluded BioASQ competition: http://bioasq.org/participate/third-challenge-winners
Huazhe WangPh.D. student (Qian)Practical Network-wide Packet Behavior Identification by AP Classifier
Abstract: Identifying the network-wide forwarding behaviors of a packet is essential for many network management applications, including rule verification, policy enforcement, traffic engineering, and fault localization. Current tools that can perform packet behavior identification either incur large time and memory costs or do not support real-time updates. In this talk, I will present AP Classifier, a control plane tool for packet behavior identification. AP Classifier is developed based on the concept of atomic predicates which can be used to characterize the forwarding behaviors of packets. Experiments using the data plane network state of two real networks show that the processing speed of AP Classifier is faster than existing tools by at least an order of magnitude. Furthermore, AP Classifier uses very small memory and is able to support real-time updates.
Zhaohong WangPh.D. student (Samson Cheung)October 7, 2015Secure Multiparty Computation and Applications
Abstract: In this talk, we provide a short tutorial on secure multi-party computation or Secure MPC for providing privacy protection of sensitive information in distributed processing of multimedia signals. Secure MPC is an active area of research in cryptology. In recent years, it has been successfully applied to solve many privacy protection problems in distributed signal processing, including face recognition, iris matching, image denoising, video surveillance, visualization, information retrieval, etc. Our goal is to introduce the core building blocks of Secure MPC that can be used to build sophisticated signal processing algorithms.
Zongming FeiFaculty, CSHeader Space Analysis: Static Checking For Networks
Abstract: This is a paper by Kazemian, Varghese and McKeown (Stanford & UCSD). Today’s networks typically carry or deploy dozens of protocols and mechanisms simultaneously such as MPLS, NAT, ACLs and route redistribution. Even when individual protocols function correctly, failures can arise from the complex interactions of their aggregate, requiring network administrators to be masters of detail. Our goal is to automatically find an important class of fail- ures, regardless of the protocols running, for both operational and experimental networks. To this end we developed a general and protocol-agnostic framework, called Header Space Analysis (HSA). Our formalism allows us to statically check network specifications and configurations to identify an important class of failures such as Reachability Failures, Forwarding Loops and Traffic Isolation and Leakage problems. In HSA, we look at the entire packet header as a concatenation of bits without any associated meaning. Each packet is a point in the {0,1}^L space where L is the maximum length of a packet header, and networking boxes transform packets from one point in the space to another point or set of points (multicast). We created a library of tools, called Hassel, to implement our framework, and used it to analyze a variety of networks and protocols.
Xudong LiuPh.D. student (Truszczynski)October 21, 2015Personalizability of Trip Planning
Abstract: I will talk about, on a high level, the R&D internship I had last summer in the Representation and Planning area at the Palo Alto Research Center. My work there was focused on the personalization aspect of trip planning, i.e., representing and reasoning with user constraints and preferences in a trip planner, and it was related to my graduate research here at UK. I will also talk about my experience in the bay area outside of the company.
Xinxin ZuoPh.D. student (Yang)Interactive Visual Hull Refinement for Specular and Transparent Object Surface Reconstruction
Abstract: 3D reconstruction of specular or transparent objects is still a challenging problem in computer vision. Due to their non-Lambertian surface reflectance properties, establishing correspondences becomes difficult. Instead of using additional active illumination, I will present our method using multi-view images captured with a hand-held camera. Since stereo correspondences are no longer valid in this case, we have developed a novel method based on visual hull. In this talk, I will introduce the basic geometric analysis of our method and the whole pipeline for 3D reconstruction of specular or transparent objects.
Clinton Woodson & Xue HanPh.D. students (Hayes and Yu)October 28, 2015Measuring Requirement Quality to Predict Testability
Abstract: Software bugs contribute to the cost of ownership for consumers in a software-driven society and can potentially lead to devastating failures. Software testing, including functional testing and structural testing, remains a common method for uncovering faults and assessing dependability of software systems. To enhance testing effectiveness, the developed artifacts (requirements, code) must be designed to be testable. Prior work has developed many approaches to address the testability of code when applied to structural testing, but to date no work has considered approaches for assessing and predicting testability of requirements to aid functional testing. In this work, we address requirement testability from the perspective of requirement understandability and quality using a machine learning and statistical analysis approach.
Qing ZhangPh.D. student (Yang)Fast Human Body Scanning and Auto Measurement
Abstract: In this talk, I will introduce a human 3D full body scanning system with a medical application for auto body measurement. Although acquiring high quality 3D data is not a novel research topic and can be achieved using various existing techniques, it is still nontrivial to build up a complete 3D human model without any user intervention, due to the body movement, data incompleteness and occlusions. To overcome such problems, our system uses a surrounding setup consisting of multiple high-speed structured-light scanners to take an almost complete scanning in one shot and then handles the data misalignment in a global non-rigid registration scheme, which provides a visual plausible 3D model with high resolution textures. Moreover, we developed a statistically human template fitting approach to fill missing data, and the fitted parametric model also provides robust human body measurement and landmark detection. Our qualitative and quantitative results will be shown in my talk.
GQ ZhangDirector, Institute of Biomedical InformaticsNovember 4, 2015From Computer Science to Translational Informatics: Examples and Lessons Learned
Abstract: This talk will present the defining characteristics of translational informatics, illustrated using specific research program examples. Thoughts on opportunity, value, challenge and potential pitfalls of team science, a key mode of operation for translational science, will be shared. Interfaces and synergies around the emerging topic of data science, from a translational and team science point of view, will be discussed. Relevant UK campus resources and infrastructure for advancing translational science will be overviewed.
Judy GoldsmithFaculty, CSNovember 11, 2015The Grace Hopper Celebration of Women in Computing 2015
Abstract: The Grace Hopper Celebration of Women in Computing is an annual conference, started in 1994. In 1994, 500 women attended. In October 2015, 12,000+ people attended. Wikipedia quotes the conference website as saying “The Grace Hopper Celebration consists of a combination of technical sessions and career sessions and includes a poster session, career fair, awards ceremony, and more. The conference features 650 presenters. Potential presenters submit proposals for panels, workshops, presentations, Birds of a Feather sessions, New Investigators papers, PhD Forum, and Poster Session, including ACM Student Research Competition.”
          Dr. Goldsmith was one of the 12,000+ attendees. She will describe the conference, give highlights of a few presentations, and describe the experience.
          The Grace Hopper Celebration of Women in Computing is presented by the Anita Borg Institute for Women in Technology and the Association for Computing Machinery.
Nathan Jacobs, Ryan Baltenberger, Mohammad T. Islam, Scott Workman and Tawfiq SalemFaculty and Ph.D. students, CSNovember 18, 2015Computer Vision Applications of Deep Convolutional Neural Networks
Abstract: For the past 5 years Deep Convolutional Neural Networks (CNNs) have been dramatically improving the state-of-the-art on a wide variety of computer vision problems, approaching, and often exceeding, human accuracy. These advances have been made possible by a combination of factors: massive datasets, faster processing hardware, larger memories, (relatively) easy-to-use software abstractions, and some seemingly simple low-level components. There are many exciting research directions currently being pursued: how do we design and train CNNs for specific tasks? how can we understand what these networks are really learning? and how can we make training CNNs easier? This talk provides a broad overview of CNNs and their use in computer vision, as well as several examples of research being conducted at the University of Kentucky Department of Computer Science.
Mirek TruszczynskiFaculty, CSDecember 2, 2015The Winograd Schema Challenge
Abstract: I will discuss an alternative to the Turing Test, known as the Winograd Schema Challenge. It shares some similarities with the original and it also has important differences. It involves responding to English sentences, and English-speaking adults have no difficulty with it. However, unlike the original, the subject is not required to engage in a conversation, and having access to a large corpus of English text might not be of help. In the talk, I will define the schema and present arguments suggesting its weaknesses. The presentation will be based on two papers,

The Winograd Schema Challenge, by Levesque, Davis and Morgenstern (Proceedings of KR 2012), and
The Winograd Schema Challenge and Reasoning about Correlation, by Bailey, Harrison, Lierler, Lifschitz and Michael (unpublished manuscript).
Ray HyattPh.D. student (Marek)A Current Security Threat Survey based on two prominent Security Bloggers
Abstract: A survey of current security threats for a six month period in 2015 as chronicled by two prominent security researcher's online blogs: Schneider on Security (Bruce Schneider) https://www.schneier.com/ and Krebs on Security (Brian Krebs) https://krebsonsecurity.com.
James HunsuckerM.S. student (Jaromczyk)January 27, 2016Making Modern Web Applications
Abstract: At this talk I will discuss the Single Page Application design model and the technologies behind it. We will also look at how this design is implemented in my masters project The Great Smoky Mountains Mobile Backcountry Companion
Xin LiPh.D. student (Qian)An NFV Orchestration Framework for Interference-free Policy Enforcement
Abstract: Network functions virtualization is a new paradigm to offer flexibility of software network function processing on demand. Policy enforcement satisfies network function policies that requires flows to traverse through given sequences of network functions. We summarize three desired properties of virtual network function placement, namely policy enforcement, interference freedom, and resource isolation. However, none of existing solutions can satisfy all of them. In this paper, we present a novel SDN-based NFV orchestration framework, called APPLE, to enforce network function policies while providing the above properties.
Licong CuiDivision of Biomedical Informatics, UK, Faculty candidateFebruary 3, 2016Ontology Quality Assurance and Data Integration in Biomedicine ( Video Part 1, Part 2)
Abstract: Health-related data is growing rapidly and represents a valuable source of under-utilized biomedical knowledge. Such data includes structured phenotypic data and signal data captured in clinical settings, free-text clinical notes, and unstructured and semi-structured health-related information on the web. In order to take advantage of such data to advance biomedical discovery and improve health care, we must overcome challenges in translating such data into actionable information. Methods and techniques for addressing such challenges include but are not limited to biomedical ontology quality assurance, information extraction and text mining, data integration and management, information retrieval, and evaluation of information retrieval interfaces. In this talk, I will focus on two themes: (1) quality assurance of biomedical ontologies; and (2) biomedical data integration, management, and retrieval. First, I will introduce a big data approach to auditing 'big biomedical knowledge' such as the Systemized Nomenclature of Medicine - Clinical Terms (SNOMED CT) and mining abnormal patterns. Second, I will present an ontology-guided approach to integrating and retrieving biomedical data for an informatics infrastructure used in two NIH-funded national centers.
Gokhan BakalPh.D. student (Kavuluru)February 10, 2016Predicting Treatment Relations with Semantic Patterns over Biomedical Knowledge Graphs
Abstract: In this talk, we will present an intuitive approach that exploits path patterns over imprecise biomedical knowledge graphs to predict treatment relations between biomedical entities. Our results show that graph based approaches can strongly complement natural language processing techniques in biomedical relation extraction.
Dean CrockettUndergrad (Jaromczyk)The UK ACM: Bringing Code Out of the Classroom
Abstract: The UK chapter of the Association for Computing Machinery is a student organization, dedicated to building a culture on campus for computer science students. Over the past year, our members have made enormous strides bringing developers and engineers together into an active and passionate community. Since last spring, our chapter has more than doubled in size- now over 50 students strong. Our members form a collaborative group dedicated to bettering themselves as students, as programmers, and as employees. In this talk, I will cover the programs and events that have led to our chapter's successful year, and how they have made an impact on the computer science community here at UK. These events include Startup Weekend, Local Hack Day, and CatHacks, Kentucky's only national college hackathon. I will also discuss the coming events with which we hope to continue our expansion, and the reasons why we encourage students to get involved with our chapter.
Juw Won ParkUniv. of Louisville (hosted by Liu)February 17, 2016Big Data and Systems Biology Approaches to Explore Transcriptome and RNA Regulatory Networks
Abstract: The high-throughput RNA sequencing (RNA-seq) has provided a powerful tool for transcriptome analysis. Due to the dramatic decrease in cost, it became quite common to generate millions and billions of sequence reads from a given RNA sample to identify/quantify the abundance of mRNA isoforms across the entire transcriptome. Large consortium projects also started generating massive RNA-seq data on tens of thousands of samples along with various other genomic/phenotypic measurements. However, the extraordinary potentials embedded in these large, complex datasets cannot be fully recognized without the development of proper methods for analyzing these big transcriptome and genome datasets. In this presentation, I will discuss my recent efforts in developing computational and statistical methods for the analysis of transcriptome isoform complexity and RNA regulatory networks using RNA-seq datasets.
Jamie PaytonUniversity of North Carolina at Charlotte, faculty candidateFebruary 24, 2016, 3:00pmPervasive Sensing: From Protocols to People
Abstract: Pervasive sensing can enhance our understanding of the world around us and enables a wide range of context-aware applications. Applications that rely on such data should be provided with an understanding of the quality of information acquired from remote sensors. In the first part of my talk, I will describe our self-assessing query protocols, which report the fidelity achieved during distributed execution over a wireless sensor network. In the second part of my talk, I will describe how the vast mobile sensor network of people with smartphones can be used to collect, analyze, and share data about the surrounding environment and human experiences at an unprecedented scale, without requiring the purchase of specialized sensors or the installation, administration, and maintenance of a wireless sensor network infrastructure. This introduction of humans into the pervasive sensing loop brings new research challenges. I will address the issues of characterizing the quality of information received from people in crowdsensing campaigns and motivating users to contribute data that meets quality of information requirements.
Richard SouvenirUniversity of North Carolina at Charlotte, faculty candidate4:00pmWeakly Supervised Learning for Image and Video Analysis
Abstract: Many modern computer vision methods rely on large-scale labeled datasets to train supervised algorithms. Due to the proliferation of cameras and ease with which images and videos can be stored and shared, amassing large datasets for a variety of problems is relatively easy. However, obtaining ground truth annotations at a large scale usually involves crowdsourcing or other expensive and/or potentially inaccurate methods. In some cases, we can take advantage of the inherent structure of natural image sets and sidestep the costs of curating large, annotated datasets. In this talk, I will describe problems that can be addressed in weakly supervised settings, where the data labels are missing, noisy, and/or ambiguous. This talk will cover three of our recent methods for image and video analysis: (1) human action recognition in multi-camera networks that leverages ambiguous data for recognizing actions and dynamic viewpoint selection; (2) label correction for large-scale image sets; and (3) semi-supervised multi-output image manifold regression for segmentation and pose estimation. These methods are components of interdisciplinary collaborative projects with architects, ethnographers, and physicians.
Neil MooreCS, First-Year Engineering Program FYE faculty candidateMarch 2, 2016Why the Grass is Greener: Bioinformatical Analysis of Fungal Endophytes of Grasses
Abstract: Fungi in the genus Epichloë, because they form symbiotic relationships with grasses used as crops, as forage, and as ornamentation, have a great agriculturally significance. Epichloë festucae in particular has a unique connection to agriculture in Kentucky: It is responsible for the notable hardiness and drought-tolerance of the grass strain 'Kentucky 31 Tall Fescue' (which you may well have in your lawn), but also for the initially unexpected toxicity of this grass to cattle and other livestock.
In an effort to understand the biology behind E. festucae and other fungal endophytes of grasses, the Fungal Endophytes Genome Project was establised as a large-scale collaborative project to investigate the molecular biology, host interactions, and evolution of Epichloë and related genera. The project, which includes researchers in Plant Pathology, Computer Science, Statistics, and other fields both at UK and throughout the world, has sequenced the genomes of over fifty different strains of fungi. Collecting data is not enough, though: bioinformatical analysis is vital for bridging the gap between sequencing and understanding. In this talk I will discuss my work as a bioinformaticist with the Endophytes project, including but not limited to ongoing research on analyzing evolutionary relationships among organisms and among those organisms' genes.
Nivan FerreiraUniversity of Arizona, faculty candidateMarch 9, 2016Interactive Visualization Techniques for Urban Data Analysis
Abstract: The explosion in the volume of data about urban environments has opened up opportunities to better inform both policy and administration, and thereby to help governments to overcome constant challenges of improving/increasing the quality of public services and promoting sustainable development. By taking advantage of the modern computer graphics and the power of the human visual system, interactive visualization techniques have been shown to be powerful tools that help making sense of large collections of data. In this talk, I will describe recent data visualization techniques designed to allow analysts to interactively explore and analyze large collections of urban data. These techniques include visual and algorithmic aspects and have been applied to help domain experts in the fields of urban planning, transportation engineering, and architecture.
Ye YuPh.D. student (Qian)March 23, 2016Fast Hashing and CONCISE Forwarding Information Base
Abstract: We propose a Concise hashing scheme that can be used for the classification query problem: maintain a group of disjoint sets, for each query, given a particular element that belongs to the union of the sets, return the index of the set that contains the element. Compared to other solutions such as stl::map and Cuckoo Hashing, our algorithm uses much smaller memory and only requires worst case constant lookup time. Using this algorithm, we develop and implement a forwarding information base (FIB) of location-independent names. Experimental results show that Concise uses significantly smaller memory to achieve faster name query speed compared to existing FIBs for name switching.
Zongming FeiFaculty, CSGo & AlphaGo
Abstract: In March 2016, the AlphaGo program developed by Google DeepMind in London beat Lee Sedol of South Korea in a five-game match (4 to 1). This is the the first time a computer program has beaten a 9-dan prefessional Go player and has reignited the debate of whether machine intelligence will surpass human intelligence. This talk will give an introduction to the game of Go and the AlphaGo program. It will discuss the search architecture and deep convolutional neural networks used by the AlphaGo program. Here is a link for playing Go http://playgo.to/iwtg/en/ .
Pat WhitlowDirector, Office of Nationally Competitive Awards, UKMarch 30, 2016External Scholarships for Undergraduate and Graduate Students
Abstract: In this talk, Dr. Whitlow will tell you how to get external money to support your undergraduate and graduate studies. There are many nationally competitive scholarships and fellowships that are funded by sources independent of the University of Kentucky including non-profit groups, government agencies, and companies. They are definitely some valuable resources you should explore.
Christina Campbell, Mami HayashidaUndergrad and M.S. StudentsTRIWIC Conference 2016
Abstract: The Tri-State Women in Computing Conference (TRIWIC) is a a regional ACM-W Celebration of Women in Computing. It is a small conference that has been growing in popularity and attendance for a few years. The goal of the conference is to provide an opportunity for women from Kentucky, greater Cincinnati and surrounding areas to meet women in their fields and receive mentoring and leadership from senior women.
Christina Campbell and Mami Hayashida were among the six UK students who attend the conference in late February. They will discuss the conference, their reasons for attending, notable speakers, and their personal takeaways from the experience.
Xue HanGrad Student (Hayes and Yu)April 6, 2016, 4:00-4:30Predicting Testability of Concurrent Programs
Abstract: Concurrent programs are difficult to test due to their inherent non-determinism. To address the nondeterminism problem, testing often requires the exploration of thread schedules of a program; this can be time-consuming for testing real-world programs. We believe that testing resources can be distributed more effectively if testability of concurrent programs can be estimated, so that developers can focus on exploring the low testable code. Voas introduces a notion of testability as the probability that a test case will fail if the program has a fault, in which testability can be measured based on fault-based testing and mutation analysis. Much research has been proposed to analyze testability and predict defects for sequential programs, but to date, no work has considered testability prediction for concurrent programs, with program characteristics distinguished from sequential programs. In this talk, we present an approach to predict testability of concurrent programs at the function level. We propose a set of novel static code metrics based on the unique properties of concurrent programs. To evaluate the performance of our approach, we build a family of testability prediction models combining both static metrics and a test suite metric and apply it to real projects. Our empirical study reveals that our approach is more accurate than existing sequential program metrics.
Clinton WoodsonGrad Student (Hayes and Yu)4:30-4:45An Introduction to TraceLab
Abstract: I will show a brief overview of the TraceLab workbench for Software Engineering tracing experiments, including a demo and talk about component creation.
Tarannum ZamanGrad Student (Hayes and Yu)4:45-5:00An Introduction to PIN instrumentation framework
Abstract: Pin is a dynamic binary instrumentation framework for the IA-32 and x86-64 instruction-set architectures that enables the creation of dynamic program analysis tools. The tools created using Pin, called Pintools, can be used to perform program analysis on user space applications in Linux and Windows. The instrumentation is performed at at run time on the compiled binaries and thus requires no recompiling of source code. Pin provides a rich API that abstracts away the underlying instruction-set idiosyncrasies and allows context information such as register contents to be passed to the injected code as parameters. In this talk, we will demo several examples on how to write Pintools to instrument and monitor program executions. We will then show our recent work on using Pin to detect system-level data races.
Roman YampolskiyUniv. of Louisville (hosted by Goldsmith)April 13, 2016Cyber Security and Artificial Intelligence
Abstract: This is a department colloquium, not a Keeping Current seminar. Dr. Roman Yampolskiy, an Associate Professor at the Computer Engineering and Computer Science department of the University of Louisville, will introduce audience to his research on current and future Cyber Security challenges. Particular topics covered in the lecture will include: 1) Biometrics - Human identity recognition and verification. 2) Artimetrics - a field of study aimed at identifying, classifying and authenticating robots, software and virtual reality agents for security, customization and other purposes. 3) Forensic recovery of data encoded in DNA. 4) Bot prevention via reversed Turing Tests. 5) Security and Safety of Artificially Intelligent Systems.
Victor MarekFaculty, CSApril 20, 2016Partition Property for Pythagorean Triples
Abstract: A Pythagorean triple is a triple of positive integers (x,y,z) so that x^2 + y^2 = z^2.
An old conjecture of Erdos and Graham was that for any coloring of the set of all integers, N, into a finite number of colors, there is a monochromatic Pythagorean triple.
The conjecture is not settled as yet after something like 50 years of being proposed. However, if we limit the number of colors to two (i.e. decompose N in the union of N1 and N2) this limited conjecture turns out to be true. Specifically, the number 7825 has the property that for any coloring of [1..7825] with two colors there is a monochromatic Pythagorean triple. Moreover there is a coloring of [1..7824] with two colors without a monochromatic Pythagorean triple.
Erdos and Graham offered $500 for the solution of full conjecture. When this did not happen, R. Graham offered $100 for solving the 2-coloring problem described above. Now, this limited conjecture is solved in positive.
Distinction between the result described above and similar results on so-called Ramsey numbers and van der Waerden numbers (obtained previously by McKay and Radziszowski and by Kouril) is that the reported work is done using so-called SAT solver, and is supported by computer-checkable proof.
This talk reports joint work with M. Heule of the University of Texas and O. Kullmann of the University of Swansea.
The talk is elementary, in the sense that (almost) all concepts will be comprehensible to individuals with the knowledge of the material of CS375.
Brent SealesChair, CSAugust 31, 2016Welcome to the CS Department! (Video)
Raphael FinkelFaculty, CSWhat I did during my Sabbatical (Video)
Abstract: I spent my Sabbatical in Bandung, Indonesia and Guildford, England. I'll talk about my work in supporting linguistic research, touching on paradigm functional morphology, network morphology, and Kratylos (unified linguistic corpora from diverse data sources).
Corrine ElliottCS Undergraduate (Liu)September 7, 2016Unsupervised identification of vital, kingdom-specific residues belonging to catalytically inactive protein domains
Abstract: Biological researchers have proposed the existence of protein domains specific to individual taxonomic kingdoms of organism that do not participate directly in catalytic activity and yet are essential to genetic complementation of loss-of-function mutations. Under the scope of this project, we seek to identify residues constituting these so-called “hinge domains,” as gleaned from a database of squalene-synthase sequences reported for a variety of organisms across the taxonomic kingdoms. As the project progresses, we hope to expand its scope to incorporate additional proteins ubiquitous to multiple taxonomic kingdoms with the goal of identifying promising avenues for future experimental study.
Raphael FinkelFaculty, CS File systems in Unix
Abstract: I will briefly show how file systems are structured, then introduce the concepts of journaling, RAID, and the ZFS file system.
Raphael FinkelFaculty, CSSeptember 14, 2016A multilingual OCR program
Abstract: I will demonstrate the OCR program I wrote.
Jeremy ReedPhD student, CS (Finkel) An algorithm for OCR segmentation using a GPU
Abstract: This talk concentrates on my SegRec algorithm for segmenting images into regions containing a single glyph. The algorithm is designed to be highly parallel so it runs fast on a graphical processing unit (GPU).
Michel RegenwetterVisiting scholar (University of Illinois)September 21, 2016The construct-behavior gap in behavioral decision research: A challenge beyond replicability (1 hour)
Abstract: Behavioral decision research compares theoretical constructs such as preferences to behavior such as observed choices. Three fairly common links from constructs to behavior are 1) to tally, across participants and decision problems, the number of choices consistent with one predicted pattern of pairwise preferences, 2) to compare what most people choose in each decision problem against a predicted preference pattern, or, 3) to enumerate the decision problems in which two experimental conditions generate a one-sided significant difference in choice frequency `consistent' with the theory. While simple, these theoretical links are heuristics. They are subject to well-known reasoning fallacies, most notably the fallacy of sweeping generalization and the fallacy of composition. No amount of replication can alleviate these fallacies. On the contrary, reiterating logically inconsistent theoretical reasoning over and again across studies obfuscates science.
Cody Barnes, Ethan ToneyCS Undergraduate (Jaromczyk)September 28, 2016Network architecture in the telemetry system for the UK Solar Car
Abstract: A solar car is an electric vehicle that runs entirely on solar energy. Designing, building and racing solar cars has been a longstanding worldwide challenge for engineering and computer science students. The goal is to design devices that use sustainable energy sources. The challenges in designing the computer system that supports the solar car are to ensure that: (1) energy consumption is minimal, (2) data collection is reliable, (3) the network system is secure, and (4) the implementation is not overly complex. We compare three protocols: a simple USB-based protocol, CAN, and Ethernet. We also report on experiences at FedCSIS, an international conference in Poland.
Nathaniel Serpico, Bailey PhanCS Undergraduate (Jaromczyk)MutChart: verifying candidate mutations in a genome
Abstract: DNA is transcribed into RNA, which in turn encodes the instructions for synthesizing proteins, which then provide vital functionality to the body. Any change (mutation) in DNA may affect the protein it encodes, possibly leading to alteration of protein function, which in turn can lead to disease. Locating mutations is therefore important. Due to inherent inaccuracies in current gene-sequencing technologies, biologists must manually verify automatically discovered genetic mutations. We have developed MutChart as a means to expedite verifying mutations through low quality read masking and effective data visualization. MutChart takes genetic sequencing data as input, then processes and aligns it. It then presents the user a set of easily verifiable charts that are curated by a “mutation matrix” and a set of peripheral navigation options. The project uses Javascript, Chart.js, jQuery, Python3, Flask, and BLAST.
Gábor ErdélyiVisiting scholar (University of Siegen, Germany)October 5, 2016Preferences and Manipulative Actions in Elections (Slides) (Video1 Video2)
Abstract: This talk aims to provide a general overview of the computational aspects of elections. Its main focus will be on the complexity of problems that model various ways of tampering with the outcome of an election, notably manipulation, control, and bribery. Each of these actions are very different in nature: while manipulation concerns the insincere behavior on the part of one or several voters, in control settings the election's chair seeks to change the outcome of an election by making structural changes in the election such as adding/deleting/partitioning either candidates or voters. Finally, bribery is given if an external agent attempts to change one or several voters' votes. These manipulative actions will be examined in the context of several voting rules and election structures like single-peaked and nearly single-peaked elections or partial profiles.
Jimmy Jack JohnsonPhD Student, CS (Finkel)October 12, 2016Adding persistence to an object-oriented programming language (Video)
Yi ZhangPhD Student, CS (Liu) Deep learning for splicing code (Video)
Kendall Weihe, Seth ParkerCS UndergraduateOctober 19, 2016Deep learning for the scroll project (1 hour) (Video)
Abstract: The Scrolls Project is an interdisciplinary research project at the University of Kentucky focused on virtually opening and reading extremely damaged scrolls, manuscripts, and books. We recently succeeded in virtually unwrapping the En-Gedi scroll, an extremely damaged first-century scroll from Israel, and revealed it to be a biblical text. In this talk, we discuss our technical approach, the remaining challenges, and our plans for turning research projects into open-source tools.
Nima SeyedtalebiGrad student, CSOctober 26, 2016Graph databases (1 hour)
Abstract: Graph database management systems, or graph databases, are becoming increasingly popular tools for managing and analyzing connected data. Graph databases offer significant advantages over both relational and other varieties of NoSQL databases for some applications, especially where connections in the data are important. I will provide an introduction to the labeled-property graph data model, discuss the advantages of using a graph database, and compare the architecture, performance, and features of three popular graph database management systems: Neo4J, OrientDB and Titan.
Kendall WeiheCS UndergraduateNovember 2, 2016Introduction to deep learning and Google's Tensorflow API (Video)
Abstract: Since the availability of Big Data and cheaper hardware, deep learning has entered many branches of software engineering. From self driving cars, to speech recognition and generation, to automatic game playing, deep learning is being applied in many corners of software engineering. I will introduce deep learning and present a broad overview of Google’s deep learning API, Tensorflow. I will cover the following networks: multilayered perceptrons, long-short term memory networks, and, if time permits, convolutional neural networks. See this free course for more details.
Everett BoyerMS Student, CS (Finkel) A comparison of graphing packages for web pages (web page with examples) (Video)
Abstract: There are many types of plotting libraries for web sites, mostly in JavaScript. I present an overview of a large selection of them, and then provide specific examples of a simple graph in D3, Plot.ly, gnuplot, and Google Charts. I will end with an example of a problem I have encountered in my work as a Research Assistant.
Lindsey GillaspieCS UndergraduateNovember 9, 2016Impressions on the Grace Hopper Women in Computing Celebration (Video)
Abstract: After attending the Grace Hopper Celebration of Women in Computing a couple weeks ago, I am more inspired than ever to connect women in computing and make a positive difference at UK that will continue for many years. I will discuss my experience at Grace Hopper, what ACM-W is, and how this will affect the college.
Arthur Silveira, Ethan Gill, Ethan SmithCS Undergraduates How to Get Hired by Google/apple/Insert your Dream Company Here (Video1 Video2)
Abstract: We describe our paths to jobs with Google and similar companies. We discuss work experience at companies such as HP, Lexmark, and Automatic as well as how we prepared for tests and interviews with the Googles of the world. Feel free to share some of your information on this topic during the open session at the end. The UK Computer Science Industry Partner Association provides pizza for this event
Elizabeth HolbrookLexmarkNovember 16, 2016Secure Software Engineering (1 hour)
Abstract: Prevention, detection, and mitigation of software security threats plays a vital role in the development of both consumer and enterprise software products. As we move into an increasingly connected world through mobile technology, digital workflow management, and the internet of things, new techniques must be developed to ensure that software security remains top of mind both through the software development lifecycle and after software is deployed. This talk will examine secure software development from requirements engineering to threat analysis.
Ryan RiddleCS StudentNovember 30, 2016How does a distributed hash table work? (Video)
Abstract: A distributed hash table (DHT) is a decentralized data structure that provides a lookup service similar to a hash table. DHTs can be used as infrastructure for building network services. In particular, DHTs are an important component of many decentralized applications such as distributed databases, distributed file systems, and peer-to-peer networks. In this presentation, we focus on Chord, a distributed hash table protocol. We discuss an implementation of the Chord protocol, including how data is mapped to a node, how to find the node that contains specific datum, and how the network handles nodes that are joining or leaving.
Orhan AbarPhD Student (Kavuluru) Interestingness Measures for Mining Clinical Associations (Video)
Abstract: Using an EMR dataset, we conduct a thorough evaluation of dozens of interestingness measures proposed in the data mining literature, including some new composite measures. Using cumulative relevance metrics from information retrieval, we compare these interestingness measures against human judgments obtained from a practicing psychiatrist for association rules involving the depressive disorders class as the consequent. Our results not only reveal new interesting associations for depressive disorders but also indicate classes of interestingness measures that weight rule novelty and statistical strength in contrasting ways.
Jim GriffioenFaculty, CSJanuary 11, 2017VIPlanes: Supporting privileged traffic with software-defined networks (Video)
Abstract: We present a novel way to support transmitting large data sets between campus computers and the internet by selectively bypassing firewalls and other middleboxes without moving nodes outside the firewall into a "campus science DMZ". Instead, we use software defined network (SDN) capabilities to intercept approved science flows and route them around performance-limiting middleboxes.
Xue HanPhD student, CS (Yu) An empirical study of performance bugs for highly configurable software systems (Video)
Abstract: Modern computer systems are highly configurable, complicating testing and debugging. The size of the configuration space makes it hard to achieve software quality. Performance is a key aspect of quality; bugs can cause significant performance degradation. Performance bugs are difficult to expose, because detecting them requires specific inputs and a specific execution environment (such as configuration). Researchers have developed techniques to analyze, quantify, detect, and fix performance bugs, but these techniques may not be effective in highly configurable systems. We study the challenges that configurability creates for handling performance bugs. We consider 113 real-world performance bugs, randomly sampled from three highly-configurable open-source projects: Apache, MySQL and Firefox. We enumerate lessons learned and provide guidance in handling performance bugs in highly configurable software systems.
Patricia WhitlowDirector, Office of Nationally Competitive Awards, UKJanuary 18, 2017External Scholarships for Undergraduate and Graduate Students (Video)
Abstract: In this talk, Dr. Whitlow will tell you how to get external money to support your undergraduate and graduate studies. There are many nationally competitive scholarships and fellowships that are funded by sources independent of the University of Kentucky including non-profit groups, government agencies, and companies. They are definitely some valuable resources you should explore.
Aidan ShafranUndergrad, CS Rendering vector-based text on a GPU (Video)
Abstract: Nearly all computer text rendering is done on the CPU. In situations where text must be displayed along with other GPU-rendered content (games, projection mapping, hardware acceleration, etc.), programmers usually display text from a pre-rendered bitmap atlas uploaded to the GPU. This strategy limits the ability to use varying fonts, bold/italics, or, most importantly, zoom or resize. Vector-based text rendering does not suffer from these limitations but has only recently become viable on a GPU. I describe my software to render live-editable vector text on the GPU, supporting varying zoom, multiple fonts, colors, and effects. Although it is slower than CPU-rendered text, it is a large improvement over bitmap atlases.
Licong CuiFaculty, CSJanuary 25, 2017Mining Non-Lattice Subgraphs for Detecting Missing Hierarchical Relations and Concepts in SNOMED CT (Video)
Abstract: We introduce a hybrid structural-lexical method for scalable and systematic discovery of missing hierarchical relations and concepts in SNOMED CT, a database of health terminology. We extract all non-lattice subgraphs using a scalable MapReduce algorithm, then identify four lexical patterns among the extracted non-lattice subgraphs, which indicate missing hierarchical relations. We associate each lexical pattern with a specific type of error. We evaluated a random sample of 100 small subgraphs; they all contained errors confirmed by experts. The most frequent type of error was a missing 'is-a' relation due to incomplete or inconsistent modeling.
Judy GoldsmithFaculty, CS Introduction to teaching AI Ethics; Why it is Important to Teach Ethics to AI Practitioners (Video)
Abstract: These are two short talks that Dr. Goldsmith will present at AAAI in early February on the interplay between Artificial Intelligence and Ethics.
Raphael FinkelFaculty, CSFebruary 1, 2017The make utility (Video)
Abstract: Although it has been around a long time, make is still a great way to record the steps needed in preparing outputs, whether results of compilation or documents. Makefiles let you specify interdependencies of files, so steps are only executed if something a prerequisite file has changed. I use it heavily. In this talk, I'll describe some of make's features.
Jacob ChappellAlumnus, CS Use Maven instead of make for Java (Video)
Abstract: As software projects grow in size and complexity, maintaining makefiles tends to become painful and error-prone. This situation is particularly severe in Java projects, where many classes have complicated dependencies, both internal and external to the project. In this presentation, I will introduce Apache Maven, a project-management tool tailored towards Java projects. Maven is able to help programmers automate many stages of the development process, such as building, testing, and packaging. Most large Java software projects use Maven, so it may prove to be a valuable tool to add to your repertoire.
Virgil BarnardPhD student, CS (Klapper)February 8, 2017Constructing Neural Rings on Finite Sets of Abstract Objects (Video)
Abstract: I'll define Neural Rings and demonstrate them in Python. In mathematics, a ring consists of a set of values and two binary operations that generalize addition and multiplication. If the set is finite and the elements are instances of arbitrary classes, then two neural networks can be trained to act as those operations, that is, to map ordered pairs of objects in a way isomorphic to a finite ring with the same cardinality. I'll show how "object serialization", which translates an object instance into a byte string from which the original instance is recoverable, lets us extract features so we can construct the neural-network training data. I'll also discuss some of the implementation details of a user interface (Tkinter), constructing and training the neural networks (Pybrain), and rendering images to visualize the weights of the network during training (PIL).
Brian McNely, Lauren CagleFaculty in Writing, Rhetoric and Digital Studies The professional and technical writing program at UK (Video)
Abstract: We describe the undergraduate and (forthcoming) graduate programs in professional and technical writing at UK. Technical writing, as a field and practice, denotes both processes and products ― the various communication activities that professionals in technical fields conduct as part of their work, and the forms of documentation that help professionals share and stabilize their knowledge (from technical reports and proceedings papers to code commentary and wireframing). Since computer science and professional and technical writing involve successful communication and interaction with users, both fields can offer each other insights, particularly into user experience, usability, accessibility, user interface design, and help documentation.
Ethan Toney et al.Undergrads, CSFebruary 15, 2017University of Kentucky Solar Car Team Update (Video)
Abstract: The University of Kentucky Solar Car Team is a group of UK students who design, build, test, and race a solar electric vehicle. The team must solve many different engineering problems with conflicting design objectives and constraints. The work regularly challenges us to apply theoretical knowledge from the classroom to real-world situations. The team attends the biennial Innovators Educational Foundation (IEF) Solar Car Conference, where we meet other teams, request clarification on the regulations from the officials, and get useful information about important aspects regarding solar car design. We also make use of senior design projects. Past and current projects include development of a dynamometer, brake calipers and pedal assembly, real-time estimation of car parameters, and one post-doc project to create a new motor. Most of the Computer Science work on the car relates to monitoring and predicting the car’s state, embedded programming, and controlling the car’s various systems.
Luke MilesUndergrad, CS Network, Popularity and Social Cohesion: A Game-Theoretic Approach (Video)
Abstract: When will a group of people stay whole and when will it break into subgroups? We combine graph integrity and cooperative game theory to make an intuitive model of coalition forming in social networks. This is an AAAI '17 paper by Jiamou Liu and Ziheng Wei.
Raphael FinkelFaculty, CSFebruary 22, 2017System administration of CS computers (Video)
Abstract: We keep the CS computers in a consistent and secure state by several means. This talk shows how we use the System Administration Tool (SAT) to build configuration files for the Network File System (NFS), user logins, the Domain Name Service (DNS), and software packages. It then shows how we use Pulsar to monitor such indicators as CPU load and disk space, as well as detect configuration problems and intrusions. Finally, the talk describes how we use the fail2ban software and software-defined networking (SDN) to mitigate password-guessing attacks from outside campus.
Yu ZhaoPhD student, CS (Yu) FREDI: Robust RSS-based Ranging with Multipath Effect and Radio Interference (Video)
Abstract: Ranging based on Radio Signal Strength (RSS) is attractive for its low cost and easy deployment, but its accuracy is limited by multipath effects and radio interference. Well-known fingerprint approaches can deal with this limitation, but they introduce too much overhead in dynamic environments. We address the problem in a completely different direction. We propose a new ranging framework, called FREDI, that exploits frequency diversity to overcome the multi-path effect solely based on RSS measurements. We design an algorithm based on the Discrete Fourier Transformation (DFT) and prove that it has an optimal solution under ideal cases. We then revise the algorithm to be robust to measurement noise in practice. We have implemented and evaluated FREDI on the USRP-2 platform. Experimental results show it has superior performance compared with traditional methods.
Scott MeyersSoftware development consultantMarch 1, 2017CPU caches and why you should care
Jim GriffioenFaculty, CS High-Speed Science Flows: Coming To A Router Near You!
Abstract: Researchers are increasingly faced with the challenges of working with big data, ranging from downloading massive data sets, to processing the data, to exporting, sharing, or archiving the processed data. We have been developing new technology to enable high-speed transmission of big data sets across the UK campus network and have designed a local testbed network and prototype to demonstrate the viability of our approach. This talk will demonstrate capabilities of our new VIPlanes system and our testing and evaluation path moving forward.
Himanshu ThapliyalFaculty, ECEMarch 8, 2017Adiabatic Computing for Energy-Efficient and Secure IoT Devices (Video)
Abstract: With the emergence of the Internet of Things (IoT), there is an urgent need to design energy-efficient and secure IoT devices such as RFID chips and smart cards. Their encryption keys are susceptible to side-channel attacks. Among these attacks, the Differential Power Analysis (DPA) attack is one of the most prominent. DPA correlates the secret key with instantaneous power consumption when the device performs encryption or decryption. Any improvement in security leads to reduction in battery life. I introduce adiabatic computing, which recycles the charge stored in the load capacitor and operates efficiently at low frequencies. Adiabatic computing is a promising appoach for energy-efficient solutions to security challenges in IoT devices.
Kevin JoinerInstructor, CSMarch 22, 2017Data Conversion and Migration (Video1Video2)
Abstract: This talk will define data conversion and migration and show how it differs from other software engineering projects, including software-development life cycles. It will describe what skills are needed, what specialized tools are available, and career opportunities for recent graduates, including in the Lexington area.
Jin ChenFaculty, BioMedical InformaticsMarch 29, 2017Phenomics: the Next Opportunity (Video)
Abstract: Understanding the phenome is a key goal of biology and medicine. Phenotypic variation results from interactions between the genotype and the environment. The rapid development of phenotyping techniques provides us unprecedented opportunity to understand phenotypic characteristics. I will introduce our recent work on phenome data-quality control, outlier detection and clustering.
Raphael FinkelFaculty, CS What is Computer Science, anyhow? (Video)
Gabrielle AdkinsUndergrad, CSApril 12, 2017TraceLab: A Quick Look at How to Write Components
Abstract: This short talk will feature an overview of TraceLab, an empirical research framework, as well as a quick look at how to write TraceLab components using Java (and NetBeans).
Rashmie AbeysingheGrad student, CS Quality Assurance of NCI Thesaurus by Mining Structural-Lexical Patterns
Abstract: Quality assurance of biomedical terminologies such as the National Cancer Institute (NCI) Thesaurus is an essential part of the terminology management lifecycle. We investigate a structural-lexical approach based on non-lattice subgraphs to automatically identify missing hierarchical relations and missing concepts in the NCI Thesaurus. We mine six structural-lexical patterns exhibiting in non-lattice subgraphs: containment, union, intersection, union-intersection, inference-contradiction, and inference union. Each pattern indicates a potential specific type of error and suggests a potential type of remediation.
Xue HanPhD student, CS (Yu) A configuration-aware performance profiling and prediction framework
Abstract: Have you ever wondered how your configuration options could affect the performance of your program? For popular projects, you might find documentation that talks about performance tuning, but what if you have a less popular application without such documentation, but you still want to maximize performance by modifying configuration option values? Another way to get tips on performance tuning might be consulting with someone who has a lot of experience on the project, but what if you don't have such experts? This is where the framework comes to the rescue. I will talk about the contributions of the work, the overall design of the framework, and the technical choices made to construct the tool.
Shaila ZamanPhD student, CS SPMF — An Open Source Data Mining Library
Abstract: A total of 129 data-mining algorithms are implemented in this library. It includes algorithms for association-rule mining, itemset mining, sequential-pattern mining, sequential-rule mining, sequence prediction, periodic-pattern mining, high-utility pattern mining, clustering and classification, and time-series mining. The whole library is implemented in Java. SPMF can be used as a standalone program with a simple user interface or from the command line.
Bailey Phan, Nathaniel Serpico, Henry Uradu, Mathew RuffnerCS499 students (Piwowarski)April 19, 2017PortFolio ― a file collection and management system for assessments of academic courses
Abstract: PortFolio is a Web submission and file processing system that facilitates collection, processing and analysis of teaching materials and performance artifacts for assessment and evaluation of academic courses. The system provides a convenient interface for instructors who report their results, and for the evaluators who compile the materials, tabulate and analyze results, and build course portfolios semester after semester.
Zachary Anderson, Lindsey Gillaspie, Kristina ShafferCS499 students (Piwowarski) Scanner for Student IDs
Abstract: This project improves the data collection and retrieval process for all colleges during recruitment. The prospective student will be given a name tag at the beginning of the event. If the student is interested in a given college, the college will get the student's information by hovering the student's name tag over an NFC reader attachment. This information will then be stored in a database that the given college will be able to access at any time.
Brent SealesChair, CSAugust 30, 2017Welcome and Overview: The CS Department (Video)
Abstract: I will provide an overview of the UK CS Department and its faculty, facilities and programs, and point to some of our upcoming events for the fall semester.
Yu ZhaoPhD Student, CS (Tingting Yu)Pronto: Efficient Test Packet Generation for Dynamic Network Data Planes (Video)
Abstract: Traditional testing tools for network faults (ping, traceroute) often involve substantial manual effort to uncover faults. We present Pronto, an automated tool that generates test packets to exercise the entire network in a short time (several seconds) and can quickly react to rule changes due to network dynamics. Pronto minimizes the number of test packets by allowing a packet to test multiple rules at different switches. Performance evaluation shows that Pronto is faster than a recently developed tool by more than two orders of magnitude.
Brent HarrisonFaculty, CSSeptember 6, 2017Improving Human-AI Interaction (Video)
Abstract: I will discuss some of the ways that machine learning can be used to help bridge the gap between AI and humans by imbuing AI systems with a greater ability to understand and communicate with people. Specifically, I will be highlighting some of my recent work in developing artificial agents that can rationalize about their behavior, as well as work in which I use natural language to help teach artificial agents concepts that can generalize to new environments.
Hank DietzFaculty, ECEFrameless Imaging (Video)
Abstract: Visual data based on film was necessarily captured and displayed as either a static image or a time sequence of such images ― frames. This frame-based model still dominates in electronic imaging. However, it doesn't have to, and there are many advantages in moving to a frameless model. This talk will discuss some of the basic concepts, advantages, and implementation methods for frameless rendering and frameless image capture (TDCI: Time Domain Continuous Imaging)
Steven RoggenkampGrad Student, CSSeptember 13, 2017Greybeard's Guide to *nix, or, how I learned to love the command line (Video)
Abstract: The *nix command line (known as the "shell") formed the original means to interact with the operating system. Many people today are unaware of the power available to those who can use it due to the proliferation of graphical user interfaces. This talk will present six fundamental concepts that lead to mastery of this very powerful tool that should be in every computer scientist's toolbox.
Taylor EctonUndergrad Student, CSJenkins, and Regression Testing in the Continuous Integration Environment (Video)
Abstract: Continuous integration is a software-development practice in which developers frequently submit changes to version control. Several tools have been developed to aid in automated building and testing of projects as changes are committed. In this talk, I will briefly introduce the continuous integration server Jenkins, and then discuss my research on regression testing in the continuous integration development environment.
Siyao Johnny XuMS student, CSSeptember 20, 2017Matching algorithms for kidney exchanges (Video)
Abstract: The importance of kidney exchanges is discussed from a health as well as algorithmic perspective. Roth's idea of top trade cycle and chains is presented. The talk concludes with a brief discussion of some preliminary work being done in Australia.
Qiang Shawn ChengFaculty, Biomedical InformaticsSome Recent Results of Unsupervised Learning for High-Dimensional Data (Video)
Abstract: Diverse areas of scientific research and everyday life are now deluged with high-dimensional data. There is a need of techniques for finding patterns and discovering knowledge from such data effectively and efficiently. In this talk I will present some of our recent results on unsupervised learning for handling such data without knowing label information. We expect applications in biomedicine and healthcare.
Simone SilvestriFaculty, CSSeptember 27, 2017Minestrone: An overview of my research interests (Partial video)
Abstract: Minestrone is a humble Italian recipe, usually characterized by a long list of ingredients. This tasty dish well represents my heterogeneous research interests, as surveyed in this seminar. Specifically, we will discuss research problems at the intersection of Computer Science and Social Science, as well as Cyber-Physical-Human Systems, Disaster Response Networks, Smart Connected Communities, Unmanned Aerial Vehicles and others.
Brian CarlsonUndergrad, CSTaskwarrior (Video)
Abstract: Taskwarrior is a *nix command-line tool for flexible and fast, yet powerful todo lists. It allows tags, projects and sub-projects, user-defined traits, urgency ordering, burndown tracking, and many other useful features. I'll go over some of these features and how they've allowed me to manage my time more effectively.
Luke MilesUndergrad, CSOctober 4, 2017Anki (Video)
Abstract: Anki is software for creating and studying flash cards. It uses the power of spaced repetition to make remembering things easy. I would go over the science behind spaced repetition and give a tutorial on using Anki to improve learning from math and programming books.
Harrison InocencioUndergrad, CSBioinformatics Education using Cloud Computing (Video)
Abstract: During the summer of 2017, my research group and I developed a software suite that uses cloud computing to help manage and implement the Essentials of Next Generation Sequencing (NGS) Workshop. This presentation describes that system as well as the importance of cloud computing in Bioinformatics education.
Sally EllingsonFaculty, Biomedical InformaticsOctober 11, 2017Computational Polypharmacology: A Machine-Learning Approach (full hour)
Abstract: This is a department colloquium, not a Keeping Current seminar. Drug discovery is lengthy, expensive, and sometimes fatal. The state of the art includes machine-learning approaches. The goal of my work is to improve the prediction of novel drug safety and efficacy by increasing the accuracy of predicting polypharmacological networks, investigating how drugs interact with the entire proteome. We integrate traditional computational simulations of protein and drug interactions, cheminformatics features of drug-like molecules, and features describing individual proteins. Combining all these components should result in one model that vastly improves the accuracy of predicting the effects of new proteins and classes of drugs. I present initial work with kinases, a class of functionally related proteins.
Vijay ShahGrad Student, CS (Silvestri)October 18, 2017Designing Sustainable Smart and Connected Communities using Dynamic Spectrum Access (Video)
Abstract: For communication within sustainable Smart and Connected Communities (SCCs), energy efficiency is as important as quality of service (QoS). It's difficult to acheive both simultaneously because of competing demands posed by sensing modalities, lack of dedicated infrastructure, and sustainability constraints. Low-power short-range technologies don't achieve high QoS, but 3GPP technologies (LTE, LTE-A,GSM) face spectrum scarcity and cross technology interference. Dynamic Spectrum Access (DSA) can meet policy constraints and overcome spectrum scarcity. We show that DSA can also improve energy efficiency. We propose an architecture for SCCs that overlays a small-scale DSA network over legacy infrastructure. We exploit distinct electro-magnetic characteristics of various bands to match each message with a suitable band by solving a constrained optimization problem by a dynamic programming approach.
Ethan ToneyUndergrad, CSTesting with Mock, Spy, and Stub (Video)
Abstract: Mocking, stubbing, and spying on an application allow you to overwrite or verify its behavior. These techniques help you test code that needs some service that is out of your control. They can help you test part of your code base even if some other part is not yet working or even implemented. They have other benefits, too: modular test cases, good test performance, and easily tested failure paths.
Rashmie AbeysingheGrad student, CSOctober 25, 2017Auditing Subtype Inconsistencies among Gene Ontology Concepts (Video)
Abstract: Gene Ontology (GO) provides a controlled vocabulary for describing genes and related gene products. Due to the sheer size and complexity of GO, manual review to discover terminology defects is infeasible. We introduce a lexical-based inference approach to detect subtype (or is-a) inconsistencies among GO terms (i.e., biological concepts).
Caylin HickeyGrad Student, CSCeph: Open Source Cloud Storage (Video)
Abstract: Ceph is an open-source cloud-storage framework that presents heterogeneous storage as a large single storage environment with multiple access protocols. We compare the performance of Ceph with other open-source storage frameworks.
Walter ScheirerCS Faculty, Notre DameNovember 1, 2017Using Human Behavior and Brain Activity to Guide Machine Learning (full hour)
Abstract: This is a department colloquium, not a Keeping Current seminar. For many problems in computer vision, human learners are considerably better than machines. I will describe an advanced online psychometric testing platform that makes new kinds of annotation data available for learning. Then I will introduce a new technique for harnessing these new kinds of information ― "perceptual annotations" ― for support vector machines. Finally, I will describe a related technique uses fMRI recordings of the human brain to guide machine learning algorithms.
Daniel DoppUndergrad, CSNovember 8, 2017Mountains and Minds: Summer Undergrad Research at Montana State and the Biocreative Workshop (Video)
Abstract: This summer I worked as a full-time undergrad researcher at Montana State University in Bozeman MT through an NSF Research Experience for Undergrads (REU) program. I conducted research in Bioinformatics, working to create a pipeline for kinase-related document retrieval. I'll be talking about my research experience at MSU: unique things about working in Bozeman, things I learned throughout the research experience, and takeaways from the program. I'll also talk briefly about Biocreative, the workshop my research was structured around, which I presented in Bethesda MD as a direct result of the REU. Undergrads interested in summer research are encouraged to attend!
Raphael FinkelFaculty, CS The KRACK exploit (Slides, Video)
Abstract: I will describe the protocol weakness that leads to the recently revealed KRACK exploit of wireless communication.
Mirek TruszczyńskiCS FacultyNovember 15, 2017Fair allocation of goods (Video)
Abstract: The problem of fair division of divisible and indivisible goods have long been of interest to mathematicians, economists and political scientists. Because of its algorithmic aspects and applications in multi-agent systems, it has recently gained significant attention from computer scientists. I will introduce the problem in its two basic versions, fair allocation of a divisible commodity, and fair allocation of indivisible goods. I will discus some fundamental results and describe recent generalizations of the problem.
Jeff Hume and Jeremy EatonCS AlumniAre good grades good enough? What it takes to get a great job after graduation (Video)
Abstract: The 4.0 GPA is often heralded as the perfect resume builder, but is that what companies are really looking for? While good grades are crucial to acquiring a good job after college, most companies look beyond the transcript to find talent. It take more than all A’s to snag the dream job. Come learn what intangible qualities businesses are looking for in a STEM major. Jeff is a UK grad with over 26 years of IT experience with GE Appliances. Jeremy is a UK grad with a Bachelors in Computer Science and a Masters in Business Administration.
Michael CoxResearcher, Wright State Research InstituteNovember 29, 2017The Language of Goals: Facilitating cognitive partnerships between humans and machines (full hour)
Abstract: The concept of a cognitive partnership between humans and machines remains an aspiration rather than an achievement in the AI community. Impeding the vision of partnership is the large mismatch between the means, the representation, and the language of shared behavior and decisions. We claim that a solution lies not in the amount of data available or the level of optimization of performance, rather successful cognitive partnerships will arise from a common language of goals. We will review an approach to explainable cognitive systems that focuses on a set of common goal operations and argue that a goal-based metaphor of interaction will facilitate successful partnerships.
Raphael FinkelFaculty, CSJanuary 10, 2018 The Meltdown and Spectre vulnerabilities (Slides, Video)
Abstract: This last week researchers revealed a long-standing vulnerability in Intel processors that allows malicious code to read arbitrary memory addresses. I will discuss the vulnerability, showing how it works and what can be done about it.
Hana KhamfroushFaculty, CS Interdependent Networks (Video)
Abstract: I will discuss my research area, interdependent networks, and present an overview of the content of my course on this subject.
Corey BakerFaculty, CSJanuary 17, 2018Opportunistic Wireless Communication (Video)
Abstract: Our research looks at how to apply delay tolerant networks (DTNs), mobile ad-hoc networks (MANETs), and software defined networks (SDNs) to empower device-to-device (D2D) social networks for crowd sourcing information. Leveraging D2D communication provides complementary solutions to traditional networks, which are typically dependent upon centralized infrastructures such as the Internet. The goal of our research is to make data accessible in the midst of intermittent and poor connectivity while minimizing delay.
Greg WasilkowskiFaculty, CSMultivariate Decomposition Method (Video)
Abstract: We discuss the Multivariate Decomposition Method (MDM) for approximating integrals of functions of infinitely many variables. We present recent results on the worst-case superposition dimension and on constructing active sets. Under modest error demands, MDM is almost as efficient as quadrature for univariate integration. The presentation is based on papers co-authored with A. Gilbert, M. Gnewuch, M. Hefter, P. Kritzer, F. Y. Kuo, F. Pillichshammer, L. Plaskota, K. Ritter, I. H. Sloan, and H. Woźniakowski.
Owen McGrathCS undergraduateJanuary 24, 2018The Pi calculus and the Pict programming language (Slides, Video)
Abstract: Turing machines and the Lambda calculus both provide a mathematical background for programming languages, and both provide insight into new language constructs that make programming easier. However, in both functional and imperative programming languages, concurrency and multithreading are hard to do well. I will introduce the Pi calculus, which models programs as parallel communication across multiple channels, and the Pict programming language inspired by it.
Neil MooreFaculty, CSModern (post-2011) C++ (Slides, Video)
Abstract: C++ has grown over the years. I will discuss move semantics, rvalue references, constexpr, lambdas, and other features
Paul LintonStaff, CSJanuary 31, 2018How we saved ourselves from a reflection attack
Abstract: I will discuss the details of our experience with a current denial of service (DoS) attack. Although this attack is not directed towards us, we were adversely affected until we took appropriate action. I will present a detailed timeline of events and the steps we have taken to prevent future disruptions.
Demetrio ZourarakisAnalyst, KY Geographic Information Systems BranchGeographic Information Systems: From Big Data to Big Information (Slides, Video)
Abstract: The definition of Geographic Information Systems (GIS) includes software ― understood to include ‘code’ and data. Often, remote sensing is used to capture digital data that can be used to extract information. Some of the most commonly used geospatial datasets are related to terrain and imagery; these are possible candidates for what is known as “big data”. Their increasing file sizes place constant demands on storage and processing power, required for data exploitation for information extraction. This presentation focuses on the characteristics, derivatives and potential use of GIS layers resulting from recent acquisitions for Kentucky of aerial topographic LiDAR and multispectral imagery.
Ye YuPhD student, CS (Liu)February 7, 2018Finding Needles in the Network and Cloud Stack (full hour talk) (Video1 Video2)
Abstract: Finding a specific data object is a critical task in large and distributed computer systems. We present the Othello Hashing algorithm. Othello Hashing enables fast key-value lookups with very small memory. We have built multiple applications with Othello Hashing in multiple areas, including cloud computing, networked systems, and bioinformatics. Compared to existing solutions, these applications always demonstrate new functionalities, while achieving the fastest speed with lowest memory cost.
EveryoneFebruary 14, 2018Algorithm bake-off (Video1, Video2)
Abstract: Raphael Finkel: k-d trees. Jacob Chappell: De Casteljau's algorithm for generating Bezier curves (the winner!). Daniel Dopp: Fisher Yates shuffle algorithm. Aidan Shafran: Myers diff algorithm. Michael Huelsman: Bogosort. Zongming Fei: IP forwarding tables. Mirek Truszczyński: iterative mergesort; moving items to front of list. John Xu: Gale Shapley stable-marriage algorithm. Sagar Gandhi: Chan's convex-hull algorithm.
Xinan LiuCS PhD student (Liu)February 21, 2018Novel Computational Methods for Sequencing Data Analysis (full hour) (Video1Video2)
Bhushan Chitre, Jane Hayes and Alexander DekhtyarStudent and Faculty, CSFebruary 28, 2018Analysts Second-Guessing Themselves in Tracing Tasks Considered Harmful? A RETRO.NET Study (Video)
Abstract: Trace matrices are lynchpins for the development of mission- and safety-critical software systems and are useful for all software systems, yet automated methods for recovering trace links are far from perfect. This limitation makes the job of human analysts who must vet recovered trace links more difficult. Earlier studies suggest that certain analyst behaviors when performing trace recovery tasks lead to decreased accuracy of recovered trace relationships. We propose a three-step experimental study to: (a) determine if there really are behaviors that lead to errors of judgment for analysts, (b) enhance the requirements tracing software to curtail such behaviors, and (c) determine if curtailing such behaviors results in increased accuracy. We report on a preliminary study we undertook in which we modified the user interface of RETRO.NET to curtail two behaviors indicated by the earlier work. We report on observed results. We describe and discuss a major study of potentially unwanted analyst behaviors and present results of a preliminary study toward determining if curbing these behaviors with enhancements to tracing software leads to fewer human errors.
Raphael FinkelFaculty, CSArmor-plating SSL (Video)
Abstract: In a very informal talk, I will show how to use online tools to harden web servers against attack.
Licong CuiFaculty, CSMarch 7, 2018The MapReduce paradigm (Video)
Abstract: This talk will introduce the MapReduce paradigm and demonstrate some examples.
D. ManivannanFaculty, CSAlgorithms for Distributed Systems and Wireless Networks (Video)
Abstract: I will talk about some of the algorithms my group has developed for distributed systems and wireless networks.
VariousVariousInteresting CS-related videos
Abstract: Can Powerpoint emulate a Turing Machine? How do computer networks work, actually? Have you seen the classic "Sorting out Sorts" film? What can you learn in 12 minutes about cybersecurity? And time permitting, Chicken!
Brent HarrisonFaculty, CSMarch 28, 2018The past, present, and future of AI and storytelling (Video)
Abstract: Whether we know it or not, storytelling is an integral part of our daily lives. Stories are how we convey complex information, make sense of the world around us, and communicate with each other. This is why I believe that artificial intelligence systems will need to possess at least the basic ability to tell and understand stories in order to effectively interact with humans. In this talk I'll go over the exciting field of computational storytelling by discussing its past, present, and what new research directions the future may hold for it!
Simone SilvestriFaculty, CSA Network Tomography Approach for Traffic Monitoring in Smart Cities (Video)
Abstract: Traffic monitoring is a key enabler for several planning and management activities of a smart city. However, traditional techniques are often not cost-efficient, flexible, or scalable. We present an approach that does not rely on probe vehicles or GPS-based vehicle localization. Instead, it exploits a limited number of cameras at road intersections to measure car end-to-end traveling times. We model the problem within the theoretical framework of network tomography, inferring the traveling times of individual road segments. We deal with noisy measurements and unpredictable vehicle paths. We address optimally placing the monitoring cameras to maximize coverage and minimize inference error and cost. We provide extensive experimental assessment on the topology of downtown San Francisco, using real measurements obtained through the Google Maps APIs, as well as on realistic synthetic networks. Our approach provides a very low error in estimating the traveling times of more than 95% of all roads, even when as few as 20% of road intersections are equipped with cameras.
Tingting YuFaculty, CSApril 4, 2018An overview of software testing (Video)
Abstract: I will first present some of the most successful research performed in software testing since 2000. I will then present some of the challenges and future directions in this area. Finally, I will talk about several ongoing research projects in my group.
Nima SeyedtalebiGraduate student, CSApplications of knowledge representation to eCulture (Video)
Abstract: The Resource Description Framework (RDF) is an abstract model that is useful for representing facts about things in a way that is machine readable. This representation includes explicit semantic information that allows computers to make inferences or “understand” context. In this presentation, we give an overview of RDF and related technologies and examine two applications: sensor networks and eCulture (in the form of a virtual music library).
Judy GoldsmithFaculty, CSApril 11, 2018Broadening participation in computing (Video)
Abstract: It is likely that NSF CISE proposals will encourage or require activities that have been shown to increase the diversity of our student body. Come hear about that.
Ramakanth KavuluruFaculty, CS and BMIAlgorithmic bias and fair classification (Video)
Abstract: With data science being a key enabler these days, using data to make decisions that affect people's lives is becoming commonplace. This use poses ethical issues because machine predictions may simply be reinforcing biases in training data. In this talk, I will introduce the ideas of algorithmic bias and fair classification with examples and will hopefully convince you to be more circumspect when taking up data-science projects and careers.
Malik Conner, Benjamin Kistler, Collin Wheeler, Nicholas Reaves, Tricia Sallee, Sulav Khadka, Hannah Hatch, Ryan Parsley, Alexander Polus, Dillon Pulliam, Daniel HuffmanCS499 studentsApril 18, 2018Computer Aided Design for crash and crime-scene investigation (Video)
Abstract: This talk reports on a CS499 project to provide a mobile, desktop, and cloud application for crash and crime-scene recreation, storing captured data, sharing data, performing analysis, and simulating events.
Mark Noblin, Benton Clark, Emory HufbauerCS499 studentsMIMD On GPU (MOG) Clean-Up (Video)
Abstract: This talk reports on a CS499 project to clean up software that allows MIMD parallel code to run inside GPU hardware.
Sean WeaverUS Department of DefenseMay 2, 2018Satisfiability-based Set-Membership Filters (Slides)
Abstract: Set-membership filters provide a constant-time probabilistic test for whether large sets contain given elements. The most common such filter is the Bloom filter. This talk discusses the recently introduced Satisfiability (SAT) filter. Experimental results show that the SAT filter can be more than 99% efficient (i.e., achieve the information-theoretic limit) while also having a query speed comparable to the standard Bloom filter, making it practical for use with very large data sets.
Brent SealesChair, CSAugust 29, 2018Welcome and Overview of The CS Department (Video)
Abstract: I will provide an overview of the UK CS Department and its faculty, facilities and programs, and point to some of our upcoming events for the fall semester.
Xue HanPhD Student (Yu)PerfLearner: Learning from Bug Reports to Understand and Generate Performance Test Frames (Video)
Abstract: Software performance is important to ensure the quality of software products. Performance bugs (programming errors that cause significant performance degradation) can lead to slow systems and poor user experience. I will present PerfLearner, an automated performance-testing tool we have designed and implemented. PerfLerner combines natural-language processing and dynamic program analysis to extract execution commands and input parameters from descriptions of performance bug reports to generate test frames that guide performance test-case generation.
Jared Payne, Erin Combs, Jane HayesFaculty and students, CSSeptember 5, 2018Multi-user Input in Determining Answer Sets (MIDAS) (Video)
Abstract: Empirical validation is an important component of requirements-engineering research. Many researchers develop a gold standard against which to compare techniques they have developed, calculating measures such as recall and precision. This self-dealing poses threats to validity: the researchers develop the gold standard and the technique to be measured against it. To reduce bias, we introduce a prototype of Multi-user Input in Determining Answer Sets (MIDAS), a web-based tool so communities of researchers can jointly define the gold standard for a given data set. MIDAS lets community members add items to the answer set, vote and comment on them, and view the current community opinion on them. It currently supports traceability and classification data sets.  We will quickly overview MIDAS and then show some of its inner workings in Rails.
Raphael FinkelFaculty, CSA padding oracle in CBC mode decryption (Slides) (Video)
Abstract: It's hard to get security right. I'll discuss the Cryptographic Doom Principle and show a few examples where violating this principle leads to insecure cryptography.
Yongwook SongPhD Student, CSSeptember 12, 2018Using Google Firebase and GCP to create mobile apps and analyze data with visualization (Video)
Abstract: Google Firebase lets you quickly develop apps by providing a comprehensive mobile-development platform. GCP (Google Cloud Platform) provides tools for analyzing and visualizing data. I will present how I used Firebase as a development tool and DataStudio/BigQuery from GCP as data-analysis and visualization tools of user activity for the UKYCROPS project.
Raphael FinkelFaculty, CSDangerous C (Video, Slides)
Abstract: The C language has many flaws that make it dangerous to use. But many projects must use it. This talk describes how to mitigate the problems.
Luke MilesUndergraduate, CSSeptember 19, 2018MastML: machine learning for materials science (Video)
Abstract: Stone, bronze, iron, and steel defined their respective eras, and we are discovering new materials today still. A heat-tolerant biodegradable plastic or a new ion for car batteries would be economically valuable and would slow our damage to the environment. However, synthesis of novel materials is risky and expensive. Computational materials science lets us narrow our choices among all possible compounds and cheapens and accelerates materials discovery. I will present mastML, a small software tool to help in this endeavor, which I helped create. It uses machine learning to predict quantitative properties of novel compounds.
Paul LintonStaff, CSMy favorite XKCD comics (Slides)
Abstract: XKCD, authored by Randall Munroe, is advertised as "A webcomic of romance, sarcasm, math, and language." It often has a CS component. It's often hilarious.
Jeff ChartosFaculty, CSSeptember 26, 2018The state of quality assurance in industry (Video, Slides)
Abstract: I will describe the state of Quality Assurance (QA) in Industry and some of the current process and techniques that address the fact that studies continue to find that 68% of IT projects fail.
Ramakanth KavuluruFaculty, CS and BMI“Folk knowledge” for machine learning (Video)
Abstract: This talk will cover general principles that may not be covered in general in text books on machine learning about building ML systems. The material is derived from a 2012 ACM CACM paper by Pedro Domingos: "A Few Useful Things to Know about Machine Learning"
Billy Kidwell and Chris WellsAlumni, OpenTextOctober 3, 2018Cloud Foundry (Slides, Video)
Abstract: Cloud Foundry is a Platform-as-a-Service for cloud-native applications. We will talk about some advantages of Cloud Foundry, why it is gaining popularity with enterprises, and what it means to the applications that you develop. During this presentation we will look at the architecture of Cloud Foundry and ground the discussion with a demonstration of platform usage for a Java application.
Luke MilesUndergraduate, CSThe Malicious Use of Artificial Intelligence: Forecasting, Prevention, and Mitigation (Video)
Abstract: I will discuss a recent paper by Brundage et al, which "surveys the landscape of potential security threats from malicious uses of artificial intelligence technologies, and proposes ways to better forecast, prevent, and mitigate these threats."
Ting WangMS student, CSOctober 10, 2018 Study of Regression Test Selection in Continuous Integration Environments
Abstract: Continuous integration (CI) automates build-test execution and software delivery. It can provide fast feedback on software changes. But one must ensure that it performs enough testing before code submission to avoid breaking builds. Traditional regression test-selection (RTS) techniques may not be able to handle rapid changes. We study RTS in CI environments in 924 open-source projects to understand 1) under what conditions RTS is needed and 2) how to perform cost-effective RTS.
Tarannum ZamanPhD student, CS (Yu)(1) Extracting Implicit Programming Rules: Comparing Static and Dynamic Approaches, and (2) Grace Hopper Conference
Abstract: (1) Programs often follow implicit programming style rules. Prior work uses static or dynamic analysis to extract implicit style rules. We find that the performance of dynamic analysis depends on the number and the diversity of traces. It generates more precise rules than static analysis if it has a sufficient number of diverse test cases. (2) The Grace Hopper celebration is the biggest conference for women in computing, a perfect opportunity for students to gain resources that will help them thrive in their careers.
Michael HuelsmanPhD student, CS (Truszczyński)October 17, 2018Maximin Consensus of Agent Preferences Using Heuristic Search (Video)
Abstract: Agents sometimes need to reach a consensus that considers the preferences of each agent. We build a joint-preference model for the group from pairwise per-agent comparisons. Instead of maximizing the total number of comparisons satisfied, we use maximin scoring to evaluate the model. The number of comparisons satisfied for the least satisfied user is its overall score. Determining if a model exists that satisfies at least n comparisons for all agents is NP-complete. We heuristically search for good models of preference formulas, which rank alternatives based on desirable properties.
Raphael FinkelFaculty, CSTips for using Unix: an Update (Video)
Abstract: I used to publish a tip for using Unix every month. I haven't for a while. We'll look at some of the old tips and see if they still work.
Jurek JaromczykFaculty, CSOctober 24, 2018Relative Neighborhoods (Video)
Abstract: Geometric neighborhood graphs are defined for vertices that are points in geometric space, with edges connecting points when they satisfy specified distance or neighborhood properties. They are studied using computational geometry methods and are interesting both theoretically and due to their applications. In this introductory presentation, we will review a few classic geometric graphs, focusing on 2-dimensional space.
Sergio Rivera P.PhD Student (Fei and Griffioen)Navigating the Unexpected Realities of Big Data Transfers in a Cloud-based World (Video)
Abstract: Big-data communication often occurs over shared networks, with many external and uncontrolled factors influencing performance. In this talk I will present our efforts to characterize the performance of big-data transfer tools such as rclone and cyberduck when they moving data between public and private cloud resources. Our experimental results give insights into the performance of cloud providers and transfer tools and provide guidance for setting parameters for those tools. We also show that emerging SDN, approaches such as the VIP Lanes system, can deliver excellent performance even from researchers' machines.
Aidan ShafranUndergraduate, CSOctober 31, 2018File-system design (Video)
Abstract: Nearly every computer application involves some access to stored files. Reading and writing files are simple operations in modern programming languages, but in fact they are complex to implement. In this talk I will summarize how file access is implemented, from high-level function calls down to how the data is stored on disk.
Rashmie AbeysinghePhD student, CS (Cui)Similar Non-Lattice Subgraphs (Video)
Abstract: Non-Lattice Subgraphs (NLSs: graph fragments that violate the lattice property) often signal inconsistencies in biomedical terminologies. Similar NLSs may denote similar inconsistencies and may suggest similar remediations. Therefore, finding similar NLSs may let us avoid redundant analysis of NLSs. We demonstrate a structural-semantic-based approach to identify similar NLSs in the Gene Ontology.
Nima SeyedtalebiGrad Student, CSNovember 7, 2018Is Unit Testing Worth the Trouble? (Slides)
Abstract: Unit testing is familiar to many programmers. It has become de rigeur in professional and open-source software development. We are taught that unit testing is an important part of software engineering, yet many programmers do not write unit tests until someone forces them to. The benefits of unit testing are commonly believed to outweigh the costs, but is that just wishful thinking? In this presentation, we aim to provide an overview of unit testing and a brief survey of relevant research to bring the audience closer to answering to the question, “is unit testing worth the trouble?”
John RigneyAlumnus, CSFrom Delivery Man to Cyber Warrior in Six Months
Abstract: The Pentagon asked me to give them cyber warriors, so I developed a platform to do that using a gamified learner-centered curriculum. This talk will lightly touch on the learning model used and dive more deeply into the technology that drives the solution we call ESCALATE. I will address a few broad security concepts and how we tackle them in our environment. Expect some pretty graphs and disassembled code.
Jan MalyPhD student, Vienna University of Technology.November 14, 2018Preference orders on families of sets ― When can impossibility results be avoided? (Video)
Abstract: We consider families of sets that induce connected subgraphs in graphs. For such families we study whether lifted orders satisfying the well-studied axioms of dominance and (strict) independence exist for underlying orders on elements. We characterize families that are strongly and weakly orderable under dominance and strict independence and obtain a tight bound on the class of families that are strongly orderable under dominance and independence.
Jane HayesFaculty, CSRE Cares (Video)
Abstract: RE Cares is a series of requirements-engineering sessions and a hackathon to work with real stakeholders to elicit and specify requirements, as well as to develop an initial design and prototype early features for a secure, private, instant messaging app to be used by emergency management personnel in Alberta, Canada.
Fengbo ZhengPhd Student, CS (Cui)November 28, 2018Deep-learning Approaches for Predicting Concept Names (Video)
Abstract: Proper naming of new concepts in the biomedical domain relies on manual effort by ontology curators. We explore three deep-learning approaches, given bags of words, to predict concept names that comply with the naming convention of SNOMED CT, the largest clinical health terminology database. These deep learning models are simple neural networks, Long Short-Term Memory (LSTM), and Convolutional Neural Network (CNN) combined with LSTM. Our experiments show that LSTM achieves the best performance.
Jeff ChartosFaculty, CSThe panoply of CS499 projects (Video)
Abstract: There were lots of CS499 projects. Here are a few samples.
Thomas Deeter, Matthew Thompson, Wade ZengelCS 499 studentsCloud Code ― A Collaborative IDE for Web Development (15 minutes) (Video)
Abstract: Cloud Code is an online collaborative code editor that incorporates many similar features as Google Docs. Users have the ability to create various filetypes, see which users are online, along with real-time updating cursor tracking and code highlighting.
Raphael FinkelFaculty, CSJanuary 16, 2019The anatomy of a web service (Video 1, Video 2)
Abstract: I have been working on the Kratylos project for several years. It is a web service that allows linguists to publish their field notes so they and others can search through the data. I will describe (and demonstrate!) the components that make the web site work, including CGI code in Perl, presentation code in Javascript, and data in SQL, along with lots of useful third-party software such as Bootstrap, JQuery, Alertify, and DataTables.
 
Jacob ChappellStaff, CCSFebruary 6, 2019Singularity (Video)
Abstract: Containerization has ushered in a new age of computing. With containers, researchers can conveniently package and distribute applications, data, and complete computing environments. Leading this front are Docker and Singularity, but Docker’s security flaws prevent it from dominating the High Performance Computing (HPC) market, where Singularity now reigns supreme. The University of Kentucky’s new and upcoming supercomputer and successor to DLX, the Lipscomb Compute Cluster (LCC), will be driven by Singularity containers. Come learn about Singularity, what it is and how to get started using it, and prepare to pave the future!
David VulakhHigh School Student, MSTC (Finkel) Distributed backtracking (Video)
Abstract: Most constraint-satisfaction problems can be solved by recursive search with backtracking. However, this approach often needs exponential time. To complete large problems, we can pool the computational resources of multiple cores and machines. I will discuss my program to reliably distribute the computation of a class of constraint-satisfaction problems and visualize search statistics.
Nathaniel HudsonPhD Student (Khamfroush)February 13, 2019the Effectiveness of Standard Centrality Metrics for Interdependent Networks (Video)
Abstract: We investigate the effectiveness of standard centrality metrics for interdependent networks (IDNs) to identify important nodes to prevent catastrophic failure propagation. We compare the performance of these metrics in two different scenarios: 1) the nodes with highest centrality of networks composing an IDN are selected separately, and 2) the nodes with highest centrality of the entire IDN represented as one single network are calculated. To investigate the resiliency of an IDN, a threshold-based failure propagation model simulates failure propagation over time. The nodes with highest centrality are assumed to be resistant to failure. Extensive simulation compares the usefulness of standard metrics in impeding failure propagation. Finally, we propose and evaluate a new metric of centrality tailored for interdependent networks, along with guidelines on designing new metrics.
Hank DietzFaculty, ECE A Gate-Level approach to compiling for quantum computers (Video)
Abstract: Programming language constructs generally operate on data words, and so does most compiler analysis and transformation. However, individual word-level operations often harbor pointless, yet resource and power hungry, lower-level operations. By transforming complete programs into gate-level operations on individual bits, and optimizing operations at that level, it is possible to dramatically reduce the total amount of work needed to execute the program’s algorithm. This gate-level representation can be in terms of any complete set of logic gate types; earlier work targeted conventional multiplexor gates, but the work reported here centers on targeting CSWAP (Fredkin) gates without fanout – a form that can be implemented on a quantum computer. This talk will overview the approach, describe the current state of the prototype compiler, and suggest some ways in which compiler automatic parallelization technology might be extended to allow ordinary programs to take advantage of the unique properties of quantum computers.
Dawson GodbyUndergrad, CSFebruary 20, 2019Drone usage in natural disasters (Video)
Abstract: I will introduce the typical industrial and recreational uses of Small Unmanned Aerial Vehicles (SUAVs). I will then describe various situations and problems that arise from natural disasters and the ways first responders and civilians have dealt with these situations. I will include examples of SUAVs used after disasters such as earthquakes, tsunamis, and mudslides. I will the challenge the audience to find new uses for SUAVs and to consider the power of simple solutions to complex problems.
Brent HarrisonFaculty, CS Automated Rationale Generation: A Technique for Explainable AI and its Effects on Human Perceptions (Video)
Abstract: Explainable AI is important in situations where human operators work alongside autonomous and semi-autonomous systems, because it can help build rapport, confidence, and understanding between the agent and its operator. If the system fails to complete a task or completes it in an unexpected way, explainability gives the human operator insight into the decision-making process that led to the behavior in question. Creating explainable systems in sequential environments is especially challenging. I will present my new work in the area of "rationale generation", in which an AI system learns to create explanations as a human would in similar situation. Additionally, I'll present my work on analyzing what contributes to a satisfying explanation from a human perspective.
Tingting YuFaculty, CSMarch 6, 2019Automatically Reproducing Android Application Crashes from Bug Reports (Video)
Abstract: Modern software projects use issue tracking to keep track of reported bugs. Developers heavily rely on bug reports to fix bugs. One of their first steps is to reproduce the reported bug. This step is usually performed manually, so resolving bugs is inefficient, especially when bug reports are in natural language. I will present an approach to automatically reproduce bugs in Android apps from reports. This approach combines natural-language processing and dynamic GUI exploration to synthesize test scripts that can reproduce the reported bug.
Guangming XingCS Faculty, WKU vLab: An Innovative Learning Management System for CS Education (Video)
Abstract: The talk will introduce the vLab platform, an innovative Learning Management System (LMS). vLab combines the features of ebook, web IDE, online exercises, and autograder to make it a one-stop website for instructors and students in computer science. After a quick demo, I will discuss its overall architecture and both security and performance considerations.
Jacob ChappellStaff, CCSMarch 20, 2019Alshayun: A mobile content-delivery application (Video)
Abstract: Alshayun is a mobile application for delivering articles consisting of rich text and interactive applets to readers. Implemented in TypeScript for the Ionic and Angular frameworks, Alshayun is the product of many technologies mingled together. Come see a demonstration of Alshayun and learn about how I developed it.
Liu Liu, Daniel Houston and Michael DingessStudents, CS (Truszczyński) Improving ASP Solving by Optimizing ASP Encodings (Video)
Abstract: Representing a problem in a declarative programming formalism such as answer set programming (ASP) is not easy. Although modeling the constraints is often easy, selecting a representation that always yields good performance is hard. Equivalent representations often perform differently on a different problem instances. In this talk, we discuss selecting among equivalent problem encodings one that is likely to perform the best for a given instance. We discuss applying machine learning to help us make the selection, as well as automating the task of generating alternative equivalent problem encodings. The talk consists of three parts, presenting different but closely related projects,
Pete Knowlton and Jordanna KalkhofGhosteryMarch 27, 2019The Internet Knows Who You Are and We Can Prove It (Video)
Abstract: Explore the “invisible web” and learn what’s going on behind the scenes with members of the Ghostery team. Join us for a discussion about data protection, internet tracking, security and privacy. We’ll introduce high- and low-level concepts as well as go through real-time tracker detection demos and a workshop the next day. (Full hour)
Vijay ShahPhD student (Silvestri)April 3, 2019X-CHANT: Next-generation Challenged Networks (Video)
Abstract: Ubiquitous connectivity helps improve economic development, health, social justice, and educational opportunities. However, rural communities accounting for 46% of the world's population lack access to connectivity. I present a new network architecture, NeXt-generation CHAllenged NeTworks (X-CHANT), based on public-transportation vehicles such as buses. I discuss an efficient routing strategy for this architecture, based on a Space-Time-Band (STB) graph model. Finally, I summarize my continuing research in efficient architectures for improved rural connectivity.
Danny AllenUndergrad, CS (Truszczyński) Augmented reality and its applications (Video)
Abstract: The talk will examine the augmented-reality industry as it prepares to leave its infancy and discuss its obstacles and research aimed at overcoming them.
Judy GoldsmithFaculty, CSApril 10, 2019Computer Ethics Education and the Moral Imagination (full hour) (Video)
Daniel CotterGraduate student, CSApril 17, 2019Healthcare Interoperability and Complex Event Processing (Video)
Samuel Iloo, Daniel Houston, Logan WoodrumUndergraduates, CS Augmented Reality: Poker-hand recognition (Video)
Abstract: We will give background on our CS 499 project, cover possible technologies for augmented reality on Android devices, our initial architecture, and what we ended up implementing.
Zongming FeiTriumvir, CSSeptember 4, 2019Welcome and Overview of The CS Department (Video)
Abstract: I will provide an overview of the UK CS Department and its faculty, facilities and programs, and point to some of our upcoming events for the fall semester.
Sean Grate, Jack Jaquish, and Yuhan LongUndergraduates, CS Summer research projects (Video)
Abstract: We will briefly describe our summer research projects.
Jarad PayneUndergrad, CS (Hayes)September 11, 2019Toward Improved Artificial Intelligence in Requirements Engineering: Metadata for Tracing Datasets (Video)
Abstract: Data drives artificial intelligence in requirements engineering. Although some applications lend themselves to easily accessible training sets (sentiment detection, feature request classification, requirements prioritization), others do not. Tracing and domain-model building are applications where data is not easily found or in the proper format or with the necessary metadata to support deep learning, machine learning, or other artificial intelligence techniques. We survey datasets available from sources such as the Center of Excellence for Software and Systems Traceability that provide metadata that researchers may use to decide what datasets to use, what aspects of datasets to use, what features to use in deep learning, and more.
Judy GoldsmithFaculty, CS Good systems (Slides, Video)
Abstract: I was in Austin, Texas recently to review a multi-disciplinary program called "Good Systems," about injecting ethics into the development and deployment of AI. I will talk about that program and the experience of reviewing it.
Tarannum Shaila ZamanPhD student (Yu)September 25, 2019Dynamic binary instrumentation using Pin (Video)
Abstract: Pin is a dynamic binary instrumentation framework for the IA-32 and x86-64 instruction-set architectures for creating dynamic program-analysis tools. These tools, called Pintools, can be used to perform program analysis on user-space applications in Linux and Windows. The instrumentation is performed at run time on the compiled binaries and requires no recompiling of source code. Pin provides a rich API that abstracts away the underlying instruction-set idiosyncrasies and allows context information such as register contents to be passed to the injected code as parameters. We will demonstrate several examples of instrumenting and monitoring program execution. We will then show our recent work on using Pin to detect system-level data races.
Raphael FinkelFaculty, CS Homegrown software (Notes, Video)
Abstract: Several faculty members and their students have built useful, publicly-available software. I will discuss ReCDroid, PrefLib, PCCTS, Warewulf, KARWY-SR, PFME, KATR, PPA, Kratylos, and ACE. You'll have to come to the talk to find out what these acronyms stand for!
Anna WorkmanManager, UPSOctober 2, 2019UPS and computer technology (Video)
Abstract: Most people don’t know that there are about 4,800 UPS employees that create the technology behind the biggest shipping business in the world – and almost 800 of them work in Louisville, Kentucky. Come learn about UPS Information Technology and hear some tips on what we’re looking for in both interns/co-ops and full-time hires.
Vince MattinglyCS Undergraduate The Lua programming language (Examples, Video)
Abstract: Lua is a small, simple, embeddable programming language with a single data structure: the hash table. Lua is of interest because it allows reflection over the environment, overloading of the member access operator, and relative ease with which you can integrate it into an existing program. I will demonstrate some code examples, going from basic to advanced. Topics include table construction, first class functions, coroutines, and metatables.
Taha Al-jumaily, Jared RigdonITS CybersecurityOctober 9, 2019Connecting the dots, using data analytics (Video)
Abstract: We will discuss how we use data analytics to aid in cybersecurity, including collection, indexing, searching, reporting, analysis, alerting, and monitoring,
Mike WallaceUK Center for the Enhancement of Learning and Teaching Mobile-device applications for teaching (Video)
Abstract: This talk will showcase apps that allow for in-class student engagement, especially ones that are platform-agnostic, so they can be used with a laptop (PC/Mac/Linux), phone (iOS, Android), and tablet (Surface, iPad OS, Android).
Rebecca Hartman-BakerUK Alumna, NERSCOctober 16, 2019Past, Present, and Future Parallel Programming Paradigms (full hour) (Video)
Abstract: Parallel programming paradigms have been adapted to ever-changing computing resources, needs and goals over the course of history. The evolution of high-end computer architecture (from organic to mechanical to digital and from single-core computers to vector-based, multicore-based, and hybrid CPU/GPGPU-based machines) has necessitated the continuing development of new parallel programming paradigms and numerical algorithms. In this talk, I discuss the development of numerical algorithms throughout the history of numerical computing, placed within their historical and architectural contexts, and the implications of future architectures on numerical methods.
Gongbo (Tony) LiangPhD student (Jacobs)October 30, 2019Joint 2D-3D Breast Cancer Classification (Video)
Abstract: Digital mammograms (DM or 2D mammogram) and digital breast tomosynthesis (DBT or 3D mammogram) are used in practice to detect and diagnose breast cancer. Current computer-aided diagnosis tools use only one imaging modality. We propose a neural-network (CNN) architecture to classify breast cancer using both 2D and 3D mammograms simultaneously. Our method significantly improves the performance of breast cancer classification, achieving 0.97 AUC, which is 34.72% higher than methods using only one imaging modality.
Tarannum Shaila ZamanPhD student (Yu) Localizing System-Level Concurrency Faults from Large System Call Traces (Video)
Abstract: Localizing concurrency faults that occur in production is hard because of their elusive nature and limited runtime data. We have developed SCMiner, a practical online bug-diagnosis tool to help developers understand system-level concurrency faults based on logs collected by system audit tools. We have conducted an empirical study on 19 real-world benchmarks. SCMiner is both effective and efficient at localizing system-level concurrency faults.
Zhouyang JiaVisiting student (Yu)November 6, 2019Detecting Error-Handling Bugs without Error-Specification Input (Video)
Abstract: Software systems may encounter errors when interacting with their environments. When such errors happen, error-handling code must execute flawlessly to facilitate system recovery. Developers often inadvertently introduce bugs into error-handling code. This talk will introduce EH-Miner, which can automatically detect error-handling bugs. We have submitted 210 bugs reported by EH-Miner to developers (from 26 applications and the Linux kernel), of which 148 have been confirmed.
Yongwook SongPhD Student (Griffioen)ELK stack
Abstract: Proactive management requires the ability to analyze, search, alert, and visualize timestamped machine data such as logs. At the Center for Computational Science, we have developed software to visualize network traffic flows, monitor resource usage on a cluster, and track successful logins. This software is based on the Splunk cloud and the ElasticSearch stack. We will present how we used the Elasticsearch stack (Elasticsearch, Logstash, and Kibana) and Grafana to search, analyze, alert, and visualize unstructured time-series machine data.
Tasmia TasrinPhD student, CS (Harrison)November 13, 2019A Hierarchical Approach for Visual Storytelling using Image Descriptions (Video)
Abstract: A primary challenge of visual storytelling is to maintain the context of a story over long event sequences. We propose a hierarchical deep-learning architecture based on an encoder-decoder network to address this problem. To better help our network maintain context while generating long sentences, we incorporate natural language image descriptions along with the images themselves to generate each story sentence. We evaluate our system on the Visual Storytelling (VIST) dataset and show that our method outperforms state-of-the-art techniques on a suite of different automatic evaluation metrics.
Allison BurketteFaculty, Linguistics Challenges and Opportunities: CS and Linguistic Atlas Project Data (Video)
Abstract: The Linguistic Atlas Project (LAP) and its data represent the largest single survey of regional and social differences in spoken American English. The LAP is currently processing and curating its historical data in an attempt to get it into a (somewhat) uniform and usable format, thus creating ‘big data’ from historical sources. This talk presents the challenges of this process and highlights the research and collaboration opportunities that the LAP can offer CS.
Eura ShinUndergrad, CSNovember 20, 2019Robot assisted hair-brushing (Video)
Abstract: Physically assistive robotics enable paralysed patients to perform essential day-to-day activities without the presence of a caregiver. We demonstrate a novel application of robotics in assisted hair brushing. Our vision-based system is implemented on the Kinova Gen2 Lightweight robotic arm and is designed to perform a full brushing experience with minimal user involvement.
Samuel KeysUndergrad, CS The IEEE Xtreme competition (Video)
Abstract: This talk reviews recent IEEE Xtreme programming competitions, including an introduction, the typical problem format, many brain-scratching problems, and some of my solutions.
Raphael FinkelFaculty, CSJanuary 22, 2020Best work: Quad trees and k-d trees (Video)
Abstract: As an assignment for a data-structures course when I was a graduate student, I designed quad trees and their generalization to oct and higher-dimensional trees. Then a classmate, Jon Louis Bentley, came up with the k-d tree generalization, which we worked on together. This data structure can be built in O(n log n) time and searched in O(log n) time. It can be used for finding the nearest neighbor to a point in O(log n) time, and nearest-neighbor search leads to clustering algorithms.
Jane HayesFaculty, CSWhat Does a Department Chair Do?
Abstract: This year we have three faculty members together serving as the CS Chair. This talk describes the various duties of a Chair.
Ken CalvertFaculty, CSJanuary 29, 2020A Vision for a Spot Market for Internet Connectivity (Video)
Abstract: This talk will describe an alternative way to route money in the Internet, based on a spot market for interconnection service. Recent work by others shows that letting transit providers sell excess capacity improves both provider profit and consumer surplus. That work focuses solely on pricing strategies; this talk will present some background on the transit ecosystem, and then consider how to make such a market technically feasible.
Raphael FinkelFaculty, CSAnswer-Set Programming: a few nice examples (Video)
Abstract: I will show a few examples of answer-set programming, including Sudoku puzzles and logic puzzles. This talk includes live demonstrations!
Nathan JacobsFaculty, CSLearning to Map Visual Appearance (Video)
Abstract: Billions of images are uploaded daily to the Internet, and trillions of pixels are gathered by satellites. Together they provide many perspectives of the world that are useful for a wide variety of tasks. This talk gives an overview of my group's work exploring the relationship between geographic location, time, and the visual appearance of the world.
Simone SilvestriFaculty, CSFebruary 5, 2020X-CHANT: A Diverse DSA based Architecture for Next-generation Challenged Networks (Video)
Abstract: This talk presents neXt-generation CHAllenged NeTwork (X-CHANT), a novel network architecture for improving connectivity in rural environments. It deploys Dynamic Spectrum Access (d-DSA) radio devices on public transportation vehicles. The result is a delay-tolerant network in which the devices can operate in available (un)licensed bands. We propose a novel diverse DSA aware routing (dDSAaR) protocol that jointly exploits available bands and the time-varying but predictable mobility of public transportation vehicles. Simulation results show that X-CHANT achieves better message delivery, negligible message overhead, and better energy expenditure than conventional architectures, at the expense of a slight increase in delay.
Alex WolfeSenior Decision Scientist, Fifth Third BankFebruary 19, 2020Fifth Third Bank Decision Sciences Group (Video)
Abstract: Join us for a discussion about how we use data science within the Decision Sciences Group at Fifth Third Bank. We'll discuss the various analytics teams within the group and provide an overview of how we've used data science to create value. Finally, we'll discuss opportunities to begin your career in data science on our team.
Emory HufbauerGraduate, CS (Khamfroush)A Proximity-Based Generative Model for Online Social Network Topologies (Video)
Abstract: Online social networks (OSNs) are an increasingly powerful force. We present a new model for generating synthetic networks that closely resemble real OSNs like Facebook and Twitter, including the presence of community structures. We also present an automated parameter tuner that matches the model's output to a given OSN topology. The model can then generate testbeds of synthetic topologies. We compare our model with standard benchmarks. Our model more closely matches the target topologies than the benchmarks on a variety of important metrics.
Judy Goldsmith et al.Faculty, CSFebruary 26, 2020Assessing Ethical Thinking about CS (Video)
Jurek Jaromczyk, Peter Bifone, Brendan Bultman, Tanner WillisFaculty and students, CSNorth America Championship (NAC 2020) in programming (Video)
Abstract: The members of the CS UK programming team will discuss their experiences from the First North America Championship of the International Collegiate Programming Contest, NAC ICPC 2020, at Georgia Tech February 19-22, 2020. We will show sample problems and cybersecurity-related tasks from the accompanying challenge organized by the National Security Agency. We will present opportunities available to students in our department ― including a course offered in the second half of this semester ― to improve problem-solving skills and to translate algorithmic solutions into efficient computer programs.
George InskoDirector of Cybersecurity, UKYMarch 4, 2020Running a Cybersecurity Program in Higher Education
Abstract: This talk will focus on high-level views of current trends in cybersecurity in higher education, specifically: Current trends in attacks, current trends in cybersecurity defense, and cybersecurity operations in higher education. The goal is to give the listener a general idea on why the cybersecurity team is doing what they are doing.
Stephen ParsonsPhD Student, CS (Seales)Recovering the Ink of Herculaneum
Abstract: The noninvasive digital restoration of ancient texts written in carbon black ink and hidden inside artifacts has proven elusive, even with advanced imaging techniques like X-ray-based micro-computed tomography (micro-CT). This work identifies a crucial mistaken assumption: that micro-CT data fails to capture any information representing the presence of carbon ink. We demonstrate a new computational approach that captures, enhances, and makes visible the characteristic signature created by carbon ink in micro-CT. This previously “unseen” evidence of carbon inks, which can now successfully be made visible, can lead to the noninvasive digital recovery of the lost texts of Herculaneum.
Mirek Truszczyński and Victor MarekFaculty, CSMarch 11, 2020Best work: Three Steps to Answer Set Programming (Video)
Abstract: We discuss the scientific history of Answer Set Programming, an area of Logic, Knowledge Representation and Constraint Programming. We present its roots, key developments and our research that led us to its discovery.
Jacob SchlueterPhD student, CS (Goldsmith)March 25, 2020Hedonic Games (Video)
Abstract: We introduce Super Altruistic Hedonic Games (SAHGs), where an agent's utility depends on the utility of other agents in the coalition. We establish the framework for this new model and provide some stability results. SAHGs generalize Friend-oriented Hedonic Games, Enemy-oriented Hedonic Games, and selfish-first Altruistic Hedonic Games. We also investigate internal stability, a stability notion that has applications in distributed hedonic coalition formation games. We prove that internal stability and Nash stability are equivalent in some classes of hedonic games and different in others. We show that Price of Stability for internal stability has finite bounds in some cases, but is unbounded in others.
Ken CalvertFaculty, CSBest work: Modeling Internet Topology (Video)
Abstract: I'll describe the genesis of my contribution that has probably had the most impact: GT-ITM
Amy JusticeSenior Technology Consultant, Dean Dorton TechnologyApril 8, 2020Life as a Cybersecurity Consultant
Steven ToneyCS MS AlumnusLife after UK
Abstract: I'll start with a short discussion on my Master's Thesis in artificial intelligence and then talk about my work after UK as a Department of Defense contractor, developing applied AI software applications for the U.S. military and intelligence communities. Topics will include knowledge engineering, the U.S. military's OODA (Observe–Orient–Decide–Act) Loop, Plan-Goal Graph knowledge systems, the U.S. Army Aviation's manned-unmanned teaming project, and other DoD applications. I will conclude with my on-going interests in music and filmwork.
Luis Amaro and Conor DelanbanquemthreeApril 15, 2020What is DevOps? (Video)
Abstract: This talk introduces the concept of DevOps. We will share insights into the processes, tools and technologies that students should learn to get a head start before embarking on their careers. Questions to be answered: What is DevOps? What processes, tools and technology do you need to know?
Shafika MoniPhD Student, CS (Manivannan)April 22, 2020An Efficient RSU Authentication Scheme for VANETs based on the Merkle Hash Tree (Video)
Abstract: Vehicular Ad hoc Networks (VANETs) are becoming important. Roadside Units (RUs) facilitate communication between vehicles. Vehicles need to communicate with each other as well as with RUs securely. I will discuss privacy and security issues in VANETs and then present a lightweight scheme for authenticating RUs.
Bradley BurtonCS MS Alumnus; IT Director, Cypress SemiconductorApril 8, 2020Identity Management (IM) and Business Applications at Cypress
Abstract: In today's world, Information Technology teams are expected to establish secure and productive environments for their workforce. Cypress Semiconductor's IT team located in Lexington manages, integrates, and develops corporate applications for all its 7000 employees world-wide. I will present Cypress' problems and solutions to establish an Identity Management program securing its employees and to develop business applications increasing productivity.
Brent SealesChair, CSAugust 26, 2020Welcome to the department (Video, Slides)
Raphael FinkelFaculty, CSBuild your own logic puzzle (Video)
Abstract: I will show how logic puzzles lend themselves to representation in answer-set programming (ASP). This observation leads to CLingo, a simple language for representing logic puzzles, which can then be converted to ASP. The next step is an interactive program that converts puzzles as you build them into CLingo to guide you in adding clues. Live demonstration!
Nathaniel HudsonPhD Student, CS (Khamfroush)September 9, 2020Smart Advertisement for Maximal Clicks in Online Social Networks Without User Data (Video)
Abstract: Diffusion of information to citizens in a smart city will rely on social trends and smart advertisements. We show how to predict click-through rate (CTR) in online social media based on a large set of Facebook advertisement data (but no user data), categorizing targeted interests into conceptual nodes. We train ML models to predict CTR for combinations of conceptual nodes. Finding an optimal combination of conceptual nodes is an optimization problem; we discuss the computational complexity of that problem before proposing greedy algorithm and genetic algorithms to approximate optimality. We find that “politics”, “celebrity”, and “organization” are notably more influential than other combinations.
Enrico CasellaPhD Student, CS (Silvestri)How much for your temperature? Exploiting machine learning and reverse auctions for HVAC demand response (Video)
Abstract: Incentive-based Demand response (I-DR) can reduce peak electrical demand. We formulate the optimization problem that tries to motivate users to adjust their thermostat settings in exchange for a monetary reward. The problem is to jointly minimize user discomfort and energy cost while satisfying a power-cap constraint. We propose a computationally efficient heuristic. Realistic experiments using the high-fidelity energy simulator EnergyPlus and Random-Forest Regression predict the power savings related to a thermostat adjustment. An online survey obtains realistic bids from the users. Our REverse auction PEAk load Reduction (REPEAR) outperforms a recent state-of-the-art solution and achieves performance close to optimal.
Judy Goldsmith, Nathan Jacobs, Ken CalvertFaculty, CSSeptember 16, 2020Technical publication (Video)
Abstract: We will discuss what it means to publish a computer science paper and the process of publication, both as an author and a reviewer. This discussion will cover technical journals, conferences, workshops, and sites such as arXiv and ResearchGate. In addition, we will discuss our favorite ways to find relevant research papers.
Margaret SturgillAlumna, CSSeptember 23, 2020You can be a generalist even with a PhD (Video)
Abstract: A look through things I have done over the years (including interesting projects in anticounterfeiting, 4-D barcodes, chatbots, intellectual property and getting patents in industry.
Asher FinkelBS, University of PittsburghWas it worth it? (Video)
Abstract: After getting a BS in Computer Engineering at Pitt, I have had several jobs. I'll talk about the subjects I studied during my undergraduate days that ended up being useful, those that were not so useful, and subjects I wish I had learned in school but had to learn on the job.
Seth ParkerResearch Project ManagerOctober 7, 2020A C++ Library for dataflow pipelines (Video)
Abstract: Keeping track of computational metadata is a pain. Sure, it’s easy enough for small processes, but as the complexity of pipelines grow, so do the headaches. I will discuss a work-in-progress C++ library I’ve been working on for my research group that turns existing C++ classes and functions into reproducible dataflow pipelines with automatically tracked metadata.
Christian AddingtonUndergrad, CS (Goldsmith)October 21, 2020Anchored Team Formation Games (Video)
Abstract: I will present a new coalition-formation game, Anchored Team Formation Games (ATFG). ATFGs are based on table-top RPGs, where game managers lead a group of players through the game. The goal of coalition-formation games is to partition players into coalitions, according to the players preferences and valuations of other players, so that the resulting coalition is either stable or optimal. Stability means that no player has an incentive to deviate from their assigned coalition. In particular, a partition is Nash stable if no player would prefer any other coalition to the coalition they are currently assigned to. I will describe ATFGs and present three heuristic algorithms for finding Nash stable partitions.
Michael HuelsmanMS Student, CS (Truszczyński)October 28, 2020The Role of Model Selection in Preference Learning (at 4:00 pm) (Video)
Abstract: If we want to learn an agent's preferences, we must choose a preference-representation model. It should be expressive enough to capture a significant part of the agent's preferences and cover those factors the agent considers essential in comparing alternatives. We consider several preference-representation formalisms: lexicographic preference models, preference formulas, sets of (ranked) preference formulas, and neural networks. We find that the last two seem best, both for preferences of a single agent and also for consensus preferences of a group of agents.
Kristina GesselPhD Student, CS (Seales)Towards Automating Volumetric Segmentation for Virtual Unwrapping (Video)
Abstract: I will present a new approach to volumetric page instance segmentation — the process of extracting pages of a book or layers of a scroll from volumetric data. I will show some of the interesting results we have obtained by using this approach to segment micro-CT scans of an unopenable 6th century Coptic manuscript and discuss our goal of fully automating the segmentation process.
Industry professionalsNovember 4, 2020Developing iOS Healthcare Apps with CareKit ― Coding in Swift with Xcode (12n - 1:15pm)
Isaac BattsPhD Student (Goldsmith)Social network-based distancing strategies to flatten the COVID-19 curve in a post-lockdown world (Video)
Abstract: Adopting a social network approach, we evaluate the effectiveness of three distancing strategies designed to keep the curve flat and aid compliance in a post-lockdown world: (1) limiting interaction to a few repeated contacts akin to forming social bubbles; (2) seeking similarity across contacts; and (3) strengthening communities via triadic strategies. We simulate stochastic infection curves incorporating core elements from infection models, ideal-type social network models and statistical relational event models. We demonstrate that a strategic social network-based reduction of contact strongly enhances the effectiveness of social distancing measures while keeping risks lower. We provide scientific evidence for effective social distancing that can be applied in public health messaging and that can mitigate negative consequences of social isolation.
Patrick ShepherdPhD Student (Goldsmith)November 11, 2020Augmenting Social Network Software for Modeling COVID and Other Epidemics (Video)
Abstract: COVID-19 has revealed both the strengths and weaknesses of existing modeling methodologies. We introduce a fine-grained software suite that reproduces results from the current COVID-19 modeling literature. We also introduce tuneable parameters, such as an augmented risk perception mechanism, that are neglected in much of the initial social-network modeling of the spread of COVID-19. We introduce a social network diffusion and visualization engine and illustrate the flexibility of the software by using it to implement a novel modeling strategy for general epidemic spread. We demonstrate the usefulness of incorporating our augmented decision space into classical epidemiological environments and of elucidating underlying implications of various epidemic response strategies.
Christy Chapman, Stephen Parsons, Seth Parker, Brent SealesEDUCE teamNovember 18, 2020The Herculaneum Project (full hour) (Parsons slides, Parker slides, Chapman slides, Video)
Abstract: For more than 20 years, Professor Brent Seales has worked to digitally restore the most damaged, inaccessible, and venerated cultural heritage objects in the world. In this talk, he and his team will present an overview of their current project to virtually unwrap and read the Herculaneum scrolls and other unopenable texts. The team will cover (1) the important role of data science, (2) the use of photogrammetry to create 3D models of open papryi fragments, (3) the development of a machine learning tool to identify the ink used in the Herculaneum scrolls; (4) the computer scientist's role in establishing the integrity of digital objects.
Ken CalvertFaculty, CSFebruary 3, 2021How to ask questions (Video)
Abstract: Professors often encourage students to ask questions when they don't understand something. As one progresses in a CS career, asking questions on mailing lists or in forums like StackOverflow can be an excellent way to get help solving problems or learning about a new technology. However, all questions are not created equal ― some are better than others when it comes to getting what you want. This talk will offer some principles I have found helpful in several decades of both asking and answering questions. The principles also apply when reporting bugs, requesting features, or figuring out what others are trying to communicate to you.
Nathaniel HudsonPhD Student, CS (Khamfroush)Behavioral Opinion Maximization in Online Social Networks (Video)
Abstract: Conventional models for information diffusion in online social networks fail to consider each user’s personality. Some personalities are more likely to spread information than others. We propose a behavioral independent cascade (BIC) model that considers the personalities and opinions of users for modeling information diffusion. We then study the opinion maximization (OM) problem and prove it is NP-hard under our BIC model. Our extensive simulations show that when communities are polarized, activating a large number of nodes is ineffective towards maximizing opinion.
Nelson PennMS Student, CS (Truszczynski)February 17, 2021Nim Games (Video)
Abstract: The game of Nim is a form of impartial game. Although the existence of a winning strategy has been proven to exist for any impartial game, it is nontrivial to find such a strategy in general. I will discuss several variants of Nim and known results about winning strategies.
Nathan RussellPhD Student, CPEA Mystery at the Intersection of Mathematics and Computer Science (Video)
Abstract: Mathematical Coding Theory (error correcting codes) is directly connected to abstract objects and structures like Orthogonal Groups, Projective Planes, T-Designs, and a few mysteries. Countless papers have been published on the properties of the Binary Type II (72,36,16) Self-Dual Code. The only problem is that it may not exist! Come explore a mystery that lies in the intersection of Computer Science and Mathematics.
Christian AddingtonUndergrad, CS (Goldsmith)February 24, 2021Getting involved in undergraduate research (Video)
Abstract: Being involved in undergraduate research is an excellent way to supplement your education, network with Computer Scientists within and outside of your University, and prepare for work and graduate school. I will discuss how to approach professors, what I have learned from my experience, and ways to maximize the benefit of your time.
Mirek TruszczynskiFaculty, CSMarch 3, 2021Fun with the Collatz Conjecture (Video)
Abstract: The Collatz conjecture (also known as the 3x+1 or 3n+1 conjecture) is simple to state: If one starts with any positive integer, and repeatedly computes the next integer by dividing the current one by 2, in the case it is even, or by multiplying it by 3 and adding 1, otherwise, then one will eventually reach 1. Despite this simple statement accessible to everyone, the Conjecture, now 84 years old, has so far resisted all attempts at proof. I will not prove it either. I will do something much easier. I will propose a general setting in which the Collatz conjecture is just one of many. Based on extensive computational experimentation, I will show how the new setting offers new insights, suggests intriguing patterns, and brings up new challenging questions, most, I am sure, as difficult to answer as the original one, but some, I hope, perhaps a little easier.
Baljeet MalhotraCEO, TeejLabMarch 10, 2021Effective API Governance (Video)
Abstract: Software development is increasingly reliant on third-party services accessed through APIs. APIs could be simple, but they must not expose your IT assets to unofficial or illegitimate use. This talk aims to elucidate the overall implications of APIs, including information security, data management, legal risk management, and licensing costs.
Raphael FinkelFaculty, CSA mathematical curiosity: predicting the density of prime numbers (Video)
Abstract: Years ago, my brother David came up with a probabilistic approximation of the density of prime numbers. It works remarkably well, even though it is based on some questionable assumptions. This is the second talk (after Dr. Truszczyński last week) on recreational mathematics.
Minoo HosseinzadehPhD student, CS (Khamfroush)March 17, 2021Optimal Accuracy-Time Trade-off for Deep-Learning Services in Edge Computing Systems
Abstract: With the increasing demand for computationally intensive services like deep-learning, emerging distributed computing platforms such as edge computing (EC) systems are becoming more popular. Edge computing systems have shown promising results in terms of latency reduction compared to the traditional cloud systems. However, their limited processing capacity imposes a trade-off between potential latency reduction and accuracy in computationally-intensive services. We focus on finding the optimal accuracy-time trade-off for running deep-learning services in a three-tier EC platform, where several deep-learning models with different accuracy levels are available.
Hank DietzFaculty, EEPlaying With A $7 AI-Thinker ESP32-CAM IoT Development Board
Abstract: The Arduino IDE and C++ libraries make microcontrollers easy to use ― and some compatible systems are now surprisingly small, cheap, and powerful. The $7 AI-Thinker ESP32-CAM development board is designed to allow Internet-of-Things (IoT) devices to use face recognition and other computationally demanding algorithms. In 27×40mm, this board provides a 240MHz dual-core 32-bit processor, 2MP camera, 802.11b/g/n WiFi and BlueTooth, as well as wired I/O interfaces, a microSD slot and low-power modes. I will present an overview of the ESP32-CAM, discuss how to work around some of its quirks, and briefly show a few sample applications. For example, a single ESP32-CAM was used to implement Lafodis160, the LArge FOrmat DIgital Scanning camera I presented at Electronic Imaging 2021.
MaryAnne FieldsIntelligent Systems Program Manager, US AROMarch 24, 2021Research To Enable Long Term Autonomy (Slides, Brochure, Video)
Abstract: Intelligent systems play an important role in civilian and military settings. Currently, intelligent systems are mostly restricted to highly constrained environments for short-duration missions. Future systems will need to perform a variety of tasks in complex, possibly contested, open worlds for extended periods of time. In such worlds, the intelligent system will encounter new contexts, activities, and objects that require it to adapt its algorithms. Advanced capabilities in learning, knowledge representation and reasoning, interaction, and assured operations are therefore important. This presentation will describe efforts at the Army Research Office to develop the science for long-term autonomy. We will also describe research opportunities with the Army Research laboratory for faculty and students.
Brent HarrisonFaculty, CSMarch 31, 2021Drawing Lines for Fun and Profit: A Gentle Overview of Machine Learning (Video)
Abstract: Don't know what machine learning is and too afraid to ask? Read an OpenAI or DeepMind blog and want to know more? Want a small refresher on what exactly machine learning is? Well this could possibly be the talk for you! In this talk, I do my best to provide a nice, calming overview of supervised learning, unsupervised learning, and deep learning. How do I plan to do that? By sifting through the noise and getting back to what matters in machine learning: drawing lines! In this talk, I'll introduce supervised, unsupervised, and deep learning and talk about some popular methods in each. Hopefully by the end of my thirty minutes you'll find yourself thoroughly introduced to this vast and diverse topic.
Tyler BurkettMasters student, CSHackathons and their Benefits (Video)
Abstract: Hackathons are a great way to exercise your programming skills, but they have many more benefits. Participants aren't the only ones who gain something from these events. In this presentation, I will discuss some of the benefits that participants, sponsors, and organizers enjoy from these events. I will also talk about some resources and advice for finding and organizing hackathons so you can get involved.
Isaac BattsMS Student (Goldsmith)April 7, 2021Diffusion in networks
Chris DotsonCS MS alumnus; IBMApril 14, 2021Cloud Satellite and Cloud Security
Abstract: Some workloads require the compute resources to be in specific locations, due to security, regulatory compliance, latency, or "data gravity" requirements or constraints. I will present an overview of distributed cloud, including IBM Cloud Satellite, and the technologies that make it up, along with a discussion on security topics around cloud and distributed cloud.
Nathan JacobsFaculty, CSApril 21, 2021Applications of Deep Machine Learning to Highway Safety and Usage Assessment
Abstract: The use of deep machine learning methods, such as convolutional neural networks (CNN), has led to rapid advances in automatic understanding of consumer photographs. Such approaches have the potential to dramatically reduce the costs associated with large-scale infrastructure assessment. We present two applications of deep machine learning for image-driven transportation applications: (1) Using panorama images to assess highway safety and (2) Fusing overhead images and airborne LiDAR data to predict free-flow speed.
Zongming FeiChair, CSOctober 6, 2021Welcome and Overview of The CS Department
Judy GoldsmithFaculty, CSFolding ethics modules into CS classes (Slides)
Abstract: I will give a brief introduction to the Mozilla Foundation's Responsible Computing Research Project, and the core idea of creating ethics modules for mainstream computer science courses. I will mention my own very small contribution in evaluating some of these ethics modules, and display information on a few, as a taste of what is available.  Overall, the goal of this presentation is to encourage all computer science instructors to seek out "plug and play" modules, and to infuse the entire curriculum with an awareness of ethical and social issues that arise from the design, implementation, and use of computer technologies.
Asher FinkelBS, University of PittsburghOctober 13, 2021Bitwerx (Slides, Video)
Abstract: Bitwerx is a local technology startup. This talk will describe how the startup operates, what they do, and how they do it.
Raphael FinkelFaculty, CSA Potpourri (Video)
Abstract: Over the years I have built various fun pieces of software. I'll demonstrate a few of them and discuss how they work behind the scenes. The software includes a physical-units converter and calculator, a visualization of sorting methods, a solver for logic puzzles, and a builder for logic puzzles. If there is time, I'll also show some software for linguists.
Jane HayesOctober 20, 2021Retirement reception
Tyler BurkettMS Student, CS (Finkel)November 3, 2021Quantum computing (Slides, Video)
Abstract: I will go over some fundamental components of quantum computing from a computer science perspective. The aim is to explain these concepts without requiring an extensive background in quantum mechanics. Topics covered include Dirac notation, representation of qubit states, measurement of qubits, quantum operators, and some algorithms to highlight quantum computing's capabilities.
Billy KidwellLecturer, CSDecember 1, 2021The CS Capstone course
Vijay NadadurAlumnus, CSUnderstanding Cognitive Process Automation
Abstract: One of the most powerful approaches to improving work is supposed to be cognitive process automation (CPA). If its benefits are so obvious, why hasn't the industry adopted CPA? I will describe the basic concepts of CPA, its challenges, and possible approaches to overcome obstacles to adopting CPA.
Neil MooreFaculty, CSJanuary 19, 2022Navigating Documents and Trees with XPath (Slides, Video)
Abstract: The Extensible Markup Language (XML) is a powerful and commonly-used markup language for encoding hierarchically-structured data, especially documents; its relative, HTML, is the standard language for encoding web pages. Among the many tools and technologies in the XML and HTML ecosystem is the XML Path Language (XPath), a query language for navigating and selecting parts of XML and HTML documents. In this talk, we discuss the history, semantics, and uses of XPath, with several examples including a live in-browser demonstration.
Elias ConwelleSports LoungeJanuary 26, 2022Planting the Seed of Gaming (Video)
Abstract: Join UKFCU's eSports Lounge manager Elias Conwell as he gives you a deep dive into gaming culture, eSports, and the ways video games can be used for educational purposes.
Samuel ArmstrongMasters student, CSFebruary 2, 2022The LoRaWAN specification (Video)
Abstract: Long Range Wide Area Network (LoRaWAN) is a long-range, low-bandwidth network protocol used to communicate with a variety of low-power and often low-cost devices, which include GPS wildlife tags, rural environmental sensors, and parking sensors embedded in the street. I will present an overview to the specification and demonstrate a proof-of-concept implementation.
Hank DietzFaculty, ECEFebruary 9, 2022Noisy images and how to quiet them (Slides, Video)
Abstract: Camera sensors are improving, but a captured image always has noise. Noise reduction usually involves a combination of smoothing and sharpening or AI methods trained on a set of images. Instead, we start by empirically modeling the noise in an image as a set of probability density functions. We show a few ways that model can achieve state-of-the-art improvements in image quality, with only a fraction of the computation cost per image that alternative methods require.
TBA
Enrico CasellaPhD Student, CS (Silvestri)March 9, 2022HVAC Power Conservation through Reverse Auctions and Machine Learning
Abstract: I present an implementation of a reverse-auction scheme that asks users to adjust their thermostat settings in exchange for financial rewards. The implementation uses machine learning to predict power savings and it includes an online survey to model realistic user behavior.
Muhammad Abu Bakar SiddiqueFaculty, CSHow to crawl interactive web pages
Abstract: Crawling the Web is the process of automating the retrieval of web pages with a computer program. Most modern web pages contain interactive elements such as buttons; certain pieces of information are only available after interacting with those web pages. Methods using curl and wget cannot accurately retrieve required information from such web pages. In this talk, I will describe the Selenium software, which retrieves information from web pages requiring interaction. Then I will present a demo crawling fine-grained user reviews from Google Play.
Ken Calvert, Raphael Finkel, Jim Griffioen, Hank DietzFaculty, CS and EEApril 13, 2022What is computer science, anyway? (Video)
Abstract: The panelists will discuss what they see as the core and periphery of the discipline of computer science, describe the changes they have seen over their careers, and opine about the future.
Tyler BurkettMS student, CS (Finkel)April 20, 2022QuantC: A CUDA-inspired language for quantum computing (Video, Slides)
Abstract: As quantum computing becomes more accessible, we need tools to help create programs for them. If we assume that programs with quantum components will have the quantum computer act as a co-processor (albeit external) to a classical computer, mimicking how CUDA extends existing languages for GPU programming seems like a good place to start. In this talk, I will give an overview of my Master's project, discussing the design goals, planned features, and currently implemented features of a compiler for my quantum language, dubbed QuantC. I will also give a very brief introduction to quantum computing to help aid in understanding some of the design choices behind QuantC.
Nathan RussellPhD student, CPEHigh-Level equivalences can imply low-level surprises (Video)
Abstract: Mathematicians can reduce incredibly large sets by classifying objects that have the "same shape". Engineers often represent notions of equivalence as expressions of code or instances of hardware. Different instances having the same high-level shape can look very different at a low level. Surprisingly, instances of objects that are not mathematically equivalent may appear nearly identical at a low level. This observation leads to some interesting methods for improving computational performance. The talk will demonstrate examples using basic logic gates familiar to all engineering students.