/
How to benefit from Algorithm Engineering in How to benefit from Algorithm Engineering in

How to benefit from Algorithm Engineering in - PowerPoint Presentation

lastinsetp
lastinsetp . @lastinsetp
Follow
343 views
Uploaded On 2020-08-27

How to benefit from Algorithm Engineering in - PPT Presentation

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

computing research engineering algorithm research computing algorithm engineering applications tol product data department level software experimental pluses test background

Share:

Link:

Embed:

Download Presentation from below link

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.


Presentation Transcript

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

Slide2

OutlineDepartmental 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

Slide3

Departmental 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

Slide4

Departmental 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

Slide5

Departmental 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

Slide6

Background - 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

Slide7

Background - 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

Slide8

Background - 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

Slide9

Background - 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

Slide10

Background - 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

Slide11

Background - 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

Slide12

TOL – 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

Slide13

TOL - 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

Slide14

Algorithm Engineering (AE) Cycle

Fig 1. The algorithm engineering cycle [1].

14

Slide15

Algorithm 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

Slide16

Algorithm 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

Slide17

Main Topics in Current AE

Fig 2. Major topics and issues in the current Algorithm Engineering [1].

17

Slide18

TOL 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

Slide19

Example 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

Slide20

TOL 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

Slide21

TOL 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

Slide22

Example 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

Slide23

Example 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

Slide24

Example 3 – Implementation of a multi-objective problem

24

Slide25

Shifted and Logarithmic Desirability Functs

25

Slide26

Benefits 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

Slide27

ReferencesAdenso-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

Slide28

ReferencesMcGeoch, 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

Slide29

ReferencesSanders, 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