**Soft Computing** means making the programs Which do not directly connected to hardware. Like – Messengers, Spreadsheets and Databases, But Hard Computing connected directly to the hardware that is – Operating Systems, Drives and many more.

**Soft Computing **is just automating process of computing. **Hard Computing** present computing process according to your needs only.* Soft Computing includes Artificial Intelligence , Fuzzy Logic, Neural Computing, Evolutionary Computation, Machine Learning and Natural Language Processing.*

### Zadeh First Defined “Soft Computing” as –

“Basically, Soft Computing is not a homogeneous body of concepts and techniques. Rather, It is a partnership of distinct methods that in one way or another confirm to its guiding principle. At this juncture, the dominant aim of soft computing is to exploit the tolerance for imprecision and uncertainty to achieve tractability, robustness and low solutions cost. The principal constituent of social computing are Fuzzy logic, neuro computing and probabilistic reasoning, with latter subsuming genetic algorithms, belief networks, Chaotic systems, and parts of learning theory.”

Fuzzy logic is mainly concerned with imprecision and approximate reasoning, neuro computing with learning and computing and probabilistic reasoning with uncertainty and belief propagation”

**Techniques used in Soft Computing **

Soft Computing is a term applied to a field within computer science which is characterized by the use of inexact solutions to computationally hard task such as the solution of NP complete problems, For which an exact solution cannot be derived in polynomial time. Soft Computing became a formal computer science idea for study in early 90’s earlier computational approaches could model and precisely analyse only relatively simple systems. More Complex systems arising in Biology, medicine, the Humanities, management science, and similar fields often remind in intractable to conventional mathematical and analytical methods.** Soft Computing deals with imprecision, uncertainty, partial truth and approximation to achieve practicability, robustness and low solution cost.**

** Components of soft computing includes **

- Neural Network
- Fuzzy Systems
- Chaos Theory
- Perception
- Swarm Intelligence
- Bayesian Network
- Harmony Search

**Hard computing vs. Soft Computing **

- Hard computing that is conventional computing requires a precisely stated analytical model and often a lot of computation time.
**Soft computing differs from conventional hard computing**in that, unlike hard computing, it is tolerant of impression, uncertainty, partial truth and approximation. In fact, the role model for soft computing is human mind. - Hard computing based on binary logic, crisp systems, numerical analysis and crisp software but soft computing based on Fuzzy Logic, neural nets and probabilistic reasoning.
**Hard computing**requires programs to be written.**soft computing**can evolve its own program.- Hard computing uses two valued logic, soft computing can use multi valued or
**Fuzzy Logic**. - Hard computing requires exact input data soft computing can deal with noisy and ambiguous data.

**Application of Soft Computing **

*Soft computing has many applications*, the area covered by neural networks; fuzzy logic and genetic algorithm produced the wide range of applications some popular applications are given below –

- Data Compression
- Image Compression
- Face Recognition

### Below are some of the terms used in Soft Computing –

**Neural Network –**Neural networks, in general, is highly interconnected network of a large number of processing elements called neurone is a architecture motivated by the brain. A neural network can be massively parallel and therefore is said to be exhibited parallel distributed computing. Neural network can be taught to perform Complex task and do not require programming as conventional computers. They are massively parallel, extremely fast and intrinsically fault tolerance. They required significantly less development time and can respond to situations unspecified or not previously investigate.

**Fuzzy Logic –**The concept of Fuzzy logic was conceived by Lotfi Zadeh. Fuzzy Logic is a problem solving control system methodology that lends itself to implementation in systems ranging from simple, small, embedded microcontrollers to large, networked, multichannel PC or workstation-based data acquisition and control systems. It can be implemented in hardware, software or combination of both. Fuzzy Logic provides a simple way to arrive at a definite conclusion based upon vague, Ambiguous, imprecise, noisy or missing input information. Fuzzy logic approaches to control problems mimic how a person would make decisions.

**Genetic Algorithm –**Genetic algorithms are adaptive heuristic search algorithm premised on the evolutionary idea of natural selection and genetic. The basic concept of genetic algorithm is designed to simulate processes in natural system necessary for evolution, specifically those that follow the principles first laid down by Charles Darwin of survival of the fittest. As such they represent an intelligent exploitation of a random search within a define search space to solve problem. Genetic algorithm are one of the best ways to solve problem for which little is known. They are very general algorithm and so will work well in any search space, all you need to know is what you need the solution to be able to do well, and a genetic algorithm will be able to create a high quality solution. Genetic algorithms use the principle of selection and evolution to produce several solutions to given problem.