Learning Objectives
331 words
2 min read
Visual companion
Python
Type and operator map
Python Week 1: the first filter for runtime behavior
View
Revision summary
What this note is really saying
Short form
# Learning Objectives - Apply optimization techniques - Create decision support tools - Implement recommendation systems > **Q1: What is prescriptive analytics?** > > Recommends actions to achieve desired outcomes. Uses optimization, simulation, decision rules.

Learning Objectives
- Apply optimization techniques
- Create decision support tools
- Implement recommendation systems
pythonfrom scipy.optimize import minimize_scalar import numpy as np # Demand function from regression (example: price -> demand) demand_coef = {'intercept': 1000, 'price_coef': -5, 'elasticity': -1.2} def profit(price): """Calculate expected profit at given price.""" demand = demand_coef['intercept'] + demand_coef['price_coef'] * price cost = 50 # unit cost return -(price - cost) * demand # Negative for minimization # Find optimal price result = minimize_scalar(profit, bounds=(50, 200), method='bounded') optimal_price = result.x optimal_profit = -result.fun print(f"Optimal price: ${optimal_price:.2f}") print(f"Expected profit: ${optimal_profit:.0f}")
Q1: What is prescriptive analytics?Recommends actions to achieve desired outcomes. Uses optimization, simulation, decision rules. Answers: "What should we do?" instead of "What will happen?" Q2: What is linear programming?Optimization with linear objective function and linear constraints. Used for: resource allocation, product mix, logistics, scheduling. Solver: scipy.optimize.linprog, pulp, ortools. Q3: What is a recommendation system?Suggests items to users. Collaborative filtering (user-item interactions), Content-based (item features), Hybrid. Evaluation: precision@k, recall@k, NDCG. Q4: What is A/B testing for optimization?Compare two versions (A=current, B=new). Measure metrics (conversion, revenue). Use statistical significance to decide if B is better. Sample size matters. Q5: What is simulation?Model real-world scenarios with random variables. Monte Carlo simulation runs many iterations to estimate outcomes and risks. Useful when analytical solution is complex. Q6: Simple recommendation engine:python# Content-based recommendation from sklearn.feature_extraction.text import TfidfVectorizer from sklearn.metrics.pairwise import cosine_similarity # Item descriptions items = ['Laptop with SSD', 'Gaming mouse', 'USB-C hub', 'Mechanical keyboard'] tfidf = TfidfVectorizer() matrix = tfidf.fit_transform(items) similarities = cosine_similarity(matrix) # Find most similar to item 0 (laptop) recommended = similarities[0].argsort()[-3:][::-1] print(f"Items similar to laptop: {[items[i] for i in recommended if i != 0]}")