Rozważania na temat nauczania symulacji w szkołach wyższych

Transkrypt

Rozważania na temat nauczania symulacji w szkołach wyższych
Prace Naukowe Instytutu Organizacji
i Zarządzania Politechniki Wrocławskiej
Wyd. Oficyna Wydawnicza Politechniki
Wrocławskiej, Wrocław 2003; pp 133-141
Bożena MIELCZAREK*
ROZWAŻANIA NA TEMAT NAUCZANIA SYMULACJI
W SZKOŁACH WYŻSZYCH
W artykule podjęto dyskusję na temat celów edukacyjnych i strategii nauczania modelowania symulacyjnego. Dokonano przeglądu zawartości programów kilkunastu kursów z zakresu symulacji
prowadzonych na polskich uczelniach. Wnioski przedstawiono w końcowej części referatu.
1. WPROWADZENIE
Modelowanie symulacyjne zawarte jest w programach nauczania różnych kierunków studiów od wielu lat (chociaż niekoniecznie pod tą właśnie nazwą). W ramach
tego przedmiotu studenci budują modele komputerowe systemów rzeczywistych lub
hipotetycznych, wymyślonych na potrzeby procesu dydaktycznego. Zwykle w
treściach omawianych w trakcie jednego kursu umieszcza się elementy teoretyczne
(budowa modeli, statystyczna analiza wyników, ...) jak i praktyczne (programowanie,
korzystanie z różnych narzędzi do prowadzenia symulacji,...).
Istotne jest uwypuklenie faktu, że symulacja jest zbiorem technik a nie pojedynczą
metodą. Nie istnieje żaden specjalny typ modelu, co może sugerować często przywoływany zwrot model symulacyjny. W rzeczywistości termin symulacja odnosi się do
metodologii gromadzenia informacji o systemie poprzez obserwowanie zachowania
się modelu matematycznego za pomocą programu komputerowego. Najczęściej rozpatruje się trzy główne nurty symulacji; są to: gry symulacyjne, symulacja statyczna
oraz symulacja dynamiczna. Chociaż każdy z wymienionych wariantów jest unikalny,
gry symulacyjne różnią się zasadniczo od pozostałych. W niniejszym artykule rozważania na temat nauczania symulacji odnoszą się do pozostałych, nie-growych metod.
Pytanie, na które musi sobie odpowiedzieć prowadzący kurs modelowania symulacyjnego brzmi: „Jak dokonać wyboru zagadnień związanych z symulacją w odniesieniu do wiedzy, którą kurs powinien przekazać studentom?”. Dodatkowym, istotnym
__________
*
Politechnika Wrocławska, Instytut Organizacji i Zarządzania [email protected]
134
Bożena Mielczarek
utrudnieniem w kształtowaniu zawartości programu jest rozmaitość podejść metodologicznych, które występują pod wspólnym szyldem symulacji. I tak, najczęściej
omawiane w trakcie procesu nauczania warianty symulacji to:
• symulacja dyskretna,
• symulacja ciągła (w tym metoda dynamiki systemów),
• metoda Monte Carlo,
• symulacje statyczne w arkuszu kalkulacyjnym
Jest rzeczą oczywistą, że pomieszczenie wymienionych powyżej (i tych nie wymienionych) metod w jedno- czy nawet dwu-semestralnym kursie jest niewykonalne.
Możliwe jest oczywiście zasygnalizowanie istnienia każdego podejścia (chociażby w
ramach wykładu) ale selekcja treści jest nieunikniona.
Celem niniejszego artykułu jest próba podjęcia dyskusji na temat celów i strategii
nauczania modelowania symulacyjnego w szkołach wyższych. Autorka przeanalizowała zawartość kursów związanych z symulacją, prowadzonych na kilkunastu polskich uczelniach. Wyniki z przeprowadzonego badania przedstawiono w dalszej
części artykułu.
2. CELE DYDAKTYCZNE NAUCZANIA MODELOWANIA SYMULACYJNEGO
Zgodnie z definicją symulacji sformułowaną przez T. Naylora [Naylor 1974]:
„Symulacja to proces projektowania matematycznego i/lub logicznego modelu systemu rzeczywistego a następnie prowadzenie na tym modelu eksperymentów komputerowych w celu opisania, wyjaśnienia lub predykcji zachowań systemu rzeczywistego”.
Z definicji tej wynika, że badania symulacyjne wymagają zbudowania modelu
matematycznego i/lub logicznego. „Dobry” model stanowi podstawowy element sukcesu w każdej analizie symulacyjnej. Model symulacyjny musi umożliwiać budowę
wydajnego i sprawnego programu komputerowego. Następnie, musi zadać właściwe
pytania posługując się dobrze zaprojektowaną procedurą eksperymentalną aby umożliwić uzyskanie użytecznych wyników. Ponieważ nadrzędnym celem symulacji jest
predykcja zachowania systemu, należy również włączyć decydentów w proces oceny
uzyskanych alternatyw.
Modelowanie symulacyjne to natomiast dziedzina wiedzy, która służy pogłębianiu
poziomu zrozumienia interakcji występujących w systemie i systemu jako całości.
Można postawić tezę, że metoda symulacji komputerowej jest wyłącznie środkiem
a nie celem samym w sobie. Nadrzędnym zadaniem kursu z zakresu symulacji powinno być nauczenie studentów umiejętności zadawania właściwych pytań odnośnie
zachowania systemu i rozpoznawania poprawnych odpowiedzi. Celowe wydaje się
zatem rozróżnienie pomiędzy nabywaniem wiedzy a kształceniem pewnych umiejęt-
Rozważania na temat nauczania symulacji w szkołach wyższych
135
ności. Nabyta wiedza powinna sprawić, że student umiejętnie wprowadzi do modelu
niepewności świata rzeczywistego, będzie się czuł swobodnie przy zetknięciu z dużymi, złożonymi systemami, będzie wiedział jak odpowiednio planując eksperyment
symulacyjny poruszać się w gąszczu różnorodnych rozwiązań. Umiejętności pozwolą
mu natomiast sprawnie wykorzystać wybrane narzędzie programistyczne, zbudować
poprawny model komputerowy i przeprowadzić jego weryfikację.
Pojawiają się zatem następujące pytania1:
• Jakie umiejętności powinny być rozwijane w ramach przedmiotu?
• Jakie cele dydaktyczne powinny być postawione?
• Jakie kryteria powinny wpływać na wybór zawartości kursu?
W dalszej części artykułu zostaną przedstawione rozważania oscylujące wokół
prób odpowiedzi na powyższe pytania.
3. ZAWARTOŚĆ MERYTORYCZNA KURSU
3.1. PODEJŚCIA METODOLOGICZNE
Dwa podstawowe, ściśle powiązane ze sobą podejścia do nauczania symulacji to
podejście teoretyczne i praktyczne2.
Przy zastosowaniu podejścia teoretycznego, naucza się studentów poprawnej metodologii badania symulacyjnego, zgłębiając przede wszystkim aspekty dotyczące
procedur pozyskiwania i analizy danych wejściowych, dopasowywania rozkładów
losowych, umiejętności stawiania poprawnych założeń odnośnie funkcjonowania
systemu, zagadnień związanych z modelowaniem, strategii prowadzenia eksperymentów symulacyjnych, statystycznej analizy wyników. Proces nauczania może odbywać się poza laboratorium, ewentualnie możliwe jest zademonstrowanie działania
wybranego pakietu symulacyjnego na wykładzie czy na ćwiczeniach. Po ukończeniu
takiego kursu studenci są doskonale przygotowani teoretycznie jednak brakuje im
praktycznych umiejętności budowy modeli (złożonych) systemów rzeczywistych, co
może prowadzić do kreowania nadmiernie uproszczonych lub wręcz niepoprawnych
modeli.
W podejściu praktycznym zajęcia przebiegają w laboratorium komputerowym i nacisk położony jest przede wszystkim na umiejętności posługiwania się jednym lub
kilkoma pakietami symulacyjnymi oraz na kształceniu biegłości w programowaniu z
wykorzystaniem tych pakietów. Studenci opanowują techniczne umiejętności progra__________
1
2
por. również [Szczerbicka et al. 2000]
por. również [Altiok et al. 2001]
136
Bożena Mielczarek
mowania, doskonale radzą sobie z budową złożonych modeli jednak mogą mieć poważne problemy z przeprowadzeniem analizy zasadności modelu, z poprawną interpretacją wyników, nie wspominając już o błędach popełnionych w trakcie przygotowania danych, które mogą doprowadzić do fałszywych wyników produkowanych
przez (skądinąd) poprawny model.
Jak zatem określić zawartość przedmiotu aby połączyć i zrównoważyć oba podejścia?
3.2. MODELOWANIE I ANALIZA
Odpowiedzią może być wyróżnienie treści związanych z modelowaniem oraz z
analizą. Modelowanie to kwestie odnoszące się do budowy modelu statycznego lub
dynamicznego, zagadnienia szczegółowości modelu, formułowanie upraszczających
założeń, przeprowadzanie weryfikacji i walidacji a także wybór odpowiedniego pakietu komputerowego. Analiza to z kolei metodologiczne podstawy symulacji czyli
przede wszystkim rachunek prawdopodobieństwa i statystyka: definiowanie rozkładów losowych, metody generowania liczb i zmiennych losowych, statystyczna analiza
wyników, metody redukcji wariancji, planowanie eksperymentów.
Błędem jest traktowanie aspektów związanych z analizą oddzielnie lub jako osobnego tematu poruszanego „na koniec” kursu. Wydaje się, że najwłaściwszym rozwiązaniem, z punktu widzenia celów kursu, byłoby nauczanie modelowania równocześnie z wprowadzaniem pewnych elementów analizy, a więc takie opracowanie treści
nauczania, które w zintegrowany sposób poruszałyby podstawy analizy w trakcie
nauki modelowania. Przykłady budowanych modeli powinny być tak dobrane aby w
czytelny sposób prezentować np. wpływ rozkładów losowych na zachowanie modelu,
elementy procesu dopasowywania rozkładów, związek pomiędzy wyborem różnych
ciągów liczb losowych a wariancją w wynikach symulacji, przebieg planowania i
wykonania eksperymentów, ... itd.
3.3. MODELOWANIE A PROGRAMOWANIE
Często zapomina się o różnicy pomiędzy modelowaniem a programowaniem. Mówiąc o programie komputerowym używa się zwrotu „model”. Tymczasem model systemu rzeczywistego to pewna matematyczna abstrakcja, w której przyjęto wiele
upraszczających założeń opisujących zachowanie systemu. Budowa dobrego modelu,
na tyle realistycznego aby odpowiadał na postawione pytania i na tyle prostego na ile
jest to możliwe jest wyzwaniem trudnym i chyba najważniejszym w całym procesie
realizacji projektu symulacyjnego. Oprogramowanie modelu jest już natomiast zabiegiem czysto technicznym. Błędem jest zatem skupianie się w trakcie kursu symulacji
Rozważania na temat nauczania symulacji w szkołach wyższych
137
na nauce programowania i przygotowywanie studentom gotowych przykładów (modeli) z prośbą o oprogramowanie ich z wykorzystaniem danego narzędzia (pakietu).
W trakcie nauki symulacji należy większy nacisk położyć na to jak zbudować model niż na to jak napisać program. Zalecana byłaby szersza dyskusja nad postawionymi założeniami, ich trafnością, trudnościami w ujęciu różnorodnych zachowań
systemu w sztywne ramy języka matematycznego, konsekwencjami przyjęcia określonych założeń.
4. WYBÓR OPROGRAMOWANIA DYDAKTYCZNEGO
Ważnym elementem procesu dydaktycznego jest wybór właściwego języka programowania który będzie wykorzystywany w laboratorium komputerowym. Abstrahując od kwestii finansowych (czy nas stać na dany zakup?) celowe wydaje się wskazanie najważniejszych, z punktu widzenia celów nauczania symulacji, kryteriów doboru oprogramowania1.
•
Łatwość uczenia się
Umiejętność programowania nie powinna być wymagana. Ponieważ podstawowym celem kursu jest nauka modelowania a nie pisanie programów, student(ka) nie
może skupiać się na syntaktyce języka. Nauka zasad programowania powinna przebiegać przy okazji budowy modelu i tylko w zakresie, jaki niezbędny jest do rozwiązania sformułowanych problemów. Celem kursu nie może być nabycie szczegółowej
wiedzy o wybranym (wybranych) pakietach oprogramowania. Stosowane narzędzie
nie powinno zatem wymuszać posiadania wiedzy o słowach kluczowych, przecinkach,
dwukropkach, parametrach postawionych w odpowiednich kolumnach ale raczej proponować rozwiązanie problemu związanego z oprogramowaniem modelu.
•
Łatwość zapisu modelu komputerowego
Program powinien być łatwy w zapisie. Najlepiej byłoby gdyby pakiet wyposażony był w GUI (Graphical User Interface) czyli narządzie umożliwiające budowę
modelu komputerowego za pomocą ikon graficznych i okien dialogowych. Liczba
dostępnych ikon nie powinna być przy tym zbyt duża, ewentualnie mogą one być
pogrupowane na różnych poziomach, tak aby studenci nie stawali przed dylematem
wyboru odpowiedniego symbolu spośród bardzo wielu możliwych do zastosowania.
Ważne jest również aby końcowa długość programu (modelu komputerowego) nie
była nadmierna.
__________
1
por. również [Stahl, 2000]
138
•
Bożena Mielczarek
Czytelność raportów
Bardzo istotnym etapem procesu symulacji jest analiza wyników. Generowane raporty powinny być dostatecznie szczegółowe aby nie wymuszać każdorazowo projektowania zestawów parametrów wyjściowych ale jednocześnie muszą być czytelne,
zaprezentowane w formie pozwalającej na szybką interpretację wyników. Pożądane
byłoby również automatyczne przeprowadzanie niezbędnej analizy statystycznej – na
przykład wyliczanie przedziału ufności, średniej, odchylenia, itd. W raportach powinien również znaleźć się podstawowy zestaw histogramów i wykresów prezentujących najważniejsze statystyki modelu.
•
Łatwość wykonywania eksperymentów
Jest rzeczą istotną aby studenci utożsamiali symulację stochastyczną z wielokrotnymi powtórzeniami i koniecznością stosowania różnych ciągów liczb losowych.
Pakiet powinien zatem umożliwiać przeprowadzanie dwóch głównych strategii prowadzenia eksperymentu symulacyjnego (tzw. symulacje kończące się i działające
nieprzerwanie). Pożądane jest również aby analiza statystyczna powtórzeń była przeprowadzana automatycznie (np. wyliczanie średniej i odchylenia z wielu replikacji,
wyznaczenie długości przedziału ufności, i inne)
•
Bezpieczne programowanie
Chcielibyśmy zminimalizować ryzyko popełnienia błędów logicznych w oprogramowaniu. Pożądaną cechą oprogramowania powinien zatem być przystępny sposób
testowania programu i wykrywania ewentualnych błędów logicznych. Błędy procesu
kompilacji powinny być wskazywane w czytelny i jednoznaczny sposób.
5. NAUCZANIE SYMULACJI W UCZELNIACH POLSKICH
5.1. UWAGI OGÓLNE
Aby sprawdzić jakie treści zawarte są w programach nauczania symulacji na
uczelniach polskich, przeglądnięto zawartość sylabusów kilkunastu szkół wyższych
(pr.tab.1). Wykorzystano przede wszystkim materiały opublikowane w Internecie,
chociaż z kilkoma uczelniami kontaktowano się również bezpośrednio. Uzyskane
wyniki należy jednak traktować jedynie sondażowo, ponieważ:
• opublikowana zawartość sylabusów niekoniecznie musi w pełni odpowiadać
zawartości rzeczywiście przeprowadzanych kursów,
• dokumenty udostępnione w Internecie mogą nie być na bieżąco uaktualniane,
• niewiele Uczelni publikuje pełną zawartość swoich programów nauczania,
Rozważania na temat nauczania symulacji w szkołach wyższych
•
•
•
139
treści związane z symulacją są czasami łączone z innym materiałem i mogą
występować pod „nieintuicyjną” nazwą,
słowo symulacja pojawia się w nazwie przedmiotu ale zagadnienia związane z
modelowaniem symulacyjnym nie są tam zawarte,
opublikowane sylabusy są zwykle bardzo ogólne i nie pozwalają na dokładną
analizę treści kursu.
5.2. NAZWA PRZEDMIOTU
Najczęściej przedmiot występuje pod nazwą Modelowanie i symulacja czasem z
dodatkiem komputerowa. Równie popularne jest łączenie symulacji z prognozowaniem (Teoria prognozy i symulacji komputerowej, Prognozowanie i symulacje). W
kilku przypadkach sygnalizowano wprost omawianą na zajęciach metodę, np. Symulacja komputerowa z pakietem Excel.
5.3. WARIANT SYMULACJI
Zdecydowanie najczęściej omawianymi wariantami symulacji są: symulacja statyczna, metody Monte Carlo oraz symulacja dyskretna, chociaż w programie kilku
kursów znalazła się również symulacja ciągła.
5.4. OPROGRAMOWANIE
Na podstawie zebranych informacji można stwierdzić, że na zajęciach z symulacji
statycznej najczęściej wykorzystywany jest arkusz kalkulacyjny Excel, natomiast
symulację dyskretną prowadzi się za pomocą narzędzi dedykowanych tej metodzie,
takich jak GPSS (naczęściej), AweSim, Arena, Extend. W niektórych przypadkach
(rzadko) wykorzystuje się ogólne języki programowania np. Pascal, C++.
5.5. ZAWARTOŚĆ KURSU
W większości opublikowanych programów znajdują się treści poświęcone ogólnej
teorii modelowania, często wprowadza się podstawowe pojęcia statystyki matematycznej oraz zagadnienia dotyczące generowania liczb i zjawisk losowych. We
wszystkich analizowanych sylabusach znalazły się prezentacje przykładowych modeli. Były to najczęściej modele masowej obsługi oraz wielorównaniowe modele statyczne. W zapowiadanej treści wykładów rzadko natomiast sygnalizowana jest tematyka związana z weryfikacją modeli; jedynie w kilku programach wyraźnie wyodręb-
140
Bożena Mielczarek
niono tematy dotyczące zasad pozyskiwania danych, uwzględniania niepewności,
interpretacji wyników i planowania eksperymentów.
+
2+2
1+2
+
+
MS Excel +
+
prognozowanie
dyskretna
statyczna
1+1
prognozowanie
Akademia Górniczo
Hutnicza
dyskretna
metody
Monte Carlo
Uniwersytet
ciągła
Jagielloński
dyskretna
Politechnika
Lubelska
Wymiar
+
1+1
Politechnika Łódzka ciągła
Uniwersytet Łódzki
Akademia
Ekonomiczna w
Katowicach
+
Analiza
wyników
dyskretna
ciągła
dyskretna
ciągła
Weryfikacja
Akademia
Techniczno-Rolnicza
Bydgoszcz
Politechnika
Krakowska
Program
,
Simula,
Simscript
Modula
Prezentacja
modeli
Wariant
Elementy
statystyki
Uczelnia
Zagadnienia
modelowania
Tab.1. Zawartość kursów symulacji na przykładowych uczelniach wyższych.
dyskretna
2+2
Pascal
C, Clipper
Matlab
+
+
SGH
Excel
IThink
Arena
Extend
Symulacja i modelowanie
Modelowanie i symulacja
komputerowa
Prognozowanie i
symulacja
Elementy programowania
dynamicznego i symulacji
Teoria prognozy i
symulacji komputerowej
Prognozowanie i
symulacje
+
MS Excel
GPSS/PC
WITNESS +
AweSim
Modelowanie i symulacja
+
MS Excel
Politechnika Gdańska dyskretna
statyczna
dynamika
systemów
Politechnika Wrocław dyskretna
+
Nazwa przedmiotu
+
+
+
+
+
2+2
+
+
1+2
+
2+2
+
+
+
+
+
Symulacja komputerowa
Modelowanie
symulacyjne
Symulacja komputerowa
z pakietem Excel
Modelowanie
symulacyjne
Wykłady wspomagane są zajęciami laboratoryjnymi, na których przede wszystkim
kładzie się nacisk na budowę modeli. Pojawiają się jednak również tematy związane z
Rozważania na temat nauczania symulacji w szkołach wyższych
141
techniczną stroną symulacji jak na przykład dotyczące testowania generatorów liczb
losowych czy konstrukcji algorytmów symulacyjnych.
6. UWAGI KOŃCOWE
Celowe wydaje się przeprowadzenie szerzej zakrojonych badań dotyczących nauczania symulacji w polskich szkołach wyższych. Informacje, z których korzystano
(sylabusy opublikowane w Internecie) nie pozwoliły na analizę tego co, zdaniem autorki, jest najistotniejsze czyli sposobów łączenia w ramach jednego kursu elementów
analizy i modelowania. Warto również zwrócić uwagę na niejednoznaczne umiejscawianie symulacji w blokach programowych. Metodologia budowy i analizy modeli
symulacyjnych wywodzi się zarówno z obszaru Badań Operacyjnych jak i Teorii
Zarządzania. Podstawową cechą Badań Operacyjnych jest posługiwanie się modelem
matematycznym opisującym działanie rozpatrywanego systemu rzeczywistego. W
naukach Zarządzania wykorzystuje się modele do wspomagania procesu decyzyjnego. Oba te obszary nachodzą znacząco na siebie, ponieważ większość modeli to
przecież modele matematyczne a wiele decyzji to decyzje związane z zarządzaniem.
Ta niejednoznaczność powoduje, że symulacja jako blok wpisywana jest w program
nauczania wielu przedmiotów dydaktycznych (np. ekonometria, badania operacyjne,
prognozowanie) co utrudnia dyskusję nad rolą i kształtem nauczania symulacji w
szkołach wyższych.
LITERATURA
ALTIOK; KELTON; L’ECUYER; NELSON; SCHMEISER; SCHRIBER; SCHRUBEN; WILSON J.R. 2001.
Various ways academics teach simulation: are they all appropriate?, [w]: Proceedings of
2001 Winter Simulation Conference, pp. 1580-1591.
NAYLOR T. 1975. Modelowanie cyfrowe systemów ekonomicznych, Państwowe Wydawnictwo
Naukowe, Warszawa.
STAHL I. 2000. How should we teach simulation?, [w]: Proceedings of 2000 Winter Simulation
Conference, pp. 1602-1612.
SZCZERBICKA H., BANKS J., OREN T.I., ROGERS R.V., SARJOUGHIAN H.S., ZEIGLER B.P. 2000.
Conceptions of curriculum for simulation education (panel) [w]: Proceedings of 2000 Winter Simulation Conference, pp. 1635-1644.

Podobne dokumenty