2.2.2 computational methods
暂无描述。系统推荐的高质量记忆内容,适合每天坚持背诵学习。
卡片预览 (24 张)
list some features which make a problem solvable by computational methods
• definable inputs and outputs • finite = limited to a number of steps, not unending • no ambiguity, it has precise instructions and questions • decomposability = be able to be broken down into sub-problems
what is meant by the term problem recognition
the process of identifying and defining a problem clearly before trying to design a computational solution
what does problem recognition involve
• understanding the needs to be solved • why it’s a problem • whether it can be solved computationally
why is problem recognition important
• prevents wasting time solving the wrong problem • ensures problem is well-defined and measurable • helps determine if a computational method is suitable • guides choice of algorithm, data and resources
what are the steps in problem recognition
• understand problem in context = who are the users, what outcomes are expected • identify the inputs and outputs • define the problem clearly • recognise the constraints and requirements (hardware, software, storage, cost) • decompose
what is problem decomposition
the process of breaking a large, complex problem into smaller, more manageable subproblems that are easier to understand, solve and test
what is meant by the term ‘divide and conquer’
like decomposition = split big problem into smaller pieces to be separately solved and solve
why is decomposition important
• simplifies complex systems • makes development and debugging easier • allows teamwork • encourages reusability in functions and moduels • improves maintenance
what is abstraction
the process of removing unnecessary details and focusing on the essential information needed to solve a problem
why is abstraction important
• simplifies complex systems • helps focus of relevant data and processes • makes problems easier to understand, design and. model • reduces errors by eliminating irrelevant details
what is backtracking
a systematic trial and error algorithmic technique used to find a solution by exploring possible solutions and backtracking when it doesn’t work
what are the advantages and disadvantages of backtracking
+finds all possible solutions +gaurantees a correct solution -can be slow for large problems -may require a lot of memory -won’t be the optimal solution
what is data mining
the process of examine large data sets to discover patterns, trends and useful information from users
what is the purpose of data mining
• identifying relationships and correlations between data • predicting future trends • supporting computational decisions • detecting unusual patterns
what are the advantages and disadvantages of data mining
+helps making data-driven decisions +can increase profits + improves user personalisation -data privacy concerns -cost
what are heuristics
when you make an educated guess to find a good-enough solution more quickly that finding the optimal solution
what are the advantages and disadvantages of heuristics
+much faster +can be improved over time +useful for large-scale problems -not guaranteed the best solutions -can introduce bias
what is performance modelling
the process of testing and predicting how well a system performs under different conditions before it is built or deployed
what s the purpose of performance modelling
• predict how a system will behave • compare alternative designs • find bottlenecks • ensure it meets the performance requirements • save time and cost
what are the advantages and limitations of performance modelling
+Identifies issues early +saves time and cost +improves reliability -models only accurate as assumptions and data -may not match real-world conditions
what is pipelining
a CPU technique that allows multiple instructions to be processed at different stages simultaneously
why is pipelining used
• increase instruction throughput • use CPU components efficiently • reduce idle time
what are the advantages and disadvantages of pipelining
+increased throughput +efficient use of CPU +improved performance -data hazards, control hazards, structural hazards
what is visualisation
the process of representing data, processing or problems visually so they are easier to understand, analyse and solve