The Internet is growing rapidly in terms of websites, users and uses. People use the Internet for reference, shopping, social networking, communications, business and much more. Though the Internet is useful, there are many risks associated with its use, like malicious websites, identity theft, hateful content and fraudulent practices. Online...
Within the past several years the technology of high-throughput sequencing has transformed the study of biology by offering unprecedented access to life's fundamental building block, DNA. With this transformation's potential a host of brand-new challenges have emerged, many of which lend themselves to being solved through computational methods. From de...
Experimental game theory is the use of game theoretic abstractions—games, players, and strategies—in experiments and simulations. It is often used in cases where traditional, analytical game theory fails or is difficult to apply. This thesis collects three previously published papers that provide domain-specific language (DSL) support for defining and executing...
This dissertation addresses two fundamental problems in computer vision—namely,
multitarget tracking and event recognition in videos. These problems are challenging
because uncertainty may arise from a host of sources, including motion blur,
occlusions, and dynamic cluttered backgrounds. We show that these challenges can be
successfully addressed by using a multiscale,...
This dissertation addresses a number of inter-related and fundamental problems in computer vision. Specifically, we address object discovery, recognition, segmentation, and 3D pose estimation in images, as well as 3D scene reconstruction and scene interpretation. The key ideas behind our approaches include using shape as a basic object feature, and...
Free/Open Source Software (FOSS) is a powerful development paradigm for
creating software. Increasingly more FOSS projects, like Firefox and Android, are
integrated into mainstream technology. It is important that FOSS projects serve its
diverse user base well. Several surveys have found that existing FOSS communities
are very homogenous populations and...
Acting intelligently to efficiently solve sequential decision problems requires the ability to extract hierarchical structure from the underlying domain dynamics, exploit it for optimal or near-optimal decision-making, and transfer it to related problems instead of solving every problem in isolation. This dissertation makes three contributions toward this goal.
The first...
For building robust software applications, it is important for the software engineer to make efficient use of the available building blocks. Learning the basic language constructs is only the first step in this process. It is becoming increasingly important for software engineers, especially students, to get acquainted with the available...
While there are powerful keyword search systems that index all kinds of resources including emails and web pages, people have trouble recalling semantic facts such as the name, location, edit dates and keywords that uniquely identifies resources in their personal repositories. Reusing information exasperates this problem. A rarely used approach...
Dimensionality reduction (DR) is an efficient approach to reduce the size of
data by capturing the informative intrinsic features and discarding the noise. DR
methods can be grouped through a variety of categories, e.g. supervised/ unsupervised,
linear/non-linear or parametric/non-parametric. Objective function based
methods can be grouped into convex and non...
Parallel processors are classified into two classes: shared-memory multiprocessors and distributed- memory multiprocessors. In the shared-memory system, processors communicate through a common memory unit. However, in the distributed multiprocessor system, each processor has its own memory unit and the communications among the processors are performed through an interconnection network. Thus,...
A distributed system is a network of multiple autonomous computational nodes designed primarily for performance scalability and robustness. The performance of a distributed system depends critically on how tasks and resources are distributed among the nodes. Thus, a main thrust in distributed system research is to design schemes for distributing...
Beaversource provides both code-hosting tools and social networking in one place. Students and faculty at Oregon State University have been using Beaversource to host their projects, both for classwork and research. Several usability problems were reported in a survey conducted on Beaversource last year. Some of these issues were severe...
Visual programming languages (VPLs) have been widely used to support end-user programming. However, end users are still not able to reuse code as actively as professional programmers, even when given abundant resources such as a large VPL program repository. One reason may be that current VPL development environments lack features...
In a software development cycle, programs go through many iterations. Identifying and
understanding program changes is a tedious but necessary task for programmers, especially when
software is developed in a collaborative environment. Existing tools used by the programmers
either lack in finding the structural differences, or report the differences as...
Modern technology has enabled the advancement of biological research through the use of powerful machines and computers as well as innovative computer programs. Advances in sequencing technology and software enable us to make de novo assemblies of organism genomes, and the development of specialized computer programs can automate routine but...