Disculpe la pregunta larga, solo necesita alguna explicación para llegar al problema real. Aquellos familiarizados con los algoritmos mencionados probablemente podrían saltar directamente al primer tablau simplex.
Para resolver menos problemas desviación absoluta (también conocido como -Optimización), el Barrodale-Roberts-algoritmo es método un propósito especial simplex que las necesidades de menos almacenamiento y esfuerzos computacionales para encontrar un mínimo adecuado.
Mi implementación del algoritmo termina en un ejemplo simple antes de alcanzar un mínimo apropiado. Sin embargo, probablemente permítanme decir primero el problema de una manera más elaborada:
Dada la información , la optimización de intenta encontrar que minimiza
Barrodale y Roberts sugirieron una modificación (aparentemente ampliamente utilizado) del método simplex que simplifica radicalmente el método simplex utilizando la estructura especial de -Problemas. En particular, esto es que una solución óptima interpola al menos r a n k ( A ) de los puntos de datos dados. Aquellos con acceso a Jstor pueden encontrar el artículo correspondiente aquí .
Lei y Anderson en 2002 propusieron una pequeña modificación que se supone que aumenta la estabilidad numérica y, por lo tanto, supera los problemas conocidos con el algoritmo simplex.
Básicamente, este algoritmo asume que usted comienza con un conjunto dado de puntos que tienen que ser interpolados, usa los procedimientos dados para construir un cuadro simplex y luego usa las reglas de Barrodale y Roberts para decidir sobre qué variables cambiar y, por lo tanto, modificar el conjunto de puntos de datos que se aproxima.
Barrodale y Roberts dan un pequeño ejemplo que intenté reproducir. Intenta aproximar los puntos por una función a 1 + a 2 x . Terminan su algoritmo con el siguiente cuadro simple condensado:
Lo más importante es que el primer y el tercer punto están interpolados y el error general es igual a . Concluyen que
Dado que todos los vectores no básicos tienen un costo marginal no positivo [...]
la iteración ha finalizado y se alcanza el óptimo.
Si uso el algoritmo de Lei y Anderson, puedo reproducir ese cuadro simplex para el conjunto de interpolación {1,3}, como se espera. Sin embargo, si comienzo el algoritmo con el conjunto (que claramente no es óptimo), obtengo el siguiente cuadro simplex:
Información adicional: si comienzo con el cuadro inicial proporcionado por Barrodale y Roberts, también puedo reproducir el cuadro anterior mediante pasos simples simples, por lo tanto, estoy bastante seguro de que los valores numéricos reales son correctos y mi interpretación de la regla de selección de pivote es defectuoso.
Tiene alguna idea sobre esto?
Me doy cuenta de que la pregunta en sí misma es bastante complicada y probablemente requiere el conocimiento de al menos el algoritmo de Barrodale y Roberts para ser respondida suficientemente. El algoritmo en su conjunto es demasiado largo para repetirlo aquí con todo detalle. Sin embargo, si tiene preguntas adicionales sobre los pasos que tomé o sobre partes faltantes de información, no dude en preguntar y con gusto agrandaré la pregunta.