about summary refs log tree commit diff
path: root/usth/MATH2.2/labwork/5/report.tex
diff options
context:
space:
mode:
Diffstat (limited to 'usth/MATH2.2/labwork/5/report.tex')
-rw-r--r--usth/MATH2.2/labwork/5/report.tex133
1 files changed, 0 insertions, 133 deletions
diff --git a/usth/MATH2.2/labwork/5/report.tex b/usth/MATH2.2/labwork/5/report.tex
deleted file mode 100644
index 16daad0..0000000
--- a/usth/MATH2.2/labwork/5/report.tex
+++ /dev/null
@@ -1,133 +0,0 @@
-\documentclass[a4paper,12pt]{article}
-\usepackage[english,vietnamese]{babel}
-\usepackage{amsmath}
-\usepackage{booktabs}
-\usepackage{enumerate}
-\usepackage{lmodern}
-\usepackage{siunitx}
-\usepackage{tikz}
-
-\newcommand{\exercise}[1]{\noindent\textbf{#1.}}
-
-\title{Numerical Methods: Linear Programming}
-\author{Nguyễn Gia Phong--BI9-184}
-\date{\dateenglish\today}
-
-\begin{document}
-\maketitle
-
-Given the production contraints and profits of two grades of heating gas
-in the table below.
-\begin{center}
-  \begin{tabular}{l c c c}
-    \toprule
-    & \multicolumn{2}{c}{Product}\\
-    Resource & Regular & Premium & Availability\\
-    \midrule
-    Raw gas (\si{\cubic\metre\per\tonne}) & 7 & 11 & 77\\
-    Production time (\si{\hour\per\tonne}) & 10 & 8 & 80\\
-    Storage (\si{\tonne}) & 9 & 6\\
-    \midrule
-    Profit (\si{\per\tonne}) & 150 & 175\\
-    \bottomrule
-  \end{tabular}
-\end{center}
-
-\begin{enumerate}[(a)]
-  \item Let two nonnegative numbers $x_1$ and $x_2$ respectively be
-    the quantities in tonnes of regular and premium gas to be produced.
-    The constraints can then be expressed as
-    \[\begin{cases}
-      7x_1 + 11x^2 &\le 77\\
-      10x_1 + 8x_2 &\le 80\\
-      x_1 &\le 9\\
-      x_2 &\le 6
-    \end{cases}
-    \iff \begin{bmatrix}
-      7 & 11\\
-      10 & 8\\
-      1 & 0\\
-      0 & 1
-    \end{bmatrix}\begin{bmatrix}
-      x_1\\ x_2
-    \end{bmatrix}
-    \le \begin{bmatrix}
-      77\\ 80\\ 9\\ 6
-    \end{bmatrix}\]
-
-    The total profit is the linear function to be maximized:
-    \[\Pi(x_1, x_2) = 150x_1 + 175x_2 = \begin{bmatrix}
-      150\\ 175
-    \end{bmatrix}\cdot\begin{bmatrix}
-      x_1\\ x_2
-    \end{bmatrix}\]
-
-    Let $\mathbf x = \begin{bmatrix}
-      x_1\\ x_2
-    \end{bmatrix}$, $A = \begin{bmatrix}
-      7 & 11\\
-      10 & 8\\
-      1 & 0\\
-      0 & 1
-    \end{bmatrix}$, $\mathbf b = \begin{bmatrix}
-      77\\ 80\\ 9\\ 6
-    \end{bmatrix}$ and $\mathbf c = \begin{bmatrix}
-      150\\ 175
-    \end{bmatrix}$, the canonical form of the problem is
-    \[\max\left\{\mathbf c^\mathrm T
-                 \mid A\mathbf x\le b\land\mathbf x\ge 0\right\}\]
-  \item Due to the absense of \verb|linprog| in Octave, we instead use GNU GLPK:
-\begin{verbatim}
-octave> x = glpk (c, A, b, [], [], "UUUU", "CC", -1)
-x =
-   4.8889
-   3.8889
-\end{verbatim}
-    Contraint type \verb|UUUU| is used because all contraints are inequalities
-    with an upper bound and \verb|CC| indicates continous values of $\mathbf x$.
-    With the sense of -1, GLPK looks for the maximization\footnote{I believe
-    \emph{minimization} was a typo in the assignment, since it is trivial that
-    $\Pi$ has the minimum value of 0 at $\mathbf x = \mathbf 0$.} of
-    $\Pi(4.8889, 3.8889) = 1413.9$.
-
-    The two blank arguments are for the lower and upper bounds of $\mathbf x$,
-    default to zero and infinite respectively.  Alternatively we can use
-    the following to obtain the same result
-\begin{verbatim}
-glpk (c, [7 11; 10 8], [77; 80], [], [9 6], "UU", "CC", -1)
-\end{verbatim}
-
-  \item Within the constrains, the profit can be calculated using the following
-    function, which takes two meshes of $x$ and $y$ as arguments
-\begin{verbatim}
-function z = profit (x, y)
-  A = [7 11; 10 8];
-  b = [77; 80];
-  c = [150; 175];
-  [m n] = size (x);
-  z = -inf (m, n);
-  for s = 1 : m
-    for t = 1 : n
-      r = [x(s, t); y(s, t)];
-      if A * r <= b
-        z(s, t) = dot (c, r);
-      endif
-    endfor
-  endfor
-endfunction
-\end{verbatim}
-
-    Using this, the solution space is then plotted using \verb|ezsurf|,
-    which color each grid by their relative values (the smallest is dark purple
-    and the largest is bright yellow):
-\begin{verbatim}
-ezsurf (@(x1, x2) constraints (x1, x2), [0 9 0 6], 58)
-\end{verbatim}
-\pagebreak
-
-    Since the plot is just a part of a plane, we can rotate it for a better view
-    without losing any information about its shape.
-
-    \scalebox{0.69}{\input{profit.tikz}}
-\end{enumerate}
-\end{document}