Soma cube

The Soma cube is a solid dissection puzzle invented by Piet Hein in 1933[1] during a lecture on quantum mechanics conducted by Werner Heisenberg. Seven pieces made out of unit cubes must be assembled into a 3×3×3 cube. The pieces can also be used to make a variety of other 3D shapes. The pieces of […]

The Soma cube is a solid dissection puzzle invented by Piet Hein in 1933[1] during a lecture on quantum mechanics conducted by Werner Heisenberg. Seven pieces made out of unit cubes must be assembled into a 3×3×3 cube. The pieces can also be used to make a variety of other 3D shapes.

The pieces of the Soma cube consist of all possible combinations of three or four unit cubes, joined at their faces, such that at least one inside corner is formed. There is one combination of three cubes that satisfies this condition, and six combinations of four cubes that satisfy this condition, of which two are mirror images of each other (see Chirality). Thus, 3 + (6 × 4) is 27, which is exactly the number of cells in a 3×3×3 cube.

The Soma cube has been discussed in detail by Martin Gardner and John Horton Conway, and the book Winning Ways for your Mathematical Plays contains a detailed analysis of the Soma cube problem. There are 240 distinct solutions of the Soma cube puzzle, excluding rotations and reflections: these are easily generated by a simple recursive backtracking search computer program similar to that used for the eight queens puzzle.

The seven Soma pieces are six polycubes of order four and one of order three:

  • Soma-ra.svg Piece 1, or “V”.
  • Soma-l.svg Piece 2, or “L”: a row of three blocks with one added below the left side.
  • Soma-t.svg Piece 3, or “T”: a row of three blocks with one added below the center.
  • Soma-s.svg Piece 4, or “Z”: bent triomino with block placed on outside of clockwise side.
  • Soma-rscrew.svg Piece 5, or “A”: unit cube placed on top of clockwise side. Chiral in 3D.
  • Soma-lscrew.svg Piece 6, or “B”: unit cube placed on top of anticlockwise side. Chiral in 3D.
  • Soma-branch.svg Piece 7, or “P”: unit cube placed on bend. Not chiral in 3D.[2]

VoltDB updates database with Web links

Responding to a growing user base of online service providers, VoltDB has outfitted its namesake in-memory database management system with additional tools to communicate with other technologies usually found in a Web applications stack.

Responding to a growing user base of online service providers, VoltDB has outfitted its namesake in-memory database management system with additional tools to communicate with other technologies usually found in a Web applications stack.

Data science

A Complete Tutorial to Learn Data Science with Python from Scratch
MACHINE LEARNING PANDAS PYTHON

KUNAL JAIN , JANUARY 14, 2016

http://www.talend.com/index.php
http://www.opcdatahub.com/Home.html

A Complete Tutorial to Learn Data Science with Python from Scratch

,

http://www.talend.com/index.php

http://www.opcdatahub.com/Home.html

System dynamics

System dynamics is a computer-aided approach to policy analysis and design. It applies to dynamic problems arising in complex social, managerial, economic, or ecological systems — literally any dynamic systems characterized by interdependence, mutual interaction, information feedback, and circular causality. The three most commonly used software packages are listed below in alphabetical order.  Additional tools […]

System dynamics is a computer-aided approach to policy analysis and design. It applies to dynamic problems arising in complex social, managerial, economic, or ecological systems — literally any dynamic systems characterized by interdependence, mutual interaction, information feedback, and circular causality.

The three most commonly used software packages are listed below in alphabetical order.  Additional tools that support model construction are noted at the end.

iThink® and STELLA® are two names for one model development platform published by isee systems. The software is available in different configurations under a commercial license for Windows and Macintosh computers. Educational licenses and a free runtime version of the software are available.

Powersim Studio is available in a number of different configurations from Powersim Software. The software is available under  commercial license and runs under Windows. Educational licenses and options for publishing standalone model packages are available. A new free version, Studio Express is now available.

Vensim® is available in a number of different configurations from Ventana Systems, Inc. The software is available under a commercial license and runs on Windows and the Macintosh. Educational licenses, including a configuration of the software that is free for educational use, and a free runtime version of the software are available.

See Also: There are a number of other products that can be used to construct models. These include: Anylogic, Goldsim, Berkely Madonna, Sysdea and SimGua under related methodologies and MyStrategy under pedagogical tools.

Simantics System Dynamics is a ready-to-use system dynamics modelling and simulation software application for understanding different organizations, markets and other complex systems and their dynamic behavior.

ASCEND is a free open-source software program for solving small to very large mathematical models. ASCEND can solve systems of non-linear equations, linear and nonlinear optimisation problems, and dynamic systems expressed in the form of differential/algebraic equations.

Agile management

Agile management, or agile process management, or simply agile refer to an iterative, incremental method of managing the design and build activities for engineering, information technology, and other business areas that aims to provide new product or service development in a highly flexible and interactive manner; an example is its application in Scrum, an original … Continue reading “Agile management”

Agile management, or agile process management, or simply agile refer to an iterative, incremental method of managing the design and build activities for engineering, information technology, and other business areas that aims to provide new product or service development in a highly flexible and interactive manner; an example is its application in Scrum, an original form of agile software development.[1] It requires capable individuals from the relevant business, openness to consistent customer input, and management openness to non-hierarchical forms of leadership. Agile can in fact be viewed as a broadening and generalization of the principles of the earlier successful array of Scrum concepts and techniques to more diverse business activities. Agile also traces its evolution to a “consensus event”, the publication of the “Agile manifesto“, and it has conceptual links to lean techniques, kanban (????(??)?), and the Six Sigma area of business ideas.[1]

Agile X techniques may also be called extreme process management. It is a variant of iterative life cycle[2] where deliverables are submitted in stages. The main difference between agile and iterative development is that agile methods complete small portions of the deliverables in each delivery cycle (iteration)[3] while iterative methods evolve the entire set of deliverables over time, completing them near the end of the project. Both iterative and agile methods were developed as a reaction to various obstacles that developed in more sequential forms of project organization. For example, as technology projects grow in complexity, end users tend to have difficulty defining the long term requirements without being able to view progressive prototypes. Projects that develop in iterations can constantly gather feedback to help refine those requirements. According to Jean-Loup Richet (Research Fellow at ESSEC Institute for Strategic Innovation & Services) “this approach can be leveraged effectively for non-software products and for project management in general, especially in areas of innovation and uncertainty. The end result is a product or project that best meets current customer needs and is delivered with minimal costs, waste, and time, enabling companies to achieve bottom line gains earlier than via traditional approaches.[4] Agile management also offers a simple framework promoting communication and reflection on past work amongst team members.[5]

Agile methods are mentioned in the Guide to the Project Management Body of Knowledge (PMBOK Guide) under the Project Lifecycle definition:

Adaptive project life cycle, a project life cycle, also known as change-driven or agile methods, that is intended to facilitate change and require a high degree of ongoing stakeholder involvement. Adaptive life cycles are also iterative and incremental, but differ in that iterations are very rapid (usually 2-4 weeks in length) and are fixed in time and resources.[6]

The Personal Software Process (PSP)

The Personal Software Process (PSP) is a structured software development process that is intended to help software engineers better understand and improve their performance by tracking their predicted and actual development of code. The PSP was created by Watts Humphrey to apply the underlying principles of the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) to … Continue reading “The Personal Software Process (PSP)”

The Personal Software Process (PSP) is a structured software development process that is intended to help software engineers better understand and improve their performance by tracking their predicted and actual development of code. The PSP was created by Watts Humphrey to apply the underlying principles of the Software Engineering Institute’s (SEI) Capability Maturity Model (CMM) to the software development practices of a single developer. It claims to give software engineers the process skills necessary to work on a Team Software Process (TSP) team.

“Personal Software Process” and “PSP” are registered service marks of the Carnegie Mellon University.[1]

dplyr

dplyr is a new package which provides a set of tools for efficiently manipulating datasets in R. dplyr is the next iteration of plyr, focussing on only data frames. dplyr is faster, has a more consistent API and should be easier to use. There are three key ideas that underlie dplyr: Your time is important, … Continue reading dplyr

dplyr is a new package which provides a set of tools for efficiently manipulating datasets in R. dplyr is the next iteration of plyr, focussing on only data frames. dplyr is faster, has a more consistent API and should be easier to use. There are three key ideas that underlie dplyr:

  1. Your time is important, so Romain Francois has written the key pieces in Rcpp to provide blazing fast performance. Performance will only get better over time, especially once we figure out the best way to make the most of multiple processors.
  2. Tabular data is tabular data regardless of where it lives, so you should use the same functions to work with it. With dplyr, anything you can do to a local data frame you can also do to a remote database table. PostgreSQL, MySQL, SQLite and Google bigquery support is built-in; adding a new backend is a matter of implementing a handful of S3 methods.
  3. The bottleneck in most data analyses is the time it takes for you to figure out what to do with your data, and dplyr makes this easier by having individual functions that correspond to the most common operations (group_by, summarise, mutate, filter, select and arrange). Each function does one only thing, but does it well.

Three ways of creating dictionaries in Python

March 30, 2012 Dictionaries are the fundamental data structure in Python, and a key tool in any Python programmer’s arsenal. They allow O(1) lookup speed, and have been heavily optimized for memory overhead and lookup speed efficiency.

March 30, 2012

Dictionaries are the fundamental data structure in Python, and a key tool in any Python programmer’s arsenal. They allow O(1) lookup speed, and have been heavily optimized for memory overhead and lookup speed efficiency.