Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Introduction to programing and algorithms independent of the language of programming: application to data extraction and analysis Organizers: Remi Neveu 2 ECTS The course is given either in French or in English depending on participants’ requirements Summary This class is an introduction to programming skills using matlab and visual basic (Excel) as programming languages for practice. Matlab and visual basic are used rather than C++, Python or Java because matlab is widely used in cognitive neuroscience and Excel is widely used in private companies. Skills developed during this class will allow participants to write, build and run their own simple programs from scratch and these skills will be easily transferred to another programming language (such as C++, Python, Java...). Thus, the use of loops and low level functions are exclusively used during practice. The main programming tricks are tackled and participants are trained to track and solve them (i.e. “random“ memory violations, programs that gives an output that seems to be right but which is false). The modification of a previous program written by somebody else is addressed as well as the building of functions. 7 sessions of 4 hours each at a frequency of one session per week. Details From a practical point of view, algorithmic notions are first presented and practiced over simple exercises and some hardware notions useful for experiments construct and data recording are addressed (1st session and half of second session). Second and third sessions tackle the use of variables of different types (numbers (double, float, integers), strings (i.e. letters), structures, cells) with matlab while sessions 4 to 6 are dedicated to building complex programs requiring the building and the use of functions. The second half of session 6 and session 7 are dedicated to moving the different notions addressed to Visual Basic by building a complex program that would extract specific values that cannot be addressed with regular excel functions. Complexity of exercises is progressive so that at each step, notions addressed at the previous step are re-used and complemented by the notions addressed during the ongoing step. The first main step encompasses all the basic manipulations of variables which will be addressed first independently and secondly mixed together one after the other: use of numeric arrays of several dimensions and simple computations over these arrays (mean, maximum... without using preprogrammed functions), modifications of strings, use of arrays of different types (strings, structures, cells). The second main step will tackle the building of functions and the understanding of function help. The third main step will mix all the basic manipulations of variables addressed before through the building of a complex program. This latter will aim at filtering, sorting and extracting data of different types at the same time which cannot be done with the high level syntax of matlab and to do basic statistics on the extracted data. The last step will deal with the transfer of the different skills to Visual Basic through the building of a program of similar complexity as the one done during sessions 4 to 6. Each exercise will be started from scratch: no previous programs will be reused. Location Library of the CMU, 2nd floor of the library, 1 rue Michel Servet, 1205 Geneva, room F04.3472f (ex 4097) or 4106 depending on the availability of the room (see the schedule below). You can find a map here: http://www.medecine.unige.ch/enseignement/pratique/plans/plan4e.php or here : http://www.medecine.unige.ch/enseignement/pratique/plans/plan_salles_ens/Level4_4097 .htm for room F04.3472f (ex 4097) http://www.medecine.unige.ch/enseignement/pratique/plans/plan_salles_ens/Level4_4106 .htm for room ex 4106 Schedule 4 hours per sessions on Tuesdays or Wednesdays afternoons from 2pm to 6pm, with a total of 7 sessions starting on the week of the 21st of October 2015. Next sessions are scheduled on: Wednesday October 21, 2015, room F04.3472f (ex 4097) Wednesday October 28, 2015, room F04.3472f (ex 4097) Wednesday November 18, 2015, room F04.3472f (ex 4097) Tuesday November 24, 2015, room F04.3472f (ex 4097) Tuesday December 1, 2015, room F04.3472f (ex 4097) Wednesday December 2, 2015, room F04.3472f (ex 4097) Tuesday December 8, 2015, room F04.3472f (ex 4097) Evaluation (only for PhD students enrolled in the Lemanic doctoral school or the CISA doctoral program) By course participation (presence in at least 80% of the sessions) and performance in exercises during each session. There is no final exam but the global evolution of each participant is estimated over the whole course of the sessions. Attending the classes without improving programming skills will give 1 ECTS and fulfilling all objectives will give 2 credits. Registration By e-mail to [email protected] two weeks before the start of a new teaching session. Number of participants will be limited to 13.