Honors Thesis Proposal: Development of MATLAB® GUI for Signal Processing Methods for the Extraction of Non-Stationary Sinusoids by Diana L. Matcovich Advisor: Dr. A. K. Ziarani Abstract Two new signal-processing techniques, the APM and the APFM, have recently been developed. This thesis proposes to create a MATLAB GUI (Graphical User Interface) to demonstrate the potential uses of these algorithms. MATLAB is a matrix-based technical computing program widely used throughout the scientific, engineering and mathematical communities. GUI’s provide a pictorial interface between a user and program code, facilitating ease and frequency of use. The applications of the APM and APFM are widespread, from testing the hearing of newborns to improving computer disk drives. Development of a MATLAB GUI for these algorithms will increase awareness of these algorithms, to the benefit of their creators and potential users. Introduction Within this thesis the creation of a single MATLAB GUI (Graphical User Interface) for two newly developed signal-processing algorithms, APM and APFM is proposed. The development of the GUI will increase exposure for these new methods, which will help to spread valuable information throughout the engineering, mathematical and scientific communities. It will also provide an intuitive, easy-to-use interface to demonstrate these algorithms. Graphical User Interfaces are a common sight in the digital age. They have become ubiquitous to the point of being invisible. They are used every day without being noticed, on ATM’s, websites and PC’s. GUI’s provide a pictorial faceplate that allows users to call various functions and edit their parameters without ever touching a program’s actual code. GUI’s are the bridge that connects computer code to something everyday users can utilize. MATLAB, a product of The MathWorks, Inc., is a program widely used throughout the target community. MATLAB, or Matrix Laboratory, is used for “mathematical computation, analysis, visualization, and algorithm development.” (www.mathworks.com/products) The use of MATLAB to develop the GUI will allow its use on multiple operating platforms, including Windows and Linux, thereby increasing its versatility. The GUI will provide an interface between the MATLAB user and the application of the algorithms. Thus, the user will not need to have a complete knowledge of command-line level MATLAB programming to effectively utilize the algorithms. In this way, knowledge and use of these algorithms will greatly increase, to the benefits of both their creators and users. Within this thesis, a GUI will be created for two signal processing algorithms developed by M. Karimi-Ghartemani and A.K. Ziarani. Both are “non-linear adaptive filters” which are designed to extract “a desired signal and estimate its amplitude, phase angle and frequency.” The first of these filters is the Amplitude Phase Model (APM) which is capable of tracking an input signal that varies in amplitude and phase. The second is the Amplitude Phase Frequency Model (APFM), which is capable of tracking an input signal that varies in amplitude, phase and frequency. The mathematical derivations of both filters can be seen in “Periodic orbit analysis of two dynamical systems for electrical engineering applications.” [2] The GUI will take an input signal, a non-stationary sinusoid, from the user, decide which of the two algorithms to implement and then process the signal in the most timeeffective manner possible. Thus, the user will need to have no knowledge of the algorithms to successful extract the input signal. Previous filters were not able to track signals that varied in amplitude, phase or frequency without a change in their internal structure, severely limiting their usefulness in real-world applications. Thus, the new algorithms provide a vast improvement over their predecessors. Wider awareness of these new methods will be of great benefit to those who work in the area of signal processing. Methodology Within this thesis, it is proposed that a single GUI be developed. It would determine from the nature of the input signal whether to utilize the APM or the APFM signal processing algorithm and determine the parameter values that would lead to the fastest extraction possible for any given input signal. The GUI is to be intuitive, adaptive, and fully demonstrate the power of these two new algorithms. These goals are to be accomplished partly with the use of MATLAB GUIDE. GUIDE is the internal GUI-building software for the MATLAB program. Understanding of the algorithms will be acquired though references “Periodic orbit analysis of two dynamical systems for electrical engineering applications” [1] and “Performance characterization of a non-linear system as both an adaptive notch filter and a phase-locked loop”[2]. From these, the features necessary for the GUI will be determined. Using the resources of www.mathworks.com [3] and Mastering MATLAB 6 [4], as well as online GUIDE references, several iterations of the GUI will be constructed. After each draft, consultation with the advisor, Professor Ziarani [1,2], will be sought. Further references and examples will be found and the GUI revised accordingly. Analysis of the final work will be the evaluation of Professor Ziarani, The MathWorks, Inc., as well as that of several other users with a range of familiarity with the algorithms. This will provide a spectrum of analyses from users ranging from professional to amateur, thus giving a full evaluation of the GUI’s. Future Work Future work falls into two categories, that relating to GUI creation in general and that relating to the APM and APFM algorithms in particular. GUI creation will continue as long as new methods of any sort are being produced. As mentioned above, GUI’s provide a bridge between the creators and users of any given method. Future work involving the APM and APRM algorithms in particular will include continued revision of the MATLAB GUI’s as well as development of GUI for platforms other than MATLAB. Schedule January 2004 Draft Thesis Proposal and begin GUI -define project, write first draft introduction -begin literature search, identify all main sources -create tentative schedule -draft proposal outline, research required format -acquire familiarity with GUIDE -become familiar with the APM and APFM February 2004 Revise and Redefine GUI -complete and submit funding request form -create sample GUI to investigate techniques -revise introduction -draft methodology section March 2004 First Draft GUI -outline basic functions and features that are needed/desired -complete first draft GUI -reevaluate and revise GUI with mentor -update thesis proposal -consult with Professor Shen re. progress April 2004 Thesis Proposal -complete thesis proposal -submit thesis proposal -continue GUI revision -definition of μ1 within GUI complete Summer 2004 Continue Progress as Summer Internship Allows -continue GUI revision -definition of μ2 within GUI complete -create Thesis outline -July 1, 2004: submit communication about Thesis progress September 2004 Begin first draft thesis Revise GUI -APM vs. APFM within GUI complete October 2004 November Revise GUI Submit draft of up-to-date Thesis Revise GUI -definition of μ3 within GUI complete December 2004 Complete first draft Thesis Submit Thesis comments Submit first draft Thesis January 2005 End-February 2005 March 2005 March 2005 April 2005 Complete final draft GUI Submit review of First Draft Thesis comments Revise GUI Compete Thesis Final Draft Submit Thesis Final Draft Submit review comments Prepare Oral Presentation Present Oral Thesis Presentation Complete Final Thesis Oral Thesis Presentation Submit Final Thesis References 1. M. Karimi-Ghartemani and A. K. Ziarani, “Performance characterization of a non-linear system as both an adaptive notch filter and a phase-locked loop,” International Journal of Adaptive Control and Signal Processing, Vol. 18, 2004, pp. 23-53. 2. Karimi-Ghartemani, M., Ziarani, A.K. (2003) “Periodic orbit analysis of two dynamical systems for electrical engineering applications”, Journal of Engineering Mathematics 45: 135-154. 3. http://www.mathworks.com 4. Hanselman, Duane, Littlefield, Bruce. Mastering MATLAB 6 A Comprehensive Tutorial and Reference. Prentice Hall (2001).