Abstract: As the gap between processor and memory continues to increase, cache is playing an more and more important role. Cache data reuse, in many programs, is the key factor influencing the performance. In uniprocessor architecture, the optimal placement of data in memory for minimal cache misses was shown to be NP-complete. However, some heuristics were proposed and proved to be effective in practice. In this project, we plan to explore the problem of data placement in shared-cache architectures, such as Chip Multiprocessors. We will show the hardness of the problem and design heuristics that have some theoretical value.
Abstract: Recently large-scale online social networks are emerging as huge dissemination and marketing platforms, allowing information and ideas to influence a large population in a short period of time. Such social network can be modeled as an undirected graph G=(V, E), with nodes in V denoting the individuals in the network and edges in E modeling the relationship between individuals. Influence Maximization is the problem of finding a small subset of nodes to initiate the influence propagation in the social network such that the spread of influence is maximized. This project will review the existed algorithms for this problem, and make modification and improvement if possible.
Abstract: On-line social networking sites, such as Facebook, can be modeled as undirected graphs, more specifically, users can be modeled as nodes while a friendship relations as edges, plus, users in the same network can be grouped as a cluster. Because the privacy setting usually allows users to configure their friendship to be either public or private, while all users are visible, only part of the the social networking graph is revealed. The problem is given any 2 nodes, can we decide whether they are connected by an edge, provided incomplete graph information. If the problem can be settled, then the originally hidden users topology can be recovered, and the users are losing their privacy. To solve the problem, we can take advantage of users' networks, public relations; further more, there are different level of relations such as friendship, relationships and family members etc, which we can make use of.
Abstract: Much like the biological viruses that affect the natural environment, the pattern in which information is propagated throughout the Internet can exhibit the movement of an epidemic. This study will compare the malicious spread of a destructive virus to the constructive spread of viral web content. In both cases, the initiator has the same goal: spread the information quickly. We will see if benign web content can be spread as effectively as an invasive virus. Moreover, by using that content as input to an epidemic algorithm, we will show how we can control its spread by toggling various parameters. We hope to show how viral links, while not as invasive as a virus, can be spread just as effectively.
Abstract: Consensus is the process of agreeing on one result among a group of participants. This problem becomes difficult when the participants or their communication medium may experience failures. Paxos is a family of protocols for solving consensus in a network of unreliable processors. Since published in 1998, Paxos algorithm has been used Google, IBM, Microsoft and other corporations in their products. In this project, we will firstly introduce some background knowledge of consensus problem, then present several algorithms to solve the problem and finally focus on examining the Paxos algorithm in the term of its motivation, its main idea and application.
Abstract: Tetris is a puzzle video game originally designed by Alexey Pajitnov in the Soviet Union in 1984. Players lose the game when a tetrimino stack up to the top of the playing field either by misplacement or failing to keep up with the increasing speed. Artificial Intelligence (AI) has been introduced to play Tetris. So far as I know, the highest record of AI is eliminating 231,675,678 lines. Here we raise a question: can we get a higher score? The answer should be yes. But what should we do to break the record is still an open ended problem. In my project, I will tackle with the problem from two sides: First is doing literature review of Tetris AI algorithms, including static algorithms and dynamic algorithms with learning ability, then analyze their pros and cons for developing my own algorithm; Second is collecting expertÕs experience of playing Tetris, and applying it into the AI Algorithms to improve the performance. This is because for most heuristic algorithms, whether itÕs effective or not depends on the strategies which result from our previous experience. The better previous experience, the better results. Finally, I will implement my Tetris AI algorithm based on Javascript for its cross-platform property.
Abstract: Content-aware media re-targeting has drawn much attention in graphics and vision research in recent years. At the same time, many re-targeting methods have been developed. Seam carving is one of them. Seam carving is developed by Shai Avidan and Ariel Shamir and showed up in the paper ÒSeam Carving for Content-Aware Image ResizingÓ of SIGGRAPH'07. For resizing image, seam carving operator establishes the number of seams, connected paths of low energy pixels that are determined by magnitude of gradient, in an image and automatically removes seams to reduce image size or inserts seams to extend it. Dynamic programming is used in seam carving algorithm to calculate the cumulate pixels' energy. And, tracing back is used to generate a seam starting from the minimum cumulate energy. In this project, we aim to re-implement the seam carving algorithm and compare the results from other re-targeting operation. If we get enough time, we also plan to do some interesting applications by using seam carving, such as object removal.
Abstract: Disk power saving has received an increasing amount of attention recently. Disks are often under-utilized and disk accesses often demonstrate a bursty pattern. One way to solve the problem is using scheduling strategy based on the Cumulative Distribution Histogram (CDH) of idle intervals to define `when' and `for how long' disks should be powered down. The goal is to find a scheduling pair (I,T), where I is the idle waiting time after a disk falls in idle, and therefore specifies when to power down a disk; T is the time the disk remains in power savings. The best scheduling pair (I,T) is defined as one that delivers maximum power saving S% with a target performance degradation up to D%. Current search algorithms are based on exhaustive search from all values that I and T can take for the CDH values, which is not efficient. The goal of this project is to develop an alternative searching algorithm. With the help of stochastic optimization and pruning, we expect our new algorithm to be significantly improved over the current exhaustive algorithm in terms of searching speed and space overhead.
The writing of your paper should follow common practice of writing a technical paper in Computer Science. Specifically, your paper should contain a title, author information (name(s), affiliation, and email), an abstract (usually no more than 100 words), an introduction section, sections of technical content of the paper, a conclusion section, followed by a list of references. It should be of a length that is just enough to explain everything precisely and concisely.
The deadline to submit your paper (in hard copy or in pdf) is December 8.