1⟩ Explain branches of AI?
There are many, some are 'problems' and some are 'techniques'.
Automatic Programming - The task of describing what a program should do and having the AI system 'write' the program.
Bayesian Networks - A technique of structuring and inferencing with probabilistic information. (Part of the "machine learning" problem).
Constraint Statisfaction - solving NP-complete problems, using a variety of techniques.
Knowledge Engineering/Representation - turning what we know about particular domain into a form in which a computer can understand it.
Machine Learning - Programs that learn from experience or data.
Natural Language Processing(NLP) - Processing and (perhaps) understanding human ("natural") language. Also known as computational linguistics.
Neural Networks(NN) - The study of programs that function in a manner similar to how animal brains do.
Planning - given a set of actions, a goal state, and a present state, decide which actions must be taken so that the present state is turned into the goal state
Robotics - The intersection of AI and robotics, this field tries to get (usually mobile) robots to act intelligently.
Speech Recogntion - Conversion of speech into text.