Computer Science.

What is Computer Science?

Computer science is the study of the theoretical foundations of information and computing, and the systematic study of algorithmic processes- their theory, analysis, design, efficiency, implementation, and application-that describe and transform information.

How computer science fits into applied sciences

Applied science can be defined as the application of scientific knowledge transferred into a physical environment. This definition captures the essence of computer science which strives to solve practical problems by constructing sound theoretical models and implementing it on computer systems. Modelling, and hence computing, is a standard in today’s a typical scientific research environment, hence, computer science is an integral part of modern scientific study.

How Computer Science fits into the Lab

A computer scientist is concerned with the study of algorithms, which is finitely specified executable procedures for obtaining output values from input values. So what we should take from that statement is that programming does not begin to define computer science. Coincidentally the skill set taught by computer science is perfect for solving problems in the “new media” technology domain and thus is a perfect fit for the lab. In layman’s terms, computer science is the foundation of games, the models in information theory and the algorithms in networks and security.

Examples of projects and research topics of computer science students in the Lab

Modeling Online Social Networks using Quasi-clique Communities
Stephan Gouws

With billions of current internet users interacting through social networks, the need has arisen to analyze the structure of these networks. Many authors have proposed random graph models for social networks in an attempt to understand and reproduce the dynamics that govern social network development.

We propose a random graph model that generates social networks using a community-based approach, in which users’ affiliations to communities are explicitly modeled and then translated into a social network. Our approach explicitly models the tendency of communities to overlap, and also proposes a method for determining the probability of two users being connected based on their levels of commitment to the communities they both belong to. Previous community-based models do not incorporate community overlap, and assume mutual members of any community are automatically connected.

We provide a method for fitting our model to real-world social networks and demonstrate the effectiveness of our approach in reproducing real-world social network characteristics by investigating its fit on two data sets of current online social networks. The results verify that our proposed model is promising: it is the first community-based model that can accurately reproduce a variety of important social network characteristics, namely average separation, clustering, degree distribution, transitivity and network densification, simultaneously.

Topic-based unsupervised semantic parsing
Peter Hayward

Users are overwhelmed by the volume of information they have access to. Thus being able to reliably and accurately search information becomes crucial for work and in daily life. Today search terms used by search engines are typically based on keywords. Phrases and sentences are in use in some systems, but are rarely an option for the average user.

Semantic parsers can be used to develop better knowledge extraction systems, since they translate natural language sentences provided by the user to a formal ma- chine representation. However, the current state-of-the-art semantic parsers cannot interpret context based on the topics contained in the sentence and the document it originates from.

We therefore propose to develop a topic-based unsupervised semantic parsing framework that leverages observed and inferred topical information from corpora to disambiguate the semantic content of individual sentences. This leads to a parser that can be used on domain-independent corpora, unlike its predecessors.

Filtering Information Streams
Francois de Villiers

Billions of people interact with social networks on a daily basis and many people cannot keep with the constant information overload. In light of this, a need has risen to address how people interact and receive with the information generated by social networks.

We present an approach to categorise information in a user’s stream according to topics with the use of graphics models.

Development of a small scale search engine for academic publications
Marcel Dunaiski

One of the goals for my honours project is to implement a generic, scalable and user friendly crawler that can be used to crawl any type of resource available on the Internet. Furthermore, different ranking and similarity algorithms are investigated for the implementation of the search engine. The aim is to return the most relevant publications and authors by academic topic for user queries.

Four Dimensional Graphics Engine
Hilgard Bell

Imagining a fourth dimension is a difficult task, yet useful to consider when tackling problems concerning three-dimensional models over time (where time is represented as a fourth dimension), collections of high dimensional data or even when creating games in hopes of stretching the imagination of those who would play it. My honours project is to research the concept of higher dimensional worlds and previous implementations of four-dimensional graphics engines and then to implement our own, mostly for use in games.

Why it would make sense for a computer science student to apply for a bursary

Having people who study the fundamentals of computing and applying this theory to solve important problem is paramount in a lab where the work is based on computing.

For more information on Computer Science and other courses relating to Applied Sciences, visit the Computer Science department website.

Studying Computer Science and interested in a bursary? Apply here for a MIH Media Lab bursary.