Podcast
Questions and Answers
Which type of algorithm solves problems by making exact decisions at each step?
Which type of algorithm solves problems by making exact decisions at each step?
- Non-deterministic
- Deterministic (correct)
- Approximation
- Heuristic
What is a primary characteristic of non-deterministic algorithms?
What is a primary characteristic of non-deterministic algorithms?
- They use exact calculations at each step
- They guarantee the shortest execution time
- They solve problems through guessing (correct)
- They always find the optimal solution
What do approximation algorithms seek to find?
What do approximation algorithms seek to find?
- A solution that is close to the true solution (correct)
- An exact solution using deterministic steps
- A solution guaranteed to be optimal
- A solution by enumerating all possibilities
Which strategy can approximation algorithms employ to find a solution?
Which strategy can approximation algorithms employ to find a solution?
What is a fundamental characteristic of a recursive algorithm?
What is a fundamental characteristic of a recursive algorithm?
How do iterative algorithms typically solve problems?
How do iterative algorithms typically solve problems?
According to the expression 'Algorithm = logic + control', what does the 'logic' component express?
According to the expression 'Algorithm = logic + control', what does the 'logic' component express?
What does the 'control' component determine in the context of an algorithm?
What does the 'control' component determine in the context of an algorithm?
Which of the following best defines the 'effectiveness' criterion for an algorithm?
Which of the following best defines the 'effectiveness' criterion for an algorithm?
What is the significance of 'finiteness' in the context of algorithm specifications?
What is the significance of 'finiteness' in the context of algorithm specifications?
Flashcards
Deterministic algorithm
Deterministic algorithm
Algorithms solve the problem with exact decision at every step.
Non-deterministic algorithm
Non-deterministic algorithm
Algorithms solve problems via guessing, refined by heuristics.
Approximation algorithms
Approximation algorithms
Algorithms seeking an approximation close to the true solution.
Serial algorithms
Serial algorithms
Signup and view all the flashcards
Parallel algorithms
Parallel algorithms
Signup and view all the flashcards
Distributed algorithms
Distributed algorithms
Signup and view all the flashcards
Algorithm Input
Algorithm Input
Signup and view all the flashcards
Algorithm Output
Algorithm Output
Signup and view all the flashcards
Algorithm Definiteness
Algorithm Definiteness
Signup and view all the flashcards
Algorithm Finiteness
Algorithm Finiteness
Signup and view all the flashcards
Study Notes
Fourier Transform Properties
- Fourier Transform is a linear operator
- Expressed mathematically: $F{af(t) + bg(t)} = aF(f(t)) + bF(g(t))$
Time Shift
- A shift in the time domain results in a linear phase shift in the frequency domain
- Mathematically: $F{f(t - t_0)} = e^{-jw t_0}F(w)$
Frequency Shift
- A shift in the frequency domain results in a complex exponential multiplication in the time domain
- Represented as: $F{e^{jw_0t}f(t)} = F(w - w_0)$
Scaling
- Scaling in the time domain is inversely proportional to scaling in the frequency domain
- Expressed as: $F{f(at)} = \frac{1}{|a|}F(\frac{w}{a})$
Time Reversal
- Time reversal in the time domain corresponds to time reversal in the frequency domain
- $F{f(-t)} = F(-w)$
Differentiation
- Differentiation in the time domain corresponds to multiplication by $jw$ in the frequency domain
- Mathematically: $F{\frac{df(t)}{dt}} = jwF(w)$
Integration
- Integration in the time domain corresponds to division by $jw$ in the frequency domain plus an impulse at the origin
- $F{\int_{-\infty}^{t}f(\tau)d\tau} = \frac{1}{jw}F(w) + \pi F(0)\delta(w)$
Multiplication
- Multiplication in the time domain corresponds to convolution in the frequency domain
- $F{f(t)g(t)} = \frac{1}{2\pi}[F(w) * G(w)]$
Convolution
- Convolution in the time domain corresponds to multiplication in the frequency domain
- $F{f(t) * g(t)} = F(w)G(w)$
Parseval's Theorem
- Relates the energy of a signal in the time domain to its energy in the frequency domain
- $\int_{-\infty}^{\infty}|f(t)|^2dt = \frac{1}{2\pi}\int_{-\infty}^{\infty}|F(w)|^2dw$
Duality
- If $F(w)$ is the Fourier transform of $f(t)$, then the Fourier transform of $F(t)$ is $2\pi f(-w)$
- if $f(t) \leftrightarrow F(w)$, then $F(t) \leftrightarrow 2\pi f(-w)$
Algorithmic Game Theory
- Study of multi-agent decision problems where agents aim to maximize their own utility in cooperative or non-cooperative settings
Goal of Algorithmic Game Theory
- Define solution concepts and predict agent behavior
Computer Science Perspective on Game Theory
- Design rules to achieve goals
- Predict game outcomes, assessing computational difficulty
Economics/Game Theory Perspective on Algorithm Design
- Design algorithms for strategic environments
- Guarantee good performance despite self-interested agents
Example: Selfish Routing
- Network of $n$ agents, each controlling a unit of traffic between a source and destination
- Agent $i$ chooses a path $p_i$ from source $s_i$ to destination $t_i$
- Cost of edge $e$ depends on the total traffic $f_e$ on that edge: $c_e(f_e)$
- Cost to agent $i$ is the sum of the costs of edges on its path: $\sum_{e \in p_i} c_e(f_e)$
- Agents want to minimize their cost
Key Questions of Selfish Routing
- Understanding the equilibrium's nature and inefficiency
- Computational complexity of finding an equilibrium
- Designing mechanisms to improve equilibrium efficiency
Topics in Algorithmic Game Theory
- Congestion Games, Selfish Routing
- Mechanism Design
- Auctions
- Social Choice
- Fair Division
- Matching
- Coalition Formation
- Network Formation
- Learning in Games
- Price of Anarchy
- Complexity of Equilibria
- Algorithmic Mechanism Design
- Online Mechanism Design
Regulation of Gene Expression
- Process by which information from a gene is used in the synthesis of a functional gene product
- These products are often proteins, but can also be functional RNAs (tRNA, snRNA)
- All known life uses gene expression to produce macromolecules
- Regulated to control when, where, and how much of a gene product is produced
Mechanism of Gene Expression Regulation
- Regulation can occur at various steps, from transcription to post-translational modification
- Used by viruses, prokaryotes, and eukaryotes to enhance adaptability by controlling protein synthesis
Regulation During Transcription
- The first control point in gene expression
- Transcription speed varies by gene
- Highly expressed genes are frequently transcribed, this is common in genes coding for proteins/RNAs which are essential to cell function
- Less needed genes are transcribed less frequently
Control Points During Transcription
- Initiation of transcription is most important, mediated through chromatin structure, promoters, enhancers, and silencers
- RNA transcript processing, including splicing, capping, and polyadenylation
Regulation During Translation
- The second major control point
- Rate of mRNA translation into protein is variable, depending on ribosome availability, tRNA availability, and the presence of initiation/elongation factors
Regulation After Translation
- The third major control point
- Post-translational modifications alter protein activity, location, or stability such as chemical groups, removal of amino acids and addition of carbohydrates and lipids
Heat Kernel Defined
- Fundamental solution to the heat equation
- $\frac{\partial}{\partial t} K(x,y;t) = \Delta_x K(x,y;t)$
- Initial condition: $\lim_{t \to 0} K(x,y;t) = \delta(x-y)$
- $\Delta_x$ is the Laplacian with respect to $x$
- $K(x,y;t)$ represents the temperature at point $x$ at time $t$ if an initial unit of heat is placed at point $y$ at time $t=0$.
Heat Kernel Properties
- Symmetry: $K(x,y;t) = K(y,x;t)$
- Positivity: $K(x,y;t) > 0$ for all $x, y$ and $t > 0$
- Normalization: $\int K(x,y;t) dx = 1$ for all $y$ and $t > 0$
- Convolution Property: $K(x,y; t_1 + t_2) = \int K(x,z; t_1) K(z,y; t_2) dz$
Heat Kernel Examples
- Euclidean Space $\mathbb{R}^n$: $K(x,y;t) = \frac{1}{(4\pi t)^{n/2}} e^{-\frac{|x-y|^2}{4t}}$
- Circle $S^1$: $K(x,y;t) = \frac{1}{2\pi} \sum_{k=-\infty}^{\infty} e^{-k^2 t} e^{ik(x-y)}$
- Compact Riemannian Manifold $M$: $K(x,y;t) = \sum_{k=0}^{\infty} e^{-\lambda_k t} \phi_k(x) \phi_k(y)$, here $\lambda_k$ are the eigenvalues of the Laplacian and $\phi_k$ are the corresponding eigenfunctions
Heat Kernel Applications
- Solving the Heat Equation: If $u(x,0) = f(x)$, then $u(x,t) = \int K(x,y;t) f(y) dy$
- Spectral Geometry: Analysis of the Laplacian's spectrum using the heat kernel via $\int K(x,x;t) dx$, which has an asymptotic expansion as $t \to 0$, whose coefficients are spectral invariants
- Diffusion Processes: Relation to diffusion processes and Brownian motion
Gas Pressure Defined
- Gas pressure is the force exerted per unit area by gas molecules on the surfaces of objects
- Expressed as: $Pressure = \frac{Force}{Area}$
Units of Pressure
- Pascal (Pa)
- Atmosphere (atm)
- Torr
- mm Hg
- Inches Hg
- PSI (Pounds per square inch)
Pressure Unit Conversions
- 1 atm = 760 mm Hg = 760 torr
- 1 atm = 101,325 Pa
- 1 atm = 14.7 PSI
Boyle's Law
- The volume of a gas is inversely proportional to its pressure
- $P_1V_1 = P_2V_2$
Charles's Law
- The volume of a gas is directly proportional to its temperature
- $\frac{V_1}{T_1} = \frac{V_2}{T_2}$
Avogadro's Law
- The volume of a gas is directly proportional to the number of moles
- $\frac{V_1}{n_1} = \frac{V_2}{n_2}$
The Ideal Gas Law
- $PV = nRT$
- $R = 0.0821 \frac{L \cdot atm}{mol \cdot K} = 8.314 \frac{J}{mol \cdot K}$
Using the Ideal Gas Law to Find Molar Mass
- Molar Mass $(ℳ) = \frac{m}{n} = \frac{mRT}{PV}$
- m = mass (g)
- n = number of moles (mol)
Using the Ideal Gas Law to Find Density
- Density (ρ) $ρ = \frac{m}{V} = \frac{Pℳ}{RT}$
Dalton's Law of Partial Pressures
- The total pressure of a gas mixture is the sum of the partial pressures of the component gases
- $P_T = P_1 + P_2 + P_3 +...$
Partial Pressure and Mole Fraction
- $P_1 = X_1P_T$
- $X_1$ = mole fraction of component 1 = $\frac{n_1}{n_T}$
- $n_1$ = number of moles of component 1
- $n_T$ = total number of moles in the mixture
Kinetic Molecular Theory
- A gas is composed of particles that are in constant, random straight-line motion
- The particles collide elastically with each other and with the walls of the container
- The particles are so small and the distances between them are so large that the volume of the individual particles is negligible
- There are no attractive or repulsive forces between the particles
- The average kinetic energy of the particles is proportional to the absolute temperature
Average Kinetic Energy
- $KE_{avg} = \frac{3}{2}RT$
Root Mean Square Velocity
- $v_{rms} = \sqrt{\frac{3RT}{ℳ}}$
- R = 8.314 J/(mol⋅K)
- ℳ = molar mass (kg/mol)
Graham's Law of Effusion
- The rate of effusion of a gas is inversely proportional to the square root of its molar mass
- $\frac{Rate_A}{Rate_B} = \sqrt{\frac{ℳ_B}{ℳ_A}}$
Van der Waals Equation
- Real Gases: Deviations from Ideal Behavior
- $(P + a(\frac{n}{V})^2)(V - nb) = nRT$
- a and b are van der Waals constants
- a: reflects the attractive forces between gas molecules
- b: reflects the finite volume of the gas molecules
Algorithmic Game Theory
- Branch of theoretical computer science that uses game theory to model the behaviour of interacting computing systems
Algorithmic Game Theory Perspective
- Game Theory: Study of strategic interactions among rational, selfish agents
- Algorithm Design: How to design efficient algorithms for computational problems
- Design games so that selfish behavior of agents leads to desirable outcomes
- Design algorithms that perform well when inputs are controlled by selfish agents
Selfish Routing Model
- Network of $n$ nodes and $m$ edges
- Each edge $e$ has a cost function (or latency function) $l_e(x)$ which is the cost incurred per unit of traffic when the edge carries $x$ units
- Non-atomic routing games involve many players, each controlling a small amount of traffic
- There are $k$ source-destination pairs $(s_i, t_i)$ and traffic demand $r_i$ for each pair
Objective of Selfish Routing
- For each traffic to minimize cost
- Evaluate the quality of the equilibrium when selfish routing has reached an equilibrium
Selfish Routing Definitions
- Flow $f$ specifying how traffic is routed
- $f_e$: amount of flow on edge $e$
- A flow $f$ is feasible if it satisfies the traffic demand for each source-destination pair
- The cost of a path $P$ is $\sum_{e \in P} l_e(f_e)$
- The cost of a flow $f$ is $\sum_{e \in E} f_e \cdot l_e(f_e)$
Wardrop Equilibrium Defined
- A flow $f$ at Wardrop equilibrium if, for any source-destination pair $(s, t)$, all flow is routed along paths of minimum cost
System Optimum Defined
- A flow $f$ at system optimum if it minimizes the total cost $\sum_{e \in E} f_e \cdot l_e(f_e)$
Price of Anarchy Explained
- Price of anarchy (PoA) is the ratio between the cost of the worst-case equilibrium and the cost of the social optimum
Price of Anarchy Equation
- $PoA = \frac{\text{Cost of Worst-Case Equilibrium}}{\text{Cost of Social Optimum}}$
Braess's Paradox Demonstrated
- Shows adding an edge to the network can worsen the performance at equilibrium
Bounding the Price of Anarchy Assumptions
- All latency functions are linear: $l_e(x) = a_e x + b_e$ with $a_e, b_e \geq 0$
Theorem on Linear Latency Functions
- With linear latency functions, the price of anarchy is at most $\frac{4}{3}$
Tightness Demonstrated
- Bound is tight, demonstrated through example: two nodes $v_1, v_2$, source $v_1$, destination $v_2$, 1 unit of traffic, two parallel edges
- $l_1(x) = x$
- All traffic goes through edge 1 costing 1 for system optimum
- All traffic goes through edge 2 costing 1 too for Wardrop Equilibrium
- $l_2(x) = 1$
- With $PoA = \frac{4}{3}$
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.