2008 AMSC/CMSC 660 Term Project Information

12-02-08 Notes

  • A note on accessing journals over the internet at UMD:
  • Some journals (e.g., SIAM journals) can be accessed just by being on the UMD domain and going to the journal's website.
  • Others (e.g., for-profit journals published by Springer, Elsevier, etc.) require that you go to the UMD library "research port" http://www.lib.umd.edu/ and connect to the journal from there.
  • And for really "old" things you might have to actually walk over to the Engineering and Physical Sciences Library, just like generations of scholars before you.
  • When you submit your project, send it as an attachment to email to oleary@cs.umd.edu
  • Do not send your project to Chris.
  • I need to be at a thesis defense 10am - 12:30pm on December 16. To avoid "did she receive it" anxiety, projects received between 10am and 1:30pm will have no late penalty. Projects received between 1:31pm Dec 16 and 10am Dec 17 will have a 15% late penalty.
  • I will acknowledge receipt of your project as soon as I have saved the attachment(s) to your email.
  • Now is a good time to review the submission instructions and the grading criteria.
  • The assignment: Suppose that you are the instructor for 660. Write a case study for the class that solves an interesting application problem, using one or more of the algorithms studied this semester. Also write a solution for the case study, including well-documented Matlab code.

    Deadlines and points:

  • By November 19, you should send me e-mail with the title and a short description of your project.
  • The project is due at 10 am Tuesday, December 16.
  • It is worth 100 points.
  • There will be a 15% penalty for projects turned in up to 24 hours late, 30% penalty for projects turned in 24--48 hours late, etc.
  • Model your project on the Case Study chapters in the textbook, the corresponding chapters in the solution manual, and the software provided with it. A case study should typically have 4-5 challenges.

    The project should include:

  • one or more written challenges to explore the basis of the algorithm or the nature of the problem.
  • one or more Matlab challenges that solve the problem using one or more algorithms and then evaluate the goodness of the answers.
  • a discussion component.
  • a list of references.
  • How to get started: Each person is required to have a unique project, so tell me your idea, and I will add it to the list of claimed topics on this page. If you don't have any ideas, let's talk.

    What to submit for the project:

  • The assignment, as you would hand it out to students.
  • The answers to the written problems, Matlab programs (documented to the standards in Chapter 4), any necessary data files, and a discussion.
  • Also include a list of relevant references.
  • How to submit: Submit your project by e-mail. The time stamp on the e-mail will determine whether the project is on time or late.

  • The Matlab programs should be in plain text, stored in files that can actually be run by Matlab.
  • Data files should be in .mat format.
  • The assignment, answers, and discussion should be in plain text, html, pdf, or ps format.
    Microsoft-formatted documents (Word, Excel, Powerpoint, etc.) will not be accepted; submit a pdf or ps file for these.
  • The entire set of files should be bundled into a single file (in tar, zip, or gzip format) and attached to the e-mail.
  • My workstation runs UNIX, so Microsoft-specific features are unlikely to work properly.
  • I'll acknowledge your submission by e-mail after I have successfully extracted the files.

    Some questions that will be asked while evaluating a project:

  • The assignment:
  • Is it clear and correct? Was it spell-checked?
  • Does it reinforce ideas taught in the class and make it clear why they are useful?
  • Does it contain written questions and programming?
  • Is the application explained well to a novice?
  • Do the students have all of the information they need to complete the assignment?
  • Is it appropriately difficult for 660 students?
  • Is it interesting and novel?
  • If appropriate, are references given where a student could go for more information?
  • Do the students learn important lessons by completing the assignment?
  • The answer:
  • Is it clear and correct? Was it spell-checked?
  • Are the Matlab codes well designed and well documented?
  • Warning: The only failing grades I have given on this assignment have been for lateness or plagiarism. If you use someone's ideas, cite the source. If you use a direct quote, use quotation marks and cite the source. And don't expect a good grade on a project that is mostly someone else's work.

    A note on formatting: The format for your project does not need to be the same as the homeworks that I have given you, but here is a Latex template (which uses the class file found here ) and the resulting pdf output , in case you find it useful.

    If you can't think of a topic, here are some ideas to consider:

  • Solve an optimal control problem using variants on methods discussed in the book.
  • Form and solve an ecological model.
  • Give an application of semidefinite programming and solve the problem.
  • Present parallel algorithms for factoring matrices. (One person could consider vector processors while another considered a network of connected processors.)
  • Present an application of surface fitting and (stable) algorithms to do it.
  • Present an application of multidimensional integration and solve it.
  • Present an application that produces a system of nonlinear equations and solve it.
  • Projects chosen by other students this semester and in previous semesters: Your project must be different from all of these, so either pick a different topic or check with me to make sure that your ideas are sufficiently different from what these students did.

    This semester:

  • Speech analysis and modeling based on rotational invariant techniques (ESPRIT)
  • Toeplitz matrices and least squares problems
  • A Comparison of Clustering Algorithms for Gene Expression Microarray Data
  • Image Segmentation using Spectral Clustering Methods
  • Failure prediction of MLCCs under temperature-humidity-bias testing conditions
  • Motion of 2 and 3 particle systems in a central force
  • A Monte Carlo Approximate SVD
  • Evolutionary Game Equilibrium Points/Opponent Modeling in a Negotiation Game
  • Non-linear PCA for feature selection and clustering
  • Inverse Kinematics for Redundant Robotic Manipulators
  • Optimization for guardian placement on campus
  • Expectation-Maximization algorithm and Image Segmentation
  • Numerical solution of boundary value problems in chemical vapor deposition reactor systems
  • Product Sales Estimations using Monte Carlo methods
  • Use of the improved fast Gaussian transform in linear system solving
  • Monte Carlo and finite differences in option pricing
  • Monte Carlo methods in natural language processing
  • Digital photography post-processing
  • Social learning strategies
  • Photon mapping with Monte Carlo
  • Contaminant Source Reconstruction Using Monte Carlo Techniques
  • Approximating images with wavelet dictionaries
  • Circuit Analysis of Winner Take All (WTA) networks
  • Monte Carlo simulation of a vapor deposition process: minimizing surface roughness
  • Direct Linear Transformation of 2D Images
  • Estimation of Characteristics of Ellipsoid Shaped Objects
  • ODEs in solving first-price auctions
  • Previous semesters:

  • Use variants of latent semantic indexing (SVD and other decompositions) to perform document retrieval.
  • Perform image compression using various matrix-based approaches.
  • Present the fast multipole algorithm in matrix terms and solve a problem using it.
  • Survivable Network Design
  • Formulate the data assimilation problem in meteorology in terms of our matrix factorizations.
  • Use wavelets to approximate a signal, and compare with Fourier analysis.
  • Designing a helicopter seat to damp vibration
  • Illustrate the role of unitary matrices in quantum computing.
  • Analysis of poker
  • Support vector machines
  • Mobile emergency communcation
  • Derivative-free methods for constrained optimization
  • Solution of convection-diffusion equation using ODEs
  • Protein folding using homotopy methods
  • Monte Carlo models of raindrops
  • Hydro-mechanical Analysis of a Magnetorheological Energy Absorber (MREA) with Bifold valves for Shock Load Mitigation
  • Plasma physics particle simulation
  • Independent component analysis
  • Monte Carlo for Markov chains and Bayesian Networks
  • Parallel Algorithms for Scalar Product and LU Decomposition
  • Health diagnostics and performance diagnostics of electronic systems
  • Linear rational equations
  • Location estimation using gps
  • Solving the human heart dipole problem using tabu search
  • FIR eigenfilters design
  • Kalman filtering, linear and nonlinear
  • Face recognition by PCA
  • Metropolis algorithm for finding independent sets in a graph
  • Simulated annealing for particles with Lennard-Jones potential
  • Neuronal layout optimization
  • Maximum entropy design of computer experiments
  • CMOS circuit optimization using geometric programming
  • Preconditioning conjugate gradients
  • SVD filtering for video images
  • ODE models of structured population dynamics
  • Metropolis for DSP address optimization
  • Spectral clustering methods for image segmentation
  • Solution of the secular equation
  • Monte Carlo description of a dynamic terrain
  • A Metropolis-based algorithm for solving the Prisoner's Dilemma
  • Singular value analysis of cryptograms
  • Handwritten Postcode recognition by PCA
  • Document clustering through matrix factorization.
  • epipolar alignment of stereo cameras
  • Finding Fundamental Matrix for Stereo Vision
  • minimizing helicopter vibration using flap control