AI Flashcards

1
Q

Games played an important role in the history of AI. Name three computers that defeated human players.

A
  • Deep blue
  • IBM Watson
  • AlphaGo
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the three driving forces why AI is booming right now?

A
  • Computing power
  • Data availability
  • Better Algorithms
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Give three giant tech companies which used AI in their applications. What did they use AI for?

A
  • google
    -> predictive searches
  • JPMorgan
    -> COiN - analyze legal documents
  • IBM
    -> medical diagnosis
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the three types of AI (plus a very short explanation)?

A
  • Artificial Intelligence
    -> a computer program that does something smart
  • machine learning
    -> machines take data en learn for themselves
  • deep learning
    -> neural networks that simulate human decision-making
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is recursion? Give an example.

A

an operation in terms of itself
- The Towers of Hanoi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the two different cases you need to consider in recursion? Explain.

A
  • Base case
    -> a simple occurrence that can be answered directly
  • Recursive case
    -> a more complex occurrence of the problem that cannot be answered directly, but instead can be described in terms of smaller occurences of the same problem
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Consider the following recursive function:

```python
def mystery(n):
if n < 10:
return n
else:
a = n // 10 # integer division: 7 // 2 gives 3
b = n % 10 # module or division remainder: 7 % 2 gives 1
return mystery(a + b)
~~~

What is the result of: 

```python
print(mystery(648))
~~~

A

9

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Give three examples where a graph can be used to represent/solve real world problems.

A
  • Navigation systems
  • Web pages links
  • Social networks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

How do you call a node in a graph? How are they connected? What is the difference between a directed graph and an unordered graph?

A

vertex
by edges
The edges are directional = directed graph. Bij een unordered graph lopen alle edges in bijde richtingen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Search algorithms are divided into two categories. Can you name them (plus a very short explanation)?

A
  • Uninformed search algorithms
    -> The search algorithms have no additional information on the goal node
  • Informed search algorithms
    -> the algorithms have information on the goal state
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Name three domains where the A* algorithm is widely used.

A
  • games programming
  • natural language prosessing
  • financial trading systems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a heuristic?

A

something that estimates how close a state is to the goal state

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the branching factor for the following games (The simple path game, Tic Tac Toe, Chess)? Is it uniform or not? If not, what is the average branching factor?

A
  • The simple path game:
    -> uniform; 2
  • Tic Tac Toe
    -> not; first=9 second=9-1, ….
  • Chess
    -> no; 35,
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Name four important programming paradigms (plus a very short explanation).

A

-> Imperative programming
* follow my commands
* in the order I give them
* remember state
-> Object-oriented programming
* keep your state to yourself
* receive my messages
* respond as you see fit
-> Functional programming
* mutable state is dangerous
* pure functions are safe
* data goes in, data comes out
-> Declarative programming
* these are the facts
* this is what I want
* I don’t care how you do it

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Can you give a visual metaphor for these four programming paradigms (Imperative programming, Object-oriented programming, Functional programming, Logical programming)? Give also an example language.

A

IP: complex clock, clockwork machinery
C
OOP: notion of cells in a body
Python
FP: factory -> materials input, car output Scheme (Lisp)
LP: ogic puzzle like sudoku
Prolog

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the building blocks of logic programming? Give a brief explanation.

A

-> facts
true statements about the program and data
-> rules
relationships between facts and are the constraints which allow us to make conclusions about the problem domain
-> Resolver

17
Q

What is the difference between imperative and declarative programming?

A

i: HOW a problem is solved
d: WHAT needs to be solved

18
Q

Consider the following programming languages (Java, SQL, Prolog, Python). How would you solve a problem in those langugages (by describing the HOW or the WHAT)?

A
  • Java: HOW
  • SQL: WHAT
  • Prolog: WHAT
  • Python: HOW