The document discusses soft computing and its components. Soft computing aims to solve real-world problems that are difficult for traditional hard computing techniques. It uses fuzzy logic, neural networks, evolutionary computation and other inexact methods. Unlike hard computing which requires precise modeling, soft computing is tolerant of imprecision, uncertainty and approximation. It is well-suited for problems where ideal models are not available, such as pattern recognition, forecasting and control systems. Some key applications of soft computing mentioned include handwriting recognition, image processing, data mining and control systems.