Next: List of Figures
Up: ASPT 2.1 User Manual
Previous: ASPT 2.1 User Manual
  Contents
Preface
Since the early days of adaptive signal processing, computer simulations have been used to
examine the performance of adaptive systems, compare adaptive algorithms, and prove the
feasibility of new adaptive applications. The difficulty of analytical analysis
of adaptive signal processing systems explains the popularity of computer simulation
in the research and development of adaptive filters. The "Adaptive Signal Processing Toolbox",
or ASPT for short, has been designed to enhance the simulation process by isolating the user
from the details of the adaptive algorithms implementation while giving the user a complete
control on the algorithms parameters and behavior. ASPT users may use the adaptive filters
as building blocks without the need to know how those blocks are constructed, or may edit
the algorithms to optimize certain characteristics important to a specific application.
This approach has proved to increase productivity, shorten time to market, and enhance
the understanding of the systems being developed, and therefore increasing the potential
of developing better adaptive systems.
The Adaptive Signal Processing Toolbox is a software package developed specifically for
engineers and researchers involved in developing adaptive signal processing systems. ASPT
is also an indispensable tool for class instructors to aid in teaching adaptive signal
processing, and quickly and easily demonstrating the applications of adaptive filters.
ASPT contains a continuously expanding collection of basic as well as advanced adaptive
filters algorithms and many practical applications. ASPT isolates the user from the details
of the algorithms internal implementation and allows using the adaptive algorithms as
reliable, well tested, and well documented black box functions. ASPT contains adaptive
algorithms for transversal, lattice, recursive, and nonlinear filters, with implementations
in the time and frequency domains, as well as specialized algorithms for applications such
as active noise and vibration control, and beam forming. ASPT also comes with simulation
examples for applications of adaptive filters including echo cancelers, single channel
and multichannel active noise and vibration control, beam forming, channel equalization,
adaptive line enhancers, system identification, interference canceling, and linear prediction.
Researchers who develop new adaptive algorithms to meet specific requirements need to test
their newly developed techniques against existing ones. They must be familiar with
the existing state of the art and be able to easily and quickly experiment with several
features of the existing algorithms. In many cases, the requirements of the new algorithm can
be readily met by modifying an existing algorithm or combining the processing of several
existing ones. For those researchers, ASPT provides the basic foundation on which they can
build their developments. With the large set of existing state of the art algorithms provided
by ASPT, the researcher has a better understanding of the known techniques. In a few minutes,
he can measure the performance enhancement brought about by his newly developed algorithm
compared to known ones. He can easily experiment with modifying the existing
state of the art without the need to implement all those known techniques. ASPT, therefore,
makes it possible for those researchers to concentrate on their value added work by removing
redundant activities, and therefore, shortening development time.
Engineers who deploy adaptive filters to solve specific technical problems would probably
benefit the most from a library of adaptive algorithms such as ASPT. The first step in
developing an adaptive system is usually building a simulation of the system to explore
the benefits of a specific filter structure, define the filter parameters, examine the
system performance, and predict the problems that might come up in real-time implementation.
For instance, an engineer designing a new Acoustic Echo Canceler (AEC) for a video
conferencing system must choose the adaptive filter structure (FIR, IIR, Lattice, Volterra, etc)
that is most suitable for typical conference rooms. Next, the adaptive algorithm to be used in
updating the AEC coefficients must be chosen. Usually, the choice of the adaptive algorithm is
constrained by system resources such as memory usage and processor cycles (MIPS) as well as
system performance requirements such as convergence time and Echo Return Loss Enhancement (ERLE).
To make a sound choice, the AEC designer would probably need to set up a simulation system
using measured speech fragments in a conference room, implement several adaptive filters that he
knows from experience that may meet the system requirements, experiment with the parameters
of each filters, and test against the required overall system performance. This process can
be very lengthy, especially if experiments with different filter structures updated using
different algorithms are required. Due to development time limitation, the situation usually
encountered in practice, is that the designer chooses an algorithm that is already available,
or one that is easy to implement, regardless of its suitability for the application at hand,
or whether it gives the best performance in this specific application. In such design scenario,
ASPT is a necessary tool that provides the system designer with a rich set of filter structures,
each updated using a wide variety of algorithms. ASPT allows the designer to easily and quickly
experiment with FIR, IIR, lattice, and nonlinear filter structures, update the filters using
different algorithms in time and frequency domains, and as easily compare between the performance,
limitations, and resource requirements of each filter. ASPT can save designers many man-months
(if not years when evaluated over a company wide activities over a several projects) of low level
programming activities allowing cheaper and faster product development cycle.
On the other hand, class and lab instructors and industry trainers might find ASPT an
indispensable tool in teaching adaptive signal processing concepts using hands-on approach.
Using ASPT, instructors can easily make their point clear using real-life demonstrations
without writing lengthy software programs. Students can easily and quickly study the performance
of complex algorithms, compare between traditional algorithms, and experiment for themselves with
filter parameters. By bringing applications closer to the class, the teaching and learning
experiences become more interesting than just fiddling with equations. In the past few years,
ASPT has proved its benefits for both instructors and students. The base of ASPT itself has
been developed at Eindhoven University of Technology, during the time the author was pursuing
his PhD program. For this reason, the author is committed to education institutes, and hopes
that one day ASPT will be the preferred tool in teaching adaptive filters. To encourage
using ASPT in adaptive filters education, several algorithms that are only of theoretical
interest have been added to enhance the understanding of adaptive techniques. High performance,
efficient, and nonlinear filters can serve as good material for advanced courses in adaptive
signal processing.
ASPT is the fruit of many years of research and development in
the area of adaptive algorithms and their applications. We introduce this toolbox to our
colleagues in the hope that it will enhance and encourage the development of adaptive
systems. We very much hope that engineers, researchers, class instructors,
and students will like it, use it, and help us to improve it in the years to come.
Next: List of Figures
Up: ASPT 2.1 User Manual
Previous: ASPT 2.1 User Manual
  Contents