Problema nº: 4 Nombre: MINIMUM JOB SHOP SCHEDULING URLs: • • http://www.inf.utfsm.cl/~esaez/fio/s1_2004/apuntes/pert-2004-1.pdf http://www2.toki.or.id/book/AlgDesignManual/BOOK/BOOK4/NODE156.HTM 1. Descripción Considerando que la finalización de un proyecto es cuando una lista de actividades han sido completadas. Para cada actividad, puede existir un conjunto de actividades predecesoras que deben ser completadas antes de que comience la nueva actividad. Cada una de estas actividades posee un tiempo conocido de realización, el cual debe ser completado en forma lineal (Al comenzar una actividad, no se interrumpe). Se busca encontrar la mejor combinación para realizar el proyecto en el mínimo tiempo. 2. Formato de entrada (descripción de la instancia a resolver) Una primera línea de texto contiene un entero N, 0<N<1000, representado el numero de actividades del problema. Las siguientes N líneas contienen la Actividad, Duración y los Predecesores. En donde los predecesores es una lista con todas aquellas actividades que deben ser terminadas antes de comenzar esta. 3. Formato de salida (descripción de la solución a la instancia) La solución debe ser expresada como una lista con las actividades en el orden en que deben ser desarrolladas para obtener el tiempo mínimo, seguido del tiempo en que la actividad se comienza. 4. Casos de prueba Entrada 6 A6 B9 C8AB D7AB E 10 D F 12 C E Salida 38 A0 B0 C9 D9 E 16 F 26 Entrada 9 A3 B5 C4A D3B E1B F4CDE G2CD H2FG I3F Salida 15 A0 B0 C3 D5 E5 F8 G8 H 12 I 12 5. Indicaciones generales Una forma de resolver el problema es considerar la entrada como un grafo. Con lo cual se puede resolver el problema en modo gráfico. Para el primer caso de prueba, el grafo queda como el siguiente C A dummy 1 F 3 5 D 6 E B 2 4 6. Indicaciones para Scheme Una forma de expresar la instancia del primer caso de prueba en Scheme es la siguiente ( (A 6 ()) (B 9 ()) (C 8 (A)) ... (I 3 (F)) ) La instancia del problema es una lista con los datos de entrada, la actividad, la duración y una lista con las actividades predecesoras. Existen muchas otras alternativas de representación que pueden ser útiles al momento de desarrollar el problema.