Desarrollar software
Presupuesto $250-750 USD
Job Description:
JAIME VIVI GARCÍA en representación de MAKING ENGINEERING S.A.S., empresa dedicada a asesorar y brindar acompañamiento en Proyectos de Ingeniería a nivel nacional, en la estructuración de estudios previos, planeación, formulación, y posterior ejecución de los mismos, presenta el presente proyectos con el fin de realizar un proyecto de mejora a un algoritmo empresarial utilizado para competir en procesos concursales de selección a nivel nacional con diferentes empresas del estado.
Respecto al Algoritmo:
La empresa dispone actualmente un algoritmo desarrollado en Matlab, el cual se encuentra compuesto de tres partes
1. Identificación de Variables a utilizar, estas se ingresan teniendo en cuenta información del concurso al cual se va a aplicar, e información estadística de procesos de selección posteriores, adicional dispone una entrada de una base de datos de propiedad de la empresa en la que se encuentra información respecto a experiencia requerida, plazos y demás utilizados dentro del algoritmo.
2. Posterior, se realizan todas las posibles combinaciones sin repetir entre los elementos de la base de datos ingresada, y a cada combinación resultante se le aplica una formula especial para obtener valores relevantes en la selección, ya que estos valores determinaran que combinación es mejor que otra.
NOTA: Este aparte no solo nos informa cuántas son las posibles combinaciones sino cuales son, es decir, nos entrega el árbol de combinaciones a utilizar e una matriz.
3. En tercer lugar, teniendo una matriz de resultados con las combinaciones utilizadas y su valor relevante, se realiza un método de ordenación para identificar que combinación tuvo mejor resultado.
Necesidades del proyecto:
• La ejecución del algoritmo es muy tardía, la segunda y tercera parte presentan demoras que requieren eliminarse, se han guardado los arboles de combinaciones como variables que son llamadas dentro del algoritmo para no redundar en operaciones y se han aplicado métodos de ordenamiento diferentes al de la burbuja, Shell, QuickSort, entre otros pero el resultado no es óptimo. Se requiere entonces como parte del proyecto un estudio sobre el algoritmo, en cantidad de ciclos realizados, y como optimizar cada parte del código con el fin de reducir los tiempos de ejecución, identificar si existe algún vacío en el algoritmo que desborde memoria y retrase el mismo, o si se requiere de alguna configuración especial para optimizar la ejecución de las instrucciones.
• Se requiere tener el algoritmo de forma ejecutable (En un primer momento para Windows, pero sería un valor agregado tener ejecutables en GNU/Linux y MAC), es decir, que para poder correr el algoritmo, sea solo necesaria la base de datos, y el archivo ejecutable, sin ser necesaria la instalación de Matlab, o algún otro entorno para compilar y ejecutar el algoritmo.
NOTA: El entorno grafico requiere los cuadros para ingresar información (Con algún proceso de validación), y un botón para iniciar el algoritmo. Esta parte seria a convenir dentro del proyecto, de acuerdo al posible alcance que se le pueda dar.
• Documentación del trabajo realizado, teniendo claro que la aplicación del algoritmo a mejorar se realiza con fines comerciales y se debe guardar reserva dentro de la ejecución del proyecto, en el entendido que la empresa requiere una cláusula de confidencialidad en el proyecto realizado.
13 freelancers están ofertando un promedio de $671 por este trabajo
Hello, I want to show you all relevant Demo and Designs which is similar to your project completed previously. To make sure about the requirement set and customizations, I want to discuss this project with you further Más
Desarrollador de aplicaciones desde hace mas de 8 años en lenguajes y frameworks backend como Ruby (Rails), Python (DJango), PHP (Laravel y código plano), Javascript (NodeJS) entre otros. Por el lado del cliente uti Más
Hola Jaime, yo puedo ayudarte a desarrollar esta aplicacion, lo que buscas es un pequeño sistema capaz de evaluar y arrojar los resultados por si mismo al respecto de un proceso, bien puedo escribirlo, te brindo la sol Más
Hola mi nombre es Juan, para el desarrollo de este proyecto una forma de agilizar el proceso y hacerlo multiplataforma es usando Python. Primero tendría que ver la función y la utilidad del mismo para plantearse constr Más