Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Multidisciplinary Senior Design Project Readiness Package Project Title: Noise Cancellation using an Evolutionary Algorithm (EA) Phased Array Technique Project Number: (assigned by MSD) Primary Customer: (provide name, phone number, and email) Sponsor(s): (provide name, phone number, email, and amount of support) RIT Dr. Vincent J Amuso Tel: 585.506.2405 Email: [email protected] RIT Preferred Start Term: Fall 2016 Faculty Champion: (provide name and email) Dr. Vincent J. Amuso [email protected] Other Support: Project Guide: (assigned by MSD) Dr. Vincent J. Amuso Prepared By 8/1/2016 Date Received By Date Items marked with a * are required, and items marked with a † are preferred if available, but we can work with the proposer on these. RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 Project Information Overview: Noisy office environments often make it difficult for employees to concentrate. The noise is characterized by a combination of both stationary and non-stationary noise and interference sources. This makes traditional noise cancelling techniques very difficult to implement in real or near real-time. In this project we propose using a network of acoustic receivers (microphones) and transmitters (speakers) that are resident in laptop and desktop computers located in the aforementioned cubicles of a multi dwelling office environment to gather acoustic signals and “evolve” a noise cancelling system. The architecture of the proposed system is based on phased array radar and sonar technology. This technique was originally developed for use during World War II (see http://www.radartutorial.eu/06.antennas/Phased%20Array%20Antenna.en.html for a description). Through the years that followed the technology has been adapted for many commercial applications. As compared to conventional mechanically-scanned systems performing the same functions, phased array systems provide superior capabilities in terms of data rates, scanning ability, and the ability to both receive and transmit sophisticated array patterns. * Preliminary Customer Requirements (CR): The proposed design of the Noise Cancellation System using an Evolutionary Algorithm (EA) Phased Array Technique will be based on the following requirements: 1. 2. 3. 4. 5. The system should use laptops and/or desktops that are resident in the work environment The system should require minimal adjustment by the user(s) The system bandwidth should be the audible range of an average adult The system should respond in near real-time The system should significantly reduce the noise environment † Functional Decomposition: Due to the anticipated design requirements a traditional closed form design solution would be extremely difficult if not impossible to achieve. After the requirements are determined and incorporated into hardware/system specifications, a technique that lends itself to the optimization of multiple objectives with a multi- dimensional design parameter space should be employed. Evolutionary algorithms are ideally suited to this type of problem. Figure 1 below is a flowchart of a similar system of the one being proposed in this project. The system below would need to be modified but the architecture closely mimics the one needed to achieve the customer requirements. RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 Trade Space Analyses Choose Technology Options (i.e.Optical, MEMS,etc.) Air Force Requirements (see below) 1. 2. 3. 4. 5. 6. 7. 8. Extract Technology Attributes Generate Objective Functions Evolutionary Multi-objective Optimization (EMO) Algorithm (see 2.1.4) Generate Design Specs Active power distribution Reconfigurable variable gain power splitters/combiners Bandwidth 0.5 – 18 GHz Scan a minimum of +/60° Resolution of 7.5° max in at least one plane Minimum 16 elements array size with ability to scale to a larger numbers of elements Thickness no greater than 1” Weight no more than 1lbs Design Hardware Build Prototype Generate Test Plan Test Prototype 1. 2. Tested Hardware Novel EMO based design technique Fig. 1. Example of a proposed project flowchart taken from phased array radar system The proposed approach uses Evolutionary Algorithms that employ the concepts of “the survival of the fittest”, and mathematically implement this concept into an algorithm in order to produce a generic stochastic approach to solving single or Multi-objective Optimization Problems (MOP’s). A simple flowchart that illustrates the basic EA structure is illustrated in Fig. 2. Initialize Population Determine Fitness Create Offspring N Apply Selection Terminate? Y Fig. 2. Flowchart of a typical Evolutionary Algorithm * Preliminary Engineering Requirements (ER): The Engineering Requirements will be determined by the MSD team and Dr. Amuso. The requirements may well be determined by the expertise and mix of the MSD team members. RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 Metrics: TBD Specifications: TBD Constraints: The MSD team will use the SPEA2 algorithm implemented by Dr. Amuso and his graduate students. The algorithm is coded in MATLAB. Since the students will be constrained to use the SPEA2 algorithm which is an Evolutionary Multi-objective Optimization algorithm, a brief synopsis of this type of algorithm is provided. In order to fully explain an Evolutionary Multi-objective Optimization algorithm, several concepts will be defined and clarified: 1. 2. 3. 4. The Multi-objective Optimization Problem (MOP) Pareto optimality Mathematical encoding of the population The Strength Pareto Evolutionary Algorithm (SPEA2) (1) The Multi-objective Optimization Problem (MOP) can be defined as the problem of finding a vector of decision variables which satisfies constraints and optimizes a vector function whose elements represent the objective functions [10]. These functions form a mathematical description of performance criteria which are usually in conflict with each other. Hence, the term “optimize” means finding a solution which would give the values of all the objective functions acceptable to the decision maker. An illustration of the mapping of solutions, or decision space, to a multi-objective function space is given in Fig. 3 below. Objective Function Space Decision Variable Space Feasible Region x R n y R x2 k F3 x1 x x , x ,, x 1 2 n F2 F1 T f x f x , f x ,, f x T 1 2 k Fig. 3. A mapping illustration from decision variable space to multi-objective function space A solution to an MOP can be described as follows. Find the vector * * *T x* x1 , x 2 , , x n which satisfies the m inequality constraints g i x 0 for i 1,2,...m RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design (1) (2) Project Readiness Package Template Revised Spring 2016 and the p equality constraints hi x 0 for i 1,2,...p and optimizes the vector function (3) T f x f1 x , f 2 x , f 2 x . (4) The objective functions used to represent the particular sensor parameters are represented by the f x vector. Let O i O i O i xO i x1 , x2 ,, xn T (5) be a vector that optimizes the ith objective function. The vector x O i (6) is such that O i fi x opt fi x xΩ The vector f f1O , f 2O , f kO T (7) (8) is ideal for an MOP and the point in Rn space that determines this vector is called the ideal vector. (2) Pareto Optimality The existence of the ideal vector is extremely rare especially as the dimensionality of the fitness vector increases. Therefore optimality must be defined in such a way as to satisfy a compromise of the optimality of individual objectives to be optimized. The idea of a trade off optimality criteria was originally proposed by Francis Ysidro Edgeworth in 1881 and generalized by Vilfredo Pareto in 1896. It is generally referred to as Pareto optimum. A solution is Pareto Optimal if there exists no feasible vector which would decrease some criterion without causing a simultaneous increase in at least one other criterion [9]. Mathematically this is represented as follows: A point x * is Pareto Optimal if for every x and I 1,2,...k either f x f x * i I i i (9) or there is at least one i I such that f x f x * . i i RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design (10) Project Readiness Package Template Revised Spring 2016 (3) Mathematical Encoding of the Population In order to implement the algorithm, the population members, which represent possible solutions to the problem, must be represented in a tangible way so that they may be operated upon by the mathematical representations of the evolutionary principles of selection and adaptation. The individuals are represented by a collection of genes that when grouped together form chromosomes. These chromosomes contain all the information required to represent and distinguish the difference amongst individual population members. From an algorithmic point of view the individual is nothing more than an encoded solution to a mathematical problem. Using a human as an example to illustrate the aforementioned concepts, the nucleus of most human cells is composed of two sets of chromosomes, one set given by each parent. Each set has 23 single chromosomes. The chromosomes contain genes which contain specific information pertaining to an individual. Using eye color as an example, the gene that determines this trait is found in the same chromosome and position for all humans. The size of the encoding needed to represent the information is the same for all humans as well. The actual values that are contained in those physical locations (a sequence of A T G or C) represent the actual color (blue, brown green etc.) for that individual. The actual values are called alleles. Returning to the EA representation, the mathematical encoding used is either binary encoding or real number encoding. Using the human eye color example in a binary encoding scheme, two positions in a gene could be mapped to the actual eye color using a two bit binary representation such as 00 –Blue, 01 –Green, 10 –Brown, 11 –Hazel. (4) The Strength Pareto Evolutionary Algorithm (SPEA2).Zitzler & Thiele have developed an approach to multi-objective optimization, named the Strength Pareto Evolutionary Algorithm 2 (SPEA2) . The SPEA2 uses a mixture of established and new techniques in order to find multiple Pareto-optimal solutions in parallel. The SPEA2 algorithm incorporates a fine-grained fitness assignment strategy that incorporates density information, a density estimation technique that is an adaptation of the kth nearest neighbor method, and an enhanced archive truncation method that guarantees the preservation of boundary solutions. This truncation method preserves boundary points on the Pareto front. The two main improvements of SPEA2 over SPEA are 1) a more precisely guided search process fostered by a nearest neighbor density technique, and 2) an archive truncation method that guarantees the preservation of boundary solutions to ensure that the entire span of the Pareto front remains intact. RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 Generate Initial Population P0 and an Empty Archive A0. Set t = 0 Calculate Fitness of Individuals in Pt and At Perform Environmental Selection to Fill At+1 Too Small Add Best Dominated Members of Pt Too Large Truncate Using Nearest Neighbor Criteria Check Size of At+1 t = max generation? Y Terminate, At+1 Contains Pareto Front N Perform Mating Selection, Crossover & Mutation using only At+1 to form Pt+1. Set t = t +1 Fig. 4. SPEA2 Flowchart Figure 4 depicts the flowchart for SPEA2. In SPEA2, each individual’s fitness is based upon the solutions that dominate it as well as the solutions that it dominates. For each individual i, a strength value S(i) is determined that represents the number of solutions that it dominates. In mathematical terms, S (i ) j | j Pt At i j (11) where | | denotes the cardinality of a set and + represents a multi-set union. These strength values are then used to assign a raw fitness, R(i), to each individual. R(i) S ( j ) jPt At , j i (12) Thus, the raw fitness of an individual is determined by the strength of its dominators in both the archive and the population. Note that in terms of raw fitness, a low number represents a “good” solution, i.e. it is not dominated by many members. A zero raw fitness would indicate that the particular individual is non-dominated. This idea is illustrated in Figure 5. RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 Obj. 2 Obj. 2 A 1/4 A R=0 S=1 Pareto Front B Non-dominated B R=0 S=3 3/4 D R=3 S=2 D Dominated 7/4 E 7/4 R=5 S=1 C 1/4 F E C F 9/4 R=0 S=1 R=8 S=0 Obj. 1 Obj. 1 Fig. 5. Fitness assignment schemes for SPEA2 The SPEA2 raw fitness assignment scheme utilizes a strength value (S) and a raw fitness value (R). The strengths of each member are equal to the number of individuals in the population that they dominate and the raw fitness values are equal to the sum of the strengths of each member’s dominators. The non-dominated members (A,B,C) have a raw fitness value equal to 0 because they are not dominated by any other member. Members A and C dominate one member, F, so their strength is equal to 1. Member B dominates 3 members (D,E,F) so its strength value is 3. Member D is only dominated by member B, so it is assigned a raw fitness value of 3. It dominates members E and F, so it is assigned a strength value of 2. This assignment process continues for each member of the population. Raw fitness is only one part of the SPEA2 fitness measure. To differentiate between individuals that may, by chance, have identical raw fitness values, an additional density measure is incorporated. The inverse of the distance to the kth nearest neighbor is taken to be the density estimate for a given individual. For every member, the distances to all other members is calculated and sorted in ascending order. The distance to the kth element, denoted, ik , is the point of interest for the density measure. Based on the work of Silverman the SPEA2 authors determine k as follows: k size( P) size( A) The density for each individual is then calculated as: 1 D (i ) k i 2 (13) (14) Two is added in the denominator to ensure that D(i) takes a value less than one. Finally, the fitness of an individual for the SPEA2 algorithm is calculated as: F (i ) R(i ) D(i) (15) The process by which the archive population is updated and maintained is referred to as environmental selection. For SPEA2, the first step of this process is to copy all non-dominated individuals from the current archive and population to the next generation’s archive (i.e. At+1). Non-dominated individuals are easily distinguished, as they are guaranteed to have a fitness value less than one. This update process is depicted mathematically by: At 1 i | i Pt At F (i) 1 (16) At this point, the size of the archive is checked against the pre-defined size limit, denoted N. If RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 size( At 1 ) N (17) then the environmental selection process is complete and mating selection can be commenced. If size( At 1 ) N (18) then the archive is filled with the best dominated population members (an easy task given that the members are already sorted in ascending fitness). The most complicated situation occurs when size( At 1 ) N (19) When the size of the archive is larger than N, the SPEA2 truncation operator must be utilized. This algorithm iteratively removes solutions from the archive until it meets the size requirement. This is accomplished by choosing the individual which has the minimum distance to another individual at each stage. Ties are broken by the second smallest distance, etc. The goal of this truncation technique is to maintain the spread of the Pareto front while also preserving the boundary solutions. The technique is illustrated in Figure 6 and is mathematically depicted in Equation 20. i d j : 0 k size( At 1 ) : i k j k 0 k size( At 1 ) : 0 l k : i l j l i k j k Obj. 2 A (20) 1 B C 3 D E 2 F G Obj. 1 Fig. 6. Illustration of the SPEA2 archive truncation scheme. N = 4 is assumed and the numbers on the right side indicate the order of elimination. As Figure 6 depicts, the first solution that is truncated from the Pareto front is the one that is closest to its nearest neighbor (B). Notice that member A is not removed because it is a boundary solution. Member G will also not be removed in any truncation scenario. The second elimination is made as a decision between members E and F. They are the two members with the minimum distance to each other. Member F is selected to be removed because the distance to its next nearest neighbor (G) is smaller than member E’s next nearest neighbor (D). The archive size is set to be four, so one more solution must be removed. The next minimum distance between two members is between C and D. Member D is chosen to be removed because the distance from DE is smaller than the distance from C-A. The archive is now reduced to its required size of four members. † Potential Concepts: RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 * Project Deliverables: Minimum requirements: All design documents (e.g., concepts, analysis, detailed drawings/schematics, BOM, test results) working prototype technical paper poster All teams finishing during the spring term are expected to participate in ImagineRIT Additional required deliverables: User’s Manual † Budget Information: Include total budget, any major cost items anticipated, and any special purchasing requirements from the sponsor(s). There is NO material cost associated with this project. * Intellectual Property: RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 Project Resources † Required Resources (besides student staffing): Describe the resources necessary for successful project completion. When the resource is secured, the responsible person should initial and date to acknowledge that they have agreed to provide this support. We assume that all teams with ME/ISE students will have access to the ME Machine Shop and all teams with EE students will have access to the EE Senior Design Lab, so it is not necessary to list these. Limit this list to specialized expertise, space, equipment, and materials. Faculty list individuals and their area of expertise (people who can provide specialized knowledge unique to your project, e.g., faculty you will need to consult for more than a basic technical question during office hours) Vincent J. Amuso Steve Boedo Ferat Sahin Dorin Patru Environment (e.g., a specific lab with specialized equipment/facilities, space for very large or oily/greasy projects, space for projects that generate airborne debris or hazardous gases, specific electrical requirements such as 3-phase power) . Equipment (specific computing, test, measurement, or construction equipment that the team will need to borrow, e.g., CMM, SEM, ) Desktop & Laptop computerwith Speakers & Microphones. Materials (materials that will be consumed during the course of the project, e.g., test samples from customer, specialized raw material for construction, chemicals that must be purchased and stored) Initial/ date Initial/ date Initial/ date Initial/ date Initial/ date Other Matlab Software RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design Project Readiness Package Template Revised Spring 2016 † Anticipated Staffing By Discipline: Indicate the requested staffing for each discipline, along with a brief explanation of the associated activities. “Other” includes students from any department on campus besides those explicitly listed. For example, we have done projects with students from Industrial Design, Business, Software Engineering, Civil Engineering Technology, and Information Technology. If you have recruited students to work on this project (including student-initiated projects), include their names here. Dept. BME CE # Req. 0 2 EE 4 ISE 1 ME Other 0 Expected Activities Set up Network of PC desktops and/or Laptops Software interface to collect audio data Communication Protocol to move data from standalone desktops and/or laptops to central processing location (1) Two-way communication between standalone desktops and/or laptops and central processing location (1) Phased array system & algorithm development & implementation (2) Evolutionary Algorithm (EA) development & implementation Study of office layout and cubicle placement. Also assist in phased array development & implementation Also assist in EA development & implementation * Skills Checklist: Indicate the skills or knowledge that will be needed by students working on this project. Please use the following scale of importance: 1 = must have 2 = helpful, but not essential 3 = either a very small part of the project, or relates to a “bonus” feature blank = not applicable to this project Biomedical Engineering BME Core Knowledge Matlab Aseptic lab techniques Gel electrophoresis Linear signal analysis and processing Fluid mechanics Biomaterials Labview Simulation (Simulink) System physiology Biosystems process analysis (mass, energy balance) Cell culture RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design BME Elective Knowledge Medical image processing COMSOL software modeling Medical visualization software Biomaterial testing/evaluation Tissue culture Advanced microscopy Microfluidic device fabrication and measurement Other (specify) Project Readiness Package Template Revised Spring 2016 BME Core Knowledge Computer-based data acquisition Probability & statistics Numerical & statistical analysis Biomechanics Design of biomedical devices BME Elective Knowledge Computer Engineering CE Core Knowledge Digital design (including HDL and FPGA) Software for microcontrollers (including Linux and Windows) Device programming (Assembly, C) Programming: Python, Java, C++ Basic analog design Scientific computing (including C and Matlab) Signal processing Interfacing transducers and actuators to microcontrollers CE Elective Knowledge Networking & network protocols Wireless networks Robotics (guidance, navigation, vision, machine learning, control) Concurrent and embedded software Embedded and real-time systems Digital image processing Computer vision Network security Other (specify) Electrical Engineering EE Core Knowledge Circuit Design (AC/DC converters, regulators, amplifies, analog filter design, FPGA logic design, sensor bias/support circuitry) Power systems: selection, analysis, power budget System analysis: frequency analysis (Fourier, Laplace), stability, PID controllers, modulation schemes, VCO’s & mixers, ADC selection Circuit build, test, debug (scope, DMM, function generator Board layout Matlab PSpice Programming: C, Assembly Electromagnetics: shielding, interference EE Elective Knowledge Digital filter design and implementation Digital signal processing Microcontroller selection/application Wireless: communication protocol, component selection Antenna selection (simple design) Communication system front end design Algorithm design/simulation Embedded software design/implementation Other (specify) Industrial & Systems Engineering ISE Core Knowledge Statistical analysis of data: regression Materials science Materials processing, machining lab Facilities planning: layout, mat’l handling Production systems design: cycle time, throughput, assembly line design, manufacturing process design Ergonomics: interface of people and equipment (procedures, training, maintenance) Math modeling: OR (linear programming, simulation) RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design ISE Elective Knowledge Design of Experiment Systems design – product/process design Data analysis, data mining Manufacturing engineering DFx: manufacturing, assembly, environment, sustainability Rapid prototyping Safety engineering Project Readiness Package Template Revised Spring 2016 ISE Core Knowledge Project management Engineering economy: Return on Investment Quality tools: SPC Production control: scheduling Shop floor IE: methods, time studies Computer tools: Excel, Access, AutoCAD Programming (C++) ISE Elective Knowledge Other (specify) Mechanical Engineering ME Core Knowledge 3D CAD Matlab programming Basic machining 2D stress analysis 2D static/dynamic analysis Thermodynamics Fluid dynamics (CV) LabView Statistics Materials selection RIT – Kate Gleason College of Engineering Multidisciplinary Senior Design ME Elective Knowledge Finite element analysis Heat transfer Modeling of electromechanical & fluid systems Fatigue and static failure criteria Machine elements Aerodynamics Computational fluid dynamics Biomaterials Vibrations IC Engines GD&T Linear Controls Composites Robotics Other (specify) Project Readiness Package Template Revised Spring 2016