{"id":9330,"date":"2024-07-03T07:20:03","date_gmt":"2024-07-03T12:20:03","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/analisisnumerico\/?p=9330"},"modified":"2026-04-05T19:57:45","modified_gmt":"2026-04-06T00:57:45","slug":"s1eva2024paoi_t3-tasas-natalidad-reemplazo-ecuador","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-s1eva30\/s1eva2024paoi_t3-tasas-natalidad-reemplazo-ecuador\/","title":{"rendered":"s1Eva2024PAOI_T3 Tasas de natalidad de reemplazo en Ecuador"},"content":{"rendered":"\n<p><strong>Ejercicio<\/strong>: <a href=\"https:\/\/blog.espol.edu.ec\/algoritmos101\/mn-1eva30\/1eva2024paoi_t3-tasas-natalidad-reemplazo-ecuador\/\" data-type=\"post\" data-id=\"9282\">1Eva2024PAOI_T3 Tasas de natalidad de reemplazo en Ecuador<\/a><\/p>\n\n\n\n<p>Los datos de la tabla que se requieren usar para la tabla son los a\u00f1os 1965, 1980, 1995 y 2010.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>tasa<\/strong><\/td><td>7.32<\/td><td>4.89<\/td><td>3.50<\/td><td>2.79<\/td><\/tr><tr><td><strong>a\u00f1o<\/strong><\/td><td>1965<\/td><td>1980<\/td><td>1995<\/td><td>2010<\/td><\/tr><tr><td><strong>k<\/strong><\/td><td>0<\/td><td>3<\/td><td>6<\/td><td>9<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">literal a<\/h3>\n\n\n\n<p>Para cuatro datos o muestras el grado del polinomio que se puede plantear es 3. La ecuaci\u00f3n se ordena siguiendo el modelo para la matriz de Vandermonde, primer coeficiente es del termino de mayor grado.<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(x) = ax^3+bx^2+cx+d <\/span>\n\n\n\n<p>Por el orden de magnitud del eje x comparado con los valores de las constantes, se usan los valores del vector k que corresponde a los \u00edndices de la tabla. El valor del a\u00f1o se obtiene al hacer un cambio de escala que inicia en el a\u00f1o t<sub>0<\/sub> = 1965 y tama\u00f1o de paso \u0394x = 5 a\u00f1os.<\/p>\n\n\n\n<p>el sistema de ecuaciones usando cada punto ser\u00e1:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(0) = a(0)^3+b(0)^2+c(0)+d = 7.32 <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(3) = a(3)^3+b(3)^2+c(3)+d = 4.89 <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(6) = a(6)^3+b(6)^2+c(6)+d = 3.50 <\/span>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(9) = a(9)^3+b(9)^2+c(9)+d = 2.79 <\/span>\n\n\n\n<p>literal b<\/p>\n\n\n\n<p>El sistema de ecuaciones para la Matriz de Vandermonde D y el vector de constantes B en la forma de matriz aumentada D|B:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> \\left[ \\begin{array}{cccc | c} (0)^3 &amp; (0)^2 &amp; (0) &amp; 1 &amp; 7.32 \\\\ (3)^3 &amp; (3)^2 &amp; (3) &amp;1 &amp;4.89\\\\ (6)^3 &amp; (6)^2 &amp; (6) &amp;1 &amp; 3.50 \\\\ (9)^3 &amp; (9)^2 &amp; (9) &amp; 1 &amp; 2.79 \\end{array} \\right] <\/span>\n\n\n\n<h3 class=\"wp-block-heading\">literal c<\/h3>\n\n\n\n<p>Resolviendo el sistema de ecuaciones con el algoritmo y usando la instrucci\u00f3n np.linalg.solve(A,B)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&gt;&gt;&gt; np.linalg.solve(A,B)\narray(&#091;-2.22222222e-03,  7.77777778e-02,\n       -1.02333333e+00,  7.32000000e+00])<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">literal d<\/h3>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(x) = -0.00222 x^3 + 0.07777 x^2 - 1.0233 x + 7.32 <\/span>\n\n\n\n<p>Para el ajuste de escala de a\u00f1os, se usa:<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> a\u00f1o = x*5 +1965 <\/span>\n\n\n\n<p>la gr\u00e1fica usando el algoritmo, muestra que el polinomio pasa por los puntos seleccionados y existe un error entre los puntos que no participan en la construcci\u00f3n del polinomio.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"925\" height=\"539\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2024\/07\/tasareemplazo_colapsoec_v1.png\" alt=\"tasa reemplazo colapso ec\" class=\"wp-image-18890\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">literal e<\/h3>\n\n\n\n<p>El a\u00f1o 2020 en x se escala como<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> 2020 = x*5 +1965 <\/span>\n\n\n\n<p>x = 11<\/p>\n\n\n\n<p>o revisando la tabla proporcionada en el ejercicio<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(11) = -0.00222 (11)^3 + 0.07777(11)^2 - 1.0233 (11)x + 7.32 = 2.5166<\/span>\n\n\n\n<p>el error se calcula usando el valor medido para el a\u00f1o 2020<\/p>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> error = | 2.51- 2.35| = 0.16 <\/span>\n\n\n\n<h3 class=\"wp-block-heading\">literal f<\/h3>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> p(x) = -0.00222 x^3 + 0.07777 x^2 - 1.0233 x + 7.32 = 2.51 <\/span>\n\n\n\n<p>para resolverlo se requiere usar cualquiera de los algoritmos de la unidad 2.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&gt;&gt;&gt; import scipy.optimize as opt\n&gt;&gt;&gt; opt.bisect(px,11,30,xtol=0.001)\n20.312713623046875\n&gt;&gt;&gt;<\/code><\/pre>\n\n\n\n<p>que corresponde al a\u00f1o = 20.31*5+1965 = 2066.55<\/p>\n\n\n\n<p>Sin embargo la interpolaci\u00f3n se usa para estimar valores dentro del intervalo de muestras. El concepto de extrapolaci\u00f3n corresponde a otro cap\u00edtulo. Sin embargo la pregunta se la considera para evaluar la comprensi\u00f3n de la unidad 2.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h1 class=\"wp-block-heading\">Algoritmo con Python<\/h1>\n\n\n\n<p>El resultado con el algoritmo se observa como<\/p>\n\n\n\n<pre class=\"wp-block-code alignwide\"><code>xi &#091;0 3 6 9]\nfi &#091;7.32 4.89 3.5  2.79]\nMatriz Vandermonde: \n&#091;&#091;  0.   0.   0.   1.]\n &#091; 27.   9.   3.   1.]\n &#091;216.  36.   6.   1.]\n &#091;729.  81.   9.   1.]]\nlos coeficientes del polinomio: \n&#091;-2.22222222e-03  7.77777778e-02 \n -1.02333333e+00  7.32000000e+00]\nPolinomio de interpolaci\u00f3n: \n-0.00222222224*x**3 + 0.077777778*x**2 - 1.02333333*x + 7.32\n\n formato pprint\n                       3                      2                            \n- 0.002222222224*x  + 0.0777777778*x  - 1.023333333*x + 7.32\n&gt;&gt;&gt; px(11)\n2.5166666666667066<\/code><\/pre>\n\n\n\n<p>Instrucciones en Python<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# 1Eva_2024PAOI_T3 Tasas de natalidad en pa\u00edses desarrollados\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport sympy as sym\n\n# INGRESO\ntasa = &#x5B;7.32, 6.39, 5.58, 4.89,4.31,3.85,3.50,3.26,3.03,2.79,2.54,2.35]\nanio = &#x5B;1965, 1970, 1975, 1980,1985,1990,1995,2000,2005,2010,2015,2020]\nk    = &#x5B;   0,     1,   2,    3,   4,   5,   6,   7,   8,   9,  10,  11]\ncual = &#x5B;0,3,6,9]\ntasamin = 2.1\n\n# PROCEDIMIENTO\nfi = np.take(tasa,cual)\nxi = np.take(k,cual)\n\n# El polinomio de interpolaci\u00f3n\n# muestras = tramos+1\nmuestras = 25\n\n# PROCEDIMIENTO\n# Convierte a arreglos numpy \nxi = np.array(xi)\nB = np.array(fi)\nn = len(xi)\n\n# Matriz Vandermonde D\nD = np.zeros(shape=(n,n),dtype =float)\nfor i in range(0,n,1):\n    for j in range(0,n,1):\n        potencia = (n-1)-j # Derecha a izquierda\n        D&#x5B;i,j] = xi&#x5B;i]**potencia\n\n# Aplicar m\u00e9todos Unidad03. Tarea\n# Resuelve sistema de ecuaciones A.X=B\ncoeficiente = np.linalg.solve(D,B)\n\n# Polinomio en forma simb\u00f3lica\nx = sym.Symbol('x')\npolinomio = 0\nfor i in range(0,n,1):\n    potencia = (n-1)-i   # Derecha a izquierda\n    termino = coeficiente&#x5B;i]*(x**potencia)\n    polinomio = polinomio + termino\n\n# Polinomio a forma Lambda\n# para evaluaci\u00f3n con vectores de datos xin\npx = sym.lambdify(x,polinomio)\n\n# Para graficar el polinomio en &#x5B;a,b]\na = np.min(xi)\nb = np.max(xi)\nxin = np.linspace(a,b,muestras)\nyin = px(xin)\n   \n# SALIDA\nprint('xi', xi)\nprint('fi',fi)\nprint('Matriz Vandermonde: ')\nprint(D)\nprint('los coeficientes del polinomio: ')\nprint(coeficiente)\nprint('Polinomio de interpolaci\u00f3n: ')\nprint(polinomio)\nprint('\\n formato pprint')\nsym.pprint(polinomio)\n\n# Grafica\nplt.plot(anio,tasa,'o')\nplt.plot(xi*5+anio&#x5B;0],fi,'o',color='red', label='&#x5B;xi,fi]')\nplt.plot(xin*5+anio&#x5B;0],yin,color='red', label='p(x)')\nplt.xlabel('xi')\nplt.ylabel('fi')\nplt.legend()\nplt.axhline(0)\nplt.axhline(2.1,linestyle='-.')\nplt.xlabel('anio')\nplt.ylabel('tasa')\nplt.title(polinomio)\nplt.show()\n<\/pre><\/div>\n\n\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ejercicio: 1Eva2024PAOI_T3 Tasas de natalidad de reemplazo en Ecuador Los datos de la tabla que se requieren usar para la tabla son los a\u00f1os 1965, 1980, 1995 y 2010. tasa 7.32 4.89 3.50 2.79 a\u00f1o 1965 1980 1995 2010 k 0 3 6 9 literal a Para cuatro datos o muestras el grado del polinomio [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-mn-ejemplo","format":"standard","meta":{"footnotes":""},"categories":[46],"tags":[58,54],"class_list":["post-9330","post","type-post","status-publish","format-standard","hentry","category-mn-s1eva30","tag-ejemplos-python","tag-mnumericos"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/9330","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/comments?post=9330"}],"version-history":[{"count":5,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/9330\/revisions"}],"predecessor-version":[{"id":23825,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/9330\/revisions\/23825"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=9330"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=9330"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=9330"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}