Automatic problem generation

14
Automatic Problem Generation A new approach to Mathematical analysis Presented by: Abhishek Dey. Developer. Architect.

Transcript of Automatic problem generation

Page 1: Automatic problem generation

Automatic Problem Generation

A new approach to Mathematical analysisPresented by: Abhishek Dey. Developer. Architect.

Page 2: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 2

What is a problem?

▪ Take a typical example (Algebra):

is a quadratic equation. Resolve the factors.

Approach:1. We multiply a*c and resolve the common factors.2. We manipulate them and try to rearrange equation to satisfy

constraint b.3. where b’ is a constant.

Page 3: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 3

Human Analysis Vs. Machine Analysis

Factorize a*c.

I. assume expr=a*cII. take a suitable integer x and

divide expr/xIII. if remainder is divisible by x,

continue (expr-x)/x else, check for a new divisor y (expr-x)/y.

IV. repeat unless expr reduces to a prime number or 1.

Page 4: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 4

Computer’s Algorithm:

▪ Has to start from 2 and continue checking up to a*c-1 times.

▪ Iterator to – If , then

– Else

▪ Do you think this is smart ?

Page 5: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 5

A better approach

▪ Fundamental Law of Arithmetic:– Every composite number can be expressed as a product of

primes.

▪ This makes the algorithm faster and smarter.

Number Number of Divisors

Prime 2Square of a prime 3Cube of a prime 4

Page 6: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 6

Problem with Machines

▪ They generate random figures.– Can you solve ?– Probably. But not in a limited time.

▪ The generated problem may not have a unique solution.▪ Some problems such as Matrix Chain multiplication,

Bellman Ford, Dijkstra may require a lot of processing power.

Page 7: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 7

Where there is will, there is a unique solution

▪ Processing Queue:– We use a distributed processing model.– Some problems from our end, others from customer’s

end.– We maintain a processing queue.– A worker role that keeps record of all the distributed

tasks going on.

Example:Say, we have a customer X who wants 10 questions on quadratic equations. The server supplies 5 of them and the remaining is generated in his system and backed up in our server.

Page 8: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 8

Architecture of the back end

Backend Database

Processing QueueWrites data

Contacts tracker

We are Trackers! We keep track of

jobs

Page 9: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 9

Determining a unique solution

▪ We form a Tree.▪ Trace all paths that can be

followed.▪ If we reach a wrong node, we

trace back using Backtracking.▪ Finally the correct path is

determined.▪ If the tree is too complex we

use Union-Find algorithm.▪ This also helps us to know the

difficulty level of a problem.

Page 10: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 10

Another problem has come up!

▪ When a user chooses a level of difficulty for the generated problems, what do we mean by EASY or HARD?

▪ EASY is a relative term.▪ So, we employ 2 things:– A Machine Learning mechanism based

on sentiment analysis.– Feedback from live customers.

– What is MACHINE LEARNING?? :O

Page 11: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 11

Achieved Throughput

500 1000 10,000 1,00,000 10,00,000 20,00,00005000000

10000000150000002000000025000000300000003500000040000000

No. of devicesNo. of devices

NO. OF DEVICES

No. O

F QU

ESTI

ONS

Page 12: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 12

What’s the point?

We hate these situations!We want a solution. Maybe unique.

Page 13: Automatic problem generation

05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 13

The UI and UX:

▪ Users will be offered:– Choose number of questions.– Choose difficulty level of questions.– If not satisfied with response, option to

discard question by just a slide.– The experience is sleek and hassle free.

▪ What we shall get:– We are Opensource. Not just FREE.– Entire profits from advertisements.– You contribute your processing power. (a

little bit.)– Build a platform for teachers.

Page 14: Automatic problem generation

To all the teachers, on Teacher’s Day

Thank You.

uriosity ommitment ommunityC