Modeling and Optimization of Traffic Flow in Urban Areas - Czech ...
Modeling and Optimization of Traffic Flow in Urban Areas - Czech ...
Modeling and Optimization of Traffic Flow in Urban Areas - Czech ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
40 Chapter 4 TORSCHE Schedul<strong>in</strong>g Toolbox for Matlabedges are precedence constra<strong>in</strong>ts between these tasks. For simple schedul<strong>in</strong>gproblems, the object Taskset can be directly created from a vector <strong>of</strong>the tasks process<strong>in</strong>g times. In this case, the tasks are created automatically<strong>in</strong>side the object constructor. There are also other ways how to create an<strong>in</strong>stance <strong>of</strong> the set <strong>of</strong> tasks <strong>in</strong> order to simplify the user <strong>in</strong>terface as much aspossible.Another class, Problem, is used for the classification <strong>of</strong> determ<strong>in</strong>isticschedul<strong>in</strong>g problems <strong>in</strong> Graham <strong>and</strong> B̷lażewicz notation [Blaz 83]. This notationconsists <strong>of</strong> three parts (α|β|γ). The first part describes the processorenvironment (e.g. number <strong>and</strong> type <strong>of</strong> processors), the second part describesthe task characteristics <strong>of</strong> the schedul<strong>in</strong>g problem (e.g. precedence constra<strong>in</strong>s,release time). The last part denotes the optimality criterion (e.g. schedulemakespan m<strong>in</strong>imization). The follow<strong>in</strong>g example shows the notation str<strong>in</strong>gused as an <strong>in</strong>put to the class constructor:prob = problem(’P|prec|Cmax’)This <strong>in</strong>stance <strong>of</strong> the class Problem represents the schedul<strong>in</strong>g problem onparallel identical processors where the tasks have precedence constra<strong>in</strong>ts <strong>and</strong>the objective is to m<strong>in</strong>imize the schedule makespan.All <strong>of</strong> the above mentioned classes are designed to be maximally effectivefor users <strong>and</strong> developers <strong>of</strong> schedul<strong>in</strong>g algorithms. The toolbox <strong>in</strong>cludesdozens <strong>of</strong> schedul<strong>in</strong>g algorithmsschedul<strong>in</strong>g algorithm which are stored as Matlabfunctions with at least two <strong>in</strong>put parameters <strong>and</strong> at least one outputparameter. The first <strong>in</strong>put parameter has to be an <strong>in</strong>stance <strong>of</strong> the Tasksetclass conta<strong>in</strong><strong>in</strong>g the tasks to be scheduled. The second one has to be an <strong>in</strong>stance<strong>of</strong> the Problem class describ<strong>in</strong>g the required schedul<strong>in</strong>g problem. Theoutput parameter is an <strong>in</strong>stance <strong>of</strong> the Taskset class conta<strong>in</strong><strong>in</strong>g the result<strong>in</strong>gschedule. A typical syntax <strong>of</strong> the schedul<strong>in</strong>g algorithm call is:TSout = algorithmname(TS,problem[,processors[,parameters]])where:TSout is the <strong>in</strong>stance <strong>of</strong> the Taskset with the result<strong>in</strong>g schedule,algorithmname is the algorithm name,TS is the <strong>in</strong>stance <strong>of</strong> the Taskset to be scheduled,