Join

The Human Analysis Lab looks for people with strong very mathematical and programming skills to work on problems at the intersection of computer vision, machine learning, biometrics and computer graphics. If you think you may be interested, please get in touch with a solution to the following problem.

Problem Description

Consider a matrix $A$ of size $\mathbb{R}^{nd\times nd}$, where each non-overlapping $d \times d$ block of the matrix, $D_{ij}$, is a diagonal matrix. So the matrix consists of $n^2$ such blocks. An example of such a matrix is shown below:

$$\begin{bmatrix} D_{11} & D_{12} & D_{13} & \cdots & D_{1n} \\ D_{21} & D_{22} & D_{23} & \cdots & D_{2n} \\ \cdots & \cdots & \cdots & \cdots & \cdots \\ D_{n1} & D_{n2} & D_{n3} & \cdots & D_{nn} \end{bmatrix}$$

Construct an efficient data structure to represent such matrices and devise algorithms to perform matrix operations, such as matrix multiplications and matrix inverse, on the data structure you designed. Provide a technical write-up of your solution along with associated code implementing your solution.

Ranking

As a transparent, accessible and informative ranking system, CSRankings is entirely based on the top-conference publications in each area of computer science. MSU is highly ranked in the computer vision area. When comparing United States schools between 2015 and 2020, or in the last two years, MSU ranks No. 13, or No. 9 respectively.