Automatic problem generation
-
Upload
abhishek-dey -
Category
Software
-
view
289 -
download
1
Transcript of Automatic problem generation
Automatic Problem Generation
A new approach to Mathematical analysisPresented by: Abhishek Dey. Developer. Architect.
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.
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.
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 ?
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
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.
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.
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
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.
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
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
05/02/2023Prepared by: Abhishek Dey, Developer, Cloud Architect. 12
What’s the point?
We hate these situations!We want a solution. Maybe unique.
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.
To all the teachers, on Teacher’s Day
Thank You.
uriosity ommitment ommunityC