THE areas of departmental research and applications Haldun Süral Başak AktekeÖztürk Department of Industrial Engineering Middle East Technical University Ankara 2012 1 Outline Departmental ID: 805550
Download The PPT/PDF document "How to benefit from Algorithm Engineerin..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
How to benefit from Algorithm Engineering in THE areas of departmental research and applications
Haldun SüralBaşak Akteke-ÖztürkDepartment of Industrial EngineeringMiddle East Technical UniversityAnkara 2012
1
Slide2OutlineDepartmental research and applicationsCan a laboratory enhance computing layers of research and applications?
Background - Pluses and MinusesDesign and Optimization Laboratory (TOL)Processes of TOL
Algorithm Engineering
Products of TOL
ExamplesBenefits of TOL
2
Slide3Departmental Research and Applications -1Various requirements from the students and faculty
at the department to do computingStudents usually need a kind of basic support such ashow to use a softwareh
ow to fix a particular software / hardware error
how to manage input and output processes.
Faculty may need some special or specific support such ashow to make several applications to communicate with each other
how to get results faster
h
ow to manage processing of a large set of datahow to develop an application from a design project
3
Slide4Departmental Research and Applications - 2Need for start / enhancement of “collaborative” computing
effort at the departmentMost research have multidisciplinary nature - Should everybody know everything?
Most research is based on or relevant to the research done before -
Should everybody start
from scratch every time?The number of
licenced
specialized software at the department is increasing - Should everybody know how to use all?The number of alternative computing and information technology sources is increasing -
Should
everybody
be aware of availability and reliability of all?Hardware and software knowledge is getting obsolete quickly – Are we all fast learner and technically competent?
4
Slide5Departmental Research and Applications - 3Desire for developing leverage mechanisms for advance computing and design in research and education
applications for academy and industry, which originate from original research at the departmentinstruction materials for education, which transfers original research results at the department
5
Slide6Background - Pluses and MinusesDepartmental Level
Current departmental computing factsIndividual (faculty) and computer
labs
(students)
of PCs with installed licenced softwaresShared folders on the servers of departmentUndergraduate
courses
in basic computing level and developing applications as individual or
projects of group worksAbout 20-25 student projects per year - having potentials for applicationsSpecial courses for graduate level
About 10 Master or PhD thesis work per year -
having potentials for applications and enhancement of research and education
Applied and sponsored research - having high potentials for applications or necessity for developing applicationsTechnical support for hardware and general purpose software
6
Slide7Background - Pluses and MinusesDepartmental Level
Current departmental computing factsMinus - According to a recent survey performed for the first year students in the department to measure their competence to use computers
is rated (in terms of technical ability and skills
) as
perfect with only 20%, and just okay with 70%.Plus – Our students are fast learners!
7
Slide8Background - Pluses and MinusesProfessional Level
Minus - accustomed professional thinking of practice as“… continual progression to ever higher levels of technical know-how and proficiency in an ever narrower area of specialization …”*Plus - a strong emphasis on
“
… critical
reason and systems thinking and on strong quantitative analysis. Our approach emphasizes identifying and structuring issues and formulating problems, as much as it seeks to develop and implement effective courses of action. We promote interdisciplinary research …”***
Excerpt from “
The story of lean production”
by J.P. Womack, D.T. Jones, and D. Roos, Harper Perennial, 1991. ** Excerpt from “the departmental Mission statement” at www.ie.metu.edu.tr8
Slide9Background - Pluses and MinusesCultural Level
Minus – Turkey is only a consumer of computing and information technology industry and its contribution to that industry is very low.* Minus – ‘to compute’ = ‘hesaplamak
’ (in Turkish)
1.to
determine by mathematics, especially by numerical methods; 2.to determine by the use of a computer
.
**
1.hesap etmek (to compute); 2.şöyle olacak
diye
kestirmek (to make a guess); 3.düşünmek (to think about) *** ‘Computing’ in Turkish is inherently far from being technical and quantitative. * A comment of Mustafa Akgul in “
Elektronik
Beyinden
Akilli
Kaleme
” by A.
Ö
zkan
, NGT, March 2012.
**
Freedictionary.com
*** “
Büyük Türk Dili Sözlüğü” by M.N. Özün, Arkin Kitabevi, Istanbul 1971.
9
Slide10Background - Pluses and MinusesDisciplinary Level
Minus – According to a survey of decision support system applications, largely published in Operations Research, Management Science, and Industrial Engineering journals,
it seems
to be much more work needed to embed business intelligence functionality in the
database management; and more efforts should be made to develop theories, tools, techniques that can be applied in the development and implementation of such applications and that can meet the needs of practicing managers ( i.e., decision-makers).**
A shorten
excerpt from “
A Survey of Decision Support System Applications (1995-2001)”, S. Eom and E. Kim., JORS, 57 (11), 1264-78, 2006.
10
Slide11Background - Pluses and MinusesDisciplinary Level
Plus – “ Origins of Computing and Operations Research as modern scientific disciplines can be traced back some 65 years. After the first 25 years, both grown hand in hand – at least for some 20 years -, creating a permanent bond in academia and industry... Nowhere is the symbiotic (having an interdependent) relationship between
Operations Research
and
Computer Science more evident than in the design and analysis of algorithms, which lies at the heart of both disciplines”** A shorten excerpt from “
Handbooks
in OR &
MS”, E.G. Coffman et al., Eds., , Vol. 3, 1992, Elsevier Science. 11
Slide12TOL – A system of processes/services for enhancing collaborative computing LaboratoryFrom merriam-webster.coma place equipped for experimental study in a science or for testing and analysis; a
place providing opportunity for experimentation, observation, or practice in a field of studyFrom thefreedictionary.coma building or room equipped for conducting scientific research or for teaching practical science; a place for practice, observation, or testing
In terms of formal meaning
✔
TOL - DESIGN AND OPTIMIZATION LAB
12
Slide13TOL - DESIGN AND OPTIMIZATION LAB
TOL Processes
Product 1
Code Archieve
Product 2
Tutorials
Product 3
Test Problems
Archieve
NEEDS
and DESIRES
Product
4
Application Development
Product
k
Support as leverage
…
…
Introduce
Algorithm Guidelines using Algorithm Engineering
Provide Expert
Guid
a
nce
for Problem Solving
in Computing
Manage and Maintain
Collect
ion of
Test
Instances
Provide Expert and Practical Guidance for Application Development
Promote, Organize and Manage Collaborative Computing Effort
13
Slide14Algorithm Engineering (AE) Cycle
Fig 1. The algorithm engineering cycle [1].
14
Slide15Algorithm Engineering: A bridge for the gap between theory and practicePhases of AEDesign – finding new and better ways to solve problemsAnalysis – predicting performance
Implementation - programmingExperiment – runningExperiment in AE: Falsifiable hypotheses on the behavior of the investigated algorithms
confirmation,
falsification, or refinement of the hypothesis.15
Slide16Algorithm Engineering (AE)Improvement of algorithm and data structure performanceAsmptotically optimalExcellent practical behavior
Important by-products of AE processes on an algorithmCorrectnessAlgorithm librariesTwo Success Stories
Shortest path computation
Full-text indexes
16
Slide17Main Topics in Current AE
Fig 2. Major topics and issues in the current Algorithm Engineering [1].
17
Slide18TOL Product 1 – METU IE Code ArchievePractical need: How to plan, evaluate, archive, postprocess and interpret the results
Process: Introduce specialized algorithm guidelines for code implementations and empirical investigations using Algorithm EngineeringExpected properties
of
codes
in IE Code Archieve Careful documentation and version management help (reproducibility)Appropriate software engineering (successful experimentations)
Modular
implementations (flexible experiments)18
Slide19Example 1: One item from our algorithm guidelinesSeparation of data from model: While coding in GAMS, use $include command to include data from external files
19
Slide20TOL Product 2 - Specialized TutorialsPractical need: Guidance for problem solving and application development
Process: Delivering specialized tutorialsMain benefits of tutorials:Accelarating the coding phase and all
the other
phases related with using softwares
Collecting tips and tricks discovered and used by the members of the department and redelivering themIncreasing awareness about the useful abilities of the softwares
20
Slide21TOL Product 3 - Test Instances ArchievePractical need: Awareness of the used test instances within the department, access to them and being able to use them Fact:
Softwares accept particular data structures as input. Test instances and data need to be arranged to be input for different softwaresINPUT≠DATAINPUT=F(DATA) and F is not uniqueProcess:
Collect
, manage, and maintain
test instances within the department and from other sources. Collect knowledge of how to input data to certain softwares.21
Slide22Example 2 – Test instance from TSPLIB for p-median problemProblem: Given n
nodes and distances, find a roundtrip of minimal total length (dij=dji).
Application
: n
(number of points) =1304, p (number of medians) =500In TSPLIB, coordinates are given and distance metric is specified in a particular detail
Algorithms need distance matrix as input
Computing distances yield ‘round-down’ problem
Different round-off techniques effects the optimum solution to a few instances. For example
Distance matrix from Excel and C: Optimum=
96965
(different than the literature) Add 0.0001 to the coordinates gives the optimum mentioned in the literature: 97024 22
Slide23Example 3 – Implementation of a multi-objective problem Problem: Optimization of objective functions of a process or product simultaneously to find
the best trade-off within these objectivesDesirability functions: One
objective
is
not in the desired limits, then the overall objective is not desirable
23
Slide24Example 3 – Implementation of a multi-objective problem
24
Slide25Shifted and Logarithmic Desirability Functs
25
Slide26Benefits from TOL ProductsEnhancing collaborationDeveloping good applicationsIncreasing quality of codes and making them reusable
Transfering academic knowledge to education and ensuring learning from researchAwareness of experiences gained from specific applicationsBenefits of archieving
26
Slide27ReferencesAdenso-Díaz. B., and Laguna. M., Fine-Tuning of Algorithms Using Fractional Experimental Designs and Local Search, Operations Research, Vol. 54, No. 1,
99–114, 2006.Chimani Markus and Klein Karsten, Algorithm Engineering: Concepts and Practice
C
offin,
Marie and Saltzman, Matthew
J
.
, Statistical Analysis of Computational Tests of Algorithms and Heuristics, INFORMS Journal on Computing, 24-44, 12(1
)
,
Winter 2000.Demetrescu, C, Finocchi, I., Italiano, G. F., and Naher S., Visualization in Algorithm Engineering, Experimental Algorithmics, Springer-Verlag, New York, 2002. Demetrescu, C, and Italiano, G. F., What do we learn from Experimental Algorithmics, M. Nielsen and B. Rovan (Eds.): MFCS 2000, LNCS 1893, pp. 36-51, 2000. c Springer-Verlag Berlin Heidelberg 2000.
27
Slide28ReferencesMcGeoch, Catherine C., Experimental Analysis of Algorithms, Notices of AMS, 304-311, 48(3), 2001
Ramakrishnan, N., Joshi, A., Houstis, E. N., and Rice, J. R., Collaborative Environments for Scientific Computing The Task of Algorithm/Software, Report Number
97-057, Purdue e-Pubs, Department of Computer Science, Purdue University.
Ramakrishnan, N., Joshi, A., Houstis, E. N., and Rice, J. R., Neuro-Fuzzy Approaches to Collaborative Scientific Computing. In
Proc.
IEEE International Conference on Neural Networks'91, 473-478 (1), 1997.Ridge, E., and Kudenko, D., Determining Whether a Problem Characteristic Affects Heuristic Performance: A Rigorous Design of Experiments Approach
C. Cotta and J. van
Hemert
(Eds.): Recent Advances in Evol. Comp., SCI 153, 21–35, 2008.28
Slide29ReferencesSanders, Peter, Algorithm Engineering At a Definition, Efficient Algorithms - Essays Dedicated to Kurt Mehlhorn on the Occasion of His 60th Birthday, Springer-Verlag
, 321-340, 2009. Sanders, Peter, Presenting Data from Experiments in Algorithmics, R. Fleischer et al. (Eds.): Experimental Algorithmics, LNCS
2547,181–196
, 2002.
Snodgrass R. T., On Experimental Algorithmics: An Interview with Catherine McGeoch and Bernard Moret, Ubiquity an Association for Computing Machinery publication, August 2011.
Weihe
K., A Software Engineering Perspective on Algorithmics,
ACM Computing Surveys, Vol. 33, No. 1, March 2001, pp. 89–134.29