Optimise and Initial solution in Mimosa (as explained in Tools|Optimise) are performed by keeping the user defined collections (=resources of events) fixed and allowing the application to create and change the timetables optimally. This is the classical approach in optimisation. Selection optimisation works another way round: already scheduled periods in timetables are not changed, but the application adds resources to events and swaps them across events according to the rules user has set.
For instance, you may use this selection to let students to pick the most suitable courses from alternative options.
Selection optimisation enables users to
The schedules of events in timetables and the number of periods are not changed.
In both selections you must next pick two resource categories you are going to use. First you select which category of resources is allowed to be added to events or swapped between events (typically students) and then the category of resources which are used as the criteria when this is allowed (typically students). If two or more events have the same resource of this latter category, it tells that swap across them is allowed.
If you use "subjects" as the category to tell Mimosa which events are equivalent when selecting across events, check in Options|Timetables that Prevent conflicts for is unchecked.
Assume that you would like to add students to events according to the matching subjects that have attached both to events and to the requirements of students. You may also allow students to move across events which have the same subject. Since event and resource codes in Mimosa are unique, the only way to inform Mimosa that two or more events are identical from students' selection point of view, is to attach the same resource code (such as subject) to the events. You then have the option to select any two categories of resources for these roles:
Then you can select if you want to allow to change all events or to prevent locked events from alterations.
If you select Initial solution, you first have to copy the selection table of "subjects" and "students" to the Clipboard so that Mimosa knows which students can be added to each event. On the same row you have to list those subjects and students (in any order) which are permissible combinations. Suppose you have created the subjects (codes ENGLISH, FINNISH, FRENCH, GERMAN, RUSSIAN, SPANISH, SWEDISH) and added them to respective events. For instance, subjects "ENGLISH" and "FRENCH" are added to alternative language courses.
Mimosa then checks for the events having a matching code in the first column in the selection matrix and adds only those students which are listed on the same row, as in the example below:
The selection matrix contains in the first column the codes of "subjects", and in the next columns the codes "students". These codes must match the codes used in the current Mimosa file. This matrix may contain resource codes of other categories, but Mimosa picks only the codes of the category that you have selected.
Before you can start adding students to courses, copy the selection matrix to the Clipboard. Using the Clipboard here is necessary, since the events in Mimosa always represent the actual teaching requirements, but using the external table here provides the alternatives to attach resources optimally.
This tool permits to add resources to events automatically, according to the rules you have selected. You can select if Mimosa adds resources only to events which have not been scheduled, to those which have been scheduled, or to all events. The subject on each row in the matrix you have copied to the Clipboard instructs Mimosa to add students to events optimally.
Ensure that you have copied the matrix to the Clipboard before starting.
When this tool is invoked, Mimosa adds the "students" (or resources from any selected resource category) to events according to the "subjects" which are listed on the same row on the selection matrix. The method searches first for the cases which are most difficult to solve and then continues with the less demanding combinations, while in the same time trying to keep the sizes of the resource list balanced. In the same time Mimosa takes care that the weekly teaching loads of the "students" will not exceed the timetable limits.
The progress of the addition of resources is displayed and you can abort the process when needed.
After the process is completed, a table of all changes is displayed. By clicking [Accept] you accept all changes and by clicking [Reject] or closing the view will reject them. You can copy selected or all changes to the Clipboard by clicking Copy. Copying will overwrite the current Clipboard content.
Note that after the process is completed, there may exist combinations of "Subjects" and "Students" in the matrix that were never used in the process. If such combinations are found, you are asked to copy them to the Clipboard for closer inspection or reusing them. Copying will overwrite the current Clipboard content.
You may run this application again until no changes can be found.
If the collections of the events contain students (individual timetables), it is often possible for students to change their selections across alternative events. If you want to do these changes manually, you might like to use Create and edit resources selection for this purpose. If the students or other resources have alternative choices to switch across events, use Swap button to make the switches.
Selection optimisation goes through all resources of the category you have selected (typically "Students"), clicks the Swap button automatically, if the selection is permissible and switches the resource from an event to an alternative event, if the switch will result in fewer or equal number of gaps in the timetables of the students. In all changes, creating of overlaps (conflicts) in the timetables is not permitted.
In order to tell the application, which events are alternative, create Subjects in Resources view and then add the same subjects to two or more events which are considered alternative choices. Subjects are resource categories, which do not check overlaps (uncheck Prevent conflicts for from this resource category in Options|Timetables).
For instance, you might have several alternative language events in the event list. You can create a subject Language and then go to Resources view, click [Enter] on Language and add it to all events that match this criteria. You can of event have several subjects with the same interpretation and add this information to the appropriate events. This is necessary information for Mimosa, since event codes are always unique, and the same subject in two or more events informs Mimosa that they can they are replaceable.
If events French123 and Spanish234 both have the subject Language, the student can be changed from French123 to Spanish234 or back, if the operation is otherwise permitted.
At the start, you should attach "students" to their events in Resources view by clicking [Enter] on each student, selecting the events on the right box and then clicking the Add button. This previously manually created solution will be used as the initial solution, which then optimised in this tool.
When you invoke this tool, you first select the category for "Students", and then the category for "Subjects". Students are is the resources that are going to be optimised according to the guidelines stated by subjects attached to events.
After these selections, you can set the criteria for optimisation. If you select 1) Events must have the same subject, the application only checks that both candidate events must have (at least one) same subject. If you select 2) Scheduled periods must be equal, then only those events are included which both have the same number of periods scheduled. This condition is very common, since it does NOT change the initial number of periods in the timetables of students.
The third selection Both conditions 1) and 2) must be met checks that both of the above conditions are satisfied in the same time, whereas the fourth selection Neither must be met does not care if both events have the same subject or they have equal number of scheduled periods.
In all cases, only those changes are made, which 1) Do not cause conflicts in timetables and 2) Do not increase the number of gaps in the timetables of the selected category (students). Gaps in other timetables remain the same during changes.
When you invoke the optimisation, it will display the changes it finds plus the number of combinations it searches for. You can interrupt the optimisation process at any stage or let it stop itself automatically. After going through all selected timetables and related change combinations, it displays the number of gaps before and after the optimisation, plus the total number of changes. Repeating the optimisation may able to improve the current solution.
After the process is completed, a table of all changes is displayed. By clicking [Accept] you accept all changes and by clicking [Reject] or closing the view will reject them.
You may run this application again until no improvements can be found.
You can clear all student selections with the help of the Clipboard as follows:
1. Select Events view.
2. Select Edit|Copy to Clipboard...|4 Codes and collections (select the "students" category resources only).
3. Select Edit|Paste from the Clipboard...|4 Remove from collections.