Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Khaled Salah Mohamed is active.

Publication


Featured researches published by Khaled Salah Mohamed.


international conference on microelectronics | 2016

A novel model order reduction technique based on simulated annealing

Mohamed Khalifa Mohamed; Khaled Salah Mohamed

In this paper, a novel and efficient solution in the area of model order reduction is presented. The proposed method depends on a global optimization algorithm called simulated annealing. This approach aims to obtain a reduced-order model out of a relatively complex model represented as a transfer function. This reduced order model is obtained in a reasonable run time; it has an acceptable error in time domain represented by the unit step time response, and the least error in the frequency domain represented by Bode plot compared to other conventional mathematical methods used in model order reduction. This work can be used in the CAD tools that reduce the complexity of passive elements.


Applied Mechanics and Materials | 2011

Work around Moore’s Law: Current and next Generation Technologies

Khaled Salah Mohamed

Interconnect dimensions and CMOS transistor feature size approach their physical limits, therefore scaling will no longer play an important role in performance improvement. So, instead of trying to improve the performance of traditional CMOS circuits, integration of multiple technologies and different components in a heterogeneous system that is high performance will be introduced “moore than more” and CMOS replacement”beyond CMOS” will be explored. This paper focuses on Technology level trends where it presents “More Moore”:New Architectures (SOI, FinFET, Twin-Well),”More Moore” :New Materials (High-K, Metal Gate, Strained-Si) ,”More than Moore”:New Interconnects Schemes (3D, NoC, Optical, Wireless), and ”Beyond CMOS” :New Devices (Molecular Computer, Biological computer, Quantum Computer) .


Archive | 2018

Nature-Inspired Machine Learning Algorithm: Particle Swarm Optimization, Artificial Bee Colony

Khaled Salah Mohamed

The PSO method is a member of wide category of swarm intelligence methods for solving the optimization problems. Particle swarm optimization technique is computationally effective and easier.


Archive | 2018

Thermo-Inspired Machine Learning Algorithm: Simulated Annealing

Khaled Salah Mohamed

Simulated Annealing (SA) is a global optimization algorithm. It belongs to the stochastic optimization algorithms. The idea of SA was published in a paper by Metropolis [1], this idea was inspired by the annealing process in metallurgy. In this process, a material is heated to a very high temperature so that the particles of the material are freely moving, and then the material is gradually cooled under certain conditions so that the particles begin to take the narrower paths till they collectively reach the minimum energy state level in the material as depicted in Fig. 3.1. In other words, it is a physical phenomenon that occurs when the metal is heated at a very high temperature, and then slowly cooled [2–9]. By analogy with this physical process, each step of the SA algorithm attempts to replace the current solution by a random solution till the desired output is obtained. At each step of the algorithm, SA decides between moving the system to a new state and staying in the current state. This decision is done probabilistically. The analogy between simulated annealing and physical system can be shown in Table 3.1.


Archive | 2018

Comparisons, Hybrid Solutions, Hardware Architectures, and New Directions

Khaled Salah Mohamed

In this chapter, the performance of five machine learning algorithms such as GA (Genetic Algorithm), ANN (Artificial Neural Network), PSO (Particle Swarm Optimization), FL (Fuzzy Logic), and SA (Simulated Annealing) for the problem model order reduction of linear systems are compared. In addition, hybrid solutions are presented. Finally, new directions in machine learning are discussed.


Archive | 2018

Bio-Inspired Machine Learning Algorithm: Genetic Algorithm

Khaled Salah Mohamed

Genetic algorithms (GA) are the heuristic (experience-based) search and time-efficient learning and optimization techniques that mimic the process of natural evolution based on Darwinian Paradigm as depicted in Fig. 2.1. Thus genetic algorithms implement the optimization strategies by simulating evolution of species through natural selection. The nature to computer mapping is shown in Table 2.1, where each cell of a living thing contains chromosomes (strings of DNA), each chromosome contains a set of genes (blocks of DNA), and each gene determines some aspect of the organism (like eye color). In other words, parameters of the solution (genes) are concatenated to form a string (chromosome). In a chromosome, each gene controls a particular characteristic of the individual. The population evolves toward the optimal solution as depicted in Fig. 2.2. Evolution based on “survival of the fittest.” Genetic algorithms are well suited for hard problems where little is known about the underlying search space. So, it is considered a robust search and optimization mechanism. The genetic algorithm used in this work consists of the following steps or operations, [1–11], and can be seen in Fig. 2.3: 1. Initialization and encoding: The GA starts with the creation of random strings, which represent each member in the population. 2. Evaluation (Fitness): The fitness used as a measure to reflect the degree of goodness of the individual is calculated for each individual in the population. 3. Selection: In the selection process, individuals are chosen from the current population to enter a mating pool devoted to the creation of new individuals for the next generation such that the chance of a given individual to be selected to mate is proportional to its relative fitness. This means that best individuals receive more copies in subsequent generations so that their desirable traits may be passed onto their offspring. This step ensures that the overall quality of the population increases from one generation to the next. The different techniques used in selection process for introducing new individuals for the next generation are: Elitism selection: It is simply selecting the fitted individuals crated from the current population and passing them to the next population. This method guarantees a high probability of getting closer to the most optimum solution due to passing of the fittest chromosomes to the crossover operator producing fitter individuals. Roulette Wheel Selection: In this kind of selection the parenthood probability is directly proportional to the fitness of the individuals. Every individual is given a weight proportional to its fitness having a higher probability to be chosen in the next generation. There is a notable disadvantage in this method of selection which is if some individuals have a higher fitness than others, there is a probability that they will be chosen as parents for every individual in the next generation. The wheel rotating can be realized by generating a random number and comparing it to random selected individual in the current generation. Tournament selection: It occurs by choosing 4 or 8 or 2 n individuals from the current population and comparing each two of them randomly and so on till having one individual which is the fittest one. This process occurs as many needed time to form the new population. Rank selection: In this kind of selection all individuals in the population are ranked according to their fitness. Each individual is assigned a weight inversely proportional to the rank. 4. Crossover: Crossover provides the means by which valuable information is shared among the population. It combines the features of two parent individuals to form two children individuals that may have new patterns compared to those of their parents and plays a central role in Gas. The crossover operator takes two chromosomes and interchanges part of their genetic information to produce two new chromosomes. The different techniques used in crossover process for introducing new individuals for the next generation are: Simple crossover: It is a process of exchanging some genes of the chromosomes or some chromosomes of the individual depending on the representation creating new individuals of new chromosomes. It depends on crossover rate which is previously identified. Heuristic crossover: Choosing two individuals from the current individual randomly and computing the fitness of each individual and comparing them to each other. The fitter individual is passed to the next population and the other one is not passed and instead a new individual is created. Arithmetic crossover: Arithmetic crossover occurs by choosing two or more individuals randomly from the current generation and multiplying them by one random in the case of the inevitability of the presence of a certain defined domain and more than one random if there is no physical need for a defined search domain. 5. Mutation: Mutation is often introduced to guard against premature convergence. Generally, over a period of several generations, the gene pool tends to become more and more homogeneous. The purpose of mutation is to introduce occasional perturbations to the parameters to maintain genetic diversity within the population. 6. Replacement: After generating the offspring’s population through the application of the genetic operators to the parents’ population, the parents’ population is totally replaced by the offspring’s population. This is known as no overlapping, generational, replacement. This completes the “life cycle” of the population. 7. Termination: The GA is terminated when some convergence criterion is met. Possible convergence criteria are: the fitness of the best individual so far found exceeds a threshold value; the maximum number of generations is reached. An example for the parameter used in GA is shown in Table 2.2.


Archive | 2018

Control-Inspired Machine Learning Algorithm: Fuzzy Logic Optimization

Khaled Salah Mohamed

Fuzzy logic in simple words is a set of “if-then” rules. These rules describe the system behavior. These rules can be changed according to the required output. Fuzzy logic is a computational paradigm that generalizes classical two-valued logic for reasoning under uncertainty. In order to achieve this, the notation of membership in a set needs to become a matter of degree. This is the essence of fuzzy sets. By doing this one accomplishes two things: ease of describing human knowledge involving vague concepts and enhanced ability to develop a cost-effective solution to real-world problem. Fuzzy logic is a kind of multi-valued logic, which is a model-less approach and is a clever disguise of the Probability Theory. The most famous types of the membership functions are the triangle, trapezoidal, and Gaussian membership function.


Archive | 2018

Brain-Inspired Machine Learning Algorithm: Neural Network Optimization

Khaled Salah Mohamed

An artificial neural network (ANN) is a network inspired by biological neural networks (the central nervous systems of animals, in particular the brain) which are used to estimate or approximate functions that can depend on a large number of inputs that are generally unknown [1–7]. All inputs for the given neuron are multiplied by their respective weights, summed up, and then transformed using an activation function. Activation functions usually restrict the range of values of the neuron output, for example, from minus one to one. This transformed value then serves as the input for the next neuron. A neural network consists of three types of layers—input, hidden, and output as depicted in Fig. 6.1. The input layer contains the data supplied to the network. In the hidden layers the transformation of the inputs takes place and the output layer produces the estimate. The number of hidden layers is not limited. Several activation functions exist and they also influence the performance of the ANNs. Perhaps the simplest activation function is threshold function. If the signal from a neuron is larger or equal to a certain set value, then the output value is equal to 1 else the output value is equal to zero. This type of signal is good for binary problems. In general, ANNs learn from the data and they are able to improve in iterations by adjusting the weights [7].


Archive | 2016

Analyzing the Trade-off Between Different Memory Cores and Controllers

Khaled Salah Mohamed

With the move to multicore computing, the demand for memory bandwidth grows with the number of cores. It is predicted that multicore computers will need 1 TBps of memory bandwidth. However, memory device scaling is facing increasing challenges due to the limited number of read and write cycles in flash memories and capacitor-scaling limitations for DRAM cells. Therefore, memory bottleneck is one of the main challenges in modern VLSI design. Microprocessors communicate with memory cores through memory controllers (Fig. 3.1). A detailed figure is shown in Fig. 3.2 [1–6].


Archive | 2016

New Trends in SoC Verification: UVM, Bug Localization, Scan-C0068ain-Based Methodology, GA-Based Test Generation

Khaled Salah Mohamed

Now, SystemVerilog (SV)/UVM gradually dominate the verification landscape. SV does not support MACROS and the language alone was insufficient to enable widespread adoption of the best-practice verification techniques that inspired its development that is why we need UVM [1, 2]. UVM is a methodology for SoC functional verification that uses TLM standard for communication between blocks and SystemVerilog for its languages, or in other words, it uses SV for creating components and TLM for interconnects between components.

Collaboration


Dive into the Khaled Salah Mohamed's collaboration.

Top Co-Authors

Avatar

Mohamed Khalifa Mohamed

Tampere University of Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Yehea I. Ismail

American University in Cairo

View shared research outputs
Researchain Logo
Decentralizing Knowledge