Yazan : Şadi Evren ŞEKER

STTL -> A standard timetabling language (standart bir zaman çizelgeleme dili)

Bu dil ilk olarak Jeff Kingston tarafından zaman çizelgeleme problemlerine bir girdi standardı elde etmek için önerilmiştir. Dilin çıkışında kullanılan problem bir lisede haftalık ders programlarının düzgün yerleştirilmesini hedefliyordu. Nesne yönelimli (Object oriented) bir dil olarak önerilen STTL dilinde varlıklar arası miras ilişks bulunmaktadır örneğin:

class TEACHER inherit RESOURCE
max_class_load:INTEGER
unavailable_times:SET[TIME]
cats:SET[TEACHER_CATEGORY]
functions
defects:SEQ[DEFECT]=
(
defect_check(TeacherClash, clashes) +
defect_check(TeacherOverload, overload) +
defect_check(TeacherDayOverload, day_overload)
)
end

Yukarıdaki STTL alıntısında Öğretmen (TEACHER) ile kaynak (RESOURCE) arasında miras ilişkisi kurulmuştur.
Yukarıdaki tanımlamadan sonra aşağıdaki varlığın dilde tanımlanması mümkündür:

TEACHER("Knott", 22, {}, {English})

Buna göre Knott isminde bir öğretmen haftalık azami 22 saatlik ders yükü ve herhangi bir ders engeli bulunmadan English kategorisinin altında tanımlanmıştır.

STTL dilinin diğer özelliklerinden birisi de kaynak tanımlamasıdır. Örneğin dersin yapılacağı sınıfın, ders için kullanılacak malzemelerin birer kaynak olarak tanımlanması ve dolayısıyla zamanlamaya dahil edilmesi mümkündür.

r01= ROOM("r01", {DramaRoom})
r02 = ROOM("r02", {ScienceLab})

Yr7C = STUDENT_GROUP("Yr7C")
Yr7K = STUDENT_GROUP("Yr7K")

Örneğin yukarıda sınıf ve öğrenci grupları birer kaynak olarak tanımlanmıştır.
Zaman modellemesi içinde alternatifler sunan STTL dilinde örneğin aşağıdaki şekilde bir zaman tanımlaması yapmak mümkündür:

TIME({2}, INTERVAL(1, 14), {Mon}, {INTERVAL(t(9, 30), t(12, 30))})

Yukarıdaki tanımlamada, 2. sömestr için 1den 14. haftalara kadar Pazartesi günleri saat 9.30 ile 12.30 arası kastedilmiştir. Dolayısıyla tekrarlı bir olayı ifade etmektedir.

Sonuç olarak zaman çizelgelemesine göre hazırlanmış olan bu dilde kesin tarihlerin belirlenmesi zaman aralıklarının ifade edilmesi mümkün olmakla beraber bağıl zaman ifadeleri ve zamanın belirsiz olması durumları düşünülmemiştir. Örneğin A ile B olayları olsun ve tek bilinenin A olayının B olayından sonra olması durumu olduğunda bunu göstermek bu dil ile mümkün değildir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir