stringtranslate.com

solucionador de conocimientos tradicionales

TK Solver (originalmente TK!Solver ) [1] es un sistema de software de resolución de problemas y modelado matemático basado en un lenguaje declarativo basado en reglas , comercializado por Universal Technical Systems, Inc. [2]

Historia

Inventado por Milos Konopasek a fines de la década de 1970 y desarrollado inicialmente en 1982 por Software Arts , la compañía detrás de VisiCalc , [1] TK Solver fue adquirido por Universal Technical Systems en 1984 después de que Software Arts cayera en dificultades financieras y fuera vendido a Lotus Software . [3] El objetivo de Konopasek al inventar el concepto TK Solver era crear un entorno de resolución de problemas en el que un modelo matemático determinado construido para resolver un problema específico pudiera usarse para resolver problemas relacionados (con una redistribución de variables de entrada y salida) con un mínimo o no se requiere programación adicional: una vez que un usuario ingresa una ecuación, TK Solver puede evaluar esa ecuación tal como está, sin aislar variables desconocidas en un lado del signo igual.

Software Arts también lanzó una serie de " Solverpacks ": "versiones listas para usar de algunas de las fórmulas más comúnmente utilizadas en áreas de aplicación específicas". [4]

El New York Times describió a TK Solver como "haciendo por la ciencia y la ingeniería lo que el procesamiento de textos hizo por las comunicaciones corporativas [sic] y los paquetes de cálculo hicieron por las finanzas". [1]

Sistemas técnicos universales

Lotus, que había adquirido Software Arts, incluido TK Solver, en 1984 [3] vendió su propiedad del software a Universal Technical Systems menos de dos años después. [2] La versión 5 todavía se consideraba "uno de los solucionadores de ecuaciones matemáticas más antiguos del mercado actual" en 2012. [5] [6]

Tecnología del núcleo

Las tecnologías principales de TK Solver son un lenguaje de programación declarativo , un solucionador de ecuaciones algebraicas, [1] un solucionador de ecuaciones iterativo y una interfaz estructurada basada en objetos que utiliza una estructura de comando. [1] [7] La ​​interfaz comprende nueve clases de objetos que se pueden compartir y fusionar con otros archivos TK:

Cada clase de objeto se enumera y almacena en su propia hoja de trabajo: la hoja de reglas, la hoja de variables, la hoja de unidades, etc. Dentro de cada hoja de trabajo, cada objeto tiene propiedades resumidas en subhojas o vistas en una ventana de propiedades. La interfaz utiliza barras de herramientas y una barra de navegación jerárquica que se asemeja al árbol de directorios que se ve en el lado izquierdo del Explorador de Windows .

La estructura de programación declarativa está incorporada en las reglas, funciones y variables que forman el núcleo de un modelo matemático. [8]

Reglas, variables y unidades.

Todas las reglas se ingresan en la hoja de reglas o en funciones definidas por el usuario. A diferencia de una hoja de cálculo o un entorno de programación imperativo , las reglas pueden estar en cualquier orden o secuencia y no se expresan como declaraciones de asignación. "A + B = C / D" es una regla válida en TK Solver y se puede resolver para cualquiera de sus cuatro variables. Las reglas se pueden agregar y eliminar según sea necesario en la Hoja de reglas sin tener en cuenta su orden e incorporarse a otros modelos. Un modelo TK Solver puede incluir hasta 32.000 reglas, y la biblioteca que se envía con la versión actual incluye utilidades para matemáticas superiores, estadística, ingeniería y ciencia, finanzas y programación.

Las variables de una regla se publican automáticamente en la hoja de variables cuando se ingresa la regla y la regla se muestra en formato matemático en la ventana Vista MathLook en la parte inferior de la pantalla. Cualquier variable puede operar como entrada o salida, y el modelo [8] se resolverá para las variables de salida dependiendo de la elección de las entradas.

TK Solver también incluye una base de datos de factores de conversión de unidades, y los usuarios pueden agregar, eliminar o importar conversiones de unidades de manera similar a las reglas. Cada variable está asociada con una unidad de "cálculo", pero a las variables también se les pueden asignar unidades de "visualización" y TK convierte automáticamente los valores. Por ejemplo, las reglas pueden basarse en metros y kilogramos, pero se pueden usar unidades de pulgadas y libras para entrada y salida.

resolución de problemas

TK Solver tiene tres formas de resolver sistemas de ecuaciones. El "solucionador directo" resuelve un sistema algebraicamente mediante el principio de sustitución consecutiva. Cuando varias reglas contienen múltiples incógnitas, el programa puede activar un solucionador iterativo que utiliza el algoritmo de Newton-Raphson para aproximar sucesivamente basándose en conjeturas iniciales para una o más de las variables de salida. Las funciones de procedimiento también se pueden utilizar para resolver sistemas de ecuaciones. Las bibliotecas de dichos procedimientos se incluyen con el programa y se pueden combinar en archivos según sea necesario. Una función de resolución de listas permite asociar variables con rangos de datos o distribuciones de probabilidad, resolviendo múltiples valores, lo cual es útil para generar tablas y gráficos y para ejecutar simulaciones de Monte Carlo . La versión premium ahora también incluye un "Optimizador de soluciones" para el establecimiento directo de límites y restricciones en la resolución de modelos [8] para condiciones mínimas, máximas o específicas.

TK Solver incluye aproximadamente 150 funciones integradas : matemáticas, trigonométricas , booleanas , cálculo numérico , operaciones matriciales, acceso a bases de datos y funciones de programación, incluido el manejo de cadenas y llamadas a rutinas compiladas externamente. Los usuarios también pueden definir tres tipos de funciones: funciones de reglas declarativas; funciones de lista, para búsquedas de tablas y otras operaciones que involucran pares de listas; y funciones de procedimiento, bucles for y otras operaciones de procedimiento que también pueden procesar o dar como resultado matrices (listas de listas). Se incluye la base de datos NIST completa de propiedades termodinámicas y de transporte, con funciones integradas para acceder a ella. TK Solver es también la plataforma para aplicaciones de ingeniería comercializadas por UTS, [9] que incluyen diseño avanzado de resortes, software de engranajes integrado, fórmulas interactivas de Roark, transferencia de calor en TK y análisis de dinámica y vibración.

Visualización y uso compartido de datos

Se pueden utilizar tablas, gráficos, comentarios y la herramienta de visualización de notación MathLook para enriquecer los modelos de TK Solver. Los modelos se pueden vincular a otros componentes con herramientas Microsoft Visual Basic y .NET , o se pueden habilitar para la web usando el producto RuleMaster o vincularlos con hojas de cálculo de Excel usando el producto Excel Toolkit. También hay una opción DesignLink que vincula los modelos TK Solver con dibujos CAD y modelos sólidos. En la versión premium, los modelos independientes se pueden compartir con otras personas que no tienen una licencia TK, abriéndolos en Excel o en el TK Player gratuito.

Recepción

BYTE en 1984 afirmó que "TK!Solver es excelente para resolver casi cualquier tipo de ecuación", pero que no maneja matrices y que un lenguaje de programación como Fortran o APL era superior para la solución simultánea de ecuaciones lineales . La revista concluyó que, a pesar de las limitaciones, se trataba de una "herramienta poderosa, útil para científicos e ingenieros. No existe ningún producto similar". [10] En la versión 5.0, TK Solver agregó la funcionalidad de manejo de Matrix. [6]

A mediados de 1988 aparecieron productos competitivos: Mathcad de Mathsoft y Eureka: The Solver de Borland . [11] [12] [13]

Dan Bricklin , conocido por VisiCalc y el desarrollo inicial de TK Solver por parte de Software Arts , fue citado diciendo que el mercado "no era tan grande como pensábamos que sería porque no mucha gente piensa en ecuaciones". [13]

Ver también

Referencias

  1. ^ abcdef Erik Sandberg-Diment (2 de agosto de 1983). "Nuevo software para la ciencia y la ingeniería". Los New York Times . Consultado el 23 de julio de 2019 .
  2. ^ ab "Resúmenes: Lotus vendió su programa de software TKSolver a Universal Technical Systems". Los New York Times . 1 de enero de 1986.
  3. ^ ab David E. Sanger (9 de abril de 1985). "Lotus se prepara para adquirir Software Arts". Los New York Times .
  4. ^ Erik Sandberg-Diment (9 de agosto de 1983). "Fórmulas listas para usar para las finanzas de la física". Los New York Times .
  5. ^ "TK Solver R5". Muelles . Instituto de Fabricantes de Primavera. Verano 2012.
  6. ^ ab "TK Solver 5.0 Premium (independiente) de Universal Technical Systems". uts.com . Consultado el 20 de abril de 2017 .
  7. ^ /M para mover, /I para insertar... "transferido de Visicalc".
  8. ^ a b C Nirmala Khandan (2001). Herramientas de modelado para ingenieros y científicos ambientales. ISBN 1420003399.
  9. ^ "TK! Solver Plus de Universal Technical Systems". Revista PC . 14 de marzo de 1989. pág. 310. ¡Hay mucho que admirar en el TK de 395 dólares de Universal Technical Systems! Solucionador Plus...
  10. ^ Miller, Alan R. (diciembre de 1984). "TK! Solucionador". BYTE . págs. 263–272.
  11. ^ Ronald Shone, "Software para resolver ecuaciones: Eureka: The Solver, TK Solver Plus y Mathcad", Journal of Economic Surveys 3 :1:83–95 doi :10.1111/j.1467-6419.1989.tb00059.x (marzo de 1989)
  12. ^ "Mathcad, de Mathsoft Inc. de Cambridge, Massachusetts; Eureka, de Borland International de Scotts Valley, California.
  13. ^ ab Andrew Pollack (24 de junio de 1988). "Lo último de un científico destacado: software matemático". Los New York Times .