Topics include Boolean algebras, logic, set theory, relations and functions, graph theory, counting, combinatorics, and basic probability theory.
Algorithm analysis, linear data structures, trees, hashing, priority queues, sorting, and graph algorithms.
The following topics will be included: the fundamental concepts of microprocessors and the relationship between assembler and basic components of a computer. 80x86 family architecture, 80x86 based Assembly language programming, computer organization and architecture of the PC.
Operating System Structures, Process Management, Memory Management, File Systems, Discs, I/O Systems
To acquaint students with major communication protocols, their features, details, and functionality and to introduce students to the literature and terminology,
The following topics will be included: regular expressions and contextfree languages, finite and pushdown automata, Turing machines, computability, undecidability, and complexity of problems.
The contents of this course is: matter and measurement (precision and accuracy), atoms, molecules, ions, and their properties, stochiometry and chemical calculations, chemical reactions in aqueous solutions, thermochemistry, atomic structure, electron configurations, atomic properties and the periodic table.
The following topics will be included: DC analysis of resistive networks, operational amplifiers, time-domain analysis of first order (RC, RL) circuits, analysis of complex circuits using phasor, derivation and plot of transfer functions, frequency-domain analysis of second order (RLC) circuits.
Modeling of microelectronic devices, and basic microelectronic circuit analysis and design. Physical electronics of semiconductor junction. Simple diode circuits, rectifiers and voltage regulators. Characteristics of MOS transistors. Development of models; and understanding the uses and limitations of various models. MOS amplifiers, gain, AC and DC analysis of MOS amplifiers. Digital circuits and logic gates. NMOS and CMOS logic gates. Different logic circuits.
The course will cover many subjects including binary logic, combinatorial and sequential circuit design, state machine design techniques, instruction set architectures, and finally basic processor design.
This course aims at preparing students to use academic skills in English.
ENG 102 is a compulsory course for first year students. ENG 102 focuses on the cognitive skills of listening, reading, writing and speaking. Students' academic listening skills will be improved by listening to important / relevant information from lectures or discussions and reading skills by reading recent academic texts and then using this information to create an output task. Speaking focuses on giving presentations and students get prepared to express their ideas and opinions by speaking persuasively and coherently. The writing component is a consolidation of the speaking activities.
ENG 310 is a compulsory course for third year students and is designed to enable them to speak more effectively while expressing themselves in a variety of areas, such as business related and academic related topics. These areas range from participating in discusiions to presenting information in the form of short presentations, known as Pecha Kuchas. Students will also take part in role plays and formal debates.
This course is designed to equip students with the necessary skills and knowledge that they will need when they start their professional lives. The course simulates all stages of the job application process, including topics like finding job openings, CVs, job application forms, cover letters, job interviews, and following up, as well as handling job offers and rejection.
The design, analysis and business-plan development of a project by teams of students by using engineering techniques; preparation of project reports and presentation by using state-of-the-art tools and methods.
Students in teams can specify, analyze and handle business plan of a project using engineering fundamentals. They can realize and implement the project using emerging tools. They can report and present all the details of their final product.
This course provides a general information of the events from the end of the 19. century until the end of the Turkish War of Independence and the signing of the Treaty of Lausanne in 1923 and the following period until 1990’s.
Calculus I provides important tools in understanding functions of one variable and has led to the development of new areas of mathematics.
In this course, integration techniques and application of integration, Taylor and Maclaurin series and their applications, functions of several variables, their derivatives, integrals and applications are examined.
In this course some important theorems about probability are investigated. In addition, applications of random variables and their probability distributions are discussed.
The main subjects of the course are the vector and matrix operations, linear independence and dependence of vectors, linear vector spaces and subspaces, dimensions and basis vectors for vector spaces, linear transformations, determinants, eigenvalue and eigenvectors.
Through lectures and labs we aim to introduces the following classical mechanics and thermodynamics topic: space and time; straight line kinematics; motion in a plane; forces and static equilibrium; particle dynamics with force and conservation of momentum; relative inertial frames and noninertial force; work, potential energy and conservation of energy; rigid bodies and rotational dynamics; vibrational motion; conservation of angular momentum; central force motions
This course introduces the students to the fundamental concepts of programming using Java programming language.
This course covers the fundamental concepts of object-oriented programming using Java programming language.
In this course, students learn the theoretical and practical aspects of specification and design, development, verification and validation and testing stages of SE. More, this course enables students to realize software specification and design phases of sample projects with real clients.
Internship, covers field experience at any work place for 3 weeks. Students should follow the instructions stated in IUE Internship Guide in order to successfully complete their internships.
Students will be taught how to use the written and verbal communication tools accurately and efficiently in this course. Various types of verbal and written statements will be examined through a critical point of view by doing exercises on understanding, telling, reading, and writing. Punctuation and spelling rules, which are basis of written statement, will be taught and accurate usage of these rules for efficient and strong expression will be provided. As for verbal statement, students will be taught how to use the body language, use accent and intonation elaborately, and use presentation techniques.
A study of technical security policies, models, and mechanisms for confidentiality, integrity, and availability with respect to operating systems from an engineering point of view.
Basics of computer programming, basics of Matlab programming environment, handling and plotting data, programming constructs, data structures, simple input and output, using multimedia content, timing and logging, development and debugging techniques, functions and modular programming, parsing and processing log files, developing experimental setups, analyzing experiment logs.
The following topics will be included: learning and adoption, Bayesian decision theory, discriminant functions, parametric techniques, maximum likelihood estimation, Bayesian estimation, sufficient statistics, non-parametric techniques, linear discriminants, algorithm independent machine learning, classifiers, unsupervised learning, clustering.
To acquaint students with the major cryptography algorithms, systems, functions, and development techniques applied to network security mechanisms, and to introduce literature and terminology used for cryptography and network security.
The following topics will be included: training data collection, learning in order to extract statistical structure from data, over-fitting, parametric models and parameter selection, validation, regression, classification, nonparametric models, clustering.
Machine learning is concerned with computer programs that automatically improve their performance with past experiences. Machine learning draws inspiration from many fields, artificial intelligence, statistics, information theory, biology and control theory. The course will cover the following topics;concept learning,decision tree learning ,artificial neural networks , instance based learning,evolutionary algorithms ,reinforcement learning ,Bayesian learning , computational learning theory.
This is an undergraduate course in Computer Science on UNIX/Linux operating system. Although the course provides a broad view of the operating system, it mostly focuses on Bash programming and system administration. Students will get a handson approach on using and programming the operating system commands and scripts and will become very familiar with the UNIX environment. This course requires an understanding of modern operating systems and a working knowledge of programming basics. Students will be asked to work on a substantial Bash programming project and will need to develop good technical writing skills and programming skills.
This course will cover basic topics in wireless communications for voice, data, and multimedia. It starts with a brief overview of current wireless systems and standards. We then characterize the wireless channel, including path loss for different environments, random lognormal shadowing due to signal attenuation, and the flat and frequencyselective properties of multipath fading. Next we examine the fundamental capacity limits of wireless channels and the characteristics of the capacityachieving transmission strategies. The course concludes with a brief overview of wireless networks, including multiple and random access techniques, WLANs, cellular system design, adhoc network design and applications for these systems, including the evolution of cell phones.
In this course, topics ranging from distributed database design, distributed transaction management and enhanced concurrency control to data replication and distributed query processing and optimization will be discussed.
Wellknown computational geometry problems, their algorithmic solutions and computational geometry problem solving techniques.
Greedy algorithms, divideandconquer type of algorithms, dynamic programming and approximation algorithms.
The following topics will be included: sampling and information theory, digital filters and discrete Fourier transform, basics of vector and matrix manipulations, basics of numerical optimization, principles of statistical learning theory.
The course covers basics of Algorithms Analysis, graph theoretic concepts, greedy algorithms, divide and conquer algorithms, dynamic programming, and approximation algorithms.
Computer Hardware Components, Microprogramming, Instruction Sets, Assembly Language Instructions, Parallel architectures
The course covers bioinformatics tools/software related with biological sequence (DNA, RNA, protein) analysis, molecular structure prediction, functional genomics, pharmacogenomics and proteomics, biological pathway analysis.
Introduction to cloud computing, cloud architecture and service models, benefits of cloud computing, distributed storage, security and cloud services and software
To acquaint students with the major types, structures, functionality, and deployement of distributed systems, and to introduce students to the literature and terminology used for distributed systems and parallel computing.
The following topics will be included: feed-forward neural networks, back-propagation, convolutional neural networks, recurrent neural networks, recursive neural networks, regularization, optimization.
Provides introductory knowledge on the basics of sparse representations with theoretical and numerical aspects, and practical applications in real life.
The following topics will be included: image formation, image processing, feature detection and matching, segmentation, feature-based alignment, structure from motion, dense motion estimation, image stitching, computational photography, stereo correspondence, 3D reconstructions, image-based rendering, and recognition.
The following topics will be included in the course: The main neural network architectures and learning algorithms, perceptrons and the LMS algorithm, back propagation learning, radial basis function networks, support vector machines, Kohonen’s self organizing feature maps, Hopfield networks, artificial neural networks for signal processing, pattern recognition and control.
Fundamentals of probabilistic reasoning and linear algebra, linear regression, nonlinear models, cross validation and bootstrapping, model selection, decision trees, and support vector machines.
Introduction to acoustics. Fundamentals of sound, and the signal flow that sound takes through a typical recording system. Sound characteristics such as amplitude and frequency. Sound analysis techniques and visualizing sounds. Recording techniques: essential components used in the music production process. Sound synthesis and computer music: digital signal processing and sound generation techniques. Sound editing techniques: components of sound editing. Stages of sound to microphone, from microphone to computer, and then back to speakers. Analog to digital converters (ADC) and digital to analog converters (DAC). Mixing board and mixing process.
The following topics will be included: getting and cleaning data, exploring data, statistical models of data, statistical inference, main machine learning methods in data science including linear regression, SVM, k-nearest neighbors, Naïve Bayes, logistic regression, decision trees, random forests, clustering, and dimensionality reduction, over-fitting, cross-validation, feature engineering.
LP Standard Form, Extreme Points and Basic Solutions, Rudimentary Simplex Algorithm, Interior Point Strategies for LP, Formulating Duals, Primal-to-Dual Relationships, LP-Based Branch and Bound, and Rounding.
The following topics will be included: Digital images as twodimensional signals; twodimensional convolution, Fourier transform, and discrete cosine transform; Image processing basics; Image enhancement; Image restoration; Wavelets and Multiresolution processing; Image coding and compression.
The main subjects of the course are the construction and analysis of the mathematical models of transportation, assignment, network and integer optimization problems and their specific solution methods.
Topics of this course includes, describing production planning and scheduling problems, evaluating the current methods used in industry for production planning and scheduling, analyzing essential production planning and scheduling models in literature coding and solving those models using a modeling language software.
The course aims at an understanding of manufacturing dynamics, which is of importance when designing and controlling manufacturing systems. Interaction between quantities such as throughput, capacity, work in progress, utilization will be expounded. The effect of variability on such systems will be discussed in detail and quantified using queueing models. Push and Pull approaches to production control will be contrasted and their effects on the performance will be quantified.
HFE is the part of engineering most closely concerned with humans. HFE is also called Ergonomics. HFE deals with the capabilities and limitations of human beings as they relate to the design, improvement, and operation of equipment, tools, machinery, computers, automobiles, airplanes, working and living environment, organizational structures, communication systems, etc.
The course covers the methods applied for a new facility design or for an existing facility to redesign so that new processes can be integrated or the flow within the facility can be improved. Location models and computerized layout methods will also be covered.
The topics include machine scheduling and job shop scheduling, flexible assembly systems, interval scheduling, and workforce scheduling. The emphasis will be on systems design and implementation.
The course covers a comprehensive range of supply chain management topics in depth, and addresses major challenges in supply chain management using case studies as well as in depth analysis of some of the technical issues involved in inventory management, location allocation problem, network design, etc.
Topics of this course include the importance of inventory planning, inventory planning of individual and multiple items and invemtory planning of special calsses of items.
The history of the Six Sigma approach and its diffusion in the world, examples of applications in the world and in Turkey, basic steps of the Six Sigma project management approach, statistical and managerial tools used at each step and best practices for use of these tools constitute the course content.
No Content!
The course involves lean terminology and detailed lean production techniques, real business cases, in addition lean management as well as industrial ergonomics.
This course emphasizes the detailed discussion of real life simulation applications in manufacturing and service systems so that the students will gain the ability to use simulation technique in business life.
This course covers with the following topics: Models of manufacturing systems-including transfer lines and flexible manufacturing systems; Calculation of performance measures-including throughput, inprocess inventory, and meeting production commitments; Realtime control of scheduling; Effects of machine failure, setups, and other disruptions on system performance.
The purpose of this course is to introduce students to a general framework for modeling queueing systems and to the basic methodologies used for their analysis. Since queueing phenomenon is in general due to randomness, the course requires extensive use of probability theory. The course will encompass the stochastic processes necessary for analyzing queueing systems. At the end the course, the students are supposed to be acquainted with the available analytical models for queueing systems and to be able to use them for performance analysis of service and production systems.
The course basically covers discrete state space stochastic processes. The emphasis will be on understanding and applying the machinery of stochastic processes as well as developing a sense for stochastic modeling. Upon the completion of the course, students should be ready to work with and develop stochastic models in various contexts.
This course is one of the basic sections of Operations Research, which studies a rational process for selecting the best of several alternatives. The “goodness” of a selected alternative depends on the quality of the data used in describing the decision situation. From this standpoint, a decisionmaking process can fall into one of three categories. 1. Decisionmaking under uncertainty in which the data cannot be assigned relative weights that represent their degree of relevance in the decision process. 2. Decisionmaking under risk in which the data can be described by probability distributions. 3. Decisionmaking under certainty in which the data are known deterministically. 4. Decision making in multicriteria environment. The main subjects of the course are the decision situation, decision rule, decision trees, information and the cost of additional information, utility theory, multiobjective problems, solution notions for such problems and methods for calculations efficient solutions for multiobjective problems, goal programming and the methods of analyzing solutions for goal programming problems.
The topics include basic machine learning and data mining methods and principles.
In competitive business life, realizing the recognition of quality costs provides the cost reduction, optimum loss-to-profit ratio and increase profitability. In this course it is aimed to explain the theoretical steps of defining, determining, classifying, calculating, evaluating the quality costs by putting the targets and determining the cost reduction works by continuous improvement, demonstrating the application methods and presenting practical studies with examples.
Provide information on innovation and technology, innovation process, analyzing successful innovations, types of innovation, product development, translation of innovation and effective presentation
Economic analysis for engineering and managerial decision making. Techniques for evaluating the worth of prospective projects, investment opportunities and design choices. Interest and time value of money, methods for evaluation of alternatives: present worth, annual equivalent worth, rate of return, and payback method. Inflation, after tax economic analysis. Sensitivity and risk analysis.
The course covers a broad range of topics in combinatorial modeling and the systematic analysis. The topics include basic counting rules, generating functions, recurrence relations, some famous combinatorial optimization problems and related mathematical techniques.
In this course, students will have the chance to learn certain optimization subjects, methods and models which are not covered in compulsory courses. At the end students will also have the chance to learn applications of these models and methods.
This course introduces the concept of heuristics to students who already know about mathematical optimization. The topics include basic heuristic constructs (greedy, improvement, construction); meta heuristics such as simulated annealing, tabu search, genetic algorithms, ant algorithms and their hybrids. The basic material on the heuristic will be covered in regular lectures The students will be required to present a variety of application papers on different subjects related to the course. In addition, as a project assignment the students will design a heuristic, write a code of an appropriate algorithm for the problem and evaluate its performance.
Topics of this course include the shortest path problem, the maximum flow problem, the minimum cost flow problem, the multicommodity flow problem and other extensions of network flow problems.
Elements of a Game and Payoffs Games, Prisoner's dilemma, Introduction to ComlabGames Software, Strategies, Sequential Move Games, Risk and Probabilities, Simultaneous Move Games, Nash Theory, Incomplete Information Games
The general title of “Engineering Systems Analysis” comprises two main features. The first is the concept of process. An engineer is primarily concerned with design of a system. The system is a production process. The fundamental aim is to model, design, operate and control the process. The second feature is a consequence of the first. The process is a living whole. It changes with respect to time. So it is a dynamic process.
This course covers topics related with IE372 and ISE 380
This course includes information about the development of ERP and its modules, and applications in some of these modules. In addition, it covers the concept of "e-" and its application in different fields.
ERP Lab applications, production modules will be covered. During the semester the groups will prepare 2 presentations and 2 progress reports. These reports will explain in detail about the software applications in Industry.
Students will learn to make decisions by taking into account such features as interest rates, and rates of return. They will learn about the concept of arbitrage, and when consideration of such is sufficient to price different investments. Applications to call and put options will be given. Students will learn when arbitrage arguments are not sufficient to evaluate investment opportunities. They will learn to make use of utility theory and mathematical optimization models to determine optimal decisions. Dynamic programming will be introduced and used to solve sequential optimization problems. The use of simulation in financial engineering will be explored.
Definition of nanomaterials, classification of nanomaterials, properties of nanomaterials, applications in nanotechnology, nanochemisry
Teaching the basic principles of user interfaces. Introduce students to usability models and principles. Get students to carry out user and task analyses. Teach design, prototype development and evaluation through having students complete term projects. Discuss the effects of interface properties such as color and typography. Teach new user interface techniques.
Learning data modelling techniques with traditional Entity Relationship Model as well as UML’s Use Case and Class diagrams. Data definition and creating database objects by using SQL language. Developing database solutions in response to a set of user requirements by using Oracle DBMS tool. To use ‘stored procedures’ and ‘ triggers’ in SQL programs in a problem solving approach.
This course introduces the students to the fundamental concepts of object oriented programming using the C# programming language.
The following topics will be included in the course: lexical and syntax analysis, names, bindings, type checking, scopes, data types, expressions, assignment statements, subprograms, implementing subprograms, abstract data types and encapsulation constructs, support for object-oriented programming, exception handling, event handling.
This course covers the principals behind the templates and generic programming, and introduces students to the state of the art generic libraries.
This course covers the principals behind the software design patterns and their application in constructing software components.
In this course, students learn about theoretical aspects of computer graphics and use this information in the applications that they develop.
The following topics will be included in the course: software project model, project tools, people management, resource organization, project scheduling methods, estimation of project requirements
In this course, students learn about the process of video game development and use this information to develop their own computer games.
In this course, students learn about the advanced topics in the process of video game development and use this information to develop their own computer games.
It is generally accepted that it is not possible to create perfect software. It is therefore necessary to test software before it is released to the users to reduce the risk of mistakes in software production having a negative impact when the software is used. It is equally necessary to ensure that testing is performed well. This course specifies definitions and concepts, test processes, test documentation, test techniques in software engineering.
In this course, students learn about the process of game development and use this information to develop their own games.
In this course, students learn the theoretical aspects of networking in computer games and practically implement these algorithms in their own multiplayer computer games.
In this course, students learn the theoretical aspects of the commonly used artificial intelligence algorithms in computer games and practically implement these algorithms in their own computer games
In this course, students learn fundamental game design and development principles and methods for mobile platforms. Also students will gain practical knowledge by developing a mobile game as a course project.
This course introduces the students advanced topics in Java programming language.
An indepth study of the use of PHP as both a procedural and objectoriented langauge to display dynamic data. Topics covered include using PHP to display dynamic content, news, blogs, wikis, RSS syndicate feeds, and newsletters, personal web server installation and configuration, and the use of design patterns in PHP code. This course also introduces ASP.NET and compares and contrasts PHP to ASP.
Floating point arithmetic, computational linear algebra, iterative solution to nonlinear equations, interpolation, numerical solution of ODEs, computer subroutine packages
An exploration of current and emergent technologies which are used to provide services (machine to machine communications) over N-tiered and distributed networks. Also covered are transaction processing, service and security policies, business protocols, and the web services development cycle.
This course includes instruction in the fundamentals of the HTML5 markup language, the use of cascading style sheets, the use of Photoshop to create or edit images for use in a web site, and an introduction to making movies in Flash.
To acquaint students with basic knowledge to develop systems programs that involves multi-threading and computer networks. It provides an introduction to multi-threading, socket programming and information security.
Mobile devices, mobile applications and their requirements, developing mobile applications, using web services and databases in mobile applications
This course investigates how mobile applications and content not only differ from their desktop brethern, but also how mobile computing is changing web design and programming in general. The major points of emphasis are mobile browsers and hardware, emergent coding practices and design considerations, the incorporation of geolocation in programming considerations, the creation of mobile widgets and applications, and the deployment of a site that delivers mobile content.
This course provides an introduction to Artificial Intelligence (AI). In this course we will study a number of theories, mathematical formalisms, and algorithms, that capture some of the core elements of computational intelligence. We will cover some of the following topics: search, logical representations and reasoning, automated planning, representing and reasoning with uncertainty, decision making under uncertainty, and learning.
In this course, students learn 3D modeling techniques for computer games
In this course, students learn 3D animation techniques for computer games.
This course addresses software measures. Software measurement is playing an increasingly important role in software engineering since this discipline is becoming an engineering discipline. It is necessary then to address techniques of measurement in the context of the engineering disciplines.
The objective of this course is to provide the fundamental concepts of software maintenance, its framework and processes, and to provide insight into abstraction, problem solving and systematic view.
The course covers the background information on browser technologies, writing scripts using JavaScript. A heavy emphasis is placed on good coding practices and usability concerns for end users. Client-side JavaScript applications constitute the main subject of the course.
The purpose of this course is to inform the learners of the issues and considerations that are involved with ebusiness and ecommerce and the overall management of an ebusiness site.