Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Tyrel Russell is active.

Publication


Featured researches published by Tyrel Russell.


algorithmic decision theory | 2009

Manipulating Tournaments in Cup and Round Robin Competitions

Tyrel Russell; Toby Walsh

In sports competitions, teams can manipulate the result by, for instance, throwing games. We show that we can decide how to manipulate round robin and cup competitions, two of the most popular types of sporting competitions in polynomial time. In addition, we show that finding the minimal number of games that need to be thrown to manipulate the result can also be determined in polynomial time. Finally, we show that there are several different variations of standard cup competitions where manipulation remains polynomial.


principles and practice of constraint programming | 2008

An Application of Constraint Programming to Superblock Instruction Scheduling

Abid M. Malik; Michael Chase; Tyrel Russell; Peter van Beek

Modern computer architectures have complex features that can only be fully taken advantage of if the compiler schedules the compiled code. A standard region of code for scheduling in an optimizing compiler is called a superblock. Scheduling superblocks optimally is known to be NP-complete, and production compilers use non-optimal heuristic algorithms. In this paper, we present an application of constraint programming to the superblock instruction scheduling problem. The resulting system is both optimal and fast enough to be incorporated into production compilers, and is the first optimal superblock scheduler for realisticarchitectures. In developing our optimal scheduler, the keys to scaling up to large, real problems were in applying and adapting several techniques from the literature including: implied and dominance constraints, impact-based variable ordering heuristics, singleton bounds consistency, portfolios, and structure-based decomposition techniques. We experimentally evaluated our optimal scheduler on the SPEC 2000 benchmarks, a standard benchmark suite. Depending on the architectural model, between 98.29% to 99.98% of all superblocks were solved to optimality. The scheduler was able to routinely solve the largest superblocks, including superblocks with up to 2,600 instructions, and gave noteworthy improvements over previous heuristic approaches.


IEEE Transactions on Knowledge and Data Engineering | 2009

Learning Heuristics for the Superblock Instruction Scheduling Problem

Tyrel Russell; Abid M. Malik; Michael Chase; P. van Beek

Modern processors have multiple pipelined functional units and can issue more than one instruction per clock cycle. This places a burden on the compiler to schedule the instructions to take maximum advantage of the underlying hardware. Superblocks - a straight-line sequence of code with a single entry point and multiple possible exit points - are a commonly used scheduling region within compilers. Superblock scheduling is NP-complete, and is done suboptimally in production compilers using a greedy algorithm coupled with a heuristic. The heuristic is usually handcrafted, a potentially time-consuming process. In this paper, we show that supervised machine learning techniques can be used to semiautomate the construction of heuristics for superblock scheduling. In our approach, labeled training data were produced using an optimal superblock scheduler. A decision tree learning algorithm was then used to induce a heuristic from the training data. The automatically constructed decision tree heuristic was compared against the best previously proposed, handcrafted heuristics for superblock scheduling on the SPEC 2000 and MediaBench benchmark suites. On these benchmark suites, the decision tree heuristic reduced the number of superblocks that were not optimally scheduled by up to 38 percent, and led to improved performance on some architectural models and competitive performance on others.


Journal of Heuristics | 2008

Learning heuristics for basic block instruction scheduling

Abid M. Malik; Tyrel Russell; Michael Chase; Peter van Beek

Abstract Instruction scheduling is an important step for improving the performance of object code produced by a compiler. A fundamental problem that arises in instruction scheduling is to find a minimum length schedule for a basic block—a straight-line sequence of code with a single entry point and a single exit point—subject to precedence, latency, and resource constraints. Solving the problem exactly is known to be difficult, and most compilers use a greedy list scheduling algorithm coupled with a heuristic. The heuristic is usually hand-crafted, a potentially time-consuming process. In contrast, we present a study on automatically learning good heuristics using techniques from machine learning. In our study, a recently proposed optimal basic block scheduler was used to generate the machine learning training data. A decision tree learning algorithm was then used to induce a simple heuristic from the training data. The automatically constructed decision tree heuristic was compared against a popular critical-path heuristic on the SPEC 2000 benchmarks. On this benchmark suite, the decision tree heuristic reduced the number of basic blocks that were not optimally scheduled by up to 55% compared to the critical-path heuristic, and gave improved performance guarantees in terms of the worst-case factor from optimality.


international joint conference on artificial intelligence | 2011

An empirical study of seeding manipulations and their prevention

Tyrel Russell; Peter van Beek

It is well known that cheating occurs in sports. In cup competitions, a common type of sports competition, one method of cheating is in manipulating the seeding to unfairly advantage a particular team. Previous empirical and theoretical studies of seeding manipulation have focused on competitions with unrestricted seeding. However, real cup competitions often place restrictions on seedings to ensure fairness, wide geographic interest, and so on. In this paper, we perform an extensive empirical study of seeding manipulation under comprehensive and realistic sets of restrictions. A generalized random model of competition problems is proposed. This model creates a realistic range of problem instances that are used to identify the sets of seeding restrictions that are hard to manipulate in practice. We end with a discussion of the implications of this work and recommendations for organizing competitions so as to prevent or reduce the opportunities for manipulating the seeding.


canadian conference on artificial intelligence | 2008

Mathematically clinching a playoff spot in the NHL and the effect of scoring systems

Tyrel Russell; Peter van Beek

A problem of intense interest to many sports fans as a season progresses is whether their favorite team has mathematically clinched a playoff spot; i.e., whether there is no possible scenario under which their team will not qualify. In this paper, we consider the problem of determining when a National Hockey League (NHL) team has clinched a playoff spot. The problem is known to be NP-Complete and current approaches are either heuristic, and therefore not always announced as early as possible, or are exact but do not scale up. In contrast, we present an approach based on constraint programming which is fast and exact. The keys to our approach are the introduction of dominance constraints and special-purpose propagation algorithms. We experimentally evaluated our approach on the past two seasons of the NHL. Our method could show qualification before the results posted in the Globe and Mail, a widely read newspaper which uses a heuristic approach, and each instance was solved within seconds. Finally, we used our solver to examine the effect of scoring models on elimination dates. We found that the scoring model can affect the date of clinching on average by as much as two days and can result in different teams qualifying for the playoffs.


European Journal of Operational Research | 2012

A hybrid constraint programming and enumeration approach for solving NHL playoff qualification and elimination problems

Tyrel Russell; Peter van Beek

Many sports fans invest a great deal of time into watching and analyzing the performance of their favorite team. However, the tools at their disposal are primarily heuristic or based on folk wisdom. We provide a concrete mechanism for calculating the minimum number of points needed to guarantee a playoff spot and the minimum number of points needed to possibly qualify for a playoff spot in the National Hockey League (NHL). Our approach uses a combination of constraint programming, enumeration, network flows and decomposition to solve the problem efficiently. The technique can successfully be applied to any team at any point of the season to determine how well a team must do to make the playoffs.


Journal of Scheduling | 2012

A computational study of heuristic and exact techniques for superblock instruction scheduling

Michael Chase; Abid M. Malik; Tyrel Russell; R. Wayne Oldford; Peter van Beek

Compilers perform instruction scheduling to improve the performance of code on modern computer architectures. Superblocks—a straight-line sequence of code with a single entry point and multiple possible exit points—are a commonly used scheduling region within compilers. Superblock scheduling is NP-complete, and is done suboptimally in production compilers using a greedy algorithm coupled with a heuristic. Recently, exact schedulers have also been proposed. In this paper, we perform an extensive computational study of heuristic and exact techniques for scheduling superblocks. Our study extends previous work in using a more realistic architectural model, in not assuming perfect profile information, and in systematically investigating the case where profile information is not available. Our experimental results show that heuristics can be brittle and what looks promising under idealized (but unrealistic) conditions may not be robust in practice. As well, for the case where profile information is not available, some methods clearly dominate. Notably, a much inferior method is deployed in at least one existing compiler.


international conference on tools with artificial intelligence | 2012

Detecting Manipulation in Cup and Round Robin Sports Competitions

Tyrel Russell; Peter van Beek

Some of the core attributes of sports are supposed to be integrity, honesty and sportsmanship. However, there have been numerous cases where individual athletes and teams have thrown games and colluded to manipulate sports competitions. Much of the previous work has focused on proving that some types of competitions are computationally hard to manipulate and thus possibly resistant to manipulation. In contrast, in this paper we focus on detecting patterns of manipulations in sports competitions by coalitions of teams. We show that it is possible to successfully detect certain patterns of manipulations in cups and round robins, two of the most common types of sports competitions. The practical benefit of our approach is a tool that can be used by competition organizers to highlight suspicious play within the competition and so aid in the detection of cheating coalitions.


conference of the centre for advanced studies on collaborative research | 2005

Learning basic block scheduling heuristics from optimal data

Tyrel Russell; Abid M. Malik; Michael Chase; Peter van Beek

Collaboration


Dive into the Tyrel Russell's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

P. van Beek

University of Waterloo

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Toby Walsh

University of New South Wales

View shared research outputs
Researchain Logo
Decentralizing Knowledge