Qualifying Exam for Alvin Leung ------------------------------- Problem 1 1.1) 19/20 This was answered very well. Just a couple of minor points: - It is stated that 3x3 matrices can do rotation and scaling, but 4x4 is needed for translation. This is true, but the usual way of looking at this is that when moving objects around in 3D space, 3x3 matrices will handle rotation and translation. It is the scaling that is the additional thing that is added in the computer graphics context (i.e. this is not required in the usual mathematical/physical context of objects moving in space), and so I would have said that the scaling requires a 4x4 transformation matrix. - In the section on computing light and shade, it is stated that the color of objects can be computed concurrently, but surely further parallelism is available since the color could be computed for each pixel concurrently. 1.2) 6/10 Should have explained the data structures, e.g. pixel and image_buffer, in particular should have specified how the data is distributed, i.e. what is distributed over processors and what is global. The pseudo-code fragment by itself does not specify the parallelism. 1.3) 5/10 Too vague, and no mention of the effects of latency and the possibility of load imbalance. 30/40 for this section Problem 2 2.1) 6/10 This answer was a bit too brief and not explained very well. For example, the DEM does not form a polygon based terrain model. It is just a grid of elevation points. It must be converted into polygons using triangulation or squares. Need to explain better how this is specified in the VRML. Just listing the VRML file is not enough - need to explain what the elements mean and how they are related to the 3D terrain images. 2.2) 4/5 This answer is OK but again a bit too brief. 2.3) 9/10 This was answered very well. 2.4) 8/10 This was answered quite well. 2.5) 3/5 What this question meant to address was a comparison of the sizes of the image file in each instance, and from those results, a calculation of the bandwidth required for real-time rendering for each. Unfortunately this is not how the question was worded, so you managed to use this loophole to avoid computing the size of the VRML data set! You should have shown the reasoning behind your result for sending uncompressed images, i.e. 512x512 pixels * 3 bytes for color * 8 bits per byte * 30 frames per second = 180 Mbits/sec. It was expected that you should be able to give a rough estimate (which is what the question asked for) of the compression ratio for terrain image data, say 5-10 using JPEG, giving roughly 20-40 Mb/s. For the second part, you could again have given a rough estimate of the bandwidth required for an MPEG stream. However the point here was to try to get you to estimate the amount of data for an ideal client/server algorithm, for example if the server could do wavelet compression of the polygons and textures, and the server could do the rendering, so that the smallest amount of data possible would need be transferred from server to client. 30/40 for this section. Problem 3 3.1) 4/5 Didn't explain that L is lower triangular and U is upper triangular, and why this approach is adopted, i.e. that it is much easier to do the Gaussian elimination with triangular matrices. 3.2) 3/5 OK, but a little too brief. 3.3) 4/5 OK, but a little too brief. 3.4) 4/5 OK 15/20 for this section. Overall grade is 75% which is a PASS. Paul Coddington