Application of Evolutionary Algorithms for Multi-objective Optimization in VLSI and Embedded Systems