artificial intelligence in software engineering ppt

20
ARTIFICIAL INTELLIGENCE IN SOFTWARE ENGINEERING

Upload: pradeep-vishwakarma

Post on 30-Jun-2015

719 views

Category:

Engineering


30 download

DESCRIPTION

Artificial intelligence in software engineering ppt.

TRANSCRIPT

Page 1: Artificial intelligence in software engineering ppt

ARTIFICIAL INTELLIGENCE IN SOFTWARE ENGINEERING

Page 2: Artificial intelligence in software engineering ppt

A PRESENTATION BY:

SIMRAN KAUR BANSALAKANKSHA PARKHE

PRADEEP VISHWAKARMA

Page 3: Artificial intelligence in software engineering ppt

What is Intelligence? Intelligence:

“the capacity to learn and solve problems” (Websters dictionary) in particular,▪ the ability to solve novel problems▪ the ability to act rationally▪ the ability to act like humans

Artificial Intelligence: build and understand intelligent entities or agents 2 main approaches: “engineering” versus “cognitive modeling”

Page 4: Artificial intelligence in software engineering ppt

What is Artificial Intelligence?

•It is the science and engineering of making intelligent machines, especially intelligent computer programs. It is related to the similar task of using computers to understand human intelligence, but AI does not have to confine itself to methods that are biologically observable.

What is artificial intelligen

ce?

•Intelligence is the computational part of the ability to achieve goals in the world. Varying kinds and degrees of intelligence occur in people, many animals and some machines.

Yes, but what is

intelligence?

Page 5: Artificial intelligence in software engineering ppt
Page 6: Artificial intelligence in software engineering ppt

What is Software?

“ Software is a set of instructions to acquire inputs and to manipulate them to produce the desired output in terms of functions and performance as determined by the user of the software. It also include a set of documents, such as the software manual , meant for users to understand the software system.”

Page 7: Artificial intelligence in software engineering ppt

What is Software Engineering?

Although hundreds of authors have developed personal definitions of software engineering, a definition proposed by Fritz Bauer[NAU69] provides a basis:

“[Software engineering is] the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines.”

The IEEE [IEE93] has developed a more comprehensive definition when it states:

“Software Engineering: (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1).”

Page 8: Artificial intelligence in software engineering ppt

The Role of Artificial Intelligence in Software Engineering

There has been a recent surge in interest in the application of Artificial Intelligence (AI) techniques to Software Engineering (SE) problems.

The work is typified by recent advances in Search Based Software Engineering, but also by long established work in Probabilistic reasoning and machine learning for Software Engineering.

This explores some of the relationships between these strands of closely related work, arguing that they have much in common and sets out some future challenges in the area of AI for SE.

Page 9: Artificial intelligence in software engineering ppt

Formal Definition of AI

• AI is a branch of computer science which is concerned with the study and creation of computer systems that exhibit

• some form of intelligence • OR• those characteristics which we associate with

intelligence in human behavior

AI is a broad area consisting of different fields, from machine vision, expert systems to the creation of machines that can "think".

In order to classify machines as "thinking", it is necessary to define intelligence.

Page 10: Artificial intelligence in software engineering ppt

How does Artificial Intelligence work??

Planning: It starts with development of strategy achieving the goal.

Pattern Recognition: Computer recognizes and recreates the world vision.

Ontology: It is the study of what objects are and what are they made of.

Robotics: It is the study of how to design, build, use, and work with robots.

Artificial Life: It is a field of scientific study that attempts to model living biological systems through complex algorithms

Epistemology: Is a study of knowledge that are required for solving problems in the world.

Page 11: Artificial intelligence in software engineering ppt

Integrating AI and Software Engineering

The integration of matured AI methods and techniques with conventional software engineering remains difficult and poses both implementation problems and conceptual problems.

In this report we are mainly concerned with implementation problems. These include, more specifically, two aspects. 1. There is component-level interoperability; that is, the use of existing AI software and its knowledge bases with other conventional components.2. Referred to as AI components reengineering —the process of restructuring existing matured AI components using software engineering practices to enable effective enhancement, adapta- tion, and maintenance through their continued use.

These issues represent software engineering challenges that span the complete software life cycle and software engineering languages such as Ada.

Page 12: Artificial intelligence in software engineering ppt

Interconnections between SE & AI

The SE community has used three broad areas of AI techniques:

1) Computational search and optimisation techniques (the field known as Search Based Software Engineering (SBSE).

2) Fuzzy and probabilistic methods for reasoning in the presence of uncertainty.

3) Classification, learning and prediction.

Page 13: Artificial intelligence in software engineering ppt

THE TURING TEST

Turing proposed operational test for intelligent behavior in 1950.

Page 14: Artificial intelligence in software engineering ppt

The Turing Test

It is a test of a machine’s ability to exhibit intelligent behavior equivalent to, or indistinguishable from, that of a human. In the original illustrative example, a human judge engages in natural language conversations with a human and a machine designed to generate performance indistinguishable from that of a human being.

Page 15: Artificial intelligence in software engineering ppt

Applications of AI

R&D Plan for Army Applications of AI/Robotics.

Expert system: An expert system compared with traditional computer:

Inference engine + Knowledge = expert

system (Algorithm + data structures = program in traditional computer)

Fuzzy Logic Mobile Robotics and Games (Path Planning)

Page 16: Artificial intelligence in software engineering ppt

Artificial Intelligence Algorithms

Genetic algorithms Path finding algorithms Heuristic function Depth first search Breadth first search A * search algorithm Generic Searching Algorithm

Problem Reduction Algorithms

Page 17: Artificial intelligence in software engineering ppt

Future Scope of A.I

In the next 10 years technologies in narrow fields such as speech recognition will continue to improve and will reach human levels.

In 10 years AI will be able to communicate with humans in unstructured English using text or voice, navigate (not perfectly) in an unprepared environment and will have some rudimentary common sense (and domain-specific intelligence).

However the field of artificial consciousness remains in its infancy.

The early years of the 21st century should see dramatic stridesforward in this area however.

Page 18: Artificial intelligence in software engineering ppt

Drawbacks of A.I

Limited Ability Slow Real Time Response Can’t Handle Emergency Situation Difficult code High Cost

Page 19: Artificial intelligence in software engineering ppt

CONCLUSION

We conclude that if the machine could successfully pretend to behuman to a knowledgeable observer then you certainly shouldconsider it intelligent. AI systems are now in routine use invarious field such as economics, medicine, engineering and themilitary, as well as being built into many common homecomputer software applications, traditional strategy games etc.

Page 20: Artificial intelligence in software engineering ppt

Thanks