Copyright by Grzegorz Bocewicz, Irena Bach-Dąbrowska, Zbigniew Banaszak Warszawa 2009 Copyright by EXIT, Warszawa 2009 Grzegorz Bocewicz Katedra Podstaw Informatyki i Zarządzania Wydział Elektroniki i Informatyki Politechnika Koszalińska Irena Bach-Dąbrowska Katedra Podstaw Informatyki i Zarządzania Wydział Elektroniki i Informatyki Politechnika Koszalińska Zbigniewa Banaszak Zakład Informatyki Gospodarczej Wydział Zarządzania Politechnika Warszawska Wszystkie nazwy produktów są zastrzeżonymi nazwami handlowymi lub znakami towarowymi odpowiednich firm. Powyższej monografii w całości lub części nie wolno powielać ani przekazywać w żaden sposób, nawet za pomocą nośników mechanicznych i elektronicznych (np. zapis magnetyczny), w tym też umieszczać ani rozpowszechniać w postaci cyfrowej zarówno w Internecie, jak i w sieciach lokalnych, bez uzyskania pisemnej zgody firmy EXIT. Recenzent Prof. dr hab. inż. Józef Matuszek Komputerowy skład tekstu Eryk Szwarc Wydawca EXIT, tel./fax (022) 823-70-45 sklep internetowy: www.exit.pl ISBN 978-83-60434-63-5
Lista ważniejszych skrótów Skrót AHP APS CAD CASE CS CCPM CCPS CLP CP CMMS CPM DP DSS DSSMS ERP ITS IRIS IFPS IMS ISSPA Ko MLA MŚP NPV PERT PMS PPM Znaczenie Analytic Hierarchy Process Advanced Planning and Scheduling Computer Aided Designe Computer Aided Softwer Engineriing Collaborative Software Critical Chain Project Management Capital Constrained Project Scheduling Constraint Logic Programming Constraint Programming Computer Models for Management Science Critical Path Method Duże Przedsiębiorstwo Decision Support Systems Decision Support Systems for Management Science Enterprise Resource Planning Issue Tracking System Industrial Relation Information Systems Interactive Financial Planning Systems Interactive Marketing Systems Interactive Support System for Policy Analysis Korporacja Metoda Logiczno-Algebraiczna Małe i Średnie Przedsiębiorstwo Net Present Value Program Evaluation and Review Technique Project Management Software Project Portfolio Management
Skrót PPS PSO RCCPS RCPS RM RPSO RTCPS SAB SE SIK SINK SKP SKWP SWD SWZ STPD TCPS TRCCPS TRCPS QMwin QSB UPS VISA WBS Znaczenie Project Payment Scheduling Problem Spełniania Ograniczeń Resource & Capital Constrained Project Scheduling Resource Constrained Project Scheduling Resource Management Rozmyty Problem Spełniania Ograniczeń Time & Capital Constrained Project Scheduling System Automatyzacji Prac Biurowych System Ekspertowy System Informowania Kierownictwa System Informowania Naczelnego Kierownictwa System Komputerowego Projektowania System Komputerowego Wspomagania Produkcji System Wspomagania Decyzji System Wspomagania Zarządzania System Transakcyjny Przetwarzania Danych Time Constrained Project Scheduling Time, Resource & Capital Constrained Project Scheduling Time & Resource Constrained Project Scheduling Quantitative Models for Windows Quantitative Systems for Bussines Unconstrained Project Scheduling Visual Interactive Sensitivity Analysis for Multiple Criteria Decision Aid Work Breakdown Structure
Lista ważniejszych symboli Symbol Znaczenie rodzina przedsięwzięć, przedsięwzięcie, j-ta czynność i-tego projektu, horyzont czasowy, termin rozpoczęcia czynności horyzontu rozmyty termin rozpoczęcia czynności czas trwania czynności rozmyty czas trwania czynności liczba zasobów odnawialnych i-ty zasób odnawialny liczony względem początku, gdzie:, gdzie: symbole kolejnych zasobów odnawialnych tworzących sekwencję symbole kolejnych zasobów odnawialnych dopuszczalnych ilości zasobów odnawialnych tworzących sekwencję ilość i-tego zasobu odnawialnego, dopuszczalna wartości i-tego zasobu w k-tej jednostce czasu horyzontu sekwencja terminów pobrania przez czynność kolejnych zasobów odnawialnych termin pobrania przez czynności k-tego zasobu odnawialnego w ilości sekwencja terminów zwalniania przez czynność kolejnych zasobów odnawialnych termin zwolnienia przez czynność, k-tego zasobu odnawialnego w ilości, liczony względem sekwencja ilości zasobów odnawialnych pobieranych przez czynność ilość k-tego zasobu pobieranego przez czynność i sekwencja terminów rozpoczęcia czynności przedsięwzięcia sekwencja rozmytych terminów rozpoczęcia czynności
Symbol i Znaczenie sekwencja czasów trwania czynności przedsięwzięcia sekwencja rozmytych terminów rozpoczęcia czynności w przedsięwzięciu sekwencja terminów pobierania k-tego zasobu podczas trwania czynności przedsięwzięcia sekwencja terminów zwalniania k-tego zasobu podczas trwania czynności przedsięwzięcia sekwencja ilości pobieranego k-tego zasobu w trakcie realizacji czynności przedsięwzięcia liczba przedsięwzięć liczba czynności w i-tym przedsięwzięciu liczba zasobów nieodnawialnych i-ty zasób odnawialny symbole kolejnych zasobów nieodnawialnych tworzące sekwencję ilość i-tego zasobu nieodnawialnego w momencie rozpoczęcia realizacji przedsięwzięć symbole ilości zasobów nieodnawialnych tworzące sekwencję sekwencja terminów pobrania przez czynność określonej ilości kolejnych zasobów nieodnawialnych termin liczony względem pobrania przez czynność k-tego zasobu nieodnawialnego w ilości sekwencja terminów generowania przez czynność określonej ilości kolejnych zasobów nieodnawialnych termin liczony względem generowania przez czynność, k-tego zasobu nieodnawialnego w ilości sekwencja ilości pobieranych przez czynność kolejnych zasobów nieodnawialnych ilość k-tego zasobu nieodnawialnego pobieranego przez czynność sekwencja ilości generowanych przez czynność kolejnych zasobów nieodnawialnych ilość k-tego zasobu nieodnawialnego generowanego przez czynność sekwencja terminów pobierania k-tego zasobu nieodnawialnego podczas trwania czynności przedsięwzięcia sekwencja terminów generowania k-tego zasobu nieodnawialnego podczas trwania czynności przedsięwzięcia
Symbol Znaczenie sekwencja ilości pobierania k-tego zasobu nieodnawialnego w trakcie realizacji czynności przedsięwzięcia sekwencji ilości generowania k-tego zasobu nieodnawialnego w wyniku realizacji czynności przedsięwzięcia zmienna rozmyta: opisywana za pomocą ciągłych funkcji przynależności dyskretnych a-przekrojów skończony zbiór rozmytych zmiennych decyzyjnych, } opisywana za pomocą funkcja przynależności określająca stopień przynależności elementu do przestrzeni rozważań przestrzeń rozważań dziedzina zmiennej rozmytej, a -przekrój: opisywany ciągłą funkcją przynależności ; opisywany w postaci przedziału odpowiednio najmniejsza i największa wartość przekroju dyskretny a-przekrój spełniający założenia, prezentowany w postaci przedziału odpowiednio najmniejsza i największa wartość dyskretnego a-przekroju rozmiar zbioru rozmytego opisującego zmienną rozmytą liczba elemenentów zbiór reguł, wartość logiczna ograniczenia (moc zbioru stopień pewności spełnienia ograniczenia operatory działań arytmetycznych na liczbach rozmytych rozmiar części wspólnej liczb rozmytych skończony zbiór zmiennych decyzyjnych, rodzina dziedzin zmiennych,, skończony zbiór ograniczeń limitujących wartości zmiennych decyzyjnych, zbiór zmiennych wejściowych, zbiór zmiennych pomocniczych,
Symbol Znaczenie zbiór zmiennych wyjściowych, ograniczenia opisujące właściwości zmiennych wejściowych ograniczenia opisujące właściwości zmiennych pomocniczych ograniczenia opisujące właściwości zmiennych wyjściowych funkcja schodkowa określająca ilość żądanych jednostek k-tego zasobu w chwili, w zależności od przyjętych terminów rozpoczęcia czynności funkcja schodkowa określająca dopuszczalną ilość k-tego zasobu w chwili funkcja jednostkowa jednostkowa funkcja czasu rezerwacji zasobu funkcja określająca sumaryczną ilość żądanych jednostek k-tego zasobu do chwili, w zależności od przyjętych terminów rozpoczęcia czynności funkcja określająca sumaryczną ilość generowanych jednostek k-tego zasobu do chwili, w zależności od przyjętych terminów rozpoczęcia czynności rozmyta jednostkowa funkcja czasu rezerwacji zasobu zbiór liczb naturalnych = {1, 2, 3, } zbiór liczb rzeczywistych
Wprowadzenie... 13 Rozdział I Systemy wspomagające zarządzanie... 17 1.1. Systemy transakcyjne... 20 1.1.1. Struktura... 21 1.1.2. Obszar zastosowań... 24 1.1.3. Przykłady ST w inżynierii zarządzania.... 24 1.2. Systemy informowania kierownictwa... 25 1.2.1. Struktura... 26 1.2.2. Obszary zastosowań... 28 1.2.3. Przykłady SIK w inżynierii zarządzania... 29 1.3. Systemy wspomagania decyzji.. 31 1.3.1. Struktura... 32 1.3.2. Obszary zastosowań..... 33 1.3.3. Przykłady SWD w inżynierii zarządzania.... 34 1.4. Systemy ekspertowe.. 35 1.4.1. Struktura.... 37 1.4.2. Obszary zastosowań...... 39 1.4.3. Przykłady SE w inżynierii zarządzania.... 39 1.5. Techniki i technologie........... 40 1.6. Rozwiązania komercyjne możliwości i ograniczenia..... 46 Rozdział II Projektowanie dedykowanych systemów wspomagania.. 53 2.1. Model referencyjny... 55 2.1.1. Model Przedsiębiorstwo Portfel przedsięwzięć.. 59 2.1.2. Modele cząstkowe 72 2.1.3. Problem Spełniania Ograniczeń... 92 2.1.4. Rozmyty Problem Spełniania Ograniczeń 104 2.1.5. Operatory logiczne dla ograniczeń budowanych na zmiennych rozmytych.. 108 2.2. Dedykowalność systemów wspomagania.. 132 2.2.1. Konstruowanie problemowo zorientowanej bazy wiedzy... 133 2.2.2. Poprawność bazy wiedzy i wnioskowanie... 144 2.2.3. Rozmyty Problem Spełniania Ograniczeń jako Baza Wiedzy... 155 2.2.4. Spójność i zupełność..... 157 2.3. Interakcyjność systemu wspomagania... 158 2.3.1. Mechanizmy rozwiązywania problemów w środowiskach CP... 158 2.3.2. Strategie przeszukiwania przestrzeni rozwiązań... 162 2.3.3. Warunki jakościowej poprawności rozwiązań.. 174 2.3.4. Kompresja zbioru ograniczeń... 193 2.4. Metodyka budowy systemów wspomagania. 201
Rozdział III System wspomagania planowania przedsięwzięć..... 207 3.1. Struktura i funkcjonowanie... 207 3.2. Obszary zastosowania... 212 3.3. Efektywność obliczeniowa 214 Rozdział IV Ocena efektywności funkcjonowania systemu.. 227 4.1. Weryfikacja SWPP na danych testowych.. 227 4.2. Weryfikacja SWPP na danych rzeczywistych... 259 Rozdział V Kierunki rozwoju systemów wspomagania decyzji. 271 5.1. System typu człowiek-maszyna 272 5.2. Ograniczenia formalnej i technologicznej natury. 276 5.3. Interakcyjny system nawigacyjnego wariantowania przedsięwzięć.. 286 Literatura. 292 Skorowidz. 297
WPROWADZENIE Rosnące znaczenie sektora małych i średnich przedsiębiorstw (MŚP) wymusza potrzebę wspomagania ich działalności, w szczególności w zakresie planowania zleceń produkcyjnych zbliżonych ze względu na swój często unikalny charakter do typowych projektów. Jednoczesna produkcja kilku różnych wyrobów oraz wzmagająca się konkurencja powodują, że o utrzymaniu rynkowej pozycji przedsiębiorstwa decyduje trafność podejmowanych przez niego decyzji związanych z planowaniem zleceń, decyzji z natury rzeczy kosztownych i ryzykownych. Planowanie i realizacja zleceń w środowisku wieloprojektowym wymaga umiejętności zarządzania zasobami różnej natury i charakteru o określonym, zwykle ograniczonym dostępie, podejmowania decyzji spełniających różne, często wzajemnie sprzeczne cele (np. związane z minimalizacją kosztów, maksymalizacją zysków, itp.) w oparciu o dane nieprecyzyjne w warunkach dynamicznie zmieniającego się otoczenia (warunki niepewności). Uwzględniając przyjęte cele i ograniczenia firmy, przedsiębiorca poszukuje zwykle odpowiedzi w następujących obszarach: Jakie efekty produkcyjne mogą być osiągnięte przy zadanych ograniczeniach (stanie przygotowania) przedsiębiorstwa? Jaki stan przygotowania przedsiębiorstwa gwarantuje osiągnięcie oczekiwanych efektów produkcyjnych? Pracownicy przedsiębiorstwa posiadają zwykle szeroką wiedzę praktyczną, której zastosowanie w procesie podejmowania decyzji przynieść może osiągniecie oczekiwanej jakości rozwiązań, jednakże formalizacja tej wiedzy jest często zadaniem trudnym do zrealizowania. Decyzje wypracowywane są zatem w oparciu o niekompletne i/lub niepełne dane. W dużych przedsiębiorstwach decyzje tego typu są wspomagane systemami komputerowo zintegrowanego zarządzania, systemami klasy ERP (Enterprise Resource Planning). Niestety, koszty oraz ryzyko związane z zakupem, wdrożeniem i eksploatacją tego typu systemów przekraczają zwykle możliwości MŚP. Do wspomagania decyzji w MŚP wykorzystywane są w zwykle komercyjnie dostępne, komputerowe systemy klasy Project Management Software (PMS). Narzędzia te pokrywają możliwość udzielania odpowiedzi jedynie dla pierwszego z ww. obszarów pytań. Modele decyzyjne implementowane w tych narzędziach umożliwiają rozwiązywanie problemów definiowanych wyłącznie na danych o charakterze precyzyjnym, tymczasem w przypadku realizacji
14 Wprowadzenie przedsięwzięć dostępne informacje posiadają zwykle charakter nieprecyzyjny, np.: miesięczny przychód firmy PLN, czas oczekiwania na realizację zlecenia tygodni, itp. Dodatkowo narzędzia te projektowane są zwykle z myślą o rozwiązywaniu problemów harmonogramowania z dokładnością do ograniczeń kolejnościowych, wiążących elementy przedsięwzięcia i czas ich trwania, bez uwzględnienia limitów zasobowych czy analizy kosztowej. Łatwo widoczna staje się zatem potrzeba dostarczenia przedsiębiorstwom narzędzi użytecznych, gwarantujących uzyskiwanie odpowiedzi na standardowe postaci problemów (pytań) pojawiających się w trakcie planowania oraz realizacji przedsięwzięć. Powinny one umożliwiać przeprowadzenie w trybie on-line zintegrowanej analizy i weryfikacji procesów planowania, harmonogramowania, zarządzania zasobami przedsiębiorstwa oraz opłacalności ekonomicznej podejmowanych przedsięwzięć. Pojawia się zatem konieczność opracowania otwartego modelu referencyjnego (stanowiącego podstawę do formułowania i rozwiązywania problemów decyzyjnych) pozwalającego opisywać złożone problemy (uwzględniające nieprecyzyjny charakter informacji, różnego rodzaju zasoby wykorzystywane do realizacji przedsięwzięć, itp.). Model ten powinien być łatwo uzupełniany o wiedzę wynikającą z doświadczenia użytkownika. Przyjęty model implikuje konieczność doboru środowisk implementacji (platform obliczeniowych), pozwalających rozwiązywać złożone problemy, środowisk cechujących się dodatkowo stosunkowo niskim kosztem zakupu i wdrożenia. W przedstawionym kontekście niniejsza monografia przedstawia nowe, stanowiące alternatywę dla istniejących, podejście do projektowania dedykowanych (zgodnych ze specyfiką i warunkami pracy danego przedsiębiorstwa) systemów wspomagania planowania przedsięwzięć. Autorzy starali się w szczególności: zwrócić uwagę na podstawowe potrzeby przedsiębiorstw w zakresie rozwiązywania problemów planowania i realizacji przedsięwzięć, przy rozwiązywaniu których dostępne komercyjnie narzędzia klasy PMS nie oferują wsparcia. Stwarza to przesłanki do budowy dedykowanych, interakcyjnych systemów wspomagania planowania przedsięwzięć, a w szczególności dostosowania konfiguracji i funkcjonalności takiego systemu do zmieniających się warunków pracy i specyfiki przedsiębiorstw;
Wprowadzenie 15 wykazać uniwersalność oraz praktyczność zastosowania Problemu Spełniania Ograniczeń (PSO) oraz środowisk deklaratywnych technik programowania z ograniczeniami (Constraint Programming (CP)) do modelowania i rozwiązywania podstawowych problemów decyzyjnych formułowanych w obszarze planowania realizacji przedsięwzięć. Szczególnie istotne jest nowe podejście do modelowania problemów decyzyjnych, integrujące w jednym modelu decyzyjnym precyzyjne jak i nieprecyzyjne dane, umożliwiające rozwiązywanie tak definiowanych problemów w jednej platformie obliczeniowej; przedstawić i przybliżyć Czytelnikom proces modelowania i oceny efektywności poszukiwania rozwiązań w środowiskach deklaratywnych technik programowania z ograniczeniami; podkreślić rosnące potrzeby w zakresie interdyscyplinarnej integracji badań z zakresu tak podstaw formalnych warunkujących efektywność budowanych modeli, jak i obszarów ich potencjalnych zastosowań praktycznych; przedstawić szereg przykładów praktycznego zastosowania omawianych rozwiązań, w szczególności zaprezentować ich zastosowanie w prototypowym interakcyjnym systemie nawigacyjnego wariantowania przedsięwzięć. Ograniczona objętość nie pozwoliła na pełne i wyczerpujące przedstawienie wszystkich omawianych w pracy zagadnień. Mimo to Autorzy starali się w możliwie szczegółowy, a jednocześnie przystępny sposób przedstawić omawiane problemy związane z projektowaniem systemów wspomagania decyzji dedykowanych do planowania przedsięwzięć. Cytowane pozycje literaturowe umożliwiają prowadzenie dalszych samodzielnych studiów w wymienionych obszarach zagadnień. Praca składa się z pięciu rozdziałów uzupełnionych stosownym wykazem literatury przedmiotu oraz skorowidzem. W rozdziale pierwszym przedstawiono przegląd podstawowych systemów wspomagania inżynierii zarządzania. Omówiono modele decyzyjne implementowane w tych narzędziach. Analizując zakres ich zastosowania w zadaniach planowania przedsięwzięć wskazano na zalety i niedostatki komercyjnych narzędzi oceniając ich praktyczną użyteczność. W rozdziale drugim, wprowadzającym w podstawy formalizmu Problemu Spełniania Ograniczeń, przedstawiono propozycję alternatywnego do stosowanych w komercyjnych narzędziach inżynierii zarządzania modelu decyzyjnego rozszerzającego zakres jego potencjalnych zastosowań
16 Wprowadzenie w wybranym obszarze decyzyjnym. Model ten stanowi otwartą strukturę (może być łatwo uzupełniany/rozszerzany o dodatkową wiedzę), w ramach której definiować można dowolne (aczkolwiek mieszczące się w zadanych ramach) hybrydy modeli problemów decyzyjnych występujących w zadaniach planowania i realizacji przedsięwzięć. Rozdział ten wprowadza również Czytelnika w obszar technik programowania z ograniczeniami, przedstawia przyjętą procedurę projektowania dedykowanych, interakcyjnych systemów wspomagania decyzji. Procedura ta, realizowana w określonych etapach, obejmuje zagadnienia budowy bazy wiedzy, weryfikacji jej poprawności, oceny możliwości gwarantowania odpowiedzi na rozważane klasy problemów decyzyjnych oraz wyznaczania jakościowych i ilościowych warunków poszukiwanych rozwiązań. Rozdział zamyka ogólny schemat metodyki projektowania systemów wspomagania. W rozdziale trzecim przedstawiono zastosowanie opracowanej metodyki w prototypowym systemie wspomagania planowania przedsięwzięć. Przedstawiono jego strukturę i funkcjonowanie oraz wskazano na podstawowe i potencjalne obszary jego wykorzystania. Szczególnie wiele miejsca poświecono kwestiom efektywności obliczeniowej implementowanych w nim algorytmów. Oceny efektywności funkcjonowania opracowanego systemu dokonano w rozdziale czwartym. Przedstawiono szereg przykładów praktycznego zastosowania systemu. Wskazano na zalety i ograniczenia systemu oraz możliwość dalszej jego rozbudowy. W rozdziale piątym przedstawiono ideę nowej generacji interakcyjnego systemu wspomagania decyzji opartą na koncepcji przyjaznego, samoorganizującego się wieloekranowego interfejsu (typu touch screen ). Proponowane rozwiązanie pozwala użytkownikowi na aktywowanie poszczególnych, ustalonych fragmentów zespołu ekranów odpowiadających wybranym parametrom przedsiębiorstwa co wymusza zmiany parametrów przypisanych do pozostałych okienek ekranów. Działanie takie jest bardzo intuicyjne, pozwala swobodnie, w trybie on-line analizować różne reakcje przedsiębiorstwa na zmieniające się warunki pracy. W pracy wykorzystano doświadczenia Autorów zebrane w Politechnice Koszalińskiej podczas wykładów prowadzonych na wydziale Elektroniki i Informatyki, na kierunku Informatyka. Autorzy będą wdzięczni za wszelkie uwagi krytyczne dotyczące niniejszego opracowania, które przesyłać należy na adres: Katedra Podstaw Informatyki i Zarządzania, Politechnika Koszalińska, ul. Śniadeckich 2, 75 453 Koszalin, lub kpiz@ie.tu.koszalin.pl