Admissions & Aid
Visualization of a large social network’s nodes and connections
One of the hottest research topics in the field of networking is understanding the structure of large networks. This is particularly true in the emerging subfield of social networks. We focus on exploring properties that are related to the degrees of vertices and their neighbors in graphs. In one direction, we study and analyze various profiles of existing networks and random networks, and in another direction we are looking for graphs that realize given profiles. In addition, we investigate the space of all graphs whose degree sequences and other related profiles match some given characteristics.
Data, models, and tools for robust systems and software
Modeling and Analysis of Software and Networked Systems: The ongoing research is a multi-pronged approach for engineering large software and networked systems. Analyzing how developers interact with IDEs allows us to investigate how to predict development activities and how to improve these productivity tools. Observing software changes in software projects provides us opportunity not only to discover software architecture and common bugs, but also to suggest coding solutions. Examining system and network logs is an important means to understanding large and complex software and network systems, which in turn leads to solutions to improving these systems, such as removing performance bugs. Last, but not least, security is a cross-cutting concern in software and system design and implementation. For this, the interest lies in accountability and privacy—while preventive measures such as access control are critical to protect systems, software, and data, they do prevent misuse of these in the face of prevalent data collection and information flow. Students are welcome to contact the faculty for opportunities to take part in the research that provides ample experience in deepening learning and applying skills and knowledge in programming, data structure and algorithms, systems and networks, security and privacy, probability and statics, and machine learning.
CT of a patient obtained from Christiana Hospital in Delaware. We colored some portions to show automatic segmentation. We later automatically segmented the liver tumor on the upper right.
My research focuses on areas of computer science with a significant mathematical content. In the past I have worked on applications to robotics, medical imaging, constraint programming, and complexity theory. The medical imaging research resulted in a U.S. Patent. Our system allows the semi-automatic segmentation of CT and MRI, for example, in isolating soft tissue tumors. In the last several years I have been working in several areas. In Artificial Intelligence we have been working on two threads. The first thread involves developing search heuristics for difficult (NP-complete) constraint problems, an application that is of great importance in many areas, particularly in operations research problems for industry. We have developed new search heuristics that outperform state of the art software on difficult instances of a class of NP-complete problems. In the second thread we have been developing techniques in natural language processing to help classify text documents, of particular importance in the world of Big Data. In the second area we have worked on randomized graph search and developed a tool to measure the time such a search will likely take, with applications to Monte Carlo methods, an important technique in scientific computing. Our analysis also has applications to complexity theory, which characterizes the inherent difficulty of classes of computational problems. Finally, we continued work on pure complexity theory.
Combating software vulnerabilities
Usability and privacy aspects of cloud-based services. We perform usability studies to help the design of services that replace more traditional off-line ones, with the goal of providing a high degree of privacy and usability to the users.
Using advanced cryptography to enhance privacy and security. Some topics include utilizing secure multi-party computation technology to enable the use of confidential data in blockchain applications and enabling privacy-preserving computation on genomic data via homomorphic encryption.
Utilizing machine-learning techniques to detect software vulnerabilities and malware in apps for mobile devices.
Studying usability aspects of programming resource sites such as stack overflow. In particular as they affect different populations of developers. For example, men versus women, developers from different backgrounds, different geographies, etc.
Code Control (game to teach introductory programming, in development)
We pursue two independent areas of research. In one, we are interested in devising algorithms for problems related to problems in machine learning; for example, algorithms for minimizing the test-time budget when learning in the presence of attribute costs. In this line of research, we have devised approximation algorithms and structural results for a broad range of Boolean function classes and continue to investigate this topic through a combination of theoretical analysis and experiments.
In a completely separate line of research, we are investigating the use of serious educational games to help teach topics in computer science education (e.g., introductory programming and cybersecurity). We aim to create games that are fun and engaging, and help students learn.
Figure: Silhouette scores for k-means clustering for 2 ≤ k ≤ 40 (a) and 3D projection based on first three principal components (b) of 2433 SBC sessions in 18D space by entrainment measures.
Our lab is working on various research projects associated with automatic speaker state and trait recognition from speech and language, such as deception detection, personality recognition, prosodic modeling for sarcasm detection, nativeness detection, and influence detection. We are interested in answering questions about how multiple modalities and multiple tasks can be implemented together to improve recognition.
We are also working on learning robust and integrated models of entrainment in multiple modalities, to improve conversation analysis and to create more natural and trust-invoking virtual conversational agents.
Example of very high quality speech enhancement via synthesis demonstrating how our system can restore a signal from reverberation, low-bitrate coding, and packet loss to almost its original quality.
Speech enhancement by synthesis: Environmental noise is one of the largest problem for users of voice technologies, such as hearing aids, mobile phones, and automatic speech recognition. Current approaches to source separation and speech enhancement typically attempt to modify the noisy signal in order to make it more like the original, leading to distortions in target speech and residual noise. In contrast, this project uses the innovative approach of driving a speech synthesizer using information extracted from the noisy signal to create a brand new, high quality, noise-free version of the original sentence. Improvements in noise suppression and speech quality from this approach are expected to have important broader impacts for both the 36 million Americans who are hearing impaired and the 200 million Americans who use smart phones.
Identifying important speech cues: Hearing is central to human interaction, but the hearing process is not easily observed. The objective of this project is to train models to identify portions of speech utterances that are important to their being correctly identified by human listeners, and to use predictions from these models to make automatic speech recognition (ASR) systems more noise robust by focusing on those regions. The ability to identify important regions of an utterance could significantly advance our understanding of healthy and impaired hearing. Improvements in automatic speech recognition would have broader impacts on the 260 million Americans who use smart phones and the $100 billion ASR industry.
Soundscape ecology: Across North America, the Arctic and boreal regions have been warming at a rate two to three times higher than the global average. At the same time, human development continues to encroach and intensify, primarily due to demand for natural resources, such as oil and gas. The vast and remote nature of Arctic-boreal regions typify their landscapes, environment, wildlife, and people, but their size and isolation also make it difficult to study how their ecosystems are changing. To overcome these challenges, autonomous recording networks can be used to characterize “soundscapes”—a collection of sounds that emanate from landscapes. Unlike traditional observing methods that are expensive, labor-intensive, and logistically challenging, sound-recording networks provide a cost-effective means to both monitor and understand the response of wildlife to environmental and anthropogenic changes across vast areas. One particular challenge with this sound-measurement approach is extracting useful ecological information from the large volumes of soundscape data that are collected. This project will develop the techniques necessary to overcome this challenge.
I am currently working on several projects.
Neural Nets and Deep Learning for Sensory-motor Transformations
Research projects in my laboratory (Institute of Neural and Intelligent Systems) span a diverse range of topics. For over forty years, I have supervised research on the role of the vestibular system in stabilizing gaze and locomotion, modeling cardio-vascular regulation, modeling the mechanisms of learning in sensory-motor systems, robotics, and computational neuroscience. This work focuses on the neural mechanisms that control how humans and primates move in their environment as well as how the neural mechanisms control blood pressure and heart rate during vestibular activation. This work is ongoing. More recently, the laboratory is engaged in research on machine learning, development of virtual reality systems for studying spatial orientation in moving environments, database management, and the development of parallel architectures for fast computation. The machine learning project is focused on how recurrent neural nets and their capability to learn can be used to model event timing in acquiring reinforcement learning tasks. The database management is focused on developing parallel systems for fast acquisition and manipulation of large amounts of data. The virtual reality systems that we are exploring are focused on developing systems that can be used to test the vestibular system. I am also engaged in educational programs at both the Ph.D. (Computer Science and Neuroscience) and undergraduate levels (Star Early College program) and collaborate with faculty in psychology, biology, and chemistry in projects on the use of machine learning in these various fields.
Agent at work
My research spans two realms—science and business. One area involves the design and development of relational databases to support scientific applications, such as studies in neuroscience, to link external meta-data garnered from human and animal experiments into a relational database to enhance research. A second area relates to my past experience in the business world where I seek to employ techniques of information technology, particularly intelligent agents, to enhance business functionality.
Strand of DNA
We develop algorithms (and software) for searching for regularities in texts. We search for tandem repeats in DNA sequences, where a tandem repeat is defined as some pattern repeated contiguously. Tandem repeats in DNA sequences have been shown to be related to numerous hereditary diseases, yet their origin and function are still not well-understood. We also search for patterns and repetitions in two-dimensional texts, such as satellite images, as well as in compressed texts. We examine palindromes, which are a form of a repetition, where the second occurrence appears in reverse. Searching for an identical match is often not practical, hence, we develop algorithms that admit a certain level of fuzziness in the match. We study both the Hamming distance and edit distance with regards to repetitions and palindromes in strings as well as matrices. The goal is to optimize the time and space complexity of the algorithms.
Published and forthcoming textbooks
My research centers around three interconnected areas:
I am currently trying to understand categorical structures using these various measures of complexity and information.
My research group is interested in programming languages, algorithms, and implementation techniques for combinatorial search and optimization problems. Recent projects include:
Many algorithms and implementation techniques have been incorporated into the Picat system, and many more need to be explored.